Giter VIP home page Giter VIP logo

sbt-scoverage-samples's People

Contributors

0xroch avatar alistair-johnson avatar gslowikowski avatar himanshuupadhyay102 avatar maiflai avatar richardbradley avatar rolandtritsch avatar sailreal avatar sksamuel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sbt-scoverage-samples's Issues

`upickle` makes `coverageReport` fail with/on Scala 3.2

~/Development/Home/sbt-scoverage-samples (tom-roland/testing-with-upickle ✔) ᐅ sbt
[info] welcome to sbt 1.7.1 (Oracle Corporation Java 18)
[info] loading settings for project sbt-scoverage-samples-build-build-build from metals.sbt ...
[info] loading project definition from /home/roland/Development/Home/sbt-scoverage-samples/project/project/project
[info] loading settings for project sbt-scoverage-samples-build-build from metals.sbt ...
[info] loading project definition from /home/roland/Development/Home/sbt-scoverage-samples/project/project
[success] Generated .bloop/sbt-scoverage-samples-build-build.json
[success] Total time: 0 s, completed 13 Nov 2022, 16:04:53
[info] loading settings for project sbt-scoverage-samples-build from metals.sbt,plugins.sbt ...
[info] loading project definition from /home/roland/Development/Home/sbt-scoverage-samples/project
[success] Generated .bloop/sbt-scoverage-samples-build.json
[success] Total time: 0 s, completed 13 Nov 2022, 16:04:53
[info] loading settings for project sbt-scoverage-samples from build.sbt ...
[info] set current project to sbt-scoverage-samples (in build file:/home/roland/Development/Home/sbt-scoverage-samples/)
[info] sbt server started at local:///home/roland/.sbt/1.0/server/ea5e97b1e979389b224f/sock
[info] started sbt server
sbt:sbt-scoverage-samples> 
sbt:sbt-scoverage-samples> ++2.13.9
[info] Setting Scala version to 2.13.9 on 1 projects.
[info] Reapplying settings...
[info] set current project to sbt-scoverage-samples (in build file:/home/roland/Development/Home/sbt-scoverage-samples/)
sbt:sbt-scoverage-samples> coverage
[info] Defining ThisBuild / coverageEnabled
[info] The new value will be used by Compile / compile / scalacOptions, libraryDependencies
[info] Reapplying settings...
[info] set current project to sbt-scoverage-samples (in build file:/home/roland/Development/Home/sbt-scoverage-samples/)
sbt:sbt-scoverage-samples> test
[info] compiling 19 Scala sources to /home/roland/Development/Home/sbt-scoverage-samples/target/scala-2.13/classes ...
[info] scoverage excludedSymbols: List(scala.reflect.api.Exprs.Expr, scala.reflect.api.Trees.Tree, scala.reflect.macros.Universe.Tree)
[info] Cleaning datadir [/home/roland/Development/Home/sbt-scoverage-samples/target/scala-2.13/scoverage-data]
[info] Beginning coverage instrumentation
[info] Instrumentation completed [251 statements]
[info] Wrote instrumentation file [/home/roland/Development/Home/sbt-scoverage-samples/target/scala-2.13/scoverage-data/scoverage.coverage]
[info] Will write measurement data to [/home/roland/Development/Home/sbt-scoverage-samples/target/scala-2.13/scoverage-data]
Received a credit request
Received a credit request
[info] CreditEngineTest:
[info] a credit engine
[info] - should approve amounts under the minimum
[info] - should reject amounts over the min
[info] SimpleObject2Test:
[info] - invoking simpleobject2
[info] FuturesTest:
[info] - futures happy path
[info] PriceEngineTest:
[info] a price engine
[info] - should broadcast on startup
[info] - should stop broadcasting on StopService msg
[info] - should restart broadcasting on StartService message
[info] CharmaxTest:
[info] a char max
[info] - should not crash the XML writer
[info] OrderEngineTest:
[info] an order engine
[info] - should create an order if credit approved
[info] - should reject order if credit denied
[info] - should send a credit request if a quote is available
Sending order request
[info] ClientActorTest:
[info] a client actor
[info] - should ask for a quote
[info] - should send a market order request if ask under minimum
[info] - should not send an order request if ask is over minimum
[info] DefaultArgumentsObjectTest:
[info] DefaultArgumentsObject
[info] - should execute the default block if no arg is given
[info] OrderValidatorTest:
[info] an order validator
[info] - should throw exception
[info] SimpleClassTest:
[info] a SimpleClassTest
[info] - should test 1
[info] Run completed in 4 seconds, 780 milliseconds.
[info] Total number of tests run: 17
[info] Suites: completed 10, aborted 0
[info] Tests: succeeded 17, failed 0, canceled 0, ignored 0, pending 0
[info] All tests passed.
[success] Total time: 12 s, completed 13 Nov 2022, 16:05:38
sbt:sbt-scoverage-samples> coverageReport
[info] Waiting for measurement data to sync...
[info] Reading scoverage instrumentation [/home/roland/Development/Home/sbt-scoverage-samples/target/scala-2.13/scoverage-data/scoverage.coverage]
[info] Reading scoverage measurements...
[info] Generating scoverage reports...
[info] Written Cobertura report [/home/roland/Development/Home/sbt-scoverage-samples/target/scala-2.13/coverage-report/cobertura.xml]
[info] Written XML coverage report [/home/roland/Development/Home/sbt-scoverage-samples/target/scala-2.13/scoverage-report/scoverage.xml]
[info] Written HTML coverage report [/home/roland/Development/Home/sbt-scoverage-samples/target/scala-2.13/scoverage-report/index.html]
[info] Statement coverage.: 70.12%
[info] Branch coverage....: 60.98%
[info] Coverage reports completed
[error] Coverage is below minimum [60.98% < 70.00%]: Branch:Total
[info] All done. Coverage was stmt=[70.12%] branch=[60.98%]
[success] Total time: 1 s, completed 13 Nov 2022, 16:06:01
sbt:sbt-scoverage-samples> ++3.2.0
[info] Setting Scala version to 3.2.0 on 1 projects.
[info] Reapplying settings...
[info] set current project to sbt-scoverage-samples (in build file:/home/roland/Development/Home/sbt-scoverage-samples/)
sbt:sbt-scoverage-samples> test
Received a credit request
Received a credit request
[info] CreditEngineTest:
[info] a credit engine
[info] - should approve amounts under the minimum
[info] - should reject amounts over the min
[info] SimpleObject2Test:
[info] - invoking simpleobject2
[info] FuturesTest:
[info] - futures happy path
[info] PriceEngineTest:
[info] a price engine
[info] - should broadcast on startup
[info] - should stop broadcasting on StopService msg
[info] - should restart broadcasting on StartService message
[info] CharmaxTest:
[info] a char max
[info] - should not crash the XML writer
[info] OrderEngineTest:
[info] an order engine
[info] - should create an order if credit approved
[info] - should reject order if credit denied
[info] - should send a credit request if a quote is available
Sending order request
[info] ClientActorTest:
[info] a client actor
[info] - should ask for a quote
[info] - should send a market order request if ask under minimum
[info] - should not send an order request if ask is over minimum
[info] DefaultArgumentsObjectTest:
[info] DefaultArgumentsObject
[info] - should execute the default block if no arg is given
[info] OrderValidatorTest:
[info] an order validator
[info] - should throw exception
[info] SimpleClassTest:
[info] a SimpleClassTest
[info] - should test 1
[info] Run completed in 4 seconds, 680 milliseconds.
[info] Total number of tests run: 17
[info] Suites: completed 10, aborted 0
[info] Tests: succeeded 17, failed 0, canceled 0, ignored 0, pending 0
[info] All tests passed.
[success] Total time: 6 s, completed 13 Nov 2022, 16:06:19
sbt:sbt-scoverage-samples> coverageReport
[info] Waiting for measurement data to sync...
[info] Reading scoverage instrumentation [/home/roland/Development/Home/sbt-scoverage-samples/target/scala-3.2.0/scoverage-data/scoverage.coverage]
[info] Reading scoverage measurements...
[info] Generating scoverage reports...
[error] stack trace is suppressed; run last coverageReport for the full output
[error] (coverageReport) No source root found for '/home/roland/Development/Home/sbt-scoverage-samples/implicits/src-3/upickle/implicits/CaseClassReader.scala' (source roots: '/home/roland/Development/Home/sbt-scoverage-samples/src/main/scala/')
[error] Total time: 1 s, completed 13 Nov 2022, 16:06:22

