Azure / openapi-diff

Command line tool to detect breaking changes between two openapi specifications
MIT License
259 stars 36 forks source link

open api version 3 support #148

Open ling1726 opened 5 years ago

ling1726 commented 5 years ago

Hi,

I think that openapi version 3 support would be great for this tool. I am willing to help with this and create the necessary models that are different in version 3.

Would you be interested in this ?

jy95 commented 4 years ago

I think it is worthy a try as the v3.0.3 got released the 20 February 2020. Using converters from OAS v3 (OpenApi) to OAS v2.0 (Swagger) ( like api-spec-converter ) to workaround the absence of support must be avoided as there is a few breaking changes between them ...

codyaray commented 4 years ago

This would be awesome. Has there been any progress on this? =]

ling1726 commented 4 years ago

Hi,

I haven't been able to get time to actually work on this unfortunately. Since I've been pretty busy. I might try it if there's interest in this

LasneF commented 4 years ago

We are using OpenAPI diff as part of our Azure APIM pipeline as a compliancy check , to ensure that teams does not push a breaking change by mistake. Given the fact that now APIM is compliant OAS3.0 it would be defintively required so that we enable team to safety use OAS3.0

jy95 commented 4 years ago

@LasneF Personally, I use openapi-diff to detect that kind of behaviour : it's more verbose than this package but for lack of better (I used it in my thesis)

If any breaking changes are found the tool will return a non-zero exit code.

I created a Github workflow for that : documentation-changes.yml (feel free to take inspiration ;) )

Example :

image

fidgi commented 4 years ago

The support of OAS 3.0.3 would be indeed a great addition .

acabarbaye commented 3 years ago

The breaking change rules in this tool are much more explicit and numerous than in the Atlassian's tool and so having OAS 3 support would be awesome.

PaulMathon commented 3 years ago

Hi @jianyexi, @ruowan,

Criteo is making a good use of a forked version of the OpenApi-diff library and I wanted to thank all those who contributed to its development for all the great work you've done with this librairy.

As part of my job at Criteo I plan to adapt the C# layer of the library to the version 3.0 of the OpenApi specification (using microsoft/OpenAPI.NET) and to make it available both as a public github repository and a published nugget package.

I was wondering if you would be interested in replacing de C# logic of your library by the nugget package ? If so, I think we could consider that the maintenance of the package would be co-owned by both Azure and Criteo

Thank you

jianyexi commented 3 years ago

@PaulMathon Sounds like a good solution for supporting openapi 3.0, I am very interested in it.
Though I might be focusing on the next api definition language (https://github.com/Azure/adl) next semester but I still have a few time to contribute . I think we can have a talk with it first .

peteraritchie commented 3 years ago

I guess this repo is abandoned? 3.1 is the latest version now :(

yordis commented 2 years ago

Hello, is this project still active?

PaulMathon commented 2 years ago

Hi, Criteo is currently using a fork of this version, which we have adapted so that it is capable of comparing OpenApi Specification version 3. Open-sourcing this version of the comparator as a nugget is still in our backlog, but other higher priority topics are standing in the way for now. I hope we will have the opportunity to work on it soon

mikekistler commented 2 years ago

Hello @PaulMathon, I am very interested in the work you have done to add support for OpenAPI 3 to this tool. Could you please link to your fork here or even better submit a PR with your changes?

rao-anant commented 2 years ago

Hello @PaulMathon Could you please let us know when you plan to make the 3.0 support code available in the public?

Hello @jianyexi Do you have a plan to support 3.0 soon?

Thanks!

LasneF commented 2 years ago

knowing that the thread is open since 2019 ... that there is no reply for opensource contribution , i would recommend you to use this https://api-diff.io/ this is relying on that https://github.com/bump-sh/cli

it supports OAS3

PaulMathon commented 1 year ago

Hi all, Sorry for the delay... but I come with good news 🚀 I am pleased to announce that the Criteo.OpenApi.Comparator package has been released! You can now detect breaking changes from Open API Specifications in version 3 directly from your C# app. If you see any improvements feel free to raise an issue (and push a pull request) on the Github project.

reuvenharrison commented 1 year ago

OASDiff supports OpenAPI v3 diff and breaking-changes.

LasneF commented 1 month ago

another good alternative is https://pb33f.io/openapi-changes/