Skip to content

Scala 2.12.16

Compare
Choose a tag to compare
@SethTisue SethTisue released this 10 Jun 15:02
· 9683 commits to 2.13.x since this release
v2.12.16
c850a83

This release improves compatibility with recent JDKs:

  • Use ASM 9.3, enabling JDK 19 support (#10000)
  • Make -target support JDK 8 through 19 (and deprecate 5 through 7) (#9916)
  • Fix codegen for MethodHandle.invoke (et al) under JDK 17 -release (#9930)
  • Deprecate AnyVal#formatted(formatString), to avoid conflict with JDK 15+ method (#9783)

and aids cross-compiling with Scala 3:

  • Allow ? as a wildcard even without -Xsource:3 (#10005)

and improves security and error reporting:

  • For security, error on source files with Unicode directional formatting characters (#10023, #10030)
  • Fix range position end for infix calls (#9761)

For complete 2.12.16 change lists, see all merged PRs and all closed bugs.

Known issue

Scala 2.12.16 contains a regression that was discovered after the artifacts were published. Only mixed compilation of Scala and Java source files together is affected, and only when the Scala code contains references to certain nested classes in the Java sources. The problem manifests as a compile-time type error. Follow link for details and workarounds. We'll fix the problem in Scala 2.12.17 which we expect to release in a few months.

Compatibility

As usual for our minor releases, Scala 2.12.16 is binary-compatible with the whole Scala 2.12 series.

Contributors

A big thank you to everyone who's helped improve Scala by reporting bugs, improving our documentation, spreading kindness in discussions around Scala, and submitting and reviewing pull requests! You are all magnificent.

This release was brought to you by 18 contributors, according to git shortlog -sn --no-merges @ ^v2.12.15 ^2.11.x. Thank you Scala Steward, Seth Tisue, Lukas Rytz, Sébastien Doeraene, A. P. Marki, Daniel Le, Jason Zaugg, Guillaume Martres, Frank Thomas, Philippus, Daniela Sfregola, Dale Wijnand, Vadzim Marchanka, hepin.p, naferx, Fredrik Svensson, Štefan Jurčo, Georgi Krastev.

Thanks to Lightbend for their continued sponsorship of the Scala core team’s efforts. Lightbend offers commercial support for Scala.

Scala 2.12 notes

The release notes for Scala 2.12.0 have important information applicable to the whole 2.12 series.

Obtaining Scala

Scala releases are available through a variety of channels, including (but not limited to):