Releases: OpenAPITools/openapi-diff
Releases Β· OpenAPITools/openapi-diff
2.0.0
This is the first stable release of OpenAPI-Diff under the umbrella of the OpenAPI Tools organization.
Many thanks to all contributors, especially the OpenAPI Tools team (@jmini, @jimschubert, @wing328) for their support during on-boarding, and @misterjoshua for contributing the OpenAPI-Diff Maven plugin and joining the development team.
π¬ Release discussion: #297
βΉοΈ Milestone: https://github.com/OpenAPITools/openapi-diff/milestone/1?closed=1
Installation
Maven/Gradle
OpenAPI-Diff is available on Maven Central:
<dependency>
<groupId>org.openapitools.openapidiff</groupId>
<artifactId>openapi-diff-core</artifactId>
<version>2.0.0</version>
</dependency>dependencies {
implementation("org.openapitools.openapidiff:openapi-diff-core:2.0.0")
}Docker
OpenAPI-Diff is available on Docker Hub as openapitools/openapi-diff:
# docker run --rm openapitools/openapi-diff:2.0.0
usage: openapi-diff <old> <new>
[...]
Command Line
# curl -o openapi-diff.jar 'https://repo1.maven.org/maven2/org/openapitools/openapidiff/openapi-diff-cli/2.0.0/openapi-diff-cli-2.0.0-all.jar'
# java -jar openapi-diff.jar --help
usage: openapi-diff <old> <new>
[...]
Maven Plugin
OpenAPI-Diff is also available as Maven plugin to include into your build:
<plugin>
<groupId>org.openapitools.openapidiff</groupId>
<artifactId>openapi-diff-maven</artifactId>
<version>2.0.0</version>
<executions>
<execution>
<goals>
<goal>diff</goal>
</goals>
<configuration>
<!-- Reference specification (perhaps your prod schema) -->
<oldSpec>https://petstore3.swagger.io/api/v3/openapi.json</oldSpec>
<!-- Specification generated by your project in the compile phase -->
<newSpec>${project.basedir}/target/openapi.yaml</newSpec>
<!-- Fail only if API changes broke backward compatibility (default: false) -->
<failOnIncompatible>true</failOnIncompatible>
<!-- Fail if API changed (default: false) -->
<failOnChanged>true</failOnIncompatible>
</configuration>
</execution>
</executions>
</plugin>What's Changed
Full Changelog: 1.2.0...2.0.0
New features and bug fixes
- swagger-snapshot: initial commits by @jmini in #35
- Return only diff state in cli by @quen2404 in #38
- Update swagger-parser by @quen2404 in #39
- feature: adds docker support by @itsjavi in #40
- docs: use full Docker hub image name by @itsjavi in #41
oneOffull support by @quen2404 in #43- Handle
readOnly&writeOnlyby @quen2404 in #42 - Vendor extensions support by @quen2404 in #44
- Fix
NullPointerExceptionwithoneOfdiscriminator change by @jmini in #49 - Improve extension support by @quen2404 in #50
- Extension: find changes when nothing changed by @quen2404 in #52
- Add support for changes in summary / description by @quen2404 in #61
- Fix NPE when only description changed in request content by @quen2404 in #65
- Fix/issue #66 wrong return in ref pointer by @quen2404 in #67
- Report causes for compatibility breakage by @thiagoarrais in #105
- improve
allOfmerging for composite schemas by @damianw in #85 - add
--fail-on-incompatibleoption by @mohamed-el-habib in #74 - Bring in changes from joschi/openapi-diff by @joschi in #159
- Fix NPE when description is empty #154 by @jlamaille in #155
- Fix Issue #136 new read-only property breaks PUT by @trohrberg in #137
- WIP: Add swagger2 compatibility by @quen2404 in #54
- enable Dependabot v2 by @sullis in #161
- Add a "Join Slack" badge by @jmini in #167
- Add code of conduct, contributing.md by @wing328 in #168
- Build openapi-diff with Java 15 by @joschi in #173
- Update Maven and Docker image coordinates by @joschi in #172
- [build] Master/PR/Release workflows by @jimschubert in #181
- Add
--rmand latest tag to container example by @jimschubert in #183 - Remove Lombok by @quen2404 in #175
- Migrate Java packages to
org.openapitools.openapidiffby @joschi in #187 - Add sonar coverage reporting to master build by @jimschubert in #184
- Fix some code issues to pass Sonar quality gate by @joschi in #188
- Add diff results of operation ID (metadata) by @hiddewie in #191
- Add tests for content-type changes in request/response by @hiddewie in #190
- Fix nullable API response in diff by @gsdatta in #206
- Handle missing security schemes component by @jrouly in #211
- Allow paths resolving to same template but with different methods by @Trundle in #224
- Fix NPE with unnamed schemas in
{one,any,all}-ofby @gsdatta in #220 - Fix
--headerparameter by @derjust in #236 - Fix
NullPointerExceptionwhen diffing security schemes withoutcomponentselement by @hiddewie in #260 - Add JsonRender and --json command line option by @kimsey0 in #255
- Make large, recursive schemas diff-able by deferring computation of diffs by @solarhess in #249
- Support boolean values for
additionalPropertiesby @joschi in #266 - Build with Java 17 by @joschi in #267
- feat: add a maven plugin by @misterjoshua in #278
- Add GitHub workflow for building Docker image by @joschi in #280
- Integrate building Docker image in release workflow by @joschi in #286
- Change packaging to maven-plugin by @kubamarchwicki in #287
- Ignore Maven dependencies in Dependabot by @joschi in #290
Dependency updates
- Set swagger-parser version to 2.0.1 by @jmini in #47
- Update Swagger-Parser to 2.0.4 by @jmini in #56
- build(deps): bump swagger-parser-v3 from 2.0.13 to 2.0.17 by @dependabot in #115
- build(deps): bump swagger-parser-v3 from 2.0.5 to 2.0.13 by @dependabot in #86
- build(deps): bump swagger-parser.version from 2.0.21 to 2.0.22 by @dependabot in #177
- build(deps): bump swagger-parser.version from 2.0.22 to 2.0.23 by @dependabot in #194
- build(deps): bump swagger-parser.version from 2.0.24 to 2.0.25 by @dependabot in #222
- build(deps): bump swagger-parser.version from 2.0.25 to 2.0.26 by @dependabot in #238
- build(deps): bump swagger-parser.version from 2.0.26 to 2.0.27 by @dependabot in #247
- build(deps): bump swagger-parser.version from 2.0.27 to 2.0.28 by @dependabot in #265
- build(deps): bump commons-cli from 1.4 to 1.5.0 by @dependabot in #274
- build(deps): bump commons-collections4 from 4.0 to 4.4 by @dependabot in #87
- build(deps): bump commons-lang3 from 3.11 to 3.12.0 by @dependabot in #217
- build(deps): bump j2html from 1.2.0 to 1.4.0 by @dependabot in https://github.com/OpenAPITools/...