vyuldashev / laravel-openapi

Generate OpenAPI specification for Laravel Applications
MIT License
416 stars 96 forks source link

OpenAPI v3.1 Support #63

Open philsturgeon opened 2 years ago

philsturgeon commented 2 years ago

Hello @vyuldashev 🤝

Thanks for making this excellent package. I wanted to make a quick issue to track the progress towards supporting OpenAPI v3.1, because it's been out for over a year now and it's excellent. It adds a lot of convenient functionality and lines up perfectly with JSON Schema, which could actually simplify your toolchain rather well as you can just use any of the vast amounts of JSON Schema tooling instead of the subset of tooling which understands what an OpenAPI Schema object.

Here's a guide to the differences written for end-users, but it should help make things fairly clear to tooling vendors like yourself.

https://www.openapis.org/blog/2021/02/16/migrating-from-openapi-3-0-to-3-1-0

If you say you'll be working on it I can update openapi.tools to reflect that.

Let me know if you have any questions or need any help with the upgrade process,

philsturgeon commented 2 years ago

Heres a few more articles showing off the differences between OpenAPI v3.0 and v3.1.

Here are some example files which can make for handy pass/fail test cases:

https://github.com/Mermade/openapi3-examples/tree/master/3.1

If you're looking for the JSON Schema that defines a valid OpenAPI document, that'll be right over here:

https://github.com/OAI/OpenAPI-Specification/tree/main/schemas/v3.1