Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Indexing fails on files with ` in file name #6294

Closed
kasiaMarek opened this issue Apr 10, 2024 · 0 comments · Fixed by #6430
Closed

Indexing fails on files with ` in file name #6294

kasiaMarek opened this issue Apr 10, 2024 · 0 comments · Fixed by #6430
Labels
bug Something that is making a piece of functionality unusable

Comments

@kasiaMarek
Copy link
Contributor

Describe the bug

2024.04.10 13:37:07 ERROR error processing file:///Users/jciesluk/.ivy2/cache/com.lightbend.akka/akka-stream-alpakka-google-common_2.13/srcs/akka-stream-alpakka-google-common_2.13-4.0.0-sources.jar
java.lang.IllegalArgumentException: Illegal character in opaque part at index 196: jar:file:///Users/jciesluk/.ivy2/cache/com.lightbend.akka/akka-stream-alpakka-google-common_2.13/srcs/akka-stream-alpakka-google-common_2.13-4.0.0-sources.jar!/akka/stream/alpakka/google/scaladsl/`X-Upload-Content-Type`.scala
        at java.net.URI.create(URI.java:906)
        at scala.meta.internal.mtags.MtagsEnrichments$XtensionStringMtags.toAbsolutePath(MtagsEnrichments.scala:177)
        at scala.meta.internal.metals.MetalsEnrichments$XtensionString.toAbsolutePath(MetalsEnrichments.scala:711)
        at scala.meta.internal.metals.MetalsEnrichments$XtensionString.toAbsolutePath(MetalsEnrichments.scala:708)
        at scala.meta.internal.metals.JarTopLevels.toPath(JarTopLevels.scala:95)
        at scala.meta.internal.metals.JarTopLevels.$anonfun$getTopLevels$2(JarTopLevels.scala:47)
        at scala.meta.internal.metals.JdbcEnrichments$XtensionConnection.query(JdbcEnrichments.scala:40)
        at scala.meta.internal.metals.JarTopLevels.getTopLevels(JarTopLevels.scala:44)
        at scala.meta.internal.metals.Indexer.addSourceJarSymbols(Indexer.scala:634)
        at scala.meta.internal.metals.Indexer.$anonfun$indexDependencySources$5(Indexer.scala:476)
        at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:619)
        at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:617)
        at scala.collection.AbstractIterable.foreach(Iterable.scala:935)
        at scala.collection.IterableOps$WithFilter.foreach(Iterable.scala:905)
        at scala.meta.internal.metals.Indexer.$anonfun$indexDependencySources$1(Indexer.scala:467)
        at scala.meta.internal.metals.Indexer.$anonfun$indexDependencySources$1$adapted(Indexer.scala:466)
        at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:619)
        at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:617)
        at scala.collection.AbstractIterable.foreach(Iterable.scala:935)
        at scala.meta.internal.metals.Indexer.indexDependencySources(Indexer.scala:466)
        at scala.meta.internal.metals.Indexer.$anonfun$indexWorkspace$24(Indexer.scala:385)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18)
        at scala.meta.internal.metals.TimerProvider.timedThunk(TimerProvider.scala:25)
        at scala.meta.internal.metals.Indexer.$anonfun$indexWorkspace$23(Indexer.scala:378)
        at scala.meta.internal.metals.Indexer.$anonfun$indexWorkspace$23$adapted(Indexer.scala:374)
        at scala.collection.immutable.List.foreach(List.scala:334)
        at scala.meta.internal.metals.Indexer.indexWorkspace(Indexer.scala:374)
        at scala.meta.internal.metals.Indexer.$anonfun$profiledIndexWorkspace$2(Indexer.scala:166)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18)
        at scala.meta.internal.metals.TimerProvider.timedThunk(TimerProvider.scala:25)
        at scala.meta.internal.metals.Indexer.$anonfun$profiledIndexWorkspace$1(Indexer.scala:166)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18)
        at scala.concurrent.Future$.$anonfun$apply$1(Future.scala:687)
        at scala.concurrent.impl.Promise$Transformation.run(Promise.scala:467)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
        at java.lang.Thread.run(Thread.java:840)
