-
-
Notifications
You must be signed in to change notification settings - Fork 159
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
Support for Kiota to generate OpenAPI clients #1479
Conversation
94440a6
to
770d847
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## openapi #1479 +/- ##
========================================
Coverage 90.75% 90.76%
========================================
Files 390 391 +1
Lines 12883 12896 +13
Branches 2044 2046 +2
========================================
+ Hits 11692 11705 +13
Misses 776 776
Partials 415 415 ☔ View full report in Codecov by Sentry. |
…OpenApi.Client.NSwag
89d4914
to
0509424
Compare
@verdie-g Would you like to review this PR? |
I can have a look if there is no hurry to merge it. |
There's no urgency. Also, the changes are relevant to be aware of for future development. Probably easiest to review per commit. |
This PR adds a support library, tests, examples and documentation for using JsonApiDotNetCore with Kiota, which is a fairly new OpenAPI client generator that supports the following languages: C#, Go, Java, PHP, Python, Ruby, Swift and TypeScript.
Because the project is still young, it has some rough edges and bugs, for which we provide workarounds where feasible:
format:uri
in HTTP Location header Kiota warns that format:uri is not supported in headers microsoft/kiota#4227kiota-lock.json
file kiota-lock.json changes depending on OS microsoft/kiota#4228Stream
response for HEAD request Stream response for HEAD endpoint microsoft/kiota#4245In preparation, this PR contains various refactorings. See the individual commit messages for details.
Changes that affect usage:
JsonApiDotNetCore.OpenApi.Client
toJsonApiDotNetCore.OpenApi.Client.NSwag
.JsonApiDotNetCore.OpenApi.Client.Kiota
.IMvcCoreBuilder mvcBuilder
parameter has been removed fromAddOpenApi()
.Changes that affect internal development:
NSwag-generated client code is now under source control, so we'll know when something changes.Reverted that, due to https://youtrack.jetbrains.com/issue/RSRP-496113/Newtonsoft.Json-conflict-in-CleanupCode.
swagger.g.json
files in tests now live in the server test project; client tests point to it.Closes #1458.
QUALITY CHECKLIST