From 526137c7b301b2a64bfc71d6a42ee2600468cc89 Mon Sep 17 00:00:00 2001 From: Alexander Yevsyukov Date: Mon, 3 Aug 2026 17:12:43 +0100 Subject: [PATCH 1/4] Bump version -> `2.0.0-SNAPSHOT.065` --- version.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.gradle.kts b/version.gradle.kts index b4c9f76078..6c9eb8b7c5 100644 --- a/version.gradle.kts +++ b/version.gradle.kts @@ -30,7 +30,7 @@ * This version is also used by integration test projects. * E.g. see `tests/consumer/build.gradle.kts`. */ -private val compilerVersion = "2.0.0-SNAPSHOT.064" +private val compilerVersion = "2.0.0-SNAPSHOT.065" extra.set("compilerVersion", compilerVersion) /** From 711dec091c63b1af7307f76068006530162eb010 Mon Sep 17 00:00:00 2001 From: Alexander Yevsyukov Date: Mon, 3 Aug 2026 17:12:58 +0100 Subject: [PATCH 2/4] Update `config` --- buildSrc/src/main/kotlin/BuildExtensions.kt | 22 +++++++++++++++++++ .../io/spine/dependency/local/Change.kt | 2 +- .../io/spine/dependency/local/Compiler.kt | 4 ++-- .../io/spine/dependency/local/Logging.kt | 2 +- .../kotlin/io/spine/dependency/local/Time.kt | 2 +- .../io/spine/dependency/local/Validation.kt | 2 +- config | 2 +- gradle-plugin/build.gradle.kts | 20 ----------------- 8 files changed, 29 insertions(+), 27 deletions(-) diff --git a/buildSrc/src/main/kotlin/BuildExtensions.kt b/buildSrc/src/main/kotlin/BuildExtensions.kt index 556f37a88e..84c2a2e79e 100644 --- a/buildSrc/src/main/kotlin/BuildExtensions.kt +++ b/buildSrc/src/main/kotlin/BuildExtensions.kt @@ -30,6 +30,7 @@ import io.spine.dependency.build.ErrorProne import io.spine.dependency.build.GradleDoctor import io.spine.dependency.build.Ksp import io.spine.dependency.build.PluginPublishPlugin +import io.spine.dependency.lib.JetBrainsAnnotations import io.spine.dependency.lib.Protobuf import io.spine.dependency.local.Compiler import io.spine.dependency.local.CoreJvmCompiler @@ -39,10 +40,12 @@ import io.spine.dependency.test.Kover import io.spine.gradle.repo.standardToSpineSdk import org.gradle.api.Project import org.gradle.api.Task +import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.file.DuplicatesStrategy import org.gradle.api.tasks.JavaExec import org.gradle.jvm.tasks.Jar import org.gradle.kotlin.dsl.ScriptHandlerScope +import org.gradle.kotlin.dsl.exclude import org.gradle.plugin.use.PluginDependenciesSpec import org.gradle.plugin.use.PluginDependencySpec @@ -347,3 +350,22 @@ fun Project.allowDuplicationInSourcesJar() { } } } + +/** + * Excludes `org.jetbrains:annotations` from this published dependency. + * + * Build script classpaths pin the module to the version used by the Kotlin + * runtime embedded into Gradle (`strictly 13.0`, "Pinned to the embedded + * Kotlin"), while `kotlinx-coroutines` and other transitive dependencies of + * this plugin require `23.0.0`. Gradle 9.6 may fail to reconcile the two + * declarations — the outcome depends on the shape of the consumer's dependency + * graph — making the plugin unresolvable without a consumer-side workaround, + * such as forcing the module version on the build script classpath. + * + * The annotations are compile-time metadata, not needed at runtime. + * Consumers still receive version `13.0` through the `kotlin-stdlib` + * dependency, which satisfies the pin. + */ +fun ModuleDependency.excludeJetBrainsAnnotations() { + exclude(group = JetBrainsAnnotations.groupId, module = JetBrainsAnnotations.artifactId) +} diff --git a/buildSrc/src/main/kotlin/io/spine/dependency/local/Change.kt b/buildSrc/src/main/kotlin/io/spine/dependency/local/Change.kt index 26bef1ae26..7c094938ba 100644 --- a/buildSrc/src/main/kotlin/io/spine/dependency/local/Change.kt +++ b/buildSrc/src/main/kotlin/io/spine/dependency/local/Change.kt @@ -33,7 +33,7 @@ package io.spine.dependency.local */ @Suppress("ConstPropertyName") object Change { - const val version = "2.0.0-SNAPSHOT.206" + const val version = "2.0.0-SNAPSHOT.207" const val group = Spine.group const val artifact = "spine-change" const val lib = "$group:$artifact:$version" diff --git a/buildSrc/src/main/kotlin/io/spine/dependency/local/Compiler.kt b/buildSrc/src/main/kotlin/io/spine/dependency/local/Compiler.kt index 2e2bc5adf3..753bf24af4 100644 --- a/buildSrc/src/main/kotlin/io/spine/dependency/local/Compiler.kt +++ b/buildSrc/src/main/kotlin/io/spine/dependency/local/Compiler.kt @@ -72,7 +72,7 @@ object Compiler : Dependency() { * The version of the Compiler dependencies. */ override val version: String - private const val fallbackVersion = "2.0.0-SNAPSHOT.062" + private const val fallbackVersion = "2.0.0-SNAPSHOT.064" /** * The distinct version of the Compiler used by other build tools. @@ -81,7 +81,7 @@ object Compiler : Dependency() { * transitive dependencies, this is the version used to build the project itself. */ val dogfoodingVersion: String - private const val fallbackDfVersion = "2.0.0-SNAPSHOT.062" + private const val fallbackDfVersion = "2.0.0-SNAPSHOT.064" /** * The artifact for the Compiler Gradle plugin. diff --git a/buildSrc/src/main/kotlin/io/spine/dependency/local/Logging.kt b/buildSrc/src/main/kotlin/io/spine/dependency/local/Logging.kt index c79171f064..52beacda7d 100644 --- a/buildSrc/src/main/kotlin/io/spine/dependency/local/Logging.kt +++ b/buildSrc/src/main/kotlin/io/spine/dependency/local/Logging.kt @@ -33,7 +33,7 @@ package io.spine.dependency.local */ @Suppress("ConstPropertyName", "unused") object Logging { - const val version = "2.0.0-SNAPSHOT.422" + const val version = "2.0.0-SNAPSHOT.423" const val group = Spine.group const val loggingArtifact = "spine-logging" diff --git a/buildSrc/src/main/kotlin/io/spine/dependency/local/Time.kt b/buildSrc/src/main/kotlin/io/spine/dependency/local/Time.kt index 271fe49e33..3b4fd0b38a 100644 --- a/buildSrc/src/main/kotlin/io/spine/dependency/local/Time.kt +++ b/buildSrc/src/main/kotlin/io/spine/dependency/local/Time.kt @@ -40,7 +40,7 @@ import io.spine.dependency.Dependency ) object Time : Dependency() { override val group = Spine.group - override val version = "2.0.0-SNAPSHOT.244" + override val version = "2.0.0-SNAPSHOT.250" private const val infix = "spine-time" fun lib(version: String): String = "$group:$infix:$version" diff --git a/buildSrc/src/main/kotlin/io/spine/dependency/local/Validation.kt b/buildSrc/src/main/kotlin/io/spine/dependency/local/Validation.kt index 9a92fe8b0f..933d57e62e 100644 --- a/buildSrc/src/main/kotlin/io/spine/dependency/local/Validation.kt +++ b/buildSrc/src/main/kotlin/io/spine/dependency/local/Validation.kt @@ -36,7 +36,7 @@ object Validation { /** * The version of the Validation library artifacts. */ - const val version = "2.0.0-SNAPSHOT.450" + const val version = "2.0.0-SNAPSHOT.460" const val group = Spine.toolsGroup private const val prefix = "validation" diff --git a/config b/config index 91e13d433c..c93dbeed72 160000 --- a/config +++ b/config @@ -1 +1 @@ -Subproject commit 91e13d433c0e892f4cb48c7575bb05899018974d +Subproject commit c93dbeed7283ca9feb7f5f01a9ad17f8dfe2c5a3 diff --git a/gradle-plugin/build.gradle.kts b/gradle-plugin/build.gradle.kts index 12e0ad5678..1fcbba15ed 100644 --- a/gradle-plugin/build.gradle.kts +++ b/gradle-plugin/build.gradle.kts @@ -24,7 +24,6 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -import io.spine.dependency.lib.JetBrainsAnnotations import io.spine.dependency.lib.Kotlin import io.spine.dependency.lib.Protobuf import io.spine.dependency.local.CoreJvm @@ -102,25 +101,6 @@ testing { } } -/** - * Excludes `org.jetbrains:annotations` from a published dependency of this plugin. - * - * Build script classpaths pin the module to the version used by the Kotlin - * runtime embedded into Gradle (`strictly 13.0`, "Pinned to the embedded - * Kotlin"), while `kotlinx-coroutines` and other transitive dependencies of - * this plugin require `23.0.0`. Gradle 9.6 may fail to reconcile the two - * declarations — the outcome depends on the shape of the consumer's dependency - * graph — making the plugin unresolvable without a consumer-side workaround, - * such as forcing the module version on the build script classpath. - * - * The annotations are compile-time metadata, not needed at runtime. - * Consumers still receive version `13.0` through the `kotlin-stdlib` - * dependency, which satisfies the pin. - */ -fun ModuleDependency.excludeJetBrainsAnnotations() { - exclude(group = JetBrainsAnnotations.groupId, module = JetBrainsAnnotations.artifactId) -} - dependencies { compileOnly(gradleApi()) compileOnly(gradleKotlinDsl()) From aad4eb7627feda3ea963330124327d78f83302f5 Mon Sep 17 00:00:00 2001 From: Alexander Yevsyukov Date: Mon, 3 Aug 2026 17:17:35 +0100 Subject: [PATCH 3/4] Update dependency reports --- docs/dependencies/dependencies.md | 44 +++++++++++++++---------------- docs/dependencies/pom.xml | 18 ++++++------- 2 files changed, 31 insertions(+), 31 deletions(-) diff --git a/docs/dependencies/dependencies.md b/docs/dependencies/dependencies.md index 04e7024dc3..1102bccea7 100644 --- a/docs/dependencies/dependencies.md +++ b/docs/dependencies/dependencies.md @@ -1,6 +1,6 @@ -# Dependencies of `io.spine.tools:compiler-api:2.0.0-SNAPSHOT.064` +# Dependencies of `io.spine.tools:compiler-api:2.0.0-SNAPSHOT.065` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.1. @@ -1102,14 +1102,14 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using +This report was generated on **Mon Aug 03 17:17:20 WEST 2026** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.tools:compiler-api-tests:2.0.0-SNAPSHOT.064` +# Dependencies of `io.spine.tools:compiler-api-tests:2.0.0-SNAPSHOT.065` ## Runtime ## Compile, tests, and tooling @@ -1478,14 +1478,14 @@ This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jul 24 18:42:21 WEST 2026** using +This report was generated on **Mon Aug 03 17:17:19 WEST 2026** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.tools:compiler-backend:2.0.0-SNAPSHOT.064` +# Dependencies of `io.spine.tools:compiler-backend:2.0.0-SNAPSHOT.065` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.1. @@ -2591,14 +2591,14 @@ This report was generated on **Fri Jul 24 18:42:21 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using +This report was generated on **Mon Aug 03 17:17:20 WEST 2026** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.tools:compiler-cli:2.0.0-SNAPSHOT.064` +# Dependencies of `io.spine.tools:compiler-cli:2.0.0-SNAPSHOT.065` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.1. @@ -3863,14 +3863,14 @@ This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using +This report was generated on **Mon Aug 03 17:17:20 WEST 2026** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.tools:compiler-gradle-api:2.0.0-SNAPSHOT.064` +# Dependencies of `io.spine.tools:compiler-gradle-api:2.0.0-SNAPSHOT.065` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.1. @@ -4890,14 +4890,14 @@ This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using +This report was generated on **Mon Aug 03 17:17:20 WEST 2026** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.tools:compiler-gradle-plugin:2.0.0-SNAPSHOT.064` +# Dependencies of `io.spine.tools:compiler-gradle-plugin:2.0.0-SNAPSHOT.065` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.1. @@ -5961,14 +5961,14 @@ This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using +This report was generated on **Mon Aug 03 17:17:20 WEST 2026** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.tools:compiler-jvm:2.0.0-SNAPSHOT.064` +# Dependencies of `io.spine.tools:compiler-jvm:2.0.0-SNAPSHOT.065` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.1. @@ -7091,14 +7091,14 @@ This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using +This report was generated on **Mon Aug 03 17:17:20 WEST 2026** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.tools:compiler-params:2.0.0-SNAPSHOT.064` +# Dependencies of `io.spine.tools:compiler-params:2.0.0-SNAPSHOT.065` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.1. @@ -8192,14 +8192,14 @@ This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using +This report was generated on **Mon Aug 03 17:17:20 WEST 2026** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.tools:compiler-protoc-plugin:2.0.0-SNAPSHOT.064` +# Dependencies of `io.spine.tools:compiler-protoc-plugin:2.0.0-SNAPSHOT.065` ## Runtime 1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2. @@ -9035,14 +9035,14 @@ This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using +This report was generated on **Mon Aug 03 17:17:20 WEST 2026** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.tools:compiler-test-env:2.0.0-SNAPSHOT.064` +# Dependencies of `io.spine.tools:compiler-test-env:2.0.0-SNAPSHOT.065` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.1. @@ -10144,14 +10144,14 @@ This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using +This report was generated on **Mon Aug 03 17:17:20 WEST 2026** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.tools:compiler-testlib:2.0.0-SNAPSHOT.064` +# Dependencies of `io.spine.tools:compiler-testlib:2.0.0-SNAPSHOT.065` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.1. @@ -11360,6 +11360,6 @@ This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jul 24 18:42:23 WEST 2026** using +This report was generated on **Mon Aug 03 17:17:20 WEST 2026** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file diff --git a/docs/dependencies/pom.xml b/docs/dependencies/pom.xml index 4f6901f544..17de3b7037 100644 --- a/docs/dependencies/pom.xml +++ b/docs/dependencies/pom.xml @@ -10,7 +10,7 @@ all modules and does not describe the project structure per-subproject. --> io.spine.tools compiler -2.0.0-SNAPSHOT.064 +2.0.0-SNAPSHOT.065 2015 @@ -146,19 +146,19 @@ all modules and does not describe the project structure per-subproject. io.spine spine-time - 2.0.0-SNAPSHOT.244 + 2.0.0-SNAPSHOT.250 compile io.spine spine-time-java - 2.0.0-SNAPSHOT.244 + 2.0.0-SNAPSHOT.250 compile io.spine spine-validation-jvm-runtime - 2.0.0-SNAPSHOT.450 + 2.0.0-SNAPSHOT.460 compile @@ -182,7 +182,7 @@ all modules and does not describe the project structure per-subproject. io.spine.tools logging-testlib - 2.0.0-SNAPSHOT.422 + 2.0.0-SNAPSHOT.423 compile @@ -290,7 +290,7 @@ all modules and does not describe the project structure per-subproject. io.spine.tools time-testlib - 2.0.0-SNAPSHOT.244 + 2.0.0-SNAPSHOT.250 test @@ -381,12 +381,12 @@ all modules and does not describe the project structure per-subproject. io.spine.tools compiler-cli-all - 2.0.0-SNAPSHOT.062 + 2.0.0-SNAPSHOT.064 io.spine.tools compiler-protoc-plugin - 2.0.0-SNAPSHOT.062 + 2.0.0-SNAPSHOT.064 io.spine.tools @@ -411,7 +411,7 @@ all modules and does not describe the project structure per-subproject. io.spine.tools validation-java-bundle - 2.0.0-SNAPSHOT.450 + 2.0.0-SNAPSHOT.460 org.jacoco From 7aad7ded6a0c56b55ab4aeb468b5e29ed1244c1f Mon Sep 17 00:00:00 2001 From: Alexander Yevsyukov Date: Mon, 3 Aug 2026 17:39:48 +0100 Subject: [PATCH 4/4] Remove outdated workaround of the Gradle issue https://github.com/gradle/gradle/issues/21283 --- gradle-plugin/build.gradle.kts | 4 ---- 1 file changed, 4 deletions(-) diff --git a/gradle-plugin/build.gradle.kts b/gradle-plugin/build.gradle.kts index 1fcbba15ed..9d3ddaa6e1 100644 --- a/gradle-plugin/build.gradle.kts +++ b/gradle-plugin/build.gradle.kts @@ -203,10 +203,6 @@ tasks { check { dependsOn(testing.suites.named("functionalTest")) } - - publishPlugins { - notCompatibleWithConfigurationCache("https://github.com/gradle/gradle/issues/21283") - } } /**