Caused by: java.net.URISyntaxException: Illegal character in opaque part at index 196: jar:file:///Users/jciesluk/.ivy2/cache/com.lightbend.akka/akka-stream-alpakka-google-common_2.13/srcs/akka-stream-alpakka-google-common_2.13-4.0.0-sources.jar!/akka/stream/alpakka/google/scaladsl/`X-Upload-Content-Type`.scala
        at java.net.URI$Parser.fail(URI.java:2976)
        at java.net.URI$Parser.checkChars(URI.java:3147)
        at java.net.URI$Parser.parse(URI.java:3183)
        at java.net.URI.<init>(URI.java:623)
        at java.net.URI.create(URI.java:904)
        at scala.meta.internal.mtags.MtagsEnrichments$XtensionStringMtags.toAbsolutePath(MtagsEnrichments.scala:177)
        at scala.meta.internal.metals.MetalsEnrichments$XtensionString.toAbsolutePath(MetalsEnrichments.scala:711)
        at scala.meta.internal.metals.MetalsEnrichments$XtensionString.toAbsolutePath(MetalsEnrichments.scala:708)
        at scala.meta.internal.metals.JarTopLevels.toPath(JarTopLevels.scala:95)
        at scala.meta.internal.metals.JarTopLevels.$anonfun$getTopLevels$2(JarTopLevels.scala:47)
        at scala.meta.internal.metals.JdbcEnrichments$XtensionConnection.query(JdbcEnrichments.scala:40)
        at scala.meta.internal.metals.JarTopLevels.getTopLevels(JarTopLevels.scala:44)
        at scala.meta.internal.metals.Indexer.addSourceJarSymbols(Indexer.scala:634)
        at scala.meta.internal.metals.Indexer.$anonfun$indexDependencySources$5(Indexer.scala:476)
        at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:619)
        at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:617)
        at scala.collection.AbstractIterable.foreach(Iterable.scala:935)
        at scala.collection.IterableOps$WithFilter.foreach(Iterable.scala:905)
        at scala.meta.internal.metals.Indexer.$anonfun$indexDependencySources$1(Indexer.scala:467)
        at scala.meta.internal.metals.Indexer.$anonfun$indexDependencySources$1$adapted(Indexer.scala:466)
        at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:619)
        at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:617)
        at scala.collection.AbstractIterable.foreach(Iterable.scala:935)
        at scala.meta.internal.metals.Indexer.indexDependencySources(Indexer.scala:466)
        at scala.meta.internal.metals.Indexer.$anonfun$indexWorkspace$24(Indexer.scala:385)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18)
        at scala.meta.internal.metals.TimerProvider.timedThunk(TimerProvider.scala:25)
        at scala.meta.internal.metals.Indexer.$anonfun$indexWorkspace$23(Indexer.scala:378)
        at scala.meta.internal.metals.Indexer.$anonfun$indexWorkspace$23$adapted(Indexer.scala:374)
        at scala.collection.immutable.List.foreach(List.scala:334)
        at scala.meta.internal.metals.Indexer.indexWorkspace(Indexer.scala:374)
        at scala.meta.internal.metals.Indexer.$anonfun$profiledIndexWorkspace$2(Indexer.scala:166)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18)
        at scala.meta.internal.metals.TimerProvider.timedThunk(TimerProvider.scala:25)
        at scala.meta.internal.metals.Indexer.$anonfun$profiledIndexWorkspace$1(Indexer.scala:166)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18)
        at scala.concurrent.Future$.$anonfun$apply$1(Future.scala:687)
        at scala.concurrent.impl.Promise$Transformation.run(Promise.scala:467)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)

Expected behavior

Indexing should be able to handle ` in file name.

Operating system

macOS

Editor/Extension

VS Code

Version of Metals

v1.2.2

Extra context or search terms

No response

@kasiaMarek kasiaMarek added the bug Something that is making a piece of functionality unusable label Apr 10, 2024
@kasiaMarek kasiaMarek added this to Triage in Metals Issue Board via automation Apr 12, 2024
@kasiaMarek kasiaMarek moved this from Triage to To do in Metals Issue Board Apr 12, 2024
@kasiaMarek kasiaMarek moved this from To do to In progress in Metals Issue Board May 23, 2024
Metals Issue Board automation moved this from In progress to Done May 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something that is making a piece of functionality unusable
Projects
Development

Successfully merging a pull request may close this issue.

1 participant