-
Notifications
You must be signed in to change notification settings - Fork 9.2k
feat: OpenAPI 3.1 support #8367
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
Conversation
* temp isOAS3 rule relaxation
…nent * restore original render
* also remove the oas3.1 summary field
# [4.16.0-alpha.1](v4.15.5...v4.16.0-alpha.1) (2023-02-14) ### Features * OpenAPI 3.1 support ([#8367](#8367)) ([4557b24](4557b24))
|
🎉 This PR is included in version 4.16.0-alpha.1 🎉 The release is available on: Your semantic-release bot 📦🚀 |
|
@tim-lai |
|
Looks like the support won't be out until version 5. I just tried v5.0.0-alpha.0 and it worked with OpenAPI 3.1.0! |
Description
OpenAPI 3.1 Additions:
New top-level field -
webhooks. This allows describing out-of-band webhooks that are available as part of the API.New top-level field -
jsonSchemaDialect. This allows defining of a default$schemavalue for Schema ObjectsThe Info Object has a new
summaryfield.The License Object now has a new
identifierfield for SPDX licenses. Thisidentifierfield is mutually exclusive with theurlfield. Either can be used in OpenAPI 3.1 definitions.Components Object now has a new entry pathItems, to allow for reusable Path Item Objects to be defined within a valid OpenAPI document.
SwaggerUI changes
LicenseandContactcomponents are now exported and available viagetComponentisOpenAPI30andisOpenAPI31. This avoids needing to change the usage ofisOAS3selector.WebhooksInfo,Licenseapidomdependency inswagger-client.min-<version>,max-<version>, oronly-<version>until deemed necessary. Related to this, the newwebhooksand wrappedInfo/Licenseare "attached" to the existingOAS3plugin, rather than residing within a separateOAS31plugin.Dependency Changes
apidomis now bundled with SwaggerUI viaswagger-client. This has a net effect of increasing the bundle size by ~0.15 MiB.overridesinpackage.jsonfor their CI tests/builds:Motivation and Context
Add OpenAPI 3.1 support. This first PR add new "additional features" per https://github.com/OAI/OpenAPI-Specification/releases
Replaces draft PR #8361
How Has This Been Tested?
new Cypress E2E tests, including comparison checks against OpenAPI2, OpenAPI3.0, and OpenAPI3.1.
Single Jest unit test suite updated to reflect newly exported
LicensecomponentPrior to merging into
nextbranch, CI run against themasterbranch successfullyScreenshots (if appropriate):
Checklist
My PR contains...
src/is unmodified: changes to documentation, CI, metadata, etc.)package.json)My changes...
Documentation
Automated tests