From ef3868ec729f7ce3f5976d4f9a0c8b95098d9857 Mon Sep 17 00:00:00 2001 From: Fabian Mastenbroek Date: Tue, 4 May 2021 14:40:46 +0200 Subject: build: Update to Kotlin 1.5.0 --- buildSrc/build.gradle.kts | 8 +------- buildSrc/src/main/kotlin/kotlin-conventions.gradle.kts | 1 - 2 files changed, 1 insertion(+), 8 deletions(-) (limited to 'buildSrc') diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index 3b793a61..56b85608 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -33,16 +33,10 @@ repositories { } dependencies { - implementation(kotlin("gradle-plugin", version = "1.4.31")) + implementation(kotlin("gradle-plugin", version = "1.5.0")) implementation("org.jlleitschuh.gradle:ktlint-gradle:10.0.0") implementation("org.jetbrains.kotlin:kotlin-allopen:1.4.31") implementation("org.jetbrains.kotlinx:kotlinx-benchmark-plugin:0.3.0") implementation("org.jetbrains.dokka:dokka-gradle-plugin:1.4.32") implementation("gradle.plugin.com.github.jengelman.gradle.plugins:shadow:7.0.0") } - -tasks.withType().configureEach { - kotlinOptions { - allWarningsAsErrors = true - } -} diff --git a/buildSrc/src/main/kotlin/kotlin-conventions.gradle.kts b/buildSrc/src/main/kotlin/kotlin-conventions.gradle.kts index 703e9938..7fda64a2 100644 --- a/buildSrc/src/main/kotlin/kotlin-conventions.gradle.kts +++ b/buildSrc/src/main/kotlin/kotlin-conventions.gradle.kts @@ -39,6 +39,5 @@ java { tasks.withType().configureEach { kotlinOptions.jvmTarget = Libs.jvmTarget.toString() - kotlinOptions.useIR = true kotlinOptions.freeCompilerArgs += "-Xopt-in=kotlin.RequiresOptIn" } -- cgit v1.2.3 From 0f7e0bdbec732b23141f6bbe11b3b2299ca22813 Mon Sep 17 00:00:00 2001 From: Fabian Mastenbroek Date: Thu, 6 May 2021 16:41:53 +0200 Subject: build: Update Jacoco to version 0.8.7 This change updates the Gradle build configuration to use Jacoco 0.8.7, which is necessary for Kotlin 1.5.0 to work nicely with Jacoco. --- .../src/main/kotlin/jacoco-aggregation.gradle.kts | 7 ++++ .../src/main/kotlin/jacoco-conventions.gradle.kts | 38 +++------------------- 2 files changed, 12 insertions(+), 33 deletions(-) (limited to 'buildSrc') diff --git a/buildSrc/src/main/kotlin/jacoco-aggregation.gradle.kts b/buildSrc/src/main/kotlin/jacoco-aggregation.gradle.kts index 3e8aa741..1ea5de4c 100644 --- a/buildSrc/src/main/kotlin/jacoco-aggregation.gradle.kts +++ b/buildSrc/src/main/kotlin/jacoco-aggregation.gradle.kts @@ -1,3 +1,5 @@ +import gradle.kotlin.dsl.accessors._a850a9ab866951e91ee43960bbc39582.jacoco + /* * MIT License * @@ -32,6 +34,11 @@ repositories { mavenCentral() } +jacoco { + // Necessary for Kotlin 1.5.0. See https://github.com/jacoco/jacoco/issues/1155 + toolVersion = "0.8.7" +} + tasks.register("codeCoverageReport") { group = "Coverage reports" description = "Generates an aggregate report based on all subprojects" diff --git a/buildSrc/src/main/kotlin/jacoco-conventions.gradle.kts b/buildSrc/src/main/kotlin/jacoco-conventions.gradle.kts index d0534d4f..5c7aea83 100644 --- a/buildSrc/src/main/kotlin/jacoco-conventions.gradle.kts +++ b/buildSrc/src/main/kotlin/jacoco-conventions.gradle.kts @@ -25,41 +25,13 @@ plugins { jacoco } +jacoco { + // Necessary for Kotlin 1.5.0. See https://github.com/jacoco/jacoco/issues/1155 + toolVersion = "0.8.7" +} + tasks.jacocoTestReport { reports { html.isEnabled = true } } - -/* Share sources folder with other projects for aggregated JaCoCo reports */ -configurations.create("transitiveSourcesElements") { - isVisible = false - isCanBeResolved = false - isCanBeConsumed = true - extendsFrom(configurations.implementation.get()) - attributes { - attribute(Usage.USAGE_ATTRIBUTE, objects.named(Usage.JAVA_RUNTIME)) - attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category.DOCUMENTATION)) - attribute(DocsType.DOCS_TYPE_ATTRIBUTE, objects.named("source-folders")) - } - sourceSets.main.get().java.srcDirs.forEach { - outgoing.artifact(it) - } -} - -/* Share the coverage data to be aggregated for the whole product */ -configurations.create("coverageDataElements") { - isVisible = false - isCanBeResolved = false - isCanBeConsumed = true - extendsFrom(configurations.implementation.get()) - attributes { - attribute(Usage.USAGE_ATTRIBUTE, objects.named(Usage.JAVA_RUNTIME)) - attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category.DOCUMENTATION)) - attribute(DocsType.DOCS_TYPE_ATTRIBUTE, objects.named("jacoco-coverage-data")) - } - // This will cause the test task to run if the coverage data is requested by the aggregation task - outgoing.artifact(tasks.test.map { task -> - task.extensions.getByType().destinationFile!! - }) -} -- cgit v1.2.3