Skip to content

Commit 7fbdc25

Browse files
authored
Revert "Copy GraalVM under shorter path on Windows CI (#4917)" (#5009)
This reverts commit d2552c4. Just to see if this can fix the main build CC @alexarchambault
1 parent 498b87c commit 7fbdc25

File tree

8 files changed

+72
-108
lines changed

8 files changed

+72
-108
lines changed

build.mill

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ object Deps {
132132
val bloopConfig = mvn"ch.epfl.scala::bloop-config:1.5.5".withDottyCompat(scalaVersion)
133133

134134
val classgraph = mvn"io.github.classgraph:classgraph:4.8.179"
135-
val coursierVersion = "2.1.25-M6"
135+
val coursierVersion = "2.1.25-M4"
136136
val coursier = mvn"io.get-coursier::coursier:$coursierVersion".withDottyCompat(scalaVersion)
137137
val coursierInterface = mvn"io.get-coursier:interface:1.0.29-M1"
138138
val coursierJvm =

core/util/src/mill/util/Jvm.scala

Lines changed: 2 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -614,30 +614,12 @@ object Jvm {
614614
id: String,
615615
ctx: Option[mill.define.TaskCtx] = None,
616616
coursierCacheCustomizer: Option[FileCache[Task] => FileCache[Task]] = None,
617-
jvmIndexVersion: String = mill.api.BuildInfo.coursierJvmIndexVersion,
618-
useShortPaths: Boolean = false
617+
jvmIndexVersion: String = mill.api.BuildInfo.coursierJvmIndexVersion
619618
): Result[os.Path] = {
620619
val coursierCache0 = coursierCache(ctx, coursierCacheCustomizer)
621-
val shortPathDirOpt = Option.when(useShortPaths) {
622-
if (isWin)
623-
// On Windows, prefer to use System.getenv over sys.env (or ctx.env for
624-
// now), as the former respects the case-insensitiveness of env vars on
625-
// Windows, while the latter doesn't
626-
os.Path(System.getenv("UserProfile")) / ".mill/cache/jvm"
627-
else {
628-
val cacheBase = ctx.map(_.env)
629-
.getOrElse(sys.env)
630-
.get("XDG_CACHE_HOME")
631-
.map(os.Path(_))
632-
.getOrElse(os.home / ".cache")
633-
cacheBase / "mill/jvm"
634-
}
635-
}
636620
val jvmCache = JvmCache()
637621
.withArchiveCache(
638-
ArchiveCache()
639-
.withCache(coursierCache0)
640-
.withShortPathDirectory(shortPathDirOpt.map(_.toIO))
622+
ArchiveCache().withCache(coursierCache0)
641623
)
642624
.withIndex(jvmIndex0(ctx, coursierCacheCustomizer, jvmIndexVersion))
643625
val javaHome = JavaHome()

integration/ide/gen-idea/resources/extended/idea/mill_modules/mill-build.iml

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,21 +15,20 @@
1515
<orderEntry type="library" name="asm-9.6.jar" level="project"/>
1616
<orderEntry type="library" name="asm-commons-9.6.jar" level="project"/>
1717
<orderEntry type="library" name="asm-tree-9.6.jar" level="project"/>
18-
<orderEntry type="library" name="cache-util-2.1.25-M6.jar" level="project"/>
18+
<orderEntry type="library" name="cache-util-2.1.25-M4.jar" level="project"/>
1919
<orderEntry type="library" name="commons-codec-1.17.0.jar" level="project"/>
2020
<orderEntry type="library" name="commons-compress-1.26.2.jar" level="project"/>
2121
<orderEntry type="library" name="commons-io-2.18.0.jar" level="project"/>
2222
<orderEntry type="library" name="commons-lang3-3.16.0.jar" level="project"/>
2323
<orderEntry type="library" name="concurrent-reference-hash-map-1.1.0.jar" level="project"/>
2424
<orderEntry type="library" name="config_2.13-1.1.3.jar" level="project"/>
25-
<orderEntry type="library" name="coursier-cache_2.13-2.1.25-M6.jar" level="project"/>
26-
<orderEntry type="library" name="coursier-core_2.13-2.1.25-M6.jar" level="project"/>
27-
<orderEntry type="library" name="coursier-env_2.13-2.1.25-M6.jar" level="project"/>
28-
<orderEntry type="library" name="coursier-exec-2.1.25-M6.jar" level="project"/>
29-
<orderEntry type="library" name="coursier-jvm_2.13-2.1.25-M6.jar" level="project"/>
30-
<orderEntry type="library" name="coursier-proxy-setup-2.1.25-M6.jar" level="project"/>
31-
<orderEntry type="library" name="coursier-util_2.13-2.1.25-M6.jar" level="project"/>
32-
<orderEntry type="library" name="coursier_2.13-2.1.25-M6.jar" level="project"/>
25+
<orderEntry type="library" name="coursier-cache_2.13-2.1.25-M4.jar" level="project"/>
26+
<orderEntry type="library" name="coursier-core_2.13-2.1.25-M4.jar" level="project"/>
27+
<orderEntry type="library" name="coursier-env_2.13-2.1.25-M4.jar" level="project"/>
28+
<orderEntry type="library" name="coursier-jvm_2.13-2.1.25-M4.jar" level="project"/>
29+
<orderEntry type="library" name="coursier-proxy-setup-2.1.25-M4.jar" level="project"/>
30+
<orderEntry type="library" name="coursier-util_2.13-2.1.25-M4.jar" level="project"/>
31+
<orderEntry type="library" name="coursier_2.13-2.1.25-M4.jar" level="project"/>
3332
<orderEntry type="library" name="dependency_2.13-0.3.2.jar" level="project"/>
3433
<orderEntry type="library" name="fansi_3-0.5.0.jar" level="project"/>
3534
<orderEntry type="library" name="fastparse_3-3.1.1.jar" level="project"/>
@@ -50,7 +49,7 @@
5049
<orderEntry type="library" name="jline-native-3.29.0.jar" level="project"/>
5150
<orderEntry type="library" name="jna-5.17.0.jar" level="project"/>
5251
<orderEntry type="library" name="jna-platform-5.16.0.jar" level="project"/>
53-
<orderEntry type="library" name="jsoniter-scala-core_2.13-2.13.39.jar" level="project"/>
52+
<orderEntry type="library" name="jsoniter-scala-core_2.13-2.13.5.2.jar" level="project"/>
5453
<orderEntry type="library" name="jsr305-3.0.2.jar" level="project"/>
5554
<orderEntry type="library" name="jul-to-slf4j-1.7.30.jar" level="project"/>
5655
<orderEntry type="library" name="junit-4.13.2.jar" level="project"/>

integration/ide/gen-idea/resources/extended/idea/mill_modules/mill-build.mill-build.iml

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -17,21 +17,20 @@
1717
<orderEntry type="library" name="asm-9.8.jar" level="project"/>
1818
<orderEntry type="library" name="asm-commons-9.6.jar" level="project"/>
1919
<orderEntry type="library" name="asm-tree-9.8.jar" level="project"/>
20-
<orderEntry type="library" name="cache-util-2.1.25-M6.jar" level="project"/>
20+
<orderEntry type="library" name="cache-util-2.1.25-M4.jar" level="project"/>
2121
<orderEntry type="library" name="commons-codec-1.17.0.jar" level="project"/>
2222
<orderEntry type="library" name="commons-compress-1.26.2.jar" level="project"/>
2323
<orderEntry type="library" name="commons-io-2.18.0.jar" level="project"/>
2424
<orderEntry type="library" name="commons-lang3-3.16.0.jar" level="project"/>
2525
<orderEntry type="library" name="concurrent-reference-hash-map-1.1.0.jar" level="project"/>
2626
<orderEntry type="library" name="config_2.13-1.1.3.jar" level="project"/>
27-
<orderEntry type="library" name="coursier-cache_2.13-2.1.25-M6.jar" level="project"/>
28-
<orderEntry type="library" name="coursier-core_2.13-2.1.25-M6.jar" level="project"/>
29-
<orderEntry type="library" name="coursier-env_2.13-2.1.25-M6.jar" level="project"/>
30-
<orderEntry type="library" name="coursier-exec-2.1.25-M6.jar" level="project"/>
31-
<orderEntry type="library" name="coursier-jvm_2.13-2.1.25-M6.jar" level="project"/>
32-
<orderEntry type="library" name="coursier-proxy-setup-2.1.25-M6.jar" level="project"/>
33-
<orderEntry type="library" name="coursier-util_2.13-2.1.25-M6.jar" level="project"/>
34-
<orderEntry type="library" name="coursier_2.13-2.1.25-M6.jar" level="project"/>
27+
<orderEntry type="library" name="coursier-cache_2.13-2.1.25-M4.jar" level="project"/>
28+
<orderEntry type="library" name="coursier-core_2.13-2.1.25-M4.jar" level="project"/>
29+
<orderEntry type="library" name="coursier-env_2.13-2.1.25-M4.jar" level="project"/>
30+
<orderEntry type="library" name="coursier-jvm_2.13-2.1.25-M4.jar" level="project"/>
31+
<orderEntry type="library" name="coursier-proxy-setup-2.1.25-M4.jar" level="project"/>
32+
<orderEntry type="library" name="coursier-util_2.13-2.1.25-M4.jar" level="project"/>
33+
<orderEntry type="library" name="coursier_2.13-2.1.25-M4.jar" level="project"/>
3534
<orderEntry type="library" name="dependency_2.13-0.3.2.jar" level="project"/>
3635
<orderEntry type="library" name="fansi_3-0.5.0.jar" level="project"/>
3736
<orderEntry type="library" name="fastparse_3-3.1.1.jar" level="project"/>
@@ -51,7 +50,7 @@
5150
<orderEntry type="library" name="jline-native-3.29.0.jar" level="project"/>
5251
<orderEntry type="library" name="jna-5.17.0.jar" level="project"/>
5352
<orderEntry type="library" name="jna-platform-5.16.0.jar" level="project"/>
54-
<orderEntry type="library" name="jsoniter-scala-core_2.13-2.13.39.jar" level="project"/>
53+
<orderEntry type="library" name="jsoniter-scala-core_2.13-2.13.5.2.jar" level="project"/>
5554
<orderEntry type="library" name="jsr305-3.0.2.jar" level="project"/>
5655
<orderEntry type="library" name="jul-to-slf4j-1.7.30.jar" level="project"/>
5756
<orderEntry type="library" name="logback-classic-1.5.17.jar" level="project"/>

integration/ide/gen-idea/resources/hello-idea/idea/mill_modules/mill-build.iml

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,21 +15,20 @@
1515
<orderEntry type="library" name="asm-9.6.jar" level="project"/>
1616
<orderEntry type="library" name="asm-commons-9.6.jar" level="project"/>
1717
<orderEntry type="library" name="asm-tree-9.6.jar" level="project"/>
18-
<orderEntry type="library" name="cache-util-2.1.25-M6.jar" level="project"/>
18+
<orderEntry type="library" name="cache-util-2.1.25-M4.jar" level="project"/>
1919
<orderEntry type="library" name="commons-codec-1.17.0.jar" level="project"/>
2020
<orderEntry type="library" name="commons-compress-1.26.2.jar" level="project"/>
2121
<orderEntry type="library" name="commons-io-2.18.0.jar" level="project"/>
2222
<orderEntry type="library" name="commons-lang3-3.16.0.jar" level="project"/>
2323
<orderEntry type="library" name="concurrent-reference-hash-map-1.1.0.jar" level="project"/>
2424
<orderEntry type="library" name="config_2.13-1.1.3.jar" level="project"/>
25-
<orderEntry type="library" name="coursier-cache_2.13-2.1.25-M6.jar" level="project"/>
26-
<orderEntry type="library" name="coursier-core_2.13-2.1.25-M6.jar" level="project"/>
27-
<orderEntry type="library" name="coursier-env_2.13-2.1.25-M6.jar" level="project"/>
28-
<orderEntry type="library" name="coursier-exec-2.1.25-M6.jar" level="project"/>
29-
<orderEntry type="library" name="coursier-jvm_2.13-2.1.25-M6.jar" level="project"/>
30-
<orderEntry type="library" name="coursier-proxy-setup-2.1.25-M6.jar" level="project"/>
31-
<orderEntry type="library" name="coursier-util_2.13-2.1.25-M6.jar" level="project"/>
32-
<orderEntry type="library" name="coursier_2.13-2.1.25-M6.jar" level="project"/>
25+
<orderEntry type="library" name="coursier-cache_2.13-2.1.25-M4.jar" level="project"/>
26+
<orderEntry type="library" name="coursier-core_2.13-2.1.25-M4.jar" level="project"/>
27+
<orderEntry type="library" name="coursier-env_2.13-2.1.25-M4.jar" level="project"/>
28+
<orderEntry type="library" name="coursier-jvm_2.13-2.1.25-M4.jar" level="project"/>
29+
<orderEntry type="library" name="coursier-proxy-setup-2.1.25-M4.jar" level="project"/>
30+
<orderEntry type="library" name="coursier-util_2.13-2.1.25-M4.jar" level="project"/>
31+
<orderEntry type="library" name="coursier_2.13-2.1.25-M4.jar" level="project"/>
3332
<orderEntry type="library" name="dependency_2.13-0.3.2.jar" level="project"/>
3433
<orderEntry type="library" name="fansi_3-0.5.0.jar" level="project"/>
3534
<orderEntry type="library" name="fastparse_3-3.1.1.jar" level="project"/>
@@ -49,7 +48,7 @@
4948
<orderEntry type="library" name="jline-native-3.29.0.jar" level="project"/>
5049
<orderEntry type="library" name="jna-5.17.0.jar" level="project"/>
5150
<orderEntry type="library" name="jna-platform-5.16.0.jar" level="project"/>
52-
<orderEntry type="library" name="jsoniter-scala-core_2.13-2.13.39.jar" level="project"/>
51+
<orderEntry type="library" name="jsoniter-scala-core_2.13-2.13.5.2.jar" level="project"/>
5352
<orderEntry type="library" name="jsr305-3.0.2.jar" level="project"/>
5453
<orderEntry type="library" name="jul-to-slf4j-1.7.30.jar" level="project"/>
5554
<orderEntry type="library" name="logback-classic-1.5.17.jar" level="project"/>

libs/main/test/src/mill/main/MainModuleTests.scala

Lines changed: 40 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -208,31 +208,6 @@ object MainModuleTests extends TestSuite {
208208
}
209209

210210
test("show") {
211-
def checkErrStream[T](errStream: ByteArrayOutputStream)(check: String => T): T = {
212-
def runCheck(): T =
213-
try {
214-
val strippedErr =
215-
fansi.Str(errStream.toString, errorMode = fansi.ErrorMode.Sanitize).plainText
216-
217-
check(strippedErr)
218-
} catch {
219-
case ex: utest.AssertionError =>
220-
pprint.err.log(errStream.toString)
221-
throw ex
222-
}
223-
224-
try runCheck()
225-
catch {
226-
case ex: utest.AssertionError if Properties.isWin =>
227-
// On Windows, it seems there can be a delay until the messages land in errStream,
228-
// it's worth retrying
229-
ex.printStackTrace(System.err)
230-
val waitFor = 2.seconds
231-
System.err.println(s"Caught $ex, trying again in $waitFor")
232-
Thread.sleep(waitFor.toMillis)
233-
runCheck()
234-
}
235-
}
236211
test("single") {
237212
val outStream = new ByteArrayOutputStream()
238213
val errStream = new ByteArrayOutputStream()
@@ -258,12 +233,15 @@ object MainModuleTests extends TestSuite {
258233
assert(value == expected)
259234
assert(shown == expected)
260235

261-
checkErrStream(errStream) { strippedErr =>
262-
assert(strippedErr.contains("Hello System Stdout"))
263-
assert(strippedErr.contains("Hello System Stderr"))
264-
assert(strippedErr.contains("Hello Console Stdout"))
265-
assert(strippedErr.contains("Hello Console Stderr"))
266-
}
236+
// Make sure both stdout and stderr are redirected by `show`
237+
// to stderr so that only the JSON file value goes to stdout
238+
val strippedErr =
239+
fansi.Str(errStream.toString, errorMode = fansi.ErrorMode.Sanitize).plainText
240+
241+
assert(strippedErr.contains("Hello System Stdout"))
242+
assert(strippedErr.contains("Hello System Stderr"))
243+
assert(strippedErr.contains("Hello Console Stdout"))
244+
assert(strippedErr.contains("Hello Console Stderr"))
267245
}
268246
test("multi") {
269247
val outStream = new ByteArrayOutputStream()
@@ -296,15 +274,37 @@ object MainModuleTests extends TestSuite {
296274
assert(value == expected)
297275
assert(shown == expected)
298276

299-
checkErrStream(errStream) { strippedErr =>
300-
assert(strippedErr.contains("Hello System Stdout"))
301-
assert(strippedErr.contains("Hello System Stderr"))
302-
assert(strippedErr.contains("Hello Console Stdout"))
303-
assert(strippedErr.contains("Hello Console Stderr"))
304-
assert(strippedErr.contains("Hello2 System Stdout"))
305-
assert(strippedErr.contains("Hello2 System Stderr"))
306-
assert(strippedErr.contains("Hello2 Console Stdout"))
307-
assert(strippedErr.contains("Hello2 Console Stderr"))
277+
def check(): Unit =
278+
try {
279+
// Make sure both stdout and stderr are redirected by `show`
280+
// to stderr so that only the JSON file value goes to stdout
281+
val strippedErr =
282+
fansi.Str(errStream.toString, errorMode = fansi.ErrorMode.Sanitize).plainText
283+
284+
assert(strippedErr.contains("Hello System Stdout"))
285+
assert(strippedErr.contains("Hello System Stderr"))
286+
assert(strippedErr.contains("Hello Console Stdout"))
287+
assert(strippedErr.contains("Hello Console Stderr"))
288+
assert(strippedErr.contains("Hello2 System Stdout"))
289+
assert(strippedErr.contains("Hello2 System Stderr"))
290+
assert(strippedErr.contains("Hello2 Console Stdout"))
291+
assert(strippedErr.contains("Hello2 Console Stderr"))
292+
} catch {
293+
case ex: utest.AssertionError =>
294+
pprint.err.log(errStream.toString)
295+
throw ex
296+
}
297+
298+
try check()
299+
catch {
300+
case ex: utest.AssertionError if Properties.isWin =>
301+
// On Windows, it seems there can be a delay until the messages land in errStream,
302+
// it's worth retrying
303+
ex.printStackTrace(System.err)
304+
val waitFor = 2.seconds
305+
System.err.println(s"Caught $ex, trying again in $waitFor")
306+
Thread.sleep(waitFor.toMillis)
307+
check()
308308
}
309309
}
310310

libs/scalalib/src/mill/scalalib/JvmWorkerModule.scala

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,6 @@ import mill.scalalib.api.JvmWorkerUtil.{isBinaryBridgeAvailable, isDotty, isDott
99
import mill.scalalib.api.{Versions, JvmWorkerApi, JvmWorkerUtil}
1010
import mill.scalalib.CoursierModule.Resolver
1111

12-
import scala.util.Properties
13-
1412
/**
1513
* A default implementation of [[JvmWorkerModule]]
1614
*/
@@ -53,11 +51,6 @@ trait JvmWorkerModule extends OfflineSupportModule with CoursierModule {
5351

5452
def zincLogDebug: T[Boolean] = Task.Input(Task.ctx().log.debugEnabled)
5553

56-
def useShortJvmPath(jvmId: String): Boolean =
57-
Properties.isWin && (
58-
jvmId.startsWith("graalvm") || jvmId.startsWith("liberica-nik")
59-
)
60-
6154
/**
6255
* Optional custom Java Home for the JvmWorker to use
6356
*
@@ -70,8 +63,7 @@ trait JvmWorkerModule extends OfflineSupportModule with CoursierModule {
7063
id = id,
7164
coursierCacheCustomizer = coursierCacheCustomizer(),
7265
ctx = Some(Task.ctx()),
73-
jvmIndexVersion = jvmIndexVersion(),
74-
useShortPaths = useShortJvmPath(id)
66+
jvmIndexVersion = jvmIndexVersion()
7567
).get
7668
// Java home is externally managed, better revalidate it at least once
7769
PathRef(path, quick = true).withRevalidateOnce

runner/client/src/mill/runner/client/JLineNativeLoader.java

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -39,14 +39,7 @@ final class JLineNativeLoader {
3939
System.getProperty("os.name").toLowerCase(Locale.ROOT).startsWith("windows");
4040
final Path baseDir;
4141
if (isWindows) baseDir = Paths.get(System.getenv("UserProfile")).resolve(".mill/cache/");
42-
else {
43-
final String xdgCacheHome = System.getenv("XDG_CACHE_HOME");
44-
final Path cacheBase;
45-
if (xdgCacheHome == null)
46-
cacheBase = Paths.get(System.getProperty("user.home")).resolve(".cache");
47-
else cacheBase = Paths.get(xdgCacheHome);
48-
baseDir = cacheBase.resolve("mill");
49-
}
42+
else baseDir = Paths.get(System.getProperty("user.home")).resolve(".cache/mill/");
5043
this.millJLineNativeDir = baseDir.resolve("jline/" + jlineNativeVersion);
5144
this.millJLineNativeLibLocation =
5245
millJLineNativeDir.resolve(OSInfo.getNativeLibFolderPathForCurrentOS() + "/"

0 commit comments

Comments
 (0)