diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index a8189eb..2a34817 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -20,18 +20,18 @@ jobs: continue-on-error: false - name: 'fail on warning' additional-check-args: '--warning-mode=fail -PfailOnWarning' - continue-on-error: true + continue-on-error: false runs-on: ubuntu-latest continue-on-error: ${{ matrix.continue-on-error }} steps: - - uses: actions/checkout@v2 - - name: Set up JDK 11 - uses: actions/setup-java@v2 + - uses: actions/checkout@v4 + - name: Set up JDK 17 + uses: actions/setup-java@v4 with: - java-version: '11' - distribution: 'adopt' + java-version: '17' + distribution: 'temurin' - name: Grant execute permission for gradlew run: chmod +x gradlew - name: Build with Gradle diff --git a/build.gradle b/build.gradle index 85cff81..cdfeec1 100644 --- a/build.gradle +++ b/build.gradle @@ -8,7 +8,7 @@ repositories { mavenCentral() } -group 'org.scoverage' +group = 'org.scoverage' description = 'gradle-scoverage is a Gradle plugin for calculating code coverage using Scoverage' if (project.version == 'unspecified') { version = '8.0.0-SNAPSHOT' @@ -48,8 +48,10 @@ dependencies { compileOnly 'org.scoverage:scalac-scoverage-plugin_2.13.14:2.1.1' compileOnly 'org.scoverage:scalac-scoverage-reporter_2.13:2.1.1' - implementation group: 'commons-io', name: 'commons-io', version: '2.6' + implementation 'commons-io:commons-io:2.6' + testImplementation localGroovy() + testImplementation gradleApi() testImplementation 'junit:junit:4.12' testImplementation 'org.junit.jupiter:junit-jupiter-api:5.5.2' testRuntimeOnly 'org.junit.vintage:junit-vintage-engine:5.5.2' @@ -116,7 +118,7 @@ gradlePlugin { } task groovydocJar(type: Jar, dependsOn: groovydoc) { - from "$buildDir/docs/groovydoc" + from layout.buildDirectory.dir('docs/groovydoc') archiveClassifier.set('groovydoc') } @@ -179,7 +181,7 @@ publishing { } } -if (project.properties.containsKey('signing.keyId')) { +if (project.hasProperty('signing.keyId')) { apply plugin: 'signing' signing { sign publishing.publications.mavenJava @@ -191,7 +193,7 @@ if (project.properties.containsKey('signing.keyId')) { task fixIdeaPluginClasspath { doFirst { configure(tasks.pluginUnderTestMetadata) { - def ideaClassesPath = project.buildDir.toPath().resolveSibling("out").resolve("production") + def ideaClassesPath = project.layout.buildDirectory.get().asFile.toPath().resolveSibling("out").resolve("production") def newClasspath = pluginClasspath as List newClasspath.add(0, ideaClassesPath) pluginClasspath.setFrom(newClasspath) diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 7dbd4a7..dc5c979 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip -distributionSha256Sum=f397b287023acdba1e9f6fc5ea72d22dd63669d59ed4a289a29b1a76eee151c6 +distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.0-bin.zip +distributionSha256Sum=bbaeb2fef8710818cf0e261201dab964c572f92b942812df0c3620d62a529a01 zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_12/build.gradle b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_12/build.gradle index a510442..51313e2 100644 --- a/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_12/build.gradle +++ b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_12/build.gradle @@ -1,4 +1,4 @@ dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "2.12.17" - testImplementation group: 'org.scalatest', name: "scalatest_2.12", version: scalatestVersion + implementation 'org.scala-lang:scala-library:2.12.17' + testImplementation "org.scalatest:scalatest_2.12:$scalatestVersion" } diff --git a/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_13/build.gradle b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_13/build.gradle index ea57742..8c80a0b 100644 --- a/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_13/build.gradle +++ b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_13/build.gradle @@ -1,4 +1,4 @@ dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "2.13.10" - testImplementation group: 'org.scalatest', name: "scalatest_2.13", version: scalatestVersion + implementation 'org.scala-lang:scala-library:2.13.10' + testImplementation "org.scalatest:scalatest_2.13:$scalatestVersion" } diff --git a/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/build.gradle b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/build.gradle index 38e7b9f..0506448 100644 --- a/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/build.gradle +++ b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/build.gradle @@ -17,8 +17,8 @@ allprojects { apply plugin: 'org.scoverage' dependencies { - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" + testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion" } test { diff --git a/src/functionalTest/resources/projects/composite-build/proj1/build.gradle b/src/functionalTest/resources/projects/composite-build/proj1/build.gradle index 88cbf46..c9dcb76 100644 --- a/src/functionalTest/resources/projects/composite-build/proj1/build.gradle +++ b/src/functionalTest/resources/projects/composite-build/proj1/build.gradle @@ -12,16 +12,16 @@ apply plugin: 'java' apply plugin: 'scala' -group "org.composite" -version '1.0' +group = "org.composite" +version = '1.0' dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + implementation "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" + testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion" - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" implementation "org.composite:proj2:1.0" } diff --git a/src/functionalTest/resources/projects/composite-build/proj2/build.gradle b/src/functionalTest/resources/projects/composite-build/proj2/build.gradle index 8ea2bff..2cc99fc 100644 --- a/src/functionalTest/resources/projects/composite-build/proj2/build.gradle +++ b/src/functionalTest/resources/projects/composite-build/proj2/build.gradle @@ -12,16 +12,16 @@ apply plugin: 'java' apply plugin: 'scala' -group "org.composite" -version '1.0' +group = "org.composite" +version = '1.0' dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + implementation "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" + testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion" - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" } test { diff --git a/src/functionalTest/resources/projects/detect-scala-library/compile/build.gradle b/src/functionalTest/resources/projects/detect-scala-library/compile/build.gradle index 50a45ca..a54c28e 100644 --- a/src/functionalTest/resources/projects/detect-scala-library/compile/build.gradle +++ b/src/functionalTest/resources/projects/detect-scala-library/compile/build.gradle @@ -9,5 +9,5 @@ repositories { description = 'defines scala library using the "implementation" configuration' dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${detectedScalaLibraryVersion}" + implementation "org.scala-lang:scala-library:${detectedScalaLibraryVersion}" } \ No newline at end of file diff --git a/src/functionalTest/resources/projects/detect-scala-library/compileOnly/build.gradle b/src/functionalTest/resources/projects/detect-scala-library/compileOnly/build.gradle index 8444413..f81acdd 100644 --- a/src/functionalTest/resources/projects/detect-scala-library/compileOnly/build.gradle +++ b/src/functionalTest/resources/projects/detect-scala-library/compileOnly/build.gradle @@ -9,5 +9,5 @@ repositories { description = 'defines scala library using the "compileOnly" configuration' dependencies { - compileOnly group: 'org.scala-lang', name: 'scala-library', version: "${detectedScalaLibraryVersion}" + compileOnly "org.scala-lang:scala-library:${detectedScalaLibraryVersion}" } \ No newline at end of file diff --git a/src/functionalTest/resources/projects/detect-scala-library/dependency-management/build.gradle b/src/functionalTest/resources/projects/detect-scala-library/dependency-management/build.gradle index 0598896..d9abada 100644 --- a/src/functionalTest/resources/projects/detect-scala-library/dependency-management/build.gradle +++ b/src/functionalTest/resources/projects/detect-scala-library/dependency-management/build.gradle @@ -1,5 +1,5 @@ plugins { - id 'io.spring.dependency-management' version "1.1.5" + id 'io.spring.dependency-management' version "1.1.7" id 'org.scoverage' } @@ -16,5 +16,5 @@ dependencyManagement { } dependencies { - implementation group: 'org.scala-lang', name: 'scala-library' + implementation 'org.scala-lang:scala-library' } \ No newline at end of file diff --git a/src/functionalTest/resources/projects/detect-scala-library/gradle-consistent-versions/build.gradle b/src/functionalTest/resources/projects/detect-scala-library/gradle-consistent-versions/build.gradle index 1b0f2f4..4ef4cd6 100644 --- a/src/functionalTest/resources/projects/detect-scala-library/gradle-consistent-versions/build.gradle +++ b/src/functionalTest/resources/projects/detect-scala-library/gradle-consistent-versions/build.gradle @@ -10,7 +10,7 @@ repositories { description = 'defines scala library using the "implementation" configuration and the gradle-consistent-versions plugin' dependencies { - implementation group: 'org.scala-lang', name: 'scala-library' + implementation 'org.scala-lang:scala-library' } scoverage { diff --git a/src/functionalTest/resources/projects/detect-scala-library/implementation/build.gradle b/src/functionalTest/resources/projects/detect-scala-library/implementation/build.gradle index 50a45ca..a54c28e 100644 --- a/src/functionalTest/resources/projects/detect-scala-library/implementation/build.gradle +++ b/src/functionalTest/resources/projects/detect-scala-library/implementation/build.gradle @@ -9,5 +9,5 @@ repositories { description = 'defines scala library using the "implementation" configuration' dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${detectedScalaLibraryVersion}" + implementation "org.scala-lang:scala-library:${detectedScalaLibraryVersion}" } \ No newline at end of file diff --git a/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/build.gradle b/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/build.gradle index 7fd12a9..61936b8 100644 --- a/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/build.gradle +++ b/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/build.gradle @@ -15,7 +15,7 @@ subprojects { p -> apply plugin: 'java' dependencies { implementation platform(project(':dependencies')) - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner' + testImplementation 'org.junit.platform:junit-platform-runner' } test { diff --git a/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/dependencies/build.gradle b/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/dependencies/build.gradle index 3ac33f7..3e653a6 100644 --- a/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/dependencies/build.gradle +++ b/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/dependencies/build.gradle @@ -4,11 +4,11 @@ plugins { dependencies { constraints { - api group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + api "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - api group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion - api group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + api "org.junit.vintage:junit-vintage-engine:$junitVersion" + api "org.junit.platform:junit-platform-runner:$junitPlatformVersion" - api group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + api "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" } } \ No newline at end of file diff --git a/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/java_only/build.gradle b/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/java_only/build.gradle index c9a43d3..5907671 100644 --- a/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/java_only/build.gradle +++ b/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/java_only/build.gradle @@ -1,3 +1,3 @@ dependencies { - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine' + testRuntimeOnly 'org.junit.vintage:junit-vintage-engine' } diff --git a/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/scala_only/build.gradle b/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/scala_only/build.gradle index 2df2f4e..ed11635 100644 --- a/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/scala_only/build.gradle +++ b/src/functionalTest/resources/projects/multi-module-plugin-not-configured-for-scala/scala_only/build.gradle @@ -2,8 +2,8 @@ apply plugin: 'scala' // apply plugin: 'org.scoverage' // Oops forgot to configure scoverage dependencies { - implementation group: 'org.scala-lang', name: 'scala-library' + implementation 'org.scala-lang:scala-library' - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine' - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}" + testRuntimeOnly 'org.junit.vintage:junit-vintage-engine' + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}" } diff --git a/src/functionalTest/resources/projects/multiple-check-tasks/multiple-checks/build.gradle b/src/functionalTest/resources/projects/multiple-check-tasks/multiple-checks/build.gradle index ba61184..1e205ab 100644 --- a/src/functionalTest/resources/projects/multiple-check-tasks/multiple-checks/build.gradle +++ b/src/functionalTest/resources/projects/multiple-check-tasks/multiple-checks/build.gradle @@ -12,12 +12,12 @@ apply plugin: 'java' apply plugin: 'scala' dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + implementation "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" + testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion" - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" } test { diff --git a/src/functionalTest/resources/projects/multiple-check-tasks/no-check/build.gradle b/src/functionalTest/resources/projects/multiple-check-tasks/no-check/build.gradle index e9f2522..f1d75b3 100644 --- a/src/functionalTest/resources/projects/multiple-check-tasks/no-check/build.gradle +++ b/src/functionalTest/resources/projects/multiple-check-tasks/no-check/build.gradle @@ -12,12 +12,12 @@ apply plugin: 'java' apply plugin: 'scala' dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + implementation "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" + testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion" - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" } test { diff --git a/src/functionalTest/resources/projects/multiple-check-tasks/old-and-new-syntax/build.gradle b/src/functionalTest/resources/projects/multiple-check-tasks/old-and-new-syntax/build.gradle index 1b5137e..ef93d76 100644 --- a/src/functionalTest/resources/projects/multiple-check-tasks/old-and-new-syntax/build.gradle +++ b/src/functionalTest/resources/projects/multiple-check-tasks/old-and-new-syntax/build.gradle @@ -12,12 +12,12 @@ apply plugin: 'java' apply plugin: 'scala' dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + implementation "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" + testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion" - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" } test { diff --git a/src/functionalTest/resources/projects/multiple-check-tasks/single-check-new-syntax/build.gradle b/src/functionalTest/resources/projects/multiple-check-tasks/single-check-new-syntax/build.gradle index c3b22ec..9819038 100644 --- a/src/functionalTest/resources/projects/multiple-check-tasks/single-check-new-syntax/build.gradle +++ b/src/functionalTest/resources/projects/multiple-check-tasks/single-check-new-syntax/build.gradle @@ -12,12 +12,12 @@ apply plugin: 'java' apply plugin: 'scala' dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + implementation "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" + testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion" - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" } test { diff --git a/src/functionalTest/resources/projects/multiple-check-tasks/single-check-old-syntax/build.gradle b/src/functionalTest/resources/projects/multiple-check-tasks/single-check-old-syntax/build.gradle index 8d7c020..a5bdcaf 100644 --- a/src/functionalTest/resources/projects/multiple-check-tasks/single-check-old-syntax/build.gradle +++ b/src/functionalTest/resources/projects/multiple-check-tasks/single-check-old-syntax/build.gradle @@ -12,12 +12,12 @@ apply plugin: 'java' apply plugin: 'scala' dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + implementation "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" + testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion" - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" } test { diff --git a/src/functionalTest/resources/projects/scala-java-annotation-processor/build.gradle b/src/functionalTest/resources/projects/scala-java-annotation-processor/build.gradle index c67b12d..f071cf0 100644 --- a/src/functionalTest/resources/projects/scala-java-annotation-processor/build.gradle +++ b/src/functionalTest/resources/projects/scala-java-annotation-processor/build.gradle @@ -16,7 +16,7 @@ subprojects { apply plugin: 'java' dependencies { - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion" compileOnly "org.projectlombok:lombok:$lombokVersion" annotationProcessor "org.projectlombok:lombok:$lombokVersion" diff --git a/src/functionalTest/resources/projects/scala-java-annotation-processor/java_only/build.gradle b/src/functionalTest/resources/projects/scala-java-annotation-processor/java_only/build.gradle index 69fe4c7..931b48e 100644 --- a/src/functionalTest/resources/projects/scala-java-annotation-processor/java_only/build.gradle +++ b/src/functionalTest/resources/projects/scala-java-annotation-processor/java_only/build.gradle @@ -1,3 +1,3 @@ dependencies { - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" } diff --git a/src/functionalTest/resources/projects/scala-java-annotation-processor/mixed_scala_java/build.gradle b/src/functionalTest/resources/projects/scala-java-annotation-processor/mixed_scala_java/build.gradle index c0021f0..f6d1157 100644 --- a/src/functionalTest/resources/projects/scala-java-annotation-processor/mixed_scala_java/build.gradle +++ b/src/functionalTest/resources/projects/scala-java-annotation-processor/mixed_scala_java/build.gradle @@ -1,11 +1,11 @@ apply plugin: 'scala' dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + implementation "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" } apply plugin: 'org.scoverage' diff --git a/src/functionalTest/resources/projects/scala-java-multi-module/build.gradle b/src/functionalTest/resources/projects/scala-java-multi-module/build.gradle index fa88c6f..0fda2f1 100644 --- a/src/functionalTest/resources/projects/scala-java-multi-module/build.gradle +++ b/src/functionalTest/resources/projects/scala-java-multi-module/build.gradle @@ -14,7 +14,7 @@ subprojects { apply plugin: 'java' dependencies { - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion" } test { diff --git a/src/functionalTest/resources/projects/scala-java-multi-module/java_only/build.gradle b/src/functionalTest/resources/projects/scala-java-multi-module/java_only/build.gradle index 69fe4c7..931b48e 100644 --- a/src/functionalTest/resources/projects/scala-java-multi-module/java_only/build.gradle +++ b/src/functionalTest/resources/projects/scala-java-multi-module/java_only/build.gradle @@ -1,3 +1,3 @@ dependencies { - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" } diff --git a/src/functionalTest/resources/projects/scala-java-multi-module/mixed_scala_java/build.gradle b/src/functionalTest/resources/projects/scala-java-multi-module/mixed_scala_java/build.gradle index 53e3405..7bf5003 100644 --- a/src/functionalTest/resources/projects/scala-java-multi-module/mixed_scala_java/build.gradle +++ b/src/functionalTest/resources/projects/scala-java-multi-module/mixed_scala_java/build.gradle @@ -1,11 +1,11 @@ apply plugin: 'scala' dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + implementation "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" } // A common practice in mixed java/scala modules to make Java code able to import Scala code diff --git a/src/functionalTest/resources/projects/scala-java-multi-module/scala_only/build.gradle b/src/functionalTest/resources/projects/scala-java-multi-module/scala_only/build.gradle index 2ed4e0e..29bfd6e 100644 --- a/src/functionalTest/resources/projects/scala-java-multi-module/scala_only/build.gradle +++ b/src/functionalTest/resources/projects/scala-java-multi-module/scala_only/build.gradle @@ -1,11 +1,11 @@ apply plugin: 'scala' dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + implementation "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" } apply plugin: 'org.scoverage' diff --git a/src/functionalTest/resources/projects/scala-multi-module-multiple-test-tasks/build.gradle b/src/functionalTest/resources/projects/scala-multi-module-multiple-test-tasks/build.gradle index 27fca57..2216b49 100644 --- a/src/functionalTest/resources/projects/scala-multi-module-multiple-test-tasks/build.gradle +++ b/src/functionalTest/resources/projects/scala-multi-module-multiple-test-tasks/build.gradle @@ -17,12 +17,12 @@ allprojects { apply plugin: 'org.scoverage' dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + implementation "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" + testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion" - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" } testing { @@ -36,7 +36,6 @@ allprojects { } } intTest(JvmTestSuite) { - testType = TestSuiteType.INTEGRATION_TEST // dependencies { ... } does not appear to work as advertised? sources { scala { diff --git a/src/functionalTest/resources/projects/scala-multi-module-with-partial-scoverage-use/build.gradle b/src/functionalTest/resources/projects/scala-multi-module-with-partial-scoverage-use/build.gradle index 512b324..6d25c63 100644 --- a/src/functionalTest/resources/projects/scala-multi-module-with-partial-scoverage-use/build.gradle +++ b/src/functionalTest/resources/projects/scala-multi-module-with-partial-scoverage-use/build.gradle @@ -18,11 +18,11 @@ allprojects { p -> dependencies { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + implementation "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner' + testImplementation 'org.junit.platform:junit-platform-runner' - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}" + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}" } } diff --git a/src/functionalTest/resources/projects/scala-multi-module/build.gradle b/src/functionalTest/resources/projects/scala-multi-module/build.gradle index 0177c34..43b5938 100644 --- a/src/functionalTest/resources/projects/scala-multi-module/build.gradle +++ b/src/functionalTest/resources/projects/scala-multi-module/build.gradle @@ -17,12 +17,12 @@ allprojects { p -> dependencies { implementation platform(project(':dependencies')) - implementation group: 'org.scala-lang', name: 'scala-library' + implementation 'org.scala-lang:scala-library' - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine' - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner' + testRuntimeOnly 'org.junit.vintage:junit-vintage-engine' + testImplementation 'org.junit.platform:junit-platform-runner' - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}" + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}" } test { diff --git a/src/functionalTest/resources/projects/scala-multi-module/dependencies/build.gradle b/src/functionalTest/resources/projects/scala-multi-module/dependencies/build.gradle index 3ac33f7..3e653a6 100644 --- a/src/functionalTest/resources/projects/scala-multi-module/dependencies/build.gradle +++ b/src/functionalTest/resources/projects/scala-multi-module/dependencies/build.gradle @@ -4,11 +4,11 @@ plugins { dependencies { constraints { - api group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + api "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - api group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion - api group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + api "org.junit.vintage:junit-vintage-engine:$junitVersion" + api "org.junit.platform:junit-platform-runner:$junitPlatformVersion" - api group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + api "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" } } \ No newline at end of file diff --git a/src/functionalTest/resources/projects/scala-single-module-dependency-manager/build.gradle b/src/functionalTest/resources/projects/scala-single-module-dependency-manager/build.gradle index d972fb4..575332f 100644 --- a/src/functionalTest/resources/projects/scala-single-module-dependency-manager/build.gradle +++ b/src/functionalTest/resources/projects/scala-single-module-dependency-manager/build.gradle @@ -1,5 +1,5 @@ plugins { - id 'io.spring.dependency-management' version "1.1.5" + id 'io.spring.dependency-management' version "1.1.7" id 'org.scoverage' } @@ -20,12 +20,12 @@ dependencyManagement { } dependencies { - implementation group: 'org.scala-lang', name: 'scala-library' + implementation 'org.scala-lang:scala-library' - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" + testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion" - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" } test { diff --git a/src/functionalTest/resources/projects/scala-single-module-multiple-test-tasks/build.gradle b/src/functionalTest/resources/projects/scala-single-module-multiple-test-tasks/build.gradle index 1f4b316..05c3d6d 100644 --- a/src/functionalTest/resources/projects/scala-single-module-multiple-test-tasks/build.gradle +++ b/src/functionalTest/resources/projects/scala-single-module-multiple-test-tasks/build.gradle @@ -1,5 +1,5 @@ plugins { - id 'io.spring.dependency-management' version "1.1.5" + id 'io.spring.dependency-management' version "1.1.7" id 'org.scoverage' id 'jvm-test-suite' } @@ -20,12 +20,12 @@ dependencyManagement { } dependencies { - implementation group: 'org.scala-lang', name: 'scala-library' + implementation 'org.scala-lang:scala-library' - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" + testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion" - testImplementation group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + testImplementation "org.scalatest:scalatest_${scalaVersionMajor}.${scalaVersionMinor}:$scalatestVersion" } testing { @@ -39,7 +39,6 @@ testing { } } intTest(JvmTestSuite) { - testType = TestSuiteType.INTEGRATION_TEST // dependencies { ... } does not appear to work as advertised? sources { scala { diff --git a/src/functionalTest/resources/projects/scala-single-module/build.gradle b/src/functionalTest/resources/projects/scala-single-module/build.gradle index fd9d9f2..82a395f 100644 --- a/src/functionalTest/resources/projects/scala-single-module/build.gradle +++ b/src/functionalTest/resources/projects/scala-single-module/build.gradle @@ -12,20 +12,20 @@ apply plugin: 'java' apply plugin: 'scala' dependencies { - if (project.getProperties().get("scalaVersionMajor").equals("2")) { - implementation group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + if (project.findProperty("scalaVersionMajor") == "2") { + implementation "org.scala-lang:scala-library:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - testImplementation group: 'org.scalatest', name: 'scalatest_2.13', version: scalatestVersion - testImplementation group: 'org.scalatestplus', name: 'junit-4-13_2.13', version: "${scalatestVersion}.0" + testImplementation "org.scalatest:scalatest_2.13:$scalatestVersion" + testImplementation "org.scalatestplus:junit-4-13_2.13:${scalatestVersion}.0" } else { - implementation group: 'org.scala-lang', name: 'scala3-library_3', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + implementation "org.scala-lang:scala3-library_3:${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" - testImplementation group: 'org.scalatest', name: 'scalatest_3', version: scalatestVersion - testImplementation group: 'org.scalatestplus', name: 'junit-4-13_3', version: "${scalatestVersion}.0" + testImplementation "org.scalatest:scalatest_3:$scalatestVersion" + testImplementation "org.scalatestplus:junit-4-13_3:${scalatestVersion}.0" } - testRuntimeOnly group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion - testImplementation group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + testRuntimeOnly "org.junit.vintage:junit-vintage-engine:$junitVersion" + testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion" } test { diff --git a/src/main/groovy/org/scoverage/CoverageChecker.groovy b/src/main/groovy/org/scoverage/CoverageChecker.groovy index ff240ba..fde9f51 100644 --- a/src/main/groovy/org/scoverage/CoverageChecker.groovy +++ b/src/main/groovy/org/scoverage/CoverageChecker.groovy @@ -3,7 +3,6 @@ package org.scoverage import groovy.xml.XmlParser import org.gradle.api.GradleException import org.gradle.api.logging.Logger -import org.gradle.internal.impldep.com.google.common.annotations.VisibleForTesting import java.text.DecimalFormat import java.text.DecimalFormatSymbols @@ -77,7 +76,6 @@ class CoverageChecker { } } - @VisibleForTesting protected static String errorMsg(double overallRate, double minimumRate, CoverageType type) { DecimalFormat df = new DecimalFormat("#.##", DecimalFormatSymbols.getInstance(Locale.US)) String actual = df.format(overallRate * 100) @@ -85,7 +83,6 @@ class CoverageChecker { "Only $actual% of project is covered by tests instead of $expected% (coverageType: $type)" } - @VisibleForTesting protected static String fileNotFoundErrorMsg(CoverageType coverageType) { "Coverage file (type: $coverageType) not found, check your configuration." } diff --git a/src/main/groovy/org/scoverage/ScoverageAggregate.groovy b/src/main/groovy/org/scoverage/ScoverageAggregate.groovy index f39ff98..ac1ded1 100644 --- a/src/main/groovy/org/scoverage/ScoverageAggregate.groovy +++ b/src/main/groovy/org/scoverage/ScoverageAggregate.groovy @@ -4,6 +4,7 @@ import org.gradle.api.DefaultTask import org.gradle.api.file.FileCollection import org.gradle.api.provider.ListProperty import org.gradle.api.provider.Property +import org.gradle.api.tasks.CacheableTask import org.gradle.api.tasks.Input import org.gradle.api.tasks.InputFiles import org.gradle.api.tasks.Nested @@ -14,6 +15,7 @@ import scoverage.reporter.CoverageAggregator import static org.gradle.api.tasks.PathSensitivity.RELATIVE +@CacheableTask class ScoverageAggregate extends DefaultTask { @Nested @@ -45,6 +47,9 @@ class ScoverageAggregate extends DefaultTask { @Input final Property coverageDebug = project.objects.property(Boolean) + @Input + final Property sourceRoot = project.objects.property(File) + ScoverageAggregate() { dirsToAggregateFrom.set([project.extensions.scoverage.dataDir.get()]) } @@ -57,11 +62,10 @@ class ScoverageAggregate extends DefaultTask { def dirs = [] dirs.addAll(dirsToAggregateFrom.get()) - def sourceRoot = getProject().getRootDir() - def coverage = CoverageAggregator.aggregate(dirs.unique() as File[], sourceRoot) + def coverage = CoverageAggregator.aggregate(dirs.unique() as File[], sourceRoot.get()) if (coverage.nonEmpty()) { - new ScoverageWriter(project.logger).write( + new ScoverageWriter(getLogger()).write( sources.get().getFiles(), reportDir.get(), coverage.get(), diff --git a/src/main/groovy/org/scoverage/ScoverageExtension.groovy b/src/main/groovy/org/scoverage/ScoverageExtension.groovy index d2b5119..27e3b14 100644 --- a/src/main/groovy/org/scoverage/ScoverageExtension.groovy +++ b/src/main/groovy/org/scoverage/ScoverageExtension.groovy @@ -60,10 +60,10 @@ class ScoverageExtension { scoverageScalaVersion = project.objects.property(String) dataDir = project.objects.property(File) - dataDir.set(new File(project.buildDir, 'scoverage')) + dataDir.set(project.layout.buildDirectory.dir('scoverage').get().asFile) reportDir = project.objects.property(File) - reportDir.set(new File(project.buildDir, ScoveragePlugin.DEFAULT_REPORT_DIR)) + reportDir.set(project.layout.buildDirectory.dir(ScoveragePlugin.DEFAULT_REPORT_DIR).get().asFile) highlighting = project.objects.property(Boolean) highlighting.set(true) diff --git a/src/main/groovy/org/scoverage/ScoveragePlugin.groovy b/src/main/groovy/org/scoverage/ScoveragePlugin.groovy index a6a33d2..a65d99e 100644 --- a/src/main/groovy/org/scoverage/ScoveragePlugin.groovy +++ b/src/main/groovy/org/scoverage/ScoveragePlugin.groovy @@ -124,7 +124,7 @@ class ScoveragePlugin implements Plugin { testTask.mustRunAfter(compileTask) def reportTaskName = "report${testTask.name.capitalize()}Scoverage" - def taskReportDir = project.file("${project.buildDir}/reports/scoverage${testTask.name.capitalize()}") + def taskReportDir = project.layout.buildDirectory.dir("reports/scoverage${testTask.name.capitalize()}").get().asFile project.tasks.create(reportTaskName, ScoverageReport) { dependsOn originalJarTask, compileTask, testTask @@ -135,6 +135,7 @@ class ScoveragePlugin implements Plugin { sources = originalSourceSet.scala.getSourceDirectories() dataDir = extension.dataDir sourceEncoding.set(detectedSourceEncoding) + sourceRoot.set(project.rootDir) coverageOutputCobertura = extension.coverageOutputCobertura coverageOutputXML = extension.coverageOutputXML coverageOutputHTML = extension.coverageOutputHTML @@ -154,6 +155,7 @@ class ScoveragePlugin implements Plugin { sources = originalSourceSet.scala.getSourceDirectories() dirsToAggregateFrom = dataDirs sourceEncoding.set(detectedSourceEncoding) + sourceRoot.set(project.rootDir) deleteReportsOnAggregation = false coverageOutputCobertura = extension.coverageOutputCobertura coverageOutputXML = extension.coverageOutputXML @@ -319,6 +321,7 @@ class ScoveragePlugin implements Plugin { reportDir = extension.reportDir sources = allSources sourceEncoding.set(detectedSourceEncoding) + sourceRoot.set(project.rootDir) dirsToAggregateFrom = dataDirs deleteReportsOnAggregation = extension.deleteReportsOnAggregation coverageOutputCobertura = extension.coverageOutputCobertura diff --git a/src/main/groovy/org/scoverage/ScoverageReport.groovy b/src/main/groovy/org/scoverage/ScoverageReport.groovy index ef09483..d880035 100644 --- a/src/main/groovy/org/scoverage/ScoverageReport.groovy +++ b/src/main/groovy/org/scoverage/ScoverageReport.groovy @@ -44,19 +44,21 @@ class ScoverageReport extends DefaultTask { @Input final Property coverageDebug = project.objects.property(Boolean) + @Input + final Property sourceRoot = project.objects.property(File) + @TaskAction def report() { runner.run { reportDir.get().delete() reportDir.get().mkdirs() - def sourceRoot = getProject().getRootDir() - def coverage = CoverageAggregator.aggregate([dataDir.get()] as File[], sourceRoot) + def coverage = CoverageAggregator.aggregate([dataDir.get()] as File[], sourceRoot.get()) if (coverage.isEmpty()) { - project.logger.info("[scoverage] Could not find coverage file, skipping...") + getLogger().info("[scoverage] Could not find coverage file, skipping...") } else { - new ScoverageWriter(project.logger).write( + new ScoverageWriter(getLogger()).write( sources.get().getFiles(), reportDir.get(), coverage.get(),