Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/christopherdavenport/sbt-mima-version-check
Plugin to Automate which Mima Versions to Check
https://github.com/christopherdavenport/sbt-mima-version-check
Last synced: 23 days ago
JSON representation
Plugin to Automate which Mima Versions to Check
- Host: GitHub
- URL: https://github.com/christopherdavenport/sbt-mima-version-check
- Owner: ChristopherDavenport
- License: mit
- Created: 2019-09-10T18:41:13.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2022-04-07T14:14:11.000Z (over 2 years ago)
- Last Synced: 2024-10-10T17:26:12.735Z (about 1 month ago)
- Language: Scala
- Homepage: https://christopherdavenport.github.io/sbt-mima-version-check
- Size: 395 KB
- Stars: 10
- Watchers: 3
- Forks: 5
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# sbt-mima-version-check - Plugin to Automate which Mima Versions to Check [![Build Status](https://travis-ci.com/ChristopherDavenport/sbt-mima-version-check.svg?branch=master)](https://travis-ci.com/ChristopherDavenport/sbt-mima-version-check) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/io.chrisdavenport/sbt-mima-version-check_2.12_1.0/badge.svg)](https://maven-badges.herokuapp.com/maven-central/io.chrisdavenport/sbt-mima-version-check_2.12_1.0) ![Code of Consuct](https://img.shields.io/badge/Code%20of%20Conduct-Scala-blue.svg)
## [Head on over to the microsite](https://ChristopherDavenport.github.io/sbt-mima-version-check)
## Quick Start
To use sbt-mima-version-check in an existing SBT project with version 1.0 or greater, add the following dependencies to your plugins.sbt depending on your needs:
```scala
addSbtPlugin("io.chrisdavenport" % "sbt-mima-version-check" % "")
```## Explanation
This sets the versions to check your library for binary compatibility with based on semantic versioning.
So lets take some common cases.
* 0.0.x - Will Not Check These Versions Are Generally not considered anything but exploratory
* 0.1.2 - Will check 0.1.1, and 0.1.0
* 0.2.1 - Will check 0.2.0, minor versions with major version zero are not considered compatible
* 1.0.3 - Will check 1.0.2, 1.0.1, 1.0.0 - All patch versions are considered compatible with each other
* 1.2.2 - Will check 1.2.1, 1.2.0, 1.1.0, 1.0.0 - Minor version across a major version should be backwards compatible with each other
* 2.0.1 - Will check 2.0.0 - Major version do not typically carry binary compatiblity guarantees