Scala 2.12.3
Changes
- Compiler performance has improved significantly and is now automatically benchmarked after each change.
- A new optimizer setting
-opt-inline-from
limits the classes from which the inliner will copy code.scalac -opt-inline-from:help
provides detailed help. - The presentation compiler has improved support for implicit macros, which should improve the experience with libraries based on Shapeless. It also has better support for code completion for dependently typed methods.
Further significant changes since 2.12.2 include:
- #5978 Avoid calling static initializers when reflecting on Java classes
- #5964 New setting
-opt-inline-from
to control where to inline from - #5931 Upgrade to jline 2.14.4
- #5880 bundle newer scala-parser-combinators (1.0.5->1.0.6)
- #5879 -Xlint:unused -Ywarn-unused is intuitive
- #5848 add per-phase profiling to scalac
For more information, check out all closed bugs and merged PRs.
As usual for minor releases, Scala 2.12.3 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 49 contributors, according to git shortlog -sn --no-merges v2.12.2..v2.12.3
. Thank you, Jason Zaugg, Lukas Rytz, Som Snytt, Dale Wijnand, Janek Bogucki, Adriaan Moors, Seth Tisue, Earl St Sauver, Eugene Yokota, Mike Skells, Miles Sabin, Iulian Dragos, 杨博 (Yang Bo), Cody Allen, Harrison Houghton, Jasper Moeys, xuwei-k, Ganesh Prasad Kumble, Rory Graves, Rui Gonçalves, Sayyed, Atiq (Agoda), BrianLondon, Arnout Engelen, chengpohi, joymufeng, kenji yoshida, Adrien Suree, Edmund Noble!
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):
- Bump the
scalaVersion
setting in your sbt-based project - Download a distribution from scala-lang.org
- Obtain JARs via Maven Central