Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

.Net: Feat: adds support for Microsoft Manifest in dotnet and other fixes. #9436

Open
wants to merge 38 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
ee3312b
import implementation for TypeB
zengin May 1, 2024
8f9bd38
update the manifest package and address compiler warnings
zengin Jun 17, 2024
987c3bc
address compiler warnings
zengin Jun 18, 2024
b93e6ac
isolate runtimes in error handling
zengin Jun 18, 2024
b1320fe
Merge branch 'main' into chore/zengin-manifest
baywet Oct 22, 2024
177e126
chore: upgrades plugins library version
baywet Oct 22, 2024
99ac5cc
chore: updates api manifest dependency
baywet Oct 22, 2024
0a4fedd
Merge branch 'main' into chore/zengin-manifest
baywet Oct 22, 2024
f2ebca2
chore: formatting
baywet Oct 22, 2024
e33690a
chore: upgrades manifest lib to latest version
baywet Oct 22, 2024
6d462a8
Merge branch 'main' into chore/zengin-manifest
baywet Oct 24, 2024
a379579
ci: adds unit test infrastructure for microsoft manifest plugins
baywet Oct 24, 2024
c77eb72
ci: adds sample microsoft plugins
baywet Oct 24, 2024
20435c6
chore: adds kiota configuration for sample microsoft plugins
baywet Oct 24, 2024
8dd2906
fix: path to microsoft manifest plugin
baywet Oct 24, 2024
11d2391
fix: adds missing copy of microsoft manifests
baywet Oct 24, 2024
2c7cc8c
docs: adds link to microsoft manifest sample
baywet Oct 24, 2024
d47a812
fix: lookup path for the api and microsoft plugins
baywet Oct 24, 2024
c98cbcc
fix: loading of local microsoft manifest file
baywet Oct 24, 2024
529dc0d
fix: stream instead of string to load microsoft plugins
baywet Oct 24, 2024
d98ba29
fix: function name for microsoft plugins test data
baywet Oct 24, 2024
d435b51
fix: authentication for microsoft plugins
baywet Oct 25, 2024
65543ed
Merge branch 'main' into chore/zengin-manifest
baywet Oct 25, 2024
7fa549c
fix: restores wrongly deleted plugin in #6005
baywet Oct 25, 2024
814a45c
feat: adds astronomy plugin to kiota workspace configuration
baywet Oct 25, 2024
a6e9529
feat: adds astronomy plugin definition
baywet Oct 25, 2024
927723d
fix: nasa astronomy simple test
baywet Oct 25, 2024
882ed3b
feat: adds support for multiple microsoft plugins dependencies
baywet Oct 25, 2024
3e0c0c3
docs: adds experimental entry for Microsoft Manifests
baywet Oct 25, 2024
3471e31
fix: aligns experimental code with new numbering for api and microsof…
baywet Oct 25, 2024
2b7d722
chore: skip loading the json document ourselves
baywet Oct 25, 2024
b2c2ee4
fix: o(n) lookup to o(1) for operation ids to exclude
baywet Oct 25, 2024
0707600
fix: disposing response too early
baywet Oct 25, 2024
3b2c3c2
fix: multiple performance issues in API manifest loading
baywet Oct 25, 2024
5fdd657
fix: normalization operation id to avoid . in function names
baywet Oct 25, 2024
8871dcf
chore: linting
baywet Oct 25, 2024
93eb850
fix; netstandard2.0 build
baywet Oct 25, 2024
0fe5fa6
Merge branch 'main' into chore/zengin-manifest
baywet Oct 25, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
79 changes: 79 additions & 0 deletions .kiota/apimanifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
{
"applicationName": "application",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider moving all the documents from the .kiota folder closer to the code that uses them. If those are required for plugin generation, please move them to the plugins folder and add a README describing how to generate those plugins from the documents.

"apiDependencies": {
"Calendar": {
"apiDescriptionUrl": "https://raw.githubusercontent.com/microsoftgraph/msgraph-metadata/master/openapi/v1.0/graphexplorer.yaml",
"apiDeploymentBaseUrl": "https://graph.microsoft.com/v1.0/",
"requests": [
{
"method": "GET",
"uriTemplate": "me/calendar/events"
}
],
"extensions": {
"x-ms-kiota-hash": "29814D37A98A70300C212A353CCD01919F5B58D6C8F741C4948E4B7A5FDAA44B",
"x-ms-kiota-version": "1.20.0-preview.202410170001"
}
},
"Contacts": {
"apiDescriptionUrl": "https://raw.githubusercontent.com/microsoftgraph/msgraph-metadata/master/openapi/v1.0/graphexplorer.yaml",
"apiDeploymentBaseUrl": "https://graph.microsoft.com/v1.0/",
"requests": [
{
"method": "GET",
"uriTemplate": "me/contacts"
}
],
"extensions": {
"x-ms-kiota-hash": "21808D91F876D396FF383233E2CC18B4DD82CDFE2A403B155CBAEC18808808E2",
"x-ms-kiota-version": "1.20.0-preview.202410170001"
}
},
"DriveItem": {
"apiDescriptionUrl": "https://raw.githubusercontent.com/microsoftgraph/msgraph-metadata/master/openapi/v1.0/graphexplorer.yaml",
"apiDeploymentBaseUrl": "https://graph.microsoft.com/v1.0/",
"requests": [
{
"method": "GET",
"uriTemplate": "drive/root/children/{driveItem-id}/content"
}
],
"extensions": {
"x-ms-kiota-hash": "883D3BE04064138511FB79FDB1C2A7883D9E8F492481A04F0D55AA75B63CA642",
"x-ms-kiota-version": "1.20.0-preview.202410170001"
}
},
"Messages": {
"apiDescriptionUrl": "https://raw.githubusercontent.com/microsoftgraph/msgraph-metadata/master/openapi/v1.0/graphexplorer.yaml",
"apiDeploymentBaseUrl": "https://graph.microsoft.com/v1.0/",
"requests": [
{
"method": "GET",
"uriTemplate": "me/messages"
},
{
"method": "POST",
"uriTemplate": "me/messages"
}
],
"extensions": {
"x-ms-kiota-hash": "C8360ADB984F44449D607A0517A4AE13A7BF0BF2F53FA7AA147257F49D6BBF8F",
"x-ms-kiota-version": "1.20.0-preview.202410170001"
}
},
"Astronomy": {
"apiDescriptionUrl": "https://raw.githubusercontent.com/zengin/openapi-directory/zengin/nasa/APIs/nasa.gov/apod/1.0.0/openapi.yaml",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should not take a dependency on my account here. Is there any chance this file can be moved to a Microsoft owned location? I think I needed a copy for adding auth details.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, we can point it somewhere else. Do you remember where you took it from?

"apiDeploymentBaseUrl": "https://api.nasa.gov/planetary/",
"requests": [
{
"method": "GET",
"uriTemplate": "apod"
}
],
"extensions": {
"x-ms-kiota-hash": "F7C689BA3B0415A681458A5B04112EA0E57E45428DA08AD23DE7C8E00610086B",
"x-ms-kiota-version": "1.20.0-preview.202410170001"
}
}
}
}
73 changes: 73 additions & 0 deletions .kiota/documents/Astronomy/openapi.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
openapi: 3.0.0
servers:
- url: https://api.nasa.gov/planetary
- url: http://api.nasa.gov/planetary
info:
contact:
email: [email protected]
description: This endpoint structures the APOD imagery and associated metadata
so that it can be repurposed for other applications. In addition, if the
concept_tags parameter is set to True, then keywords derived from the image
explanation are returned. These keywords could be used as auto-generated
hashtags for twitter or instagram feeds; but generally help with
discoverability of relevant imagery
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
title: APOD
version: 1.0.0
x-apisguru-categories:
- media
- open_data
x-origin:
- format: swagger
url: https://raw.githubusercontent.com/nasa/api-docs/gh-pages/assets/json/APOD
version: "2.0"
x-providerName: nasa.gov
x-serviceName: apod
tags:
- description: An example tag
externalDocs:
description: Here's a link
url: https://example.com
name: request tag
paths:
/apod:
get:
description: Returns the picture of the day
parameters:
- description: The date of the APOD image to retrieve
in: query
name: date
required: false
schema:
type: string
- description: Retrieve the URL for the high resolution image
in: query
name: hd
required: false
schema:
type: boolean
responses:
"200":
content:
application/json:
schema:
items:
x-thing: ok
type: array
description: successful operation
"400":
description: Date must be between Jun 16, 1995 and Mar 28, 2019.
security:
- api_key: []
summary: Returns images
tags:
- request tag
operationId: apod
components:
securitySchemes:
api_key:
in: query
name: api_key
type: apiKey
Loading
Loading