Possible conflict with Macro Paradise

Hi,
I'm getting a compilation exception when trying to setup SCoverage on a multi-module project using macros.
I'm posting below the stack trace in case other people have a similar problem and want to share status updates or workarounds.



 warn]  * org.scala-lang:scala-library:(2.11.5, 2.11.1, 2.11.2, 2.11.4) -> 2.11.6
[warn] To force scalaVersion, add the following:
[warn]  ivyScala := ivyScala.value map { _.copy(overrideScalaVersion = true) }
[warn] There may be incompatibilities among your library dependencies.
[warn] Here are some of the libraries that were evicted:
[warn]  * io.atlassian:kadai-core_2.11:3.1.1 -> 3.3.0
[warn]  * io.atlassian:kadai-logging_2.11:3.1.1 -> 3.3.0
[warn]  * io.argonaut:argonaut_2.11:6.1-M6 -> 6.1
[warn]  * com.twitter:finagle-core_2.11:6.24.0 -> 6.25.0
[warn] Run 'evicted' to see detailed eviction warnings
[info] Updating {file:/Users/sesponda/code/instance-service/}server...
[info] Formatting 4 Scala sources {file:/.../}container(compile) ...
[info] ======= Position error
[info] Unpositioned tree #14694
[info]    unpositioned [L   0 P#14695] #14694  [NoPosition]    Template   // Template(value <local EnumMacro>)
[info]       enclosing [L   7        ] #14695  [176:6411]      ModuleDef  // EnumMacro {
[info]         sibling [L   0 P#14695] #14694  [NoPosition]    Template   // Template(value <local EnumMacro>)
[info]
[info] While validating #14914
[info] [L   1        ] #14914  [0:6659]        PackageDef // paradise
[info]
[info] Children:
[info]   [L   1 P#14914] #26     [8:45]          Select     // paradise
[info]   [L   3 P#14914] #31     [47:91]         Import     // scala.reflect.macros.blackbox.Context
[info]   [L   4 P#14914] #35     [92:133]        Import     // scala.language.experimental.macros
[info]   [L   5 P#14914] #38     [134:174]       Import     // scala.annotation.StaticAnnotation
[info]   [L   7 P#14914] #14695  [176:6411]      ModuleDef  // EnumMacro {
[info]   [L 188 P#14914] #14804  [6413:6530]     ClassDef   // EnumLike extends StaticAnnotation {
[info]   [L 192 P#14914] #14913  [6532:6659]     ClassDef   // NamedEnumLike extends StaticAnnotation {
[info] =======
[info] Done updating.
[warn] Scala version was updated by one of library dependencies:
[warn]  * org.scala-lang:scala-library:(2.11.1, 2.11.5, 2.11.2, 2.11.4) -> 2.11.6
[warn] To force scalaVersion, add the following:
[warn]  ivyScala := ivyScala.value map { _.copy(overrideScalaVersion = true) }
[warn] There may be incompatibilities among your library dependencies.
[warn] Here are some of the libraries that were evicted:
[warn]  * io.atlassian:kadai-core_2.11:(3.0.0, 3.1.1) -> 3.3.0
[warn]  * io.atlassian:kadai-config_2.11:(3.1.1, 3.0.0) -> 3.3.0
[warn]  * io.atlassian:kadai-logging_2.11:(3.0.0, 3.1.1) -> 3.3.0
[warn]  * io.argonaut:argonaut_2.11:(6.1-M6, 6.1-M4) -> 6.1
[warn]  * com.twitter:finagle-core_2.11:6.24.0 -> 6.25.0
[warn]  * io.atlassian.aws-scala:aws-scala-core_2.11:(2.0.0-M5, 2.0.0-M8, 1.0.1) -> 2.0.0-M10
[warn]  * io.atlassian.aws-scala:aws-scala-dynamodb_2.11:(2.0.0-M5, 2.0.0-M8) -> 2.0.0-M10
[warn]  * io.atlassian.aws-scala:aws-scala-swf_2.11:2.0.0-M8 -> 2.0.0-M10
[warn] Run 'evicted' to see detailed eviction warnings
[info] Updating {file:/Users/sesponda/code/instance-service/}func-tests...
[info] Formatting 22 Scala sources {file:/..../}server(compile) ...
[info] Done updating.
[warn] Scala version was updated by one of library dependencies:
[warn]  * org.scala-lang:scala-library:(2.11.5, 2.11.1, 2.11.2, 2.11.4) -> 2.11.6
[warn] To force scalaVersion, add the following:
[warn]  ivyScala := ivyScala.value map { _.copy(overrideScalaVersion = true) }
[warn] There may be incompatibilities among your library dependencies.
[warn] Here are some of the libraries that were evicted:
[warn]  * io.atlassian:kadai-core_2.11:(3.0.0, 3.1.1) -> 3.3.0
[warn]  * io.atlassian:kadai-config_2.11:(3.1.1, 3.0.0) -> 3.3.0
[warn]  * io.atlassian:kadai-logging_2.11:(3.0.0, 3.1.1) -> 3.3.0
[warn]  * io.argonaut:argonaut_2.11:(6.1-M4, 6.1-M6) -> 6.1
[warn]  * com.twitter:finagle-core_2.11:6.24.0 -> 6.25.0
[warn]  * io.atlassian.aws-scala:aws-scala-core_2.11:(2.0.0-M8, 1.0.1, 2.0.0-M5) -> 2.0.0-M10
[warn]  * io.atlassian.aws-scala:aws-scala-dynamodb_2.11:(2.0.0-M5, 2.0.0-M8) -> 2.0.0-M10
[warn] Run 'evicted' to see detailed eviction warnings
scala.reflect.internal.Positions$ValidateException: Unpositioned tree #14694
    at scala.reflect.internal.Positions$class.positionError$1(Positions.scala:102)
    at scala.reflect.internal.Positions$class.validate$1(Positions.scala:112)
    at scala.reflect.internal.Positions$class.validate$1(Positions.scala:142)
    at scala.reflect.internal.Positions$class.validate$1(Positions.scala:142)
    at scala.reflect.internal.Positions$class.validatePositions(Positions.scala:147)
    at scala.reflect.internal.SymbolTable.validatePositions(SymbolTable.scala:16)
    at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3.apply(Analyzer.scala:103)
    at scala.tools.nsc.Global$GlobalPhase$$anonfun$applyPhase$1.apply$mcV$sp(Global.scala:428)
    at scala.tools.nsc.Global$GlobalPhase.withCurrentUnit(Global.scala:419)
    at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:428)
    at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3$$anonfun$run$1.apply(Analyzer.scala:94)
    at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3$$anonfun$run$1.apply(Analyzer.scala:93)
    at scala.collection.Iterator$class.foreach(Iterator.scala:743)
    at scala.collection.AbstractIterator.foreach(Iterator.scala:1195)
    at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3.run(Analyzer.scala:93)
    at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1338)
    at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1325)
    at scala.tools.nsc.Global$Run.compileSources(Global.scala:1320)
    at scala.tools.nsc.Global$Run.compile(Global.scala:1418)
    at xsbt.CachedCompiler0.run(CompilerInterface.scala:116)
    at xsbt.CachedCompiler0.run(CompilerInterface.scala:95)
    at xsbt.CompilerInterface.run(CompilerInterface.scala:26)
    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:497)
    at sbt.compiler.AnalyzingCompiler.call(AnalyzingCompiler.scala:101)
    at sbt.compiler.AnalyzingCompiler.compile(AnalyzingCompiler.scala:47)
    at sbt.compiler.AnalyzingCompiler.compile(AnalyzingCompiler.scala:41)
    at sbt.compiler.MixedAnalyzingCompiler$$anonfun$compileScala$1$1.apply$mcV$sp(MixedAnalyzingCompiler.scala:51)
    at sbt.compiler.MixedAnalyzingCompiler$$anonfun$compileScala$1$1.apply(MixedAnalyzingCompiler.scala:51)
    at sbt.compiler.MixedAnalyzingCompiler$$anonfun$compileScala$1$1.apply(MixedAnalyzingCompiler.scala:51)
    at sbt.compiler.MixedAnalyzingCompiler.timed(MixedAnalyzingCompiler.scala:75)
    at sbt.compiler.MixedAnalyzingCompiler.compileScala$1(MixedAnalyzingCompiler.scala:50)
    at sbt.compiler.MixedAnalyzingCompiler.compile(MixedAnalyzingCompiler.scala:65)
    at sbt.compiler.IC$$anonfun$compileInternal$1.apply(IncrementalCompiler.scala:160)
    at sbt.compiler.IC$$anonfun$compileInternal$1.apply(IncrementalCompiler.scala:160)
    at sbt.inc.IncrementalCompile$$anonfun$doCompile$1.apply(Compile.scala:66)
    at sbt.inc.IncrementalCompile$$anonfun$doCompile$1.apply(Compile.scala:64)
    at sbt.inc.IncrementalCommon.cycle(IncrementalCommon.scala:31)
    at sbt.inc.Incremental$$anonfun$1.apply(Incremental.scala:62)
    at sbt.inc.Incremental$$anonfun$1.apply(Incremental.scala:61)
    at sbt.inc.Incremental$.manageClassfiles(Incremental.scala:89)
    at sbt.inc.Incremental$.compile(Incremental.scala:61)
    at sbt.inc.IncrementalCompile$.apply(Compile.scala:54)
    at sbt.compiler.IC$.compileInternal(IncrementalCompiler.scala:160)
    at sbt.compiler.IC$.incrementalCompile(IncrementalCompiler.scala:138)
    at sbt.Compiler$.compile(Compiler.scala:128)
    at sbt.Compiler$.compile(Compiler.scala:114)
    at sbt.Defaults$.sbt$Defaults$$compileIncrementalTaskImpl(Defaults.scala:814)
    at sbt.Defaults$$anonfun$compileIncrementalTask$1.apply(Defaults.scala:805)
    at sbt.Defaults$$anonfun$compileIncrementalTask$1.apply(Defaults.scala:803)
    at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
    at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40)
    at sbt.std.Transform$$anon$4.work(System.scala:63)
    at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:226)
    at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:226)
    at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17)
    at sbt.Execute.work(Execute.scala:235)
    at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226)
    at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226)
    at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159)
    at sbt.CompletionService$$anon$2.call(CompletionService.scala:28)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
[error] (macros/compile:compileIncremental) scala.reflect.internal.Positions$ValidateException: Unpositioned tree #14694
[error] Total time: 19 s, completed 29/06/2015 2:12:52 PM

Did the coveralls plugin break?

The last commit ( 6324069 ) seemed to remove the coveralls.io build from the travis-ci script.

I've been trying to get the coveralls + scoverage plugin to run via travis but i keep getting JSON errors when i run sbt ++$TRAVIS_SCALA_VERSION coveralls via travis. Repro here: https://travis-ci.org/blackboxsociety/bbs-web/builds/24160041

When i run sbt ++$TRAVIS_SCALA_VERSION scoverage:test everything works out fine, but i don't get my coverage reports pushed to coveralls.

Running sbt coverage +test +coverageReport +coveralls throws error

Hey, I'm trying to get the sample project to work locally, as my own project throws the same error. At first I thought it was my project, but the example throws the following error for me when I run "sbt coverage +test +coverageReport +coveralls":

[error] java.util.NoSuchElementException: key not found: org/scoverage/samples/TypeTreeObjects.scala
[error] at scala.collection.MapLike.default(MapLike.scala:236)
[error] at scala.collection.MapLike.default$(MapLike.scala:235)
[error] at scala.collection.AbstractMap.default(Map.scala:65)
[error] at scala.collection.MapLike.apply(MapLike.scala:144)
[error] at scala.collection.MapLike.apply$(MapLike.scala:143)
[error] at scala.collection.AbstractMap.apply(Map.scala:65)
[error] at org.scoverage.coveralls.CoberturaMultiSourceReader.lineCoverage(CoberturaMultiSourceReader.scala:119)
[error] at org.scoverage.coveralls.CoberturaMultiSourceReader.reportForSource(CoberturaMultiSourceReader.scala:130)
[error] at org.scoverage.coveralls.CoverallsPlugin$.$anonfun$coverallsTask$6(CoverallsPlugin.scala:125)
[error] at scala.collection.parallel.AugmentedIterableIterator.map2combiner(RemainsIterator.scala:116)
[error] at scala.collection.parallel.AugmentedIterableIterator.map2combiner$(RemainsIterator.scala:113)
[error] at scala.collection.parallel.immutable.ParHashSet$ParHashSetIterator.map2combiner(ParHashSet.scala:81)
[error] at scala.collection.parallel.ParIterableLike$Map.leaf(ParIterableLike.scala:1064)
[error] at scala.collection.parallel.Task.$anonfun$tryLeaf$1(Tasks.scala:53)
[error] at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
[error] at scala.util.control.Breaks$$anon$1.catchBreak(Breaks.scala:67)
[error] at scala.collection.parallel.Task.tryLeaf(Tasks.scala:56)
[error] at scala.collection.parallel.Task.tryLeaf$(Tasks.scala:50)
[error] at scala.collection.parallel.ParIterableLike$Map.tryLeaf(ParIterableLike.scala:1061)
[error] at scala.collection.parallel.AdaptiveWorkStealingTasks$WrappedTask.internal(Tasks.scala:160)
[error] at scala.collection.parallel.AdaptiveWorkStealingTasks$WrappedTask.internal$(Tasks.scala:157)
[error] at scala.collection.parallel.AdaptiveWorkStealingForkJoinTasks$WrappedTask.internal(Tasks.scala:440)
[error] at scala.collection.parallel.AdaptiveWorkStealingTasks$WrappedTask.compute(Tasks.scala:150)
[error] at scala.collection.parallel.AdaptiveWorkStealingTasks$WrappedTask.compute$(Tasks.scala:149)
[error] at scala.collection.parallel.AdaptiveWorkStealingForkJoinTasks$WrappedTask.compute(Tasks.scala:440)
[error] at java.base/java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
[error] at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
[error] at java.base/java.util.concurrent.ForkJoinTask.doJoin(ForkJoinTask.java:396)
[error] at java.base/java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:721)
[error] at scala.collection.parallel.ForkJoinTasks$WrappedTask.sync(Tasks.scala:379)
[error] at scala.collection.parallel.ForkJoinTasks$WrappedTask.sync$(Tasks.scala:379)
[error] at scala.collection.parallel.AdaptiveWorkStealingForkJoinTasks$WrappedTask.sync(Tasks.scala:440)
[error] at scala.collection.parallel.ForkJoinTasks.executeAndWaitResult(Tasks.scala:423)
[error] at scala.collection.parallel.ForkJoinTasks.executeAndWaitResult$(Tasks.scala:416)
[error] at scala.collection.parallel.ForkJoinTaskSupport.executeAndWaitResult(TaskSupport.scala:60)
[error] at scala.collection.parallel.ExecutionContextTasks.executeAndWaitResult(Tasks.scala:555)
[error] at scala.collection.parallel.ExecutionContextTasks.executeAndWaitResult$(Tasks.scala:555)
[error] at scala.collection.parallel.ExecutionContextTaskSupport.executeAndWaitResult(TaskSupport.scala:84)
[error] at scala.collection.parallel.ParIterableLike$ResultMapping.leaf(ParIterableLike.scala:968)
[error] at scala.collection.parallel.Task.$anonfun$tryLeaf$1(Tasks.scala:53)
[error] at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
[error] at scala.util.control.Breaks$$anon$1.catchBreak(Breaks.scala:67)
[error] at scala.collection.parallel.Task.tryLeaf(Tasks.scala:56)
[error] at scala.collection.parallel.Task.tryLeaf$(Tasks.scala:50)
[error] at scala.collection.parallel.ParIterableLike$ResultMapping.tryLeaf(ParIterableLike.scala:963)
[error] at scala.collection.parallel.AdaptiveWorkStealingTasks$WrappedTask.compute(Tasks.scala:153)
[error] at scala.collection.parallel.AdaptiveWorkStealingTasks$WrappedTask.compute$(Tasks.scala:149)
[error] at scala.collection.parallel.AdaptiveWorkStealingForkJoinTasks$WrappedTask.compute(Tasks.scala:440)
[error] at java.base/java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
[error] at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
[error] at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
[error] at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
[error] at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
[error] at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
[error] (coveralls) java.util.NoSuchElementException: key not found: org/scoverage/samples/TypeTreeObjects.scala
[error] Total time: 1 s, completed 16.01.2023, 18:30:11

Coverage data is different between scala 2 and scala 3

How to reproduce?

  • run sbt +clean +coverage +test +coverageReport
  • look at target/scala-2.13/scoverage-report/index.html and target/scala-3.2.2-RC2/scoverage-report/index.html
  • they are different (e.g. branch coverage)

image

  • You can also diff target/scala-2.13/scoverage-data/scoverage.coverage target/scala-3.2.2-RC2/scoverage-data/scoverage.coverage

Questions to ask?

Note: It is expected that the "format/content" of the scala 3 scoverage.coverage file is somewhat different.

  • Why are they (so) different?
  • Which one is (more) correct?

mvn build fails

[INFO] 
[INFO] --- scala-maven-plugin:3.1.6:compile (compile) @ scoverage-samples ---
[INFO] /home/dbottger/git/scoverage/scoverage-samples/src/main/scala:-1: info: compiling
[INFO] Compiling 18 source files to /home/dbottger/git/scoverage/scoverage-samples/target/classes at 1412628812153
[INFO] compiler plugin: BasicArtifact(org.scoverage,scalac-scoverage-plugin_2.11,0.99.2,null)
[INFO] [scoverage]: Begin pre-instrumentation phase
[INFO] [scoverage]: Pre-instrumentation complete
[ERROR] ======= Position error
[INFO] Overlapping trees (63054,63049)
[INFO] == Ancestor tree [63070] of type Template at [92:240]TypeTreeObjects.scala
[INFO] 
[INFO] [L   4        ] #63070  [92:240]        Template   // {
[INFO] 
[INFO] == First overlapping tree [63054] of type Select at [208:236]TypeTreeObjects.scala
[INFO] 
[INFO] [L   8        ] #63054  [208:236]       Select     // new Container().typeParamAndD
[INFO] 
[INFO] == Second overlapping tree [63049] of type TypeTree at [232:235]TypeTreeObjects.scala
[INFO] 
[INFO] [L   8        ] #63049  [232:235]       TypeTree   // Any]
[INFO] 
[INFO] 
[INFO] While validating #63072
[INFO] [L   1        ] #63072  [0:240]         PackageDef // samples
[INFO] 
[INFO] Children:
[INFO]   [L   1 P#63072] #1681   [8:38]          Select     // samples
[INFO]   [L   4 P#63072] #63071  [70:240]        ClassDef   // TypeTreeObjects {
[INFO] =======
[ERROR] error: scala.reflect.internal.Positions$ValidateException: Overlapping trees (63054,63049)
[ERROR]     at scala.reflect.internal.Positions$class.positionError$1(Positions.scala:105)
[ERROR]     at scala.reflect.internal.Positions$class.validate$1(Positions.scala:135)
[ERROR]     at scala.reflect.internal.Positions$class.validate$1(Positions.scala:145)
[ERROR]     at scala.reflect.internal.Positions$class.validate$1(Positions.scala:145)
[ERROR]     at scala.reflect.internal.Positions$class.validatePositions(Positions.scala:150)
[ERROR]     at scala.reflect.internal.SymbolTable.validatePositions(SymbolTable.scala:16)
[ERROR]     at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3.apply(Analyzer.scala:103)
[ERROR]     at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:430)
[ERROR]     at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3$$anonfun$run$1.apply(Analyzer.scala:94)
[ERROR]     at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3$$anonfun$run$1.apply(Analyzer.scala:93)
[ERROR]     at scala.collection.Iterator$class.foreach(Iterator.scala:743)
[ERROR]     at scala.collection.AbstractIterator.foreach(Iterator.scala:1174)
[ERROR]     at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3.run(Analyzer.scala:93)
[ERROR]     at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1625)
[ERROR]     at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1610)
[ERROR]     at scala.tools.nsc.Global$Run.compileSources(Global.scala:1605)
[ERROR]     at scala.tools.nsc.Global$Run.compile(Global.scala:1703)
[ERROR]     at scala.tools.nsc.Driver.doCompile(Driver.scala:34)
[ERROR]     at scala.tools.nsc.MainClass.doCompile(Main.scala:23)
[ERROR]     at scala.tools.nsc.Driver.process(Driver.scala:55)
[ERROR]     at scala.tools.nsc.Driver.main(Driver.scala:68)
[ERROR]     at scala.tools.nsc.Main.main(Main.scala)
[ERROR]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERROR]     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[ERROR]     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[ERROR]     at java.lang.reflect.Method.invoke(Method.java:606)
[ERROR]     at scala_maven_executions.MainHelper.runMain(MainHelper.java:164)
[ERROR]     at scala_maven_executions.MainWithArgsInFile.main(MainWithArgsInFile.java:26)
[ERROR] java.lang.reflect.InvocationTargetException
[ERROR]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERROR]     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[ERROR]     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[ERROR]     at java.lang.reflect.Method.invoke(Method.java:606)
[ERROR]     at scala_maven_executions.MainHelper.runMain(MainHelper.java:164)
[ERROR]     at scala_maven_executions.MainWithArgsInFile.main(MainWithArgsInFile.java:26)
[ERROR] Caused by: scala.reflect.internal.Positions$ValidateException: Overlapping trees (63054,63049)
[ERROR]     at scala.reflect.internal.Positions$class.positionError$1(Positions.scala:105)
[ERROR]     at scala.reflect.internal.Positions$class.validate$1(Positions.scala:135)
[ERROR]     at scala.reflect.internal.Positions$class.validate$1(Positions.scala:145)
[ERROR]     at scala.reflect.internal.Positions$class.validate$1(Positions.scala:145)
[ERROR]     at scala.reflect.internal.Positions$class.validatePositions(Positions.scala:150)
[ERROR]     at scala.reflect.internal.SymbolTable.validatePositions(SymbolTable.scala:16)
[ERROR]     at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3.apply(Analyzer.scala:103)
[ERROR]     at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:430)
[ERROR]     at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3$$anonfun$run$1.apply(Analyzer.scala:94)
[ERROR]     at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3$$anonfun$run$1.apply(Analyzer.scala:93)
[ERROR]     at scala.collection.Iterator$class.foreach(Iterator.scala:743)
[ERROR]     at scala.collection.AbstractIterator.foreach(Iterator.scala:1174)
[ERROR]     at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3.run(Analyzer.scala:93)
[ERROR]     at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1625)
[ERROR]     at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1610)
[ERROR]     at scala.tools.nsc.Global$Run.compileSources(Global.scala:1605)
[ERROR]     at scala.tools.nsc.Global$Run.compile(Global.scala:1703)
[ERROR]     at scala.tools.nsc.Driver.doCompile(Driver.scala:34)
[ERROR]     at scala.tools.nsc.MainClass.doCompile(Main.scala:23)
[ERROR]     at scala.tools.nsc.Driver.process(Driver.scala:55)
[ERROR]     at scala.tools.nsc.Driver.main(Driver.scala:68)
[ERROR]     at scala.tools.nsc.Main.main(Main.scala)
[ERROR]     ... 6 more
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal net.alchim31.maven:scala-maven-plugin:3.1.6:compile (compile) on project scoverage-samples: wrap: org.apache.commons.exec.ExecuteException: Process exited with an error: 240 (Exit value: 240) -> [Help 1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.