sbt-mima-plugin
sbt-version-policy
Our great sponsors
sbt-mima-plugin | sbt-version-policy | |
---|---|---|
2 | 2 | |
447 | 80 | |
0.4% | - | |
7.5 | 7.6 | |
8 days ago | 4 days ago | |
Scala | Scala | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
sbt-mima-plugin
-
Semver violations are common, better tooling is the answer
In the Scala ecosystem, MiMa [1] has been in widespread use for years. It automatically checks compatibility for the binary API of a library. Every library with any amount of success uses it. One could say it's the foundation of a stable ecosystem. We also have sbt-version-policy [2] to set it up with minimal configuration (and directly relate it to SemVer).
More recently, we got tasty-mima [3], which checks compatibility at the type system level, rather than the binary level.
[1] https://github.com/lightbend/mima
[2] https://github.com/scalacenter/sbt-version-policy
[3] https://github.com/scalacenter/tasty-mima
-
sbt/scalatest library or plugin that only re-runs tests for code that changed
Off the top of my head, a naive & approximate solution would be to use test coverage to find out which tests test which blocks of code. Then, when a binary, syntactic incompatibility is detected, re-run only these tests captured for that piece of code.
sbt-version-policy
-
Semver violations are common, better tooling is the answer
In the Scala ecosystem, MiMa [1] has been in widespread use for years. It automatically checks compatibility for the binary API of a library. Every library with any amount of success uses it. One could say it's the foundation of a stable ecosystem. We also have sbt-version-policy [2] to set it up with minimal configuration (and directly relate it to SemVer).
More recently, we got tasty-mima [3], which checks compatibility at the type system level, rather than the binary level.
[1] https://github.com/lightbend/mima
[2] https://github.com/scalacenter/sbt-version-policy
[3] https://github.com/scalacenter/tasty-mima
-
SBT Version Scheme Enforcer Plugin: Automatically configure MiMa for Early Semver/PVP/Semver
Can you compare/contrast to https://github.com/scalacenter/sbt-version-policy ?
What are some alternatives?
mdoc - Typechecked markdown documentation for Scala
sbt-version-scheme-enforcer - A SBT Plugin Which Automatically Configures MiMa Based On Your Version Scheme (SemVer, PVP, etc)
sbt-header - sbt-header is an sbt plugin for creating file headers, e.g. copyright headers
sbt-revolver - An SBT plugin for dangerously fast development turnaround in Scala
sbt-pack - A sbt plugin for creating distributable Scala packages.
sbt-updates - sbt plugin that can check Maven and Ivy repositories for dependency updates
sbt-sonatype - A sbt plugin for publishing Scala/Java projects to the Maven central.
sbt-microsites - An sbt plugin to create awesome microsites for your project
sbt-scoverage - sbt plugin for scoverage
sbt-unidoc - sbt plugin to create a unified Scaladoc or Javadoc API document across multiple subprojects.
sbt-ide-settings - SBT plugin for tweaking various IDE settings
sbt-native-packager - sbt Native Packager