From b82d148b3005db5ec91400e5b07bfa868bdcc143 Mon Sep 17 00:00:00 2001 From: Piotr Chabelski Date: Wed, 5 Nov 2025 13:34:26 +0100 Subject: [PATCH 1/3] Bump Scala 3 Next to 3.7.4 --- project/deps/package.mill.scala | 17 +++++++++-------- website/docs/reference/cli-options.md | 2 +- .../reference/scala-command/cli-options.md | 2 +- .../scala-command/runner-specification.md | 18 +++++++++--------- website/docs/reference/scala-versions.md | 2 +- 5 files changed, 21 insertions(+), 20 deletions(-) diff --git a/project/deps/package.mill.scala b/project/deps/package.mill.scala index 0f9394ee34..df01fbe2e0 100644 --- a/project/deps/package.mill.scala +++ b/project/deps/package.mill.scala @@ -10,14 +10,15 @@ object Cli { } object Scala { - def scala212 = "2.12.20" - def scala213 = "2.13.17" - def scala3LtsPrefix = "3.3" // used for the LTS version tags - def scala3Lts = s"$scala3LtsPrefix.7" // the LTS version currently used in the build - def runnerScala3 = scala3Lts - def scala3NextPrefix = "3.7" - def scala3Next = s"$scala3NextPrefix.3" // the newest/next version of Scala - def scala3NextAnnounced = scala3Next // the newest/next version of Scala that's been announced + def scala212 = "2.12.20" + def scala213 = "2.13.17" + def scala3LtsPrefix = "3.3" // used for the LTS version tags + def scala3Lts = s"$scala3LtsPrefix.7" // the LTS version currently used in the build + def runnerScala3 = scala3Lts + def scala3NextPrefix = "3.7" + def scala3Next = s"$scala3NextPrefix.4" // the newest/next version of Scala + def scala3NextAnnounced = + s"$scala3NextPrefix.3" // the newest/next version of Scala that's been announced def scala3NextRc = s"$scala3NextPrefix.4-RC3" // the latest RC version of Scala Next def scala3NextRcAnnounced = s"$scala3NextPrefix.4-RC1" // the latest announced RC version of Scala Next diff --git a/website/docs/reference/cli-options.md b/website/docs/reference/cli-options.md index 919c5c2fbd..d769cc0e49 100644 --- a/website/docs/reference/cli-options.md +++ b/website/docs/reference/cli-options.md @@ -1601,7 +1601,7 @@ Available in commands: Aliases: `-S`, `--scala` -Set the Scala version (3.7.3 by default) +Set the Scala version (3.7.4 by default) ### `--scala-binary-version` diff --git a/website/docs/reference/scala-command/cli-options.md b/website/docs/reference/scala-command/cli-options.md index 44ccb4c197..1dc7633db9 100644 --- a/website/docs/reference/scala-command/cli-options.md +++ b/website/docs/reference/scala-command/cli-options.md @@ -1016,7 +1016,7 @@ Aliases: `-S`, `--scala` `MUST have` per Scala Runner specification -Set the Scala version (3.7.3 by default) +Set the Scala version (3.7.4 by default) ### `--scala-binary-version` diff --git a/website/docs/reference/scala-command/runner-specification.md b/website/docs/reference/scala-command/runner-specification.md index b09fe63dfb..39f07e71fa 100644 --- a/website/docs/reference/scala-command/runner-specification.md +++ b/website/docs/reference/scala-command/runner-specification.md @@ -92,7 +92,7 @@ Aliases: `-P` ,`--plugin` **--scala-version** -Set the Scala version (3.7.3 by default) +Set the Scala version (3.7.4 by default) Aliases: `-S` ,`--scala` @@ -882,7 +882,7 @@ Aliases: `-P` ,`--plugin` **--scala-version** -Set the Scala version (3.7.3 by default) +Set the Scala version (3.7.4 by default) Aliases: `-S` ,`--scala` @@ -1491,7 +1491,7 @@ Aliases: `-P` ,`--plugin` **--scala-version** -Set the Scala version (3.7.3 by default) +Set the Scala version (3.7.4 by default) Aliases: `-S` ,`--scala` @@ -2114,7 +2114,7 @@ Aliases: `-P` ,`--plugin` **--scala-version** -Set the Scala version (3.7.3 by default) +Set the Scala version (3.7.4 by default) Aliases: `-S` ,`--scala` @@ -2762,7 +2762,7 @@ Aliases: `-P` ,`--plugin` **--scala-version** -Set the Scala version (3.7.3 by default) +Set the Scala version (3.7.4 by default) Aliases: `-S` ,`--scala` @@ -3398,7 +3398,7 @@ Aliases: `-P` ,`--plugin` **--scala-version** -Set the Scala version (3.7.3 by default) +Set the Scala version (3.7.4 by default) Aliases: `-S` ,`--scala` @@ -4053,7 +4053,7 @@ Aliases: `-P` ,`--plugin` **--scala-version** -Set the Scala version (3.7.3 by default) +Set the Scala version (3.7.4 by default) Aliases: `-S` ,`--scala` @@ -4780,7 +4780,7 @@ Aliases: `-P` ,`--plugin` **--scala-version** -Set the Scala version (3.7.3 by default) +Set the Scala version (3.7.4 by default) Aliases: `-S` ,`--scala` @@ -5757,7 +5757,7 @@ Aliases: `-P` ,`--plugin` **--scala-version** -Set the Scala version (3.7.3 by default) +Set the Scala version (3.7.4 by default) Aliases: `-S` ,`--scala` diff --git a/website/docs/reference/scala-versions.md b/website/docs/reference/scala-versions.md index 26087519ab..e515cf79f9 100644 --- a/website/docs/reference/scala-versions.md +++ b/website/docs/reference/scala-versions.md @@ -34,5 +34,5 @@ it is recommended to update scala-cli. | 1.8.1 - 1.8.4 | 3.7.1 | 2.13.16 | 2.12.20 | | 1.8.5 - 1.9.0 | 3.7.2 | 2.13.16 | 2.12.20 | | 1.9.1 | 3.7.3 | 2.13.16 | 2.12.20 | -| 1.10.0 - current | 3.7.3 | 2.13.17 | 2.12.20 | +| 1.10.0 - current | 3.7.4 | 2.13.17 | 2.12.20 | From 5a410fc196a379503da88744f05fca765b5b5c00 Mon Sep 17 00:00:00 2001 From: Piotr Chabelski Date: Thu, 6 Nov 2025 14:49:59 +0100 Subject: [PATCH 2/3] Work around Scala 3.7.4 missing from `maven-metadata.xml` --- build.mill.scala | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/build.mill.scala b/build.mill.scala index 5a49dbf935..0f6a0513de 100644 --- a/build.mill.scala +++ b/build.mill.scala @@ -326,7 +326,14 @@ trait BuildMacros extends ScalaCliCrossSbtModule val sv = scalaVersion() def compile(extraSources: os.Path*): os.CommandResult = - os.proc("scala-cli", "compile", "-S", sv, cpsSource, extraSources).call( + os.proc( + "scala-cli", + "--cli-default-scala-version", + sv, + "compile", + cpsSource, + extraSources + ).call( check = false, mergeErrIntoOut = true, cwd = Task.workspace From 68596967bd9e8ff163e198b875d1d3ace4e74e36 Mon Sep 17 00:00:00 2001 From: Piotr Chabelski Date: Thu, 6 Nov 2025 21:22:33 +0100 Subject: [PATCH 3/3] Don't run integration tests with scala wrapper on unannounced Scala 3 Next versions --- .../test/scala/scala/cli/integration/BspTestDefinitions.scala | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/integration/src/test/scala/scala/cli/integration/BspTestDefinitions.scala b/modules/integration/src/test/scala/scala/cli/integration/BspTestDefinitions.scala index be719a1111..15eefd1557 100644 --- a/modules/integration/src/test/scala/scala/cli/integration/BspTestDefinitions.scala +++ b/modules/integration/src/test/scala/scala/cli/integration/BspTestDefinitions.scala @@ -2270,7 +2270,8 @@ abstract class BspTestDefinitions extends ScalaCliSuite useScalaWrapper <- Seq(false, true) if actualScalaVersion.coursierVersion >= "3.5.0".coursierVersion scalaVersion = - if (actualScalaVersion == Constants.scala3NextRc) Constants.scala3NextRcAnnounced + if actualScalaVersion == Constants.scala3NextRc then Constants.scala3NextRcAnnounced + if actualScalaVersion == Constants.scala3Next then Constants.scala3NextAnnounced else actualScalaVersion withLauncher = (root: os.Path) => (f: Seq[os.Shellable] => Unit) =>