1.7.0-M2
Pre-releaseScala 3 forward compatibility support
sbt 1.7.0 implements support for Scala 3.1.2's improved forward compatibility feature.
ThisBuild / scalaVersion := "3.1.2"
ThisBuild / scalaOutputVersion := "3.0.2"
This sets the -scala-output-version
compiler option to 3.0
, which lets us generate TASTy files and bytecode compatible with older Scala 3.x versions, while using newer Scala 3.x compiler at runtime. In addition, runtime Scala version and POM entries are also downgraded to 3.0.2
.
The sbt support for this was contributed by Michał Pałka at VirtusLab as #6814.
Scala 3 compiler error improvements
In zinc#1082, Toshiyuki Takahashi contributed a fix to ignore Problem#rendered
passed from the compiler when sbt uses position mapper to transform the position. This is aimed at fixing the error reporting for Play on Scala 3.
In #6874, Chris Kipp extended xsbti.Problem
to track richer information available in Scala 3. This is aimed at enhancing the compilation errors reported to BSP client such as Metals.
BSP updates
- Fixes sbt sending cumulative
build/publishDiagnostics
in BSP #6847 by @tanishiking - Adds optional framework field to the BSP response #6830 by @kpodsiad
- Adds BSP environment request support #6858 by @kpodsiad
Other updates
- Fixes command argument parsing with quotes in
-a="b c"
pattern #6816 by @Nirvikalpa108 - Fixes
ThisBuild / includePluginResolvers
#6849 by @bjaglin - Fixes watchOnTermination callbacks #6870 by @eatkins
Full Changelog: v1.6.2...v1.7.0-M2