Skip to content

Commit eaa671e

Browse files
authored
Bump coursier to 2.1.25-M19 (#3884)
* Bump `coursier` to 2.1.25-M19 * Require Java 11+ for the initial launch of Scala CLI JVM launchers * Fix sclicheck to use the up-to-date `coursier-cli` * Bump Bloop to 2.0.15 * Fix `DocTests`
1 parent 67a0690 commit eaa671e

File tree

17 files changed

+78
-53
lines changed

17 files changed

+78
-53
lines changed

.github/scripts/build-linux-aarch64.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" &> /dev/null && pwd)"
66

77
mkdir -p artifacts
88
mkdir -p utils
9-
cp "$(cs get https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.24/cs-aarch64-pc-linux.gz --archive)" utils/cs
9+
cp "$(cs get https://github.com/coursier/coursier/releases/download/v2.1.25-M19/cs-aarch64-pc-linux.gz --archive)" utils/cs
1010
chmod +x utils/cs
1111

1212
cp "$DIR/build-linux-aarch64-from-docker.sh" utils/

.github/scripts/get-latest-cs.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/usr/bin/env bash
22
set -e
33

4-
CS_VERSION="2.1.24"
4+
CS_VERSION="2.1.25-M19"
55

66
DIR="$(cs get --archive "https://github.com/coursier/coursier/releases/download/v$CS_VERSION/cs-x86_64-pc-win32.zip")"
77

build.mill.scala

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package build
22

33
import $packages._
44
import $ivy.`com.lihaoyi::mill-contrib-bloop:$MILL_VERSION`
5-
import $ivy.`io.get-coursier::coursier-launcher:2.1.24`
5+
import $ivy.`io.get-coursier::coursier-launcher:2.1.25-M19`
66
import $ivy.`io.github.alexarchambault.mill::mill-native-image-upload:0.1.31-1`
77
import build.ci.publishVersion
88
import build.project.deps
@@ -130,6 +130,7 @@ object `scala-cli-bsp` extends JavaModule with ScalaCliPublishModule {
130130
object integration extends CliIntegration {
131131
object test extends IntegrationScalaTests {
132132
override def ivyDeps: T[Loose.Agg[Dep]] = super.ivyDeps() ++ Seq(
133+
Deps.coursierArchiveCache,
133134
Deps.jgit,
134135
Deps.jsoup
135136
)
@@ -514,6 +515,7 @@ trait Core extends ScalaCliCrossSbtModule
514515
| def typelevelToolkitDefaultVersion = "${Deps.typelevelToolkitVersion}"
515516
| def typelevelToolkitMaxScalaNative = "${Deps.Versions.maxScalaNativeForTypelevelToolkit}"
516517
|
518+
| def minimumLauncherJavaVersion = ${Java.minimumJavaLauncherJava}
517519
| def minimumBloopJavaVersion = ${Java.minimumBloopJava}
518520
| def minimumInternalJavaVersion = ${Java.minimumInternalJava}
519521
| def defaultJavaVersion = ${Java.defaultJava}
@@ -880,6 +882,7 @@ trait Cli extends CrossSbtModule with ProtoBuildModule with CliLaunchers
880882
|object Constants {
881883
| def defaultScalaVersion = "${Scala.defaultUser}"
882884
| def defaultJavaVersion = ${Java.defaultJava}
885+
| def minimumLauncherJavaVersion = ${Java.minimumJavaLauncherJava}
883886
| def minimumBloopJavaVersion = ${Java.minimumBloopJava}
884887
| def scalaJsVersion = "${Scala.scalaJs}"
885888
| def scalaJsCliVersion = "${Scala.scalaJsCli}"
@@ -1060,6 +1063,7 @@ trait CliIntegration extends SbtModule with ScalaCliPublishModule with HasTests
10601063
| def cliVersion = "${publishVersion()}"
10611064
| def allJavaVersions = Seq(${Java.allJavaVersions.sorted.mkString(", ")})
10621065
| def bspVersion = "${Deps.bsp4j.dep.versionConstraint.asString}"
1066+
| def minimumLauncherJavaVersion = ${Java.minimumJavaLauncherJava}
10631067
| def bloopMinimumJvmVersion = ${Java.minimumBloopJava}
10641068
| def minimumInternalJvmVersion = ${Java.minimumInternalJava}
10651069
| def defaultJvmVersion = ${Java.defaultJava}

mill

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
# Adapted from
44

5-
coursier_version="2.1.24"
5+
coursier_version="2.1.25-M19"
66
COMMAND=$@
77

88
# necessary for Windows various shell environments
@@ -17,9 +17,8 @@ if [ "$(expr substr $(uname -s) 1 5 2>/dev/null)" == "Linux" ]; then
1717
fi
1818
cache_base="$HOME/.cache/coursier/v1"
1919
elif [ "$(uname)" == "Darwin" ]; then
20-
# TODO: remove once coursier-m1 and coursier mainline are merged
2120
if [ "$(uname -p)" == "arm" ]; then
22-
cs_url="https://github.com/VirtusLab/coursier-m1/releases/download/v$coursier_version/cs-aarch64-apple-darwin.gz"
21+
cs_url="https://github.com/coursier/coursier/releases/download/v$coursier_version/cs-aarch64-apple-darwin.gz"
2322
else
2423
cs_url="https://github.com/coursier/coursier/releases/download/v$coursier_version/cs-x86_64-apple-darwin.gz"
2524
fi

modules/build/src/main/scala/scala/build/Directories.scala

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
package scala.build
22

3-
import coursier.cache.shaded.dirs.ProjectDirectories
4-
import coursier.cache.shaded.dirs.impl.Windows
5-
import coursier.cache.shaded.dirs.jni.WindowsJni
3+
import coursier.paths.shaded.dirs.ProjectDirectories
4+
import coursier.paths.shaded.dirs.impl.Windows
5+
import coursier.paths.shaded.dirs.jni.WindowsJni
66

77
import java.util.function.Supplier
88

modules/cli/src/main/scala/scala/cli/ScalaCli.scala

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,18 @@ object ScalaCli {
272272
val newArgs = powerArgs ++ finalScalaRunnerArgs ++ args0
273273
LauncherCli.runAndExit(ver, launcherOpts, newArgs)
274274
case _ if
275-
javaMajorVersion < Constants.minimumBloopJavaVersion
275+
javaMajorVersion < Constants.minimumLauncherJavaVersion
276+
&& sys.props.get("scala-cli.kind").exists(_.startsWith("jvm")) =>
277+
System.err.println(
278+
s"[${Console.RED}error${Console.RESET}] Java $javaMajorVersion is not supported with this Scala CLI (JVM) launcher."
279+
)
280+
System.err.println(
281+
s"[${Console.RED}error${Console.RESET}] Please upgrade to at least Java ${Constants.minimumLauncherJavaVersion} or use a native Scala CLI launcher instead."
282+
)
283+
sys.exit(1)
284+
case _ if
285+
javaMajorVersion >= Constants.minimumLauncherJavaVersion
286+
&& javaMajorVersion < Constants.minimumBloopJavaVersion
276287
&& sys.props.get("scala-cli.kind").exists(_.startsWith("jvm")) =>
277288
JavaLauncherCli.runAndExit(args)
278289
case None =>

modules/docs-tests/src/main/scala/sclicheck/sclicheck.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,7 @@ def checkFile(file: os.Path, options: Options): Unit =
207207
createHelperScript(options.scalaCliCommand, "scala-cli")
208208
createHelperScript(options.scalaCliCommand, "scala")
209209
val coursierCliDep =
210-
s"${Constants.coursierOrg}:${Constants.coursierCliModule}:${Constants.coursierCliVersion}"
210+
s"${Constants.coursierOrg}:${Constants.coursierCliModule}_3:${Constants.coursierCliVersion}"
211211
createHelperScript(
212212
options.scalaCliCommand ++ Seq(
213213
"run",

modules/docs-tests/src/test/scala/sclicheck/DocTests.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import java.util.concurrent.TimeUnit
55
import scala.concurrent.duration.FiniteDuration
66

77
class DocTests extends munit.FunSuite {
8-
override def munitTimeout = new FiniteDuration(480, TimeUnit.SECONDS)
8+
override def munitTimeout = new FiniteDuration(600, TimeUnit.SECONDS)
99
case class DocTestEntry(name: String, path: os.Path, depth: Int = Int.MaxValue)
1010

1111
val docsRootPath: os.Path = os.Path(sys.env("MILL_WORKSPACE_ROOT")) / "website" / "docs"

modules/integration/src/test/scala/scala/cli/integration/BspTestDefinitions.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2258,9 +2258,10 @@ abstract class BspTestDefinitions extends ScalaCliSuite
22582258
)
22592259
.fromRoot { root =>
22602260
withLauncher(root) { launcher =>
2261+
val jvmIndex = if (TestUtil.isJvmCli) Constants.minimumLauncherJavaVersion else 8
22612262
val javaHome =
22622263
os.Path(
2263-
os.proc(TestUtil.cs, "java-home", "--jvm", "zulu:8").call().out.trim(),
2264+
os.proc(TestUtil.cs, "java-home", "--jvm", jvmIndex).call().out.trim(),
22642265
os.pwd
22652266
)
22662267
os.proc(launcher, "setup-ide", scriptName, extraOptions)

modules/integration/src/test/scala/scala/cli/integration/ExportJsonTestDefinitions.scala

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ abstract class ExportJsonTestDefinitions extends ScalaCliSuite with TestScalaVer
1111
json
1212
.replaceAll("\\s", "")
1313
.replaceAll(
14-
"ivy:file:[^\"]*(scalacli|ScalaCli)[^\"]*/local-repo[^\"]*",
15-
"ivy:file:.../scalacli/local-repo/..."
14+
"ivy:file:[^\"]*/local-repo/[^\"]*",
15+
"ivy:file:.../local-repo/..."
1616
)
1717
.replaceAll(
1818
"ivy:file:[^\"]*\\.ivy2/local[^\"]*",
@@ -70,7 +70,7 @@ abstract class ExportJsonTestDefinitions extends ScalaCliSuite with TestScalaVer
7070
| ],
7171
| "resolvers": [
7272
| "https://repo1.maven.org/maven2",
73-
| "ivy:file:.../scalacli/local-repo/...",
73+
| "ivy:file:.../local-repo/...",
7474
| "ivy:file:.../.ivy2/local/"
7575
| ]
7676
| }
@@ -139,7 +139,7 @@ abstract class ExportJsonTestDefinitions extends ScalaCliSuite with TestScalaVer
139139
| ],
140140
| "resolvers": [
141141
| "https://repo1.maven.org/maven2",
142-
| "ivy:file:.../scalacli/local-repo/...",
142+
| "ivy:file:.../local-repo/...",
143143
| "ivy:file:.../.ivy2/local/"
144144
| ]
145145
| }], [
@@ -170,7 +170,7 @@ abstract class ExportJsonTestDefinitions extends ScalaCliSuite with TestScalaVer
170170
| "resolvers": [
171171
| "https://oss.sonatype.org/content/repositories/snapshots",
172172
| "https://repo1.maven.org/maven2",
173-
| "ivy:file:.../scalacli/local-repo/...",
173+
| "ivy:file:.../local-repo/...",
174174
| "ivy:file:.../.ivy2/local/"
175175
| ],
176176
| "resourceDirs":["${withEscapedBackslashes(root / "resources")}"],
@@ -250,7 +250,7 @@ abstract class ExportJsonTestDefinitions extends ScalaCliSuite with TestScalaVer
250250
| ],
251251
| "resolvers": [
252252
| "https://repo1.maven.org/maven2",
253-
| "ivy:file:.../scalacli/local-repo/...",
253+
| "ivy:file:.../local-repo/...",
254254
| "ivy:file:.../.ivy2/local/"
255255
| ]
256256
| }

0 commit comments

Comments
 (0)