This is a thread to discuss plans and share progress on Scala 2.13.3.
2.13.2 has no single regression bad enough to require rushing out 2.13.3, but there are enough smaller regressions that it makes sense not to wait too long, either.
I’ve set the rough target date on the 2.13.3 milestone to June 1. I also created a 2.13.4 milestone, with a rough date in August.
Most open PRs have been moved to the 2.13.4 milestone, but some of those could still make 2.13.3, depending on risk vs. benefit.
Links helpful for seeing how 2.13.3 is shaping up:
I’m wondering about the added deprecations. This version is fastracked because some users experienced troubles upgrading. Introducing more deprecations now seems counterproductive.
We are winding up work on 2.13.3. There are still some in-flight issues and PRs, so I’ve pushed the date on the milestone forward to June 8. (And, it might slip again.)
The links in the first post in this topic are still usable for seeing how the release is shaping up.
Re: deprecations, in the release notes we’ll include the appropriate
@nowarn incantations for suppressing them, to ease the upgrade. (We hope upgraders won’t leave them suppressed indefinitely, but the suppression can be useful for upgrading in stages.)
Barring something very unexpected suddenly popping up, we will build 2.13.3 this week.
The community build uncovered several late-breaking regressions, including one that actually originated on the 2.12.x branch. It’ll take a few days to first push fixes through on both the 2.12.x and 2.13.x branches, and then also push those fixes through the community build, so we’re looking at early next week now for building. (Assuming nothing else crops up…)
For those who like to watch the release checkboxes get checked : https://github.com/scala/scala-dev/issues/712
We’re still chasing down the last few open tickets.
One exciting development is that Jason’s big async PR https://github.com/scala/scala/pull/8816 (“Compiler support for scala-async”) has now landed and will be included in both 2.12.12 and 2.13.3 — behind a flag, so it’s a safe change. I expect there will be a blog post devoted to this, but in the meantime, there’s a good deal of info in the PR description.
Milestones closed — release candidate is 2.13.3-bin-98b9a1c — community build is running now — with luck, we can release tomorrow (Wednesday)
The Scala.js nightly build passed, and, after deactivating lots of fatal warnings (see below), so did the build of v1.1.0.
set Seq(library, javalib, javalanglib, testInterface, jUnitRuntime, testBridge).map(p => scalacOptions in p.v2_13 -= "-Xfatal-warnings") :+ (scalacOptions in (compiler.v2_13, Test) -= "-Xfatal-warnings")
Jason found a recent regression in the thread safety of runtime reflection. Fix: https://github.com/scala/scala/pull/9080.
A map ordering problem also turned up, present at least since 2.13.0, but an easy/safe fix to include since we’re rebuilding anyway.
Both fixes are now merged. The second release candidate is 2.13.3-bin-d23424c. Community build is now re-running. Hopefully we can release on Thursday.
2.13.3 JARs are on Maven Central. No changes since 2.13.3-bin-d23424c
Still in process: website updates, announcements, etc
The compiler plugins of Scala.js 0.6.33, 1.0.0, 1.0.1 and 1.1.0 are on their way to Maven Central, with support for Scala 2.13.3.
Websites updated, announcements announced.
The API docs didn’t entirely arrive on the site, working on that.
Just tried out 2.13.3 and all looks well except this annoying error message everytime we compile
[error] ‘nullary-override’ is not a valid choice for ‘-Xlint’
We use sbt-tpolecat for all the scalac compiler options. Was this flag removed? (didn’t find it in the release notes)
Oops, that should have been mentioned in the release notes. It is now! Thank you.