You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
However, there's a big question on how to fit this change in the current package. If you only add oneOf you end up with something that's neither Swagger 2.0 nor OpenAPI 3.0.0.
I see 3 options to move forward:
start a new package (say, openapi3);
add a new top-level module OpenAPI3 to this package, so it has support for both Swagger 2.0 and OpenAPI 3.0.0; we can start this new module with a fork of Swagger modules and just adding oneOf;
fork this package, add features you specifically need and use the fork in your project.
Unfortunately I don't have enough time or motivation to work on a complete OpenAPI 3.0.0 support. Swagger 2.0 suits my current needs perfectly. Still, I can offer some help if you need it.
If I understood correctly Swagger 2.0 is a subset of OpenAPI 3.0.0 ? If so, the second option would be a good transition before having an openapi3 package indeed.
Is there a way to discuss privately ? I would be happy to help but I need to improve my understanding of the codebase and my Haskell skills a bit.
Activity
fizruk commentedon May 24, 2017
At a first glance looks like not much has changed.
Some changes to Schema are interesting, specifically:
oneOf(oranyOf) can now be used to better represent sum types.nullableis something people were asking about.Otherwise OpenAPI 3.0.0 looks like mostly regrouping/renaming things.
I guess we should fork
swagger2and make a newopenapi3package?And similarly fork
servant-swaggertoservant-openapi?We could support OpenAPI3 within
swagger2, but I'm not sure that's a good idea.In any case, I don't think we're in a hurry since
daurnimator commentedon Aug 8, 2017
OpenAPI 3.0.0 was released in july. https://www.openapis.org/blog/2017/07/26/the-oai-announces-the-openapi-specification-3-0-0
ThomasCrevoisier commentedon Aug 28, 2017
@fizruk I'm currently using your package in my job and I'll need to be able to use
oneOfsoon for sum types. Can I help you with the implementation ?fizruk commentedon Aug 28, 2017
@ThomasCrevoisier you can certainly fork and add
oneOfsupport.However, there's a big question on how to fit this change in the current package. If you only add
oneOfyou end up with something that's neither Swagger 2.0 nor OpenAPI 3.0.0.I see 3 options to move forward:
openapi3);OpenAPI3to this package, so it has support for both Swagger 2.0 and OpenAPI 3.0.0; we can start this new module with a fork ofSwaggermodules and just addingoneOf;Unfortunately I don't have enough time or motivation to work on a complete OpenAPI 3.0.0 support. Swagger 2.0 suits my current needs perfectly. Still, I can offer some help if you need it.
Which option above do you prefer?
phadej commentedon Aug 29, 2017
I think second option is good enough for now, but I'm interested in seeing
openapi3package eventually. I could help with it, but only after a while.ThomasCrevoisier commentedon Aug 29, 2017
If I understood correctly Swagger 2.0 is a subset of OpenAPI 3.0.0 ? If so, the second option would be a good transition before having an
openapi3package indeed.Is there a way to discuss privately ? I would be happy to help but I need to improve my understanding of the codebase and my Haskell skills a bit.
fizruk commentedon Aug 30, 2017
@ThomasCrevoisier @phadej I have created haskell-swagger2 community in Gitter and invited you. Would Gitter be ok?
fishtreesugar commentedon Apr 9, 2018
https://github.com/julian-becker/openapi3
ThomasCrevoisier commentedon Apr 9, 2018
I deeply apologize for my lack of communication on this one. I didn't find the time to tackle this and I find myself lost in generics...
shinzui commentedon Apr 4, 2020
@fieldstrength Is there a reason why you decided not to submit your fork as a PR? @fizruk Are you still interested in supporting OpenAPI3?
fisx commentedon Apr 6, 2020
note to self: swagger3 is not strictly more powerful, or at least not quite yet: swagger-api/swagger-ui#4425 (but also OAI/OpenAPI-Specification#1937).