Coming soon: Scala 2.12.11, Scala 2.13.2

Macro Paradise 2.1.1 is also available, I hope I did everything right when publishing that release.

https://repo1.maven.org/maven2/org/scalamacros/paradise_2.12.11/

2 Likes

2.12.11: The official announcement went out. No reports of regressions have come in.

2.13.2:

The new-Vector PR (https://github.com/scala/scala/pull/8534) and the configurable-warnings PR (https://github.com/scala/scala/pull/8373) have both landed. As of a few moments ago, https://raw.githubusercontent.com/scala/community-builds/2.13.x/nightly.properties points to 2.13.2-bin-b4428c8.

The replacement of Vector is a big change, so that’s one that we hope the community will give some additional testing (of both correctness and performance) before release.

5 Likes

The new Vector did not manage to break Scala.js :grin:

6 Likes

9 posts were split to a new topic: new-Vector performance on Scala.js

I’ve moved the detailed discussion about the performance of the new Vector on Scala.js to a separate topic, here: new-Vector performance on Scala.js

We have now merged the JLine 3 upgrade for the REPL. That was the last big PR for 2.13.2. (A few smaller ones remain.)

Kudos to @som-snytt for doing the initial work on this; a bunch of other folks were helpful in getting it across the finish line.

We invite the community to test the new REPL. See the PR description on https://github.com/scala/scala/pull/8036 for info on what has changed.

We would especially like to know about any regressions on Windows, since most of the development work was done on Linux or MacOS, and since JLine/terminal stuff is especially finicky on Windows.

Note that there are known regressions in tab completion that we hope to address before final release. See https://github.com/scala/scala-dev/issues?q=is%3Aissue+is%3Aopen+label%3At%3Ajline3 for known issues. (Some are marked “blocker”, others aren’t.)

The JLine upgrade isn’t the only REPL change that has landed recently: -Yrepl-class-based and -Yrepl-use-magic-imports are now enabled by default, that’s https://github.com/scala/scala/pull/8748 . Among other things, this fixes the notorious issue where the REPL was prone to deadlocks (with e.g. parallel collections, but not only).

How to test:

The version to test is 2.13.2-bin-bc1cad4.

using sbt

resolvers += "scala-integration" at
  "https://scala-ci.typesafe.com/artifactory/scala-integration/"
scalaVersion := "2.13.2-bin-bc1cad4"

using scala-runners

scala-runners is a new coursier-based Scala launcher:

scala --scala-version 2.13.2-bin-bc1cad4

using coursier

cs launch scala:2.13.2-bin-bc1cad4 \
  -r https://scala-ci.typesafe.com/artifactory/scala-integration
3 Likes

Tested the new REPL a bit on my mac an a Windows VM (in bare cmd, PowerShell and ConEmu cmd), and JLine loaded and worked well (modulo the known issues that Seth mentioned).

One new issue I found is that running console a second time within an sbt session breaks (https://github.com/scala/scala-dev/issues/702).

2.13.2 update:

Things are progressing and we are converging on a release. (Perhaps by the end of the week?) No major work remains, but some miscellaneous issues and PRs are still in flight.

2.13.2-bin-018d78b includes a number of REPL fixes (related to the move to JLine 3), some of which were merged just today. There is just one remaining known blocker at https://github.com/scala/scala-dev/labels/t%3Ajline3

8 Likes