Skip to content
This repository was archived by the owner on Feb 8, 2022. It is now read-only.

Update Cats Version and Other Compatible Shifts - #204

Merged
johnynek merged 6 commits into
typelevel:masterfrom
ChristopherDavenport:catsUpdate
Oct 4, 2017
Merged

Update Cats Version and Other Compatible Shifts#204
johnynek merged 6 commits into
typelevel:masterfrom
ChristopherDavenport:catsUpdate

Conversation

@ChristopherDavenport

Copy link
Copy Markdown
Member

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.

@johnynek johnynek left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks for sending this.

Comment thread .travis.yml Outdated
matrix:
include:
- scala: 2.12.0
- scala: 2.12.1

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why not bump to 2.12.3?

Comment thread build.sbt Outdated
organization := "org.typelevel",
scalaVersion := "2.12.1",
crossScalaVersions := Seq("2.10.6", "2.11.8", "2.12.1")
crossScalaVersions := Seq("2.10.6", "2.11.11", "2.12.1")

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we change to 2.12.3 here?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So the dilemma is that these require scala-js changes which require changes to your build.sbt.

I didn't want to do that on the original PR in case you wanted to have a minimal dependency shift, however I can get these done.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Apparently so did, 2.11.11 so it needed to be done either way.

@ChristopherDavenport

Copy link
Copy Markdown
Member Author

Sorry about the sloppy git.

@johnynek

Copy link
Copy Markdown
Contributor

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

@johnynek

Copy link
Copy Markdown
Contributor

👍

lgtm

I honestly don't know anything about scalajs so this is a bit like shooting in the dark.
@ChristopherDavenport

ChristopherDavenport commented Sep 19, 2017

Copy link
Copy Markdown
Member Author

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

Copy link
Copy Markdown
Contributor

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

@ChristopherDavenport

Copy link
Copy Markdown
Member Author

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

codecov-io commented Sep 19, 2017

Copy link
Copy Markdown

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%) ⬇️
core/src/main/scala/algebra/ring/Ring.scala 97.29% <0%> (-2.71%) ⬇️
core/src/main/scala/algebra/ring/Additive.scala 42.85% <0%> (-1.59%) ⬇️

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

Copy link
Copy Markdown
Contributor

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

coltfred commented Oct 3, 2017

Copy link
Copy Markdown
Contributor

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

@johnynek

johnynek commented Oct 4, 2017

Copy link
Copy Markdown
Contributor

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

@johnynek
johnynek merged commit a17de00 into typelevel:master Oct 4, 2017
@coltfred

coltfred commented Oct 5, 2017

Copy link
Copy Markdown
Contributor

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

@johnynek

johnynek commented Oct 5, 2017

Copy link
Copy Markdown
Contributor

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

@ChristopherDavenport
ChristopherDavenport deleted the catsUpdate branch October 5, 2017 20:13
@coltfred

Copy link
Copy Markdown
Contributor

@johnynek Ping!

@johnynek

johnynek commented Oct 14, 2017 via email

Copy link
Copy Markdown
Contributor

@coltfred

coltfred commented Nov 2, 2017

Copy link
Copy Markdown
Contributor

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

@johnynek

johnynek commented Nov 2, 2017

Copy link
Copy Markdown
Contributor

seems like a good plan!

@johnynek

johnynek commented Nov 3, 2017

Copy link
Copy Markdown
Contributor

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

@johnynek

johnynek commented Nov 3, 2017

Copy link
Copy Markdown
Contributor

typelevel/cats#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

johnynek commented Nov 3, 2017

Copy link
Copy Markdown
Contributor

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

Copy link
Copy Markdown
Contributor

@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

LukaJCB commented Nov 3, 2017

Copy link
Copy Markdown
Member

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

johnynek commented Nov 4, 2017

Copy link
Copy Markdown
Contributor

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

Copy link
Copy Markdown

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

Copy link
Copy Markdown

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?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants