Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Mill cache/metadata path for cross segments need to escape colons (:) on Windows #2923

Closed
lefou opened this issue Dec 14, 2023 · 0 comments · Fixed by #2965
Closed

Mill cache/metadata path for cross segments need to escape colons (:) on Windows #2923

lefou opened this issue Dec 14, 2023 · 0 comments · Fixed by #2965
Milestone

Comments

@lefou
Copy link
Member

lefou commented Dec 14, 2023

This is the error on Windows CI for PR #2911

(https://github.com/com-lihaoyi/mill/actions/runs/7201802915/job/19619640309)

An unexpected error occurred
Exception in thread "main" java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at mill.main.client.IsolatedMillMainLoader.runMain(IsolatedMillMainLoader.java:58)
	at mill.main.client.MillClientMain.main(MillClientMain.java:78)
Caused by: java.nio.file.InvalidPathException: Illegal char <:> at index 26: dummy/com.google.code.gson:gson:2.10.1/scalaVersion
	at sun.nio.fs.WindowsPathParser.normalize(WindowsPathParser.java:182)
	at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:153)
	at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77)
	at sun.nio.fs.WindowsPath.parse(WindowsPath.java:94)
	at sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:255)
	at sun.nio.fs.AbstractPath.resolve(AbstractPath.java:53)
	at os.Path.$div(Path.scala:501)
	at mill.eval.EvaluatorPaths$.resolveDestPaths(EvaluatorPaths.scala:31)
	at mill.eval.GroupEvaluator.evaluateGroupCached(GroupEvaluator.scala:177)
	at mill.eval.GroupEvaluator.evaluateGroupCached$(GroupEvaluator.scala:45)
	at mill.eval.EvaluatorImpl.evaluateGroupCached(EvaluatorImpl.scala:15)
	at mill.eval.EvaluatorCore.$anonfun$evaluate0$2(EvaluatorCore.scala:116)
	at scala.concurrent.impl.Promise$Transformation.run(Promise.scala:467)
	at mill.eval.ExecutionContexts$RunNow$.execute(ExecutionContexts.scala:13)
	at scala.concurrent.impl.Promise$Transformation.submitWithValue(Promise.scala:429)
	at scala.concurrent.impl.Promise$DefaultPromise.submitWithValue(Promise.scala:338)
	at scala.concurrent.impl.Promise$DefaultPromise.dispatchOrAddCallbacks(Promise.scala:312)
lefou added a commit that referenced this issue Jan 23, 2024
Again a Windows thing, but the evaluator paths should not contain
colons. We mask them with `$colon`.

Fix #2923

Pull request: #2965
@lefou lefou added this to the 0.11.7 milestone Jan 23, 2024
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant