Comments (5)
I'm using this library to generate swagger:2.0 spec and ran into few issues with the generated spec via .spec attribute.
May I know the reason to use 2.0 instead of 3.0?
1. editor.swagger.io expects `swagger: '2.0'` for the version instead of the generated `openapi: '2.0'`
Yeah, this needs to be swagger: '2.0'
or openapi: '3.0.n'
2. under paths, the correct key is `operationId` but generated version has `operationID` which errors out as invalid
should NOT have additional properties additionalProperty: operationID
Additional context
I'm happy to submit a PR if allowed to fix above issues as long as the maintainer agrees with above issues.
Welcome PR. To make it compatible with swagger 2.0, maybe we need to do a lot of work. Check the official document about the difference between swagger 2.0 and OpenAPI 3.0: https://swagger.io/blog/news/whats-new-in-openapi-3-0/ .
from spectree.
After spending some time on this yesterday, yes too many changes to make it support 2.0 as well.
We use Google Endpoints which only supports 2.0 version, it's a gateway service that uses openapi spec (in this case 2.0).
I have another workaround for making it work with google endpoints.. but operationID is only invalid in openapi3.0 and should be fixed to operationId.
from spectree.
After spending some time on this yesterday, yes too many changes to make it support 2.0 as well.
OK. Maybe we don't have to do this now.
We use Google Endpoints which only supports 2.0 version, it's a gateway service that uses openapi spec (in this case 2.0).
I have another workaround for making it work with google endpoints.. but operationID is only invalid in openapi3.0 and should be fixed to operationId.
I see. Then you can create a PR to fix this. Thanks.
from spectree.
Additional context
I'm happy to submit a PR if allowed to fix above issues as long as the maintainer agrees with above issues.
I think this can be fixed by changing this line:
Line 166 in baf1f8b
Feel free to submit a PR.
from spectree.
Ive got fixes in my fork just haven't had a chance to get the PR going - will submit a fix shortly. Thanks!
from spectree.
Related Issues (20)
- [Question] It's possible to use marshmallow instead of pydantic to define schemas? HOT 1
- [BUG] Spectree flask plugin is logging request validation errors twice HOT 2
- [Question] Is it possible to specify a BaseModel class as a Redoc Model? HOT 1
- Potentially leaky tests HOT 1
- Falcon: before in validate decorator not working?
- [Question] Skip validation for real? HOT 8
- Key appended to Schema Component HOT 5
- Exclude routes from OpenAPI spec HOT 1
- Feature Request: Remove Duplicate Schema Components HOT 3
- feat: support `msgspec` as another schema definition
- feat: Disable publishing of /apidoc route HOT 1
- bug: annotations NameError issue caused by python bug HOT 1
- bug: spectree doesn't support pydantic 2.x but doesn't restrict in pyproject.toml HOT 1
- bug: don't support pydantic v2 HOT 5
- feat: add an abstract layer to support pydantic[v1]/pydantic[v2]/msgspec
- bug: Flask Response Validation Error Results in Exception, Unintended 500 content HOT 1
- bug: An empty request is not validated / the content type is not enforced HOT 1
- bug: SecuritySchemeData root_validator conflicts with alias HOT 2
- bug: field alias no longer respected (regression) HOT 6
- bug: List[int] in query params does not accept a list of size 1 in flask app HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from spectree.