-
Notifications
You must be signed in to change notification settings - Fork 161
chore(openapi): Update to Open API v3.1.2 #2188
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
|
Preview for this PR was built for commit |
|
Ah, the Go generator doesn't support OpenAPI 3.1 even after almost five years (oapi-codegen/oapi-codegen#373). Do we want to block this just because of Go - do we have a Of course, before deciding on next steps, we should investigate how other tooling (especially for Python and JavaScript) is compatible with 3.1. The https://github.com/koxudaxi/datamodel-code-generator is OK, but let's inspect others. |
The codegen step is just a smoke test - #2078. We can definitely replace it with something less stale and more robust.
As you said, it's been five years. Also, spec 3.2 is out since 09/25, we'll want to update to that at some point, too. |
|
@janbuchar Alright, I'll prepare a separate PR that removes the Go client generation step and replaces it with better checks. |
### Issue - Relates: #2182 ### Description - Add Redocly and Spectral for OpenAPI lint checks. - **Maybe using only Redocly is enough? Let me know your opinion.** - Fixed 62 Spectral validation errors (missing required fields, incorrect types, nullable issues). - In Redocly, we have the errors set as warnings, I will resolve them in #2188. - Add YAML style lint check. - Only for the OpenAPI definitions. - Unify and enforce style. - **Double quotes as in JSON or single quotes as we prefer in Py and AFAIK in JS as well, any opinion?** 🙂 - Remove Go API client generation job, as discussed in #2188. - It is replaced with the `validate` step, where we validate the bundled specification with the Redocly and check its size. - The new OpenAPI CI is: `lint-check -> build -> validate`. ### Testing - CI passes
95d8a2c to
c76e297
Compare
|
Preview for this PR was built for commit |
janbuchar
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
Preview for this PR was built for commit |
Note
Migrates the OpenAPI spec to 3.1.0 and updates schemas for JSON Schema compatibility, replacing deprecated constructs.
openapito3.1.0nullable: truewith uniontype(e.g.,[string, 'null']), andallOfwithanyOfforref-or-nullpatternsexampleto arrayexamplesacross schemasactors/BuildTagtotype: [object, 'null'], refinedoneOf/anyOfusage inactors/ActorDefinition, consistentexamplesin path components)Written by Cursor Bugbot for commit 95d8a2c. Configure here.