Skip to content
This repository has been archived by the owner on Sep 23, 2022. It is now read-only.

Latest commit

 

History

History
56 lines (47 loc) · 2.94 KB

README.md

File metadata and controls

56 lines (47 loc) · 2.94 KB

Build Status Go Report Card codecov codebeat badge GitHub release (latest by date) Go Doc

What is Dipher?

It's a tool for finding breaking changes between old and new swagger specs. Now it supports only Swagger 2.0.

It could be useful for REST services as additional check in CI/CD pipelines.

Why Dipher?

Analogues with swagger diff functionality don't handle such many cases as current library - e.g. enums changes, nested object changes.

Installation

  • Chose required release here:
  • Download archive and extract binary:
    wget https://github.com/vadim-hleif/dipher/releases/download/v0.1.1/dipher_0.1.1_darwin_amd64.tar.gz
    tar -zxvf dipher_0.1.1_darwin_amd64.tar.gz dipher
    rm dipher_0.1.1_darwin_amd64.tar.gz && mv dipher /usr/local/bin
  • Maybe will be added some package managers - now only manual installation is available

Usage

Current features list


  • all path and verb combinations in the old specification are present in the new one
  • no request parameters are required in the new specification that were not required in the old one
  • all required request parameters in the old specification are present in the new one
  • all request parameters in the old specification have the same type in the new one
  • all request models via $ref don't have any differences
  • all response attributes in the old specification are present in the new one
  • all response attributes in the old specification have the same type in the new one
  • all response models via $ref don't have any differences
  • enums validation
  • arrays type support
  • recursive refs
  • extensions validation

TODO minor features list