typelevel/kind-projector

2.13.1: NoSuchMethodError: scala.tools.nsc.Global.reporter()Lscala/tools/nsc/reporters/Reporter;

neko-kai opened this issue · 3 comments

To reproduce execute:

git clone https://github.com/7mind/izumi.git
cd izumi
git checkout feature/2.13.1
sbt ++2.13.1 compile

Produces an exception:

[error] ## Exception when compiling 127 sources to /Users/kai/src/izumi/distage/distage-model/target/scala-2.13/classes
[error] java.lang.NoSuchMethodError: scala.tools.nsc.Global.reporter()Lscala/tools/nsc/reporters/Reporter;
[error] d_m.StringParser.parse(StringParser.scala:9)
[error] d_m.KindRewriter$MyTransformer.makeTypeParamFromName$1(KindProjector.scala:164)
[error] d_m.KindRewriter$MyTransformer.makeComplexTypeParam$1(KindProjector.scala:174)
[error] d_m.KindRewriter$MyTransformer.$anonfun$transform$8(KindProjector.scala:255)
[error] scala.collection.immutable.List.map(List.scala:219)
[error] d_m.KindRewriter$MyTransformer.$anonfun$transform$6(KindProjector.scala:255)
[error] scala.collection.immutable.List.map(List.scala:219)
[error] d_m.KindRewriter$MyTransformer.handlePlaceholders$1(KindProjector.scala:249)
[error] d_m.KindRewriter$MyTransformer.transform(KindProjector.scala:342)
[error] d_m.KindRewriter$MyTransformer.transform(KindProjector.scala:38)
[error] scala.reflect.internal.Trees$AppliedTypeTree.transform(Trees.scala:922)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:51)
[error] d_m.KindRewriter$MyTransformer.handlePlaceholders$1(KindProjector.scala:272)
[error] d_m.KindRewriter$MyTransformer.transform(KindProjector.scala:342)
[error] d_m.KindRewriter$MyTransformer.transform(KindProjector.scala:38)
[error] scala.reflect.internal.Trees$ValDef.$anonfun$transform$4(Trees.scala:407)
[error] scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2625)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:37)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:32)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:24)
[error] scala.reflect.internal.Trees$ValDef.transform(Trees.scala:406)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:51)
[error] d_m.KindRewriter$MyTransformer.transform(KindProjector.scala:346)
[error] d_m.KindRewriter$MyTransformer.transform(KindProjector.scala:38)
[error] scala.reflect.api.Trees$Transformer.transformValDef(Trees.scala:2594)
[error] scala.reflect.api.Trees$Transformer.transformValDefs(Trees.scala:2597)
[error] scala.reflect.api.Trees$Transformer.transformValDefss(Trees.scala:2600)
[error] scala.reflect.internal.Trees$DefDef.$anonfun$transform$5(Trees.scala:426)
[error] scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2625)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:37)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:32)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:24)
[error] scala.reflect.internal.Trees$DefDef.transform(Trees.scala:425)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:51)
[error] d_m.KindRewriter$MyTransformer.transform(KindProjector.scala:346)
[error] d_m.KindRewriter$MyTransformer.transform(KindProjector.scala:38)
[error] scala.reflect.api.Trees$Transformer.$anonfun$transformStats$1(Trees.scala:2614)
[error] scala.reflect.api.Trees$Transformer.transformStats(Trees.scala:2612)
[error] scala.reflect.internal.Trees$Template.transform(Trees.scala:517)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.$anonfun$transform$1(TypingTransformers.scala:47)
[error] scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2625)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:37)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:32)
[error] d_m.KindRewriter$MyTransformer.transform(KindProjector.scala:346)
[error] d_m.KindRewriter$MyTransformer.transform(KindProjector.scala:38)
[error] scala.reflect.api.Trees$Transformer.transformTemplate(Trees.scala:2587)
[error] scala.reflect.internal.Trees$ModuleDef.$anonfun$transform$3(Trees.scala:370)
[error] scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2625)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:37)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:32)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:24)
[error] scala.reflect.internal.Trees$ModuleDef.transform(Trees.scala:369)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:51)
[error] d_m.KindRewriter$MyTransformer.transform(KindProjector.scala:346)
[error] d_m.KindRewriter$MyTransformer.transform(KindProjector.scala:38)
[error] scala.reflect.api.Trees$Transformer.$anonfun$transformStats$1(Trees.scala:2614)
[error] scala.reflect.api.Trees$Transformer.transformStats(Trees.scala:2612)
[error] scala.reflect.internal.Trees$PackageDef.$anonfun$transform$1(Trees.scala:316)
[error] scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2625)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:37)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:32)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:24)
[error] scala.reflect.internal.Trees$PackageDef.transform(Trees.scala:316)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.$anonfun$transform$2(TypingTransformers.scala:49)
[error] scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2625)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:37)
[error] scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:32)
[error] d_m.KindRewriter$MyTransformer.transform(KindProjector.scala:346)
[error] scala.tools.nsc.ast.Trees$Transformer.transformUnit(Trees.scala:162)
[error] scala.tools.nsc.transform.Transform$Phase.apply(Transform.scala:36)
[error] scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:452)
[error] scala.tools.nsc.Global$GlobalPhase.run(Global.scala:397)
[error] scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1506)
[error] scala.tools.nsc.Global$Run.compileUnits(Global.scala:1490)
[error] scala.tools.nsc.Global$Run.compileSources(Global.scala:1482)
[error] scala.tools.nsc.Global$Run.compile(Global.scala:1614)
[error] xsbt.CachedCompiler0.run(CompilerInterface.scala:153)
[error] xsbt.CachedCompiler0.run(CompilerInterface.scala:125)
[error] xsbt.CompilerInterface.run(CompilerInterface.scala:39)
[error] jdk.internal.reflect.GeneratedMethodAccessor25.invoke(Unknown Source)
[error] java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[error] java.base/java.lang.reflect.Method.invoke(Method.java:567)
[error] sbt.internal.inc.AnalyzingCompiler.call(AnalyzingCompiler.scala:248)
[error] sbt.internal.inc.AnalyzingCompiler.compile(AnalyzingCompiler.scala:122)
[error] sbt.internal.inc.AnalyzingCompiler.compile(AnalyzingCompiler.scala:95)
[error] sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$4(MixedAnalyzingCompiler.scala:91)
[error] scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
[error] sbt.internal.inc.MixedAnalyzingCompiler.timed(MixedAnalyzingCompiler.scala:186)
[error] sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$3(MixedAnalyzingCompiler.scala:82)
[error] sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$3$adapted(MixedAnalyzingCompiler.scala:77)
[error] sbt.internal.inc.JarUtils$.withPreviousJar(JarUtils.scala:215)
[error] sbt.internal.inc.MixedAnalyzingCompiler.compileScala$1(MixedAnalyzingCompiler.scala:77)
[error] sbt.internal.inc.MixedAnalyzingCompiler.compile(MixedAnalyzingCompiler.scala:146)
[error] sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileInternal$1(IncrementalCompilerImpl.scala:343)
[error] sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileInternal$1$adapted(IncrementalCompilerImpl.scala:343)
[error] sbt.internal.inc.Incremental$.doCompile(Incremental.scala:120)
[error] sbt.internal.inc.Incremental$.$anonfun$compile$4(Incremental.scala:100)
[error] sbt.internal.inc.IncrementalCommon.recompileClasses(IncrementalCommon.scala:180)
[error] sbt.internal.inc.IncrementalCommon.cycle(IncrementalCommon.scala:98)
[error] sbt.internal.inc.Incremental$.$anonfun$compile$3(Incremental.scala:102)
[error] sbt.internal.inc.Incremental$.manageClassfiles(Incremental.scala:155)
[error] sbt.internal.inc.Incremental$.compile(Incremental.scala:92)
[error] sbt.internal.inc.IncrementalCompile$.apply(Compile.scala:75)
[error] sbt.internal.inc.IncrementalCompilerImpl.compileInternal(IncrementalCompilerImpl.scala:348)
[error] sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileIncrementally$1(IncrementalCompilerImpl.scala:301)
[error] sbt.internal.inc.IncrementalCompilerImpl.handleCompilationError(IncrementalCompilerImpl.scala:168)
[error] sbt.internal.inc.IncrementalCompilerImpl.compileIncrementally(IncrementalCompilerImpl.scala:248)
[error] sbt.internal.inc.IncrementalCompilerImpl.compile(IncrementalCompilerImpl.scala:74)
[error] sbt.Defaults$.compileIncrementalTaskImpl(Defaults.scala:1736)
[error] sbt.Defaults$.$anonfun$compileIncrementalTask$1(Defaults.scala:1709)
[error] scala.Function1.$anonfun$compose$1(Function1.scala:49)
[error] sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:62)
[error] sbt.std.Transform$$anon$4.work(Transform.scala:67)
[error] sbt.Execute.$anonfun$submit$2(Execute.scala:280)
[error] sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:19)
[error] sbt.Execute.work(Execute.scala:289)
[error] sbt.Execute.$anonfun$submit$1(Execute.scala:280)
[error] sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:178)
[error] sbt.CompletionService$$anon$2.call(CompletionService.scala:37)
[error] java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error] java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
[error] java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error] java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
[error] java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
[error] java.base/java.lang.Thread.run(Thread.java:835)

This issue on scalac bug tracker: scala/bug#11742

ticket on kind-projector's lack of full cross-versioning is #15

lrytz commented

For reference, the changes to wartremover that were done by @xuwei-k to support full cross-versioning: wartremover/wartremover@5c59c86...acc56b8

Should be fixed by 0.11.0