-
Notifications
You must be signed in to change notification settings - Fork 58
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
chore(deps): Update Scala, sbt and JDK #443
base: master
Are you sure you want to change the base?
chore(deps): Update Scala, sbt and JDK #443
Conversation
Thanks for the PR, I'm just afraid it can't go as is, because you are changing too many different things (CI, SBT, benchmarks, platform versions) and suites like this are rather sensitive when it comes to version numbers.
|
Thanks for the infos, did I catch/revert everything? |
I updated all dependencies, the only one changing the Java version was ASM 9.7 (8 to 11). |
"com.h2database" % "h2-mvstore" % "2.2.224", | ||
"net.openhft" % "chronicle-map" % "3.22.9", | ||
"net.openhft" % "chronicle-map" % "3.23.5", | ||
"net.openhft" % "affinity" % "3.23.3", // required by chronicle-map 3.23.5 |
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.
Doesn't chronicle-map
pickup the affinity
dependency automatically?
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.
For me it didn't build anymore, they have a strange dependency management... ymmv, just remove this line and try yourself 😅
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.
Various missing BOMs (or what not) was the reason I did not update to the latest versions previously (for release 0.15) and stuck to the versions SBT was able to build with.
// scala3-compiler_3 3.3.1 is the last dotty version to support JDK 21 | ||
// https://bugs.openjdk.org/browse/JDK-8308050 | ||
// https://github.com/scala/scala3/commit/f77069a74c4df65c7f69a6476aeb6b52fa8acb48 |
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 don't understand the comment, perhaps you meant "the least version to support JDK21"?
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.
As far as I understood this mess, dotty 3.3.1 is the last version to support JDK 21, everything newer broke my builds.
But be my guest and try 3.3.2 or 3.3.3 yourself, maybe you have more luck 😅
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.
@@ -414,6 +417,9 @@ lazy val scalaDottyBenchmarks = (project in file("benchmarks/scala-dotty")) | |||
// Version 3.1.2 was the last to compile with Scala 2.13.11. Version 3.1.3-RC2 | |||
// broke compilation due to "Unsupported Scala 3 union in parameter value". | |||
// Compiling with Scala 3.1.0+ avoids compatibility issues. | |||
// scala3-compiler_3 3.3.1 is the last dotty version to support JDK 21 | |||
// https://bugs.openjdk.org/browse/JDK-8308050 | |||
// https://github.com/scala/scala3/commit/f77069a74c4df65c7f69a6476aeb6b52fa8acb48 | |||
"org.scala-lang" % "scala3-compiler_3" % "3.3.1", |
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.
Perhaps this could be replaced with scalaVersion3
. I think the explicit version is a leftover from the time we used dotty3 with Scala 2.13.
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.
OK, with respect to the above, we may need to keep scala3-compiler_3
version separate from scalaVersion3
. How odd.
Yes please, strip the executable bit from the |
In general, this is going in the right direction, thank you! I would appreciate if you could split off the (SBT + CI) update and the benchmark dependency updates into two separate PRs. Also, in the PR with benchmark platform/dependency updates, could you please list the platform (i.e. Scala) and the primary dependency updates per benchmark in the PR message? This is to make version changes easier to see, because they are not just a chore. I often end up with separate commits for primary dependency updates to individual benchmarks and prior to release I try to unify the versions of common (second-level) dependencies. But given that the CI is not complaining now, I'm fine with the bundle :-) |
Updates:
Improvements:
I could build with JDK 21, can you double-check?
https://docs.scala-lang.org/overviews/jdk-compatibility/overview.html#scala-compatibility-table
Then you could add 21 to the matrix 😅