-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add mima for kernel #1159
Add mima for kernel #1159
Conversation
relates to #814 (does not close, since we have failing test case now). |
Current coverage is 88.80%@@ master #1159 diff @@
==========================================
Files 232 232
Lines 3073 3073
Methods 3021 3021
Messages 0 0
Branches 49 49
==========================================
Hits 2729 2729
Misses 344 344
Partials 0 0
|
We could also make the previousArtifacts dynamically check previous bug fix version, like lazy val mimaSettings = Seq(
mimaPreviousArtifacts := (if (scalaBinaryVersion.value != "2.10") {
Version(version.value).flatMap {
// we are currently only checking binary compat with the previous bugfix version
case Version(major, Some(minor), Some(bugfix), _) if bugfix > 0 =>
Some(Set(organization.value %% moduleName.value % Seq(major, minor, bugfix - 1).mkString(".")))
case _ => None
}
} else None).getOrElse(Set.empty)
)
|
In my workplace, many Scalaz/Argonaut-based projects have become binary- and source- compatibility minefields. Pleased to see cats taking version compatibility seriously from the outset; I hope concern from compatibility becomes part of Cats' "cultural DNA". |
big +1 to this. binary compatibility should be taken very seriously for a library like cats that hopes to be at the bottom of a lot of dependencies. |
@kailuowang #1159 (comment) that is a great idea. In fact, I think we can do something like this to verify semver: if That said, my overall point is that I think cats-kernel should enforce binary compatibility sooner (maybe like now), so that algebra can move close to a 1.0 release. |
Sorry not sure I follow completely. Are you suggesting that for |
Yes, I am. That was my understanding when we discussed moving that code On Saturday, June 25, 2016, Kai(luo) Wang notifications@github.com wrote:
P. Oscar Boykin, Ph.D. | http://twitter.com/posco | http://pobox.com/~boykin |
👍 thanks @johnynek. I'll create a follow-up issue to enable this after the next release. |
This adds mima for kernel, but it does not pass, so it is not added to travis yet.
As discussed when moving kernel from algebra, the thinking was we could be more conservative there. I would like to turn this on after the next release (I guess 0.7.0) and I hope we can be conservative with kernel updates so that algebra is not too tightly coupled to cats.