-
Notifications
You must be signed in to change notification settings - Fork 9k
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
feat: OpenAPI 3.1 support #8367
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$schema
value for Schema ObjectsThe Info Object has a new
summary
field.The License Object now has a new
identifier
field for SPDX licenses. Thisidentifier
field is mutually exclusive with theurl
field. 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
License
andContact
components are now exported and available viagetComponent
isOpenAPI30
andisOpenAPI31
. This avoids needing to change the usage ofisOAS3
selector.Webhooks
Info
,License
apidom
dependency inswagger-client
.min-<version>
,max-<version>
, oronly-<version>
until deemed necessary. Related to this, the newwebhooks
and wrappedInfo
/License
are "attached" to the existingOAS3
plugin, rather than residing within a separateOAS31
plugin.Dependency Changes
apidom
is now bundled with SwaggerUI viaswagger-client
. This has a net effect of increasing the bundle size by ~0.15 MiB.overrides
inpackage.json
for 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
License
componentPrior to merging into
next
branch, CI run against themaster
branch successfullyScreenshots (if appropriate):
Checklist
My PR contains...
src/
is unmodified: changes to documentation, CI, metadata, etc.)package.json
)My changes...
Documentation
Automated tests