-
Notifications
You must be signed in to change notification settings - Fork 69
fixes #219 - publish for Scala 2.13.0-M5 #221
Conversation
case _ => false | ||
} | ||
|
||
lazy val scalaCheckVersion = "1.14.0" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
pretty sure this is binary incompat with 1.13, which breaks mima on the laws.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not following how a change to testing code breaks the package api compatability
Codecov Report
@@ Coverage Diff @@
## master #221 +/- ##
==========================================
- Coverage 76.4% 75.52% -0.89%
==========================================
Files 42 42
Lines 958 960 +2
Branches 68 45 -23
==========================================
- Hits 732 725 -7
- Misses 226 235 +9
Continue to review full report at Codecov.
|
I think the remaining snag here is the tut plugin, which isn't built w/ 2.13 |
tpolecat/tut#238 seems to indicate otherwise? |
the |
typelevel algebra wants a version that can build against scala 2.13.0-M5 (see typelevel/algebra#221)
typelevel algebra wants a version that can build against scala 2.13.0-M5 (see typelevel/algebra#221)
weird, I just pushed commit 0ff4081 above but CI isn't kicking off |
It's like github is mis-interpreting the sequence of events up there. I'm going to try squashing and force push to see if that helps. |
0ff4081
to
9ab2937
Compare
IIUC, I think I clobbered the test coverage of |
@johnynek we are green |
Just an observation - this change should be transparent to anybody using the package but it's a breaking change for anybody who is writing their own algebra typeclasses against it. |
Another possible approach to fixing this is to keep the Or conversely define everything as |
bump |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be a shame to lose the optimization of combineAll
@@ -7,7 +7,6 @@ import scala.annotation.tailrec | |||
trait AdditiveSemigroup[@sp(Int, Long, Float, Double) A] extends Any with Serializable { | |||
def additive: Semigroup[A] = new Semigroup[A] { | |||
def combine(x: A, y: A): A = plus(x, y) | |||
override def combineAllOption(as: TraversableOnce[A]): Option[A] = trySum(as) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
did kernel remove combineAllOption? Why can't we override this?
So, if cats kernel is still using TraversableOnce, why do we have to change this one? |
@johnynek TraversableOnce does not exist in 2.13 |
This current draft is based on: #219 (comment) But we can rework it |
@erikerlandson but, what does cats have? did they just kill that method in cats.kernel, which we depend on... we should really move this into the cats repo as @kailuowang any concerns about that? This repo predated cats, half of it became cats-kernel and we have talked about moving this in before as a new module. |
I was getting compile fails, but possibly |
@johnynek to answer your question, cats appears to still be making use of |
+1 on moving it into cats |
so there would be no algebra-0.8, but instead some cats-algebra release? |
I'm going to close this, since it sounds like the issue will be resolved by porting to a subproject of cats. |
Changes introduced in this PR:
TraversableOnce
, replace with signatures forIterable
andIterator
The dependencies on
Semigroup
,Monoid
and friends fromcats
involved overriding methods likecombineAllOption
, which are still build usingTraversableOnce
. I removed the overrides and just let their default implementations apply.