Skip to content

compiling with scala-verify causes NoSuchFileException (points to /Users/eed3si9n/...) #7189

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

Closed
eed3si9n opened this issue Sep 9, 2019 · 2 comments

Comments

@eed3si9n
Copy link
Member

eed3si9n commented Sep 9, 2019

originally reported by @weihsiu as eed3si9n/verify#32

minimized code

See https://github.com/eed3si9n/verify-samples

package foo

import verify._

object SomethingTest extends BasicTestSuite {
  test("long string") {

    val str1 = """Don't you love New York in the fall? It makes me want to buy
    |school supplies. I would send you a bouquet of newly-sharpened pencils if
    |I knew your name and address. On the other hand, this not knowing has its
    |charms.""".stripMargin


    val str2 = """you love London in the fall? It makes me want to buy
    |school supplies: I would send you a bouquet of newly-sharpened kitchen
    |knives if I knew your name and address. on the other hand, this not knowing has its
    |charms.""".stripMargin

    assertEquals(str1, "Don't " + str2, "custom message")
  }
}

problem

https://travis-ci.org/eed3si9n/verify-samples/builds/582913193

[error] java.nio.file.NoSuchFileException: /Users/eed3si9n/work/verify/shared/src/main/scala-3/verify/asserts/AssertEqualsMacro.scala
[error] java.nio.file.NoSuchFileException: /Users/eed3si9n/work/verify/shared/src/main/scala-3/verify/asserts/AssertEqualsMacro.scala
[error] 	at sun.nio.fs.UnixException.translateToIOException(UnixException.java:86)
[error] 	at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
[error] 	at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
[error] 	at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214)
[error] 	at java.nio.file.Files.newByteChannel(Files.java:361)
[error] 	at java.nio.file.Files.newByteChannel(Files.java:407)
[error] 	at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:384)
[error] 	at java.nio.file.Files.newInputStream(Files.java:152)
[error] 	at dotty.tools.io.File.inputStream(File.scala:51)
[error] 	at dotty.tools.io.PlainFile.input(PlainFile.scala:44)
[error] 	at dotty.tools.io.AbstractFile.toByteArray(AbstractFile.scala:170)
[error] 	at dotty.tools.dotc.util.SourceFile.SourceFile$superArg$1$$anonfun$1(SourceFile.scala:53)
[error] 	at dotty.tools.dotc.util.SourceFile.content(SourceFile.scala:49)
[error] 	at dotty.tools.dotc.ast.Trees$MemberDef.nameSpan(Trees.scala:365)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.nameIdText(RefinedPrinter.scala:727)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.defDefToText$$anonfun$1(RefinedPrinter.scala:767)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.dclTextOr(RefinedPrinter.scala:739)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.defDefToText(RefinedPrinter.scala:774)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toTextCore(RefinedPrinter.scala:497)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toText$$anonfun$2(RefinedPrinter.scala:628)
[error] 	at dotty.tools.dotc.printing.PlainPrinter.controlled(PlainPrinter.scala:29)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toText(RefinedPrinter.scala:699)
[error] 	at dotty.tools.dotc.ast.Trees$Tree.toText(Trees.scala:204)
[error] 	at dotty.tools.dotc.printing.Printer.toText$$anonfun$1(Printer.scala:157)
[error] 	at scala.collection.immutable.List.map(List.scala:222)
[error] 	at scala.collection.immutable.List.map(List.scala:82)
[error] 	at dotty.tools.dotc.printing.Printer.toText(Printer.scala:157)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.blockText(RefinedPrinter.scala:258)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.blockToText(RefinedPrinter.scala:255)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toTextCore(RefinedPrinter.scala:404)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toText$$anonfun$2(RefinedPrinter.scala:628)
[error] 	at dotty.tools.dotc.printing.PlainPrinter.controlled(PlainPrinter.scala:29)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toText(RefinedPrinter.scala:699)
[error] 	at dotty.tools.dotc.ast.Trees$Tree.toText(Trees.scala:204)
[error] 	at dotty.tools.dotc.printing.Printer.toText$$anonfun$1(Printer.scala:157)
[error] 	at scala.collection.immutable.List.map(List.scala:222)
[error] 	at scala.collection.immutable.List.map(List.scala:82)
[error] 	at dotty.tools.dotc.printing.Printer.toText(Printer.scala:157)
[error] 	at dotty.tools.dotc.printing.Printer.toTextGlobal$$anonfun$2(Printer.scala:165)
[error] 	at dotty.tools.dotc.printing.Printer.atPrec(Printer.scala:42)
[error] 	at dotty.tools.dotc.printing.Printer.toTextGlobal(Printer.scala:165)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toTextCore(RefinedPrinter.scala:371)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toText$$anonfun$2(RefinedPrinter.scala:628)
[error] 	at dotty.tools.dotc.printing.PlainPrinter.controlled(PlainPrinter.scala:29)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toText(RefinedPrinter.scala:699)
[error] 	at dotty.tools.dotc.ast.Trees$Tree.toText(Trees.scala:204)
[error] 	at dotty.tools.dotc.printing.Printer.toText$$anonfun$1(Printer.scala:157)
[error] 	at scala.collection.immutable.List.map(List.scala:222)
[error] 	at scala.collection.immutable.List.map(List.scala:82)
[error] 	at dotty.tools.dotc.printing.Printer.toText(Printer.scala:157)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.blockText(RefinedPrinter.scala:258)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.blockToText(RefinedPrinter.scala:255)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toTextCore(RefinedPrinter.scala:404)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toText$$anonfun$2(RefinedPrinter.scala:628)
[error] 	at dotty.tools.dotc.printing.PlainPrinter.controlled(PlainPrinter.scala:29)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toText(RefinedPrinter.scala:699)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toTextCore$$anonfun$5(RefinedPrinter.scala:395)
[error] 	at dotty.tools.dotc.printing.Printer.atPrec(Printer.scala:42)
[error] 	at dotty.tools.dotc.printing.Printer.changePrec(Printer.scala:71)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toTextCore(RefinedPrinter.scala:398)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toText$$anonfun$2(RefinedPrinter.scala:628)
[error] 	at dotty.tools.dotc.printing.PlainPrinter.controlled(PlainPrinter.scala:29)
[error] 	at dotty.tools.dotc.printing.RefinedPrinter.toText(RefinedPrinter.scala:699)
[error] 	at dotty.tools.dotc.ast.Trees$Tree.toText(Trees.scala:204)
[error] 	at dotty.tools.dotc.printing.Showable.show(Showable.scala:23)
[error] 	at dotty.tools.dotc.ast.Trees$Tree.show(Trees.scala:55)
[error] 	at dotty.tools.dotc.sbt.ExtractAPICollector.apiAnnotations(ExtractAPI.scala:603)
[error] 	at dotty.tools.dotc.sbt.ExtractAPICollector.apiDef(ExtractAPI.scala:377)
[error] 	at dotty.tools.dotc.sbt.ExtractAPICollector.apiDefinition(ExtractAPI.scala:335)
[error] 	at dotty.tools.dotc.sbt.ExtractAPICollector.apiDefinitions$$anonfun$1(ExtractAPI.scala:320)
[error] 	at scala.collection.immutable.List.map(List.scala:226)
[error] 	at dotty.tools.dotc.sbt.ExtractAPICollector.apiDefinitions(ExtractAPI.scala:320)
[error] 	at dotty.tools.dotc.sbt.ExtractAPICollector.$anonfun$7(ExtractAPI.scala:281)
[error] 	at dotty.tools.dotc.sbt.ThunkHolder.$anonfun$1(ThunkHolder.scala:28)
[error] 	at xsbti.api.SafeLazy$Impl.get(SafeLazy.java:62)
[error] 	at dotty.tools.dotc.sbt.ThunkHolder.forceThunks$$anonfun$1(ThunkHolder.scala:19)
[error] 	at scala.collection.immutable.List.foreach(List.scala:312)
[error] 	at dotty.tools.dotc.sbt.ThunkHolder.forceThunks(ThunkHolder.scala:19)
[error] 	at dotty.tools.dotc.sbt.ExtractAPICollector.forceThunks(ExtractAPI.scala:127)
[error] 	at dotty.tools.dotc.sbt.ExtractAPICollector.apiSource(ExtractAPI.scala:186)
[error] 	at dotty.tools.dotc.sbt.ExtractAPI.run(ExtractAPI.scala:66)
[error] 	at dotty.tools.dotc.core.Phases$Phase.runOn$$anonfun$1(Phases.scala:315)
[error] 	at scala.collection.immutable.List.map(List.scala:222)
[error] 	at dotty.tools.dotc.core.Phases$Phase.runOn(Phases.scala:316)
[error] 	at dotty.tools.dotc.Run.runPhases$4$$anonfun$4(Run.scala:159)
[error] 	at dotty.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] 	at dotty.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] 	at scala.collection.ArrayOps$.foreach$extension(ArrayOps.scala:1350)
[error] 	at dotty.tools.dotc.Run.runPhases$5(Run.scala:169)
[error] 	at dotty.tools.dotc.Run.compileUnits$$anonfun$1(Run.scala:177)
[error] 	at dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] 	at dotty.tools.dotc.util.Stats$.maybeMonitored(Stats.scala:67)
[error] 	at dotty.tools.dotc.Run.compileUnits(Run.scala:184)
[error] 	at dotty.tools.dotc.Run.compileSources(Run.scala:121)
[error] 	at dotty.tools.dotc.Run.compile(Run.scala:104)
[error] 	at dotty.tools.dotc.Driver.doCompile(Driver.scala:35)
[error] 	at dotty.tools.dotc.Driver.process(Driver.scala:179)
[error] 	at dotty.tools.dotc.Main.process(Main.scala)
[error] 	at xsbt.CachedCompilerImpl.run(CachedCompilerImpl.java:69)
[error] 	at xsbt.CompilerInterface.run(CompilerInterface.java:41)
[error] 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[error] 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[error] 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[error] 	at java.lang.reflect.Method.invoke(Method.java:498)
[error] 	at sbt.internal.inc.AnalyzingCompiler.call(AnalyzingCompiler.scala:248)
[error] 	at sbt.internal.inc.AnalyzingCompiler.compile(AnalyzingCompiler.scala:122)
[error] 	at sbt.internal.inc.AnalyzingCompiler.compile(AnalyzingCompiler.scala:95)
[error] 	at sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$4(MixedAnalyzingCompiler.scala:91)
[error] 	at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
[error] 	at sbt.internal.inc.MixedAnalyzingCompiler.timed(MixedAnalyzingCompiler.scala:186)
[error] 	at sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$3(MixedAnalyzingCompiler.scala:82)
[error] 	at sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$3$adapted(MixedAnalyzingCompiler.scala:77)
[error] 	at sbt.internal.inc.JarUtils$.withPreviousJar(JarUtils.scala:215)
[error] 	at sbt.internal.inc.MixedAnalyzingCompiler.compileScala$1(MixedAnalyzingCompiler.scala:77)
[error] 	at sbt.internal.inc.MixedAnalyzingCompiler.compile(MixedAnalyzingCompiler.scala:146)
[error] 	at sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileInternal$1(IncrementalCompilerImpl.scala:343)
[error] 	at sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileInternal$1$adapted(IncrementalCompilerImpl.scala:343)
[error] 	at sbt.internal.inc.Incremental$.doCompile(Incremental.scala:120)
[error] 	at sbt.internal.inc.Incremental$.$anonfun$compile$4(Incremental.scala:100)
[error] 	at sbt.internal.inc.IncrementalCommon.recompileClasses(IncrementalCommon.scala:180)
[error] 	at sbt.internal.inc.IncrementalCommon.cycle(IncrementalCommon.scala:98)
[error] 	at sbt.internal.inc.Incremental$.$anonfun$compile$3(Incremental.scala:102)
[error] 	at sbt.internal.inc.Incremental$.manageClassfiles(Incremental.scala:155)
[error] 	at sbt.internal.inc.Incremental$.compile(Incremental.scala:92)
[error] 	at sbt.internal.inc.IncrementalCompile$.apply(Compile.scala:75)
[error] 	at sbt.internal.inc.IncrementalCompilerImpl.compileInternal(IncrementalCompilerImpl.scala:348)
[error] 	at sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileIncrementally$1(IncrementalCompilerImpl.scala:301)
[error] 	at sbt.internal.inc.IncrementalCompilerImpl.handleCompilationError(IncrementalCompilerImpl.scala:168)
[error] 	at sbt.internal.inc.IncrementalCompilerImpl.compileIncrementally(IncrementalCompilerImpl.scala:248)
[error] 	at sbt.internal.inc.IncrementalCompilerImpl.compile(IncrementalCompilerImpl.scala:74)
[error] 	at sbt.Defaults$.compileIncrementalTaskImpl(Defaults.scala:1736)
[error] 	at sbt.Defaults$.$anonfun$compileIncrementalTask$1(Defaults.scala:1709)
[error] 	at scala.Function1.$anonfun$compose$1(Function1.scala:49)
[error] 	at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:62)
[error] 	at sbt.std.Transform$$anon$4.work(Transform.scala:67)
[error] 	at sbt.Execute.$anonfun$submit$2(Execute.scala:280)
[error] 	at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:19)
[error] 	at sbt.Execute.work(Execute.scala:289)
[error] 	at sbt.Execute.$anonfun$submit$1(Execute.scala:280)
[error] 	at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:178)
[error] 	at sbt.CompletionService$$anon$2.call(CompletionService.scala:37)
[error] 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
[error] 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
[error] 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
[error] 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[error] 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[error] 	at java.lang.Thread.run(Thread.java:748)
[error] (Test / compileIncremental) java.nio.file.NoSuchFileException: /Users/eed3si9n/work/verify/shared/src/main/scala-3/verify/asserts/AssertEqualsMacro.scala

expectation

should compile.

notes

Potentially relevant code - 1a1f424

              // Note: This might be inaccurate since scanning might hit accidentally the same
              // name (e.g. in a comment) before finding the real definition.
              // To make this behavior more robust we'd have to change the trees for definitions to contain
              // a fully positioned Ident in place of a name.
              val idx = source.content().indexOfSlice(realName, point)
              if (idx >= 0) idx
              else point // use `point` anyway. This is important if no source exists so scanning fails
@eed3si9n
Copy link
Member Author

eed3si9n commented Sep 9, 2019

Also it's kind of scary that the JAR knew the absolute path of my user name.

@nicolasstucki
Copy link
Contributor

This looks like it is related to #6542

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants