typelevel / algebra

Experimental project to lay out basic algebra type classes
https://typelevel.org/algebra/
Other
378 stars 69 forks source link

Update Cats Version and Other Compatible Shifts #204

Closed ChristopherDavenport closed 7 years ago

ChristopherDavenport commented 7 years ago

2.12 updates requires and update to scalajs and I didn't know if you wanted to make those shifts as well, so I figured I would start off small.

ChristopherDavenport commented 7 years ago

Sorry about the sloppy git.

johnynek commented 7 years ago

no worries about the sloppy git. We squash merge anyway.

johnynek commented 7 years ago

👍

lgtm

ChristopherDavenport commented 7 years ago

Everything is fine, except for a now flagged local val in 2.12, how would you prefer I resolve?

Heck, I even just published locally and successfully tested algebird against the updated version with no other additions needed.

johnynek commented 7 years ago

can you remove those two local vals to get the test green?

ChristopherDavenport commented 7 years ago

I can, however I think it makes the tests that follow irrelevant as I believe they relied on the implicit in scope.

Will push that to you though.

codecov-io commented 7 years ago

Codecov Report

Merging #204 into master will decrease coverage by 0.38%. The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #204      +/-   ##
==========================================
- Coverage   73.84%   73.45%   -0.39%     
==========================================
  Files          37       37              
  Lines         776      776              
  Branches       58       58              
==========================================
- Hits          573      570       -3     
- Misses        203      206       +3
Impacted Files Coverage Δ
...a/algebra/lattice/BoundedDistributiveLattice.scala 23.07% <0%> (-7.7%) :arrow_down:
core/src/main/scala/algebra/ring/Ring.scala 97.29% <0%> (-2.71%) :arrow_down:
core/src/main/scala/algebra/ring/Additive.scala 42.85% <0%> (-1.59%) :arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 64eda16...bc9786a. Read the comment docs.

johnynek commented 7 years ago

Okay, so this lowered code coverage, but we weren't actually using the implicits...

Huh... I guess we are calling methods regardless, so I can see how that happens, but it is not 100% clear to me if we are actually not using the implicits or if this could be a bug in 2.12.3....

cc @non

coltfred commented 7 years ago

It'd be really nice to get this merged so there is version published for cats 1.0.0-MF.

johnynek commented 7 years ago

I guess we can punt on deep diving on why code coverage dropped here.

coltfred commented 6 years ago

@johnynek @non Could one of you publish the 0.8.0 with these changes?

johnynek commented 6 years ago

I’ll try to do this today. Sorry for the latency.

coltfred commented 6 years ago

@johnynek Ping!

johnynek commented 6 years ago

Sorry. I started the publish and it took a long time and I forgot and noticed it timed out on me in another window a few days later.

I’ll try again this weekend.

PS: Colt we need to get you publishing credentials for more stuff. :)

On Fri, Oct 13, 2017 at 09:41 Colt Frederickson notifications@github.com wrote:

@johnynek https://github.com/johnynek Ping!

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/typelevel/algebra/pull/204#issuecomment-336548943, or mute the thread https://github.com/notifications/unsubscribe-auth/AAEJdjqLRs4hw6uNRCwjbzLKW5aub8mcks5sr7zhgaJpZM4PcqfH .

-- P. Oscar Boykin, Ph.D. | http://twitter.com/posco | http://pobox.com/~boykin

coltfred commented 6 years ago

@johnynek Maybe you could bump to cats 1.0.0-RC1 and skip 1.0.0-MF? :rofl:

johnynek commented 6 years ago

seems like a good plan!

johnynek commented 6 years ago

so, it's pretty broken currently due to discipline upgrade. looking.

johnynek commented 6 years ago

https://github.com/typelevel/cats/pull/1922

this PR is what we need to accommodate.

cc @LukaJCB @denisrosset

PS: this is the pain of making cosmetic changes to fix warts.... ugh... I don't have the time to deal with this now. Is anyone interested in sending a PR to fix this?

johnynek commented 6 years ago

PS: now that I'm cranky about this again... another reason to live with warts is because fixing breakage costs us labor we often don't have.

denisrosset commented 6 years ago

@johnynek what should we do? Align algebra to the new cats-kernel style, or import from the old cats-kernel-laws the pieces in the old style, so that we don't propagate the breakage downstream?

On the Spire side, I'd like to make quite a bit of changes before we stabilize on 1.0, but how far we go will depend on other maintainers. Could be that we follow the new cats-kernel style, or that we find a third way (especially as we'd like to test primitive types such as Int and Double).

LukaJCB commented 6 years ago

I'm putting together a PR to update to the new law encoding. I'd appreciate if someone could answer a couple of questions on gitter :)

johnynek commented 6 years ago

Importing the old style may be the easiest fix. I don’t know what @LukaJCB had in mind. Honestly I was never crazy about this super inheritance driven approach but it is what we have I guess.

MansurAshraf commented 6 years ago

Hey guys,

Sorry to bump this thread but we have projects that are heavily using cats and Algebird which in turn depends on Algebra 0.7.0 and older version of cats. Using cats RC1 with current version of Algebra/Algebird is polluting our build with eviction notice and making some folks nervous about subtle binary compatibility issues. Do we have any timeline on when Algebra will be upgraded to cats rc1. I am hoping Algebird will upgrade to newer Algebra soon after that

[warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[warn]  * org.typelevel:cats-kernel_2.11:1.0.0-RC1 is selected over 0.9.0
[warn]      +- org.typelevel:cats-core_2.11:1.0.0-RC1 ()          (depends on 1.0.0-RC1)
[warn]      +- org.typelevel:algebra_2.11:0.7.0 ()                (depends on 0.9.0)
[warn] Run 'evicted' to see detailed eviction warnings
MansurAshraf commented 6 years ago

I noticed after writing the message that this PR is already merged with cats 1.0-MF. Do we know when next release will be cut?