From 8333ee393d8ccc37f366dbdb49fcf87fc0773459 Mon Sep 17 00:00:00 2001 From: Stu Date: Mon, 16 Nov 2020 21:54:59 +0000 Subject: [PATCH 1/2] upgrade to scoverage 1.4.2 (dropping support for 2.11 as it is gone upstream) --- build.gradle | 2 +- .../java/org/scoverage/Scala211Test.java | 7 ------- .../java/org/scoverage/Scala213Test.java | 8 -------- .../scoverage/ScalaCrossVersionAggregationTest.java | 3 --- .../java/org/scoverage/ScalaVersionTest.java | 3 --- .../2_11/build.gradle | 4 ---- .../2_11/src/main/scala/org/hello/World2_11.scala | 9 --------- .../src/test/scala/org/hello/World2_11Suite.scala | 13 ------------- .../settings.gradle | 2 +- .../groovy/org/scoverage/ScoverageExtension.groovy | 2 +- src/main/groovy/org/scoverage/ScoverageWriter.java | 6 +----- 11 files changed, 4 insertions(+), 55 deletions(-) delete mode 100644 src/crossScalaVersionTest/java/org/scoverage/Scala211Test.java delete mode 100644 src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/build.gradle delete mode 100644 src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World2_11.scala delete mode 100644 src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World2_11Suite.scala diff --git a/build.gradle b/build.gradle index 268de3e..ea6cb92 100644 --- a/build.gradle +++ b/build.gradle @@ -46,7 +46,7 @@ targetCompatibility = '1.8' dependencies { - compileOnly "org.scoverage:scalac-scoverage-plugin_2.12:1.4.1" + compileOnly "org.scoverage:scalac-scoverage-plugin_2.13:1.4.2" implementation group: 'commons-io', name: 'commons-io', version: '2.6' testImplementation 'junit:junit:4.12' diff --git a/src/crossScalaVersionTest/java/org/scoverage/Scala211Test.java b/src/crossScalaVersionTest/java/org/scoverage/Scala211Test.java deleted file mode 100644 index ac06067..0000000 --- a/src/crossScalaVersionTest/java/org/scoverage/Scala211Test.java +++ /dev/null @@ -1,7 +0,0 @@ -package org.scoverage; - -public class Scala211Test extends ScalaVersionTest { - public Scala211Test() { - super("2_11"); - } -} \ No newline at end of file diff --git a/src/crossScalaVersionTest/java/org/scoverage/Scala213Test.java b/src/crossScalaVersionTest/java/org/scoverage/Scala213Test.java index 0f6ed71..31d9a38 100644 --- a/src/crossScalaVersionTest/java/org/scoverage/Scala213Test.java +++ b/src/crossScalaVersionTest/java/org/scoverage/Scala213Test.java @@ -1,13 +1,5 @@ package org.scoverage; -import org.junit.Ignore; - -/** - * Tests is currently ignored as support for Scala 2.13 is not available yet. - * - * @see Issue #106. - */ -@Ignore public class Scala213Test extends ScalaVersionTest { public Scala213Test() { super("2_13"); diff --git a/src/crossScalaVersionTest/java/org/scoverage/ScalaCrossVersionAggregationTest.java b/src/crossScalaVersionTest/java/org/scoverage/ScalaCrossVersionAggregationTest.java index d3b66ae..62850aa 100644 --- a/src/crossScalaVersionTest/java/org/scoverage/ScalaCrossVersionAggregationTest.java +++ b/src/crossScalaVersionTest/java/org/scoverage/ScalaCrossVersionAggregationTest.java @@ -23,11 +23,9 @@ public void checkAndAggregateAll() throws Exception { ScoveragePlugin.getAGGREGATE_NAME()); result.assertTaskSkipped(ScoveragePlugin.getREPORT_NAME()); - result.assertTaskSucceeded("2_11:" + ScoveragePlugin.getREPORT_NAME()); result.assertTaskSucceeded("2_12:" + ScoveragePlugin.getREPORT_NAME()); result.assertTaskSucceeded("2_13:" + ScoveragePlugin.getREPORT_NAME()); result.assertTaskSucceeded(ScoveragePlugin.getCHECK_NAME()); - result.assertTaskSucceeded("2_11:" + ScoveragePlugin.getCHECK_NAME()); result.assertTaskSucceeded("2_12:" + ScoveragePlugin.getCHECK_NAME()); result.assertTaskSucceeded("2_13:" + ScoveragePlugin.getCHECK_NAME()); result.assertTaskSucceeded(ScoveragePlugin.getAGGREGATE_NAME()); @@ -39,7 +37,6 @@ public void checkAndAggregateAll() throws Exception { private void assertAggregationFilesExist() { Assert.assertTrue(resolve(reportDir(), "index.html").exists()); - Assert.assertTrue(resolve(reportDir(), "2_11/src/main/scala/org/hello/World2_11.scala.html").exists()); Assert.assertTrue(resolve(reportDir(), "2_12/src/main/scala/org/hello/World2_12.scala.html").exists()); Assert.assertTrue(resolve(reportDir(), "2_13/src/main/scala/org/hello/World2_13.scala.html").exists()); } diff --git a/src/crossScalaVersionTest/java/org/scoverage/ScalaVersionTest.java b/src/crossScalaVersionTest/java/org/scoverage/ScalaVersionTest.java index 59160f3..55a15c8 100644 --- a/src/crossScalaVersionTest/java/org/scoverage/ScalaVersionTest.java +++ b/src/crossScalaVersionTest/java/org/scoverage/ScalaVersionTest.java @@ -2,9 +2,6 @@ import org.junit.Assert; import org.junit.Test; -import org.junit.jupiter.api.Tag; -import org.scoverage.ScoverageFunctionalTest; -import org.scoverage.ScoveragePlugin; import java.io.File; diff --git a/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/build.gradle b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/build.gradle deleted file mode 100644 index 5421d5a..0000000 --- a/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/build.gradle +++ /dev/null @@ -1,4 +0,0 @@ -dependencies { - compile group: 'org.scala-lang', name: 'scala-library', version: "2.11.12" - testCompile group: 'org.scalatest', name: "scalatest_2.11", version: scalatestVersion -} diff --git a/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World2_11.scala b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World2_11.scala deleted file mode 100644 index cab6958..0000000 --- a/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World2_11.scala +++ /dev/null @@ -1,9 +0,0 @@ -package org.hello - -class World2_11 { - - def foo(): String = { - val s = "2" + "11" - s - } -} \ No newline at end of file diff --git a/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World2_11Suite.scala b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World2_11Suite.scala deleted file mode 100644 index 2d99209..0000000 --- a/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World2_11Suite.scala +++ /dev/null @@ -1,13 +0,0 @@ -package org.hello - -import org.junit.runner.RunWith -import org.scalatest.FunSuite -import org.scalatest.junit.JUnitRunner - -@RunWith(classOf[JUnitRunner]) -class World2_11Suite extends FunSuite { - - test("foo") { - new World2_11().foo() - } -} \ No newline at end of file diff --git a/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/settings.gradle b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/settings.gradle index 174d3b1..f294f6a 100644 --- a/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/settings.gradle +++ b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/settings.gradle @@ -1 +1 @@ -include '2_11', '2_12', '2_13' \ No newline at end of file +include '2_12', '2_13' \ No newline at end of file diff --git a/src/main/groovy/org/scoverage/ScoverageExtension.groovy b/src/main/groovy/org/scoverage/ScoverageExtension.groovy index 9de93c5..06d22ba 100644 --- a/src/main/groovy/org/scoverage/ScoverageExtension.groovy +++ b/src/main/groovy/org/scoverage/ScoverageExtension.groovy @@ -57,7 +57,7 @@ class ScoverageExtension { project.plugins.apply(ScalaPlugin.class) scoverageVersion = project.objects.property(String) - scoverageVersion.set('1.4.1') + scoverageVersion.set('1.4.2') scoverageScalaVersion = project.objects.property(String) diff --git a/src/main/groovy/org/scoverage/ScoverageWriter.java b/src/main/groovy/org/scoverage/ScoverageWriter.java index 47572c1..bf0e2df 100644 --- a/src/main/groovy/org/scoverage/ScoverageWriter.java +++ b/src/main/groovy/org/scoverage/ScoverageWriter.java @@ -2,8 +2,6 @@ import org.gradle.api.logging.Logger; import scala.Some; -import scala.collection.JavaConverters; -import scala.collection.mutable.Buffer; import scoverage.Constants; import scoverage.Coverage; import scoverage.report.CoberturaXmlWriter; @@ -11,7 +9,6 @@ import scoverage.report.ScoverageXmlWriter; import java.io.File; -import java.util.Arrays; /** * Util for generating and saving coverage files. @@ -76,8 +73,7 @@ public void write(File sourceDir, } if (coverageOutputHTML) { - Buffer sources = JavaConverters.asScalaBufferConverter(Arrays.asList(sourceDir)).asScala(); - new ScoverageHtmlWriter(sources, reportDir, new Some<>(sourceEncoding)).write(coverage); + new ScoverageHtmlWriter(new File[]{sourceDir}, reportDir, new Some<>(sourceEncoding)).write(coverage); logger.info("[scoverage] Written HTML report to " + reportDir.getAbsolutePath() + File.separator + From 051134b06acb117c67d69c0a5af1dd39d68e533b Mon Sep 17 00:00:00 2001 From: Stu Date: Tue, 17 Nov 2020 08:52:17 +0000 Subject: [PATCH 2/2] update README with details of v5 --- README.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 98f0543..bf3c548 100644 --- a/README.md +++ b/README.md @@ -43,10 +43,10 @@ You can find instructions on how to apply the plugin at http://plugins.gradle.or The plugin exposes multiple options that can be configured by setting them in an `scoverage` block within the project's build script. These options are as follows: -* `scoverageVersion = ` (default `"1.4.1"`): The version of the scoverage scalac plugin. This (gradle) plugin +* `scoverageVersion = ` (default `"1.4.2`): The version of the scoverage scalac plugin. This (gradle) plugin should be compatible with all 1+ versions. -* `scoverageScalaVersion = ` (default `"2.12"`): The scala version of the scoverage scalac plugin. This +* `scoverageScalaVersion = ` (default `detected`): The scala version of the scoverage scalac plugin. This overrides the version of the `scala-library` compile dependency (if the dependency is configured). * `coverageOutputCobertura = ` (default `true`): Enables/disables cobertura.xml file generation (for both aggregated and non-aggregated reports). @@ -122,6 +122,13 @@ In order for the plugin to work alongside [Palantir's consistent versions plugin the Scala version must be manually configured (via `scoverageScalaVersion`); otherwise, the plugin will attempt to resolve the compilation classpath, which is prohibited by the versions plugin. +Migration to 5.x +---------------- + +* Requires scoverage 1.4.2 or higher (and uses this version by default) +* Adds support for Scala 2.13 +* Drops support for Scala 2.11 + Migration to 4.x ----------------