Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion config
Submodule config updated 25 files
+1 −1 .github-workflows/publish.yml
+2 −0 buildSrc/src/main/kotlin/BuildExtensions.kt
+1 −1 buildSrc/src/main/kotlin/io/spine/dependency/lib/Protobuf.kt
+9 −7 buildSrc/src/main/kotlin/io/spine/dependency/local/Base.kt
+1 −1 buildSrc/src/main/kotlin/io/spine/dependency/local/BaseTypes.kt
+1 −1 buildSrc/src/main/kotlin/io/spine/dependency/local/Change.kt
+28 −11 buildSrc/src/main/kotlin/io/spine/dependency/local/Compiler.kt
+4 −3 buildSrc/src/main/kotlin/io/spine/dependency/local/CoreJvm.kt
+3 −3 buildSrc/src/main/kotlin/io/spine/dependency/local/CoreJvmCompiler.kt
+1 −1 buildSrc/src/main/kotlin/io/spine/dependency/local/Spine.kt
+1 −1 buildSrc/src/main/kotlin/io/spine/dependency/local/Time.kt
+2 −2 buildSrc/src/main/kotlin/io/spine/dependency/local/ToolBase.kt
+14 −7 buildSrc/src/main/kotlin/io/spine/dependency/local/Validation.kt
+55 −10 buildSrc/src/main/kotlin/io/spine/gradle/git/Repository.kt
+3 −3 buildSrc/src/main/kotlin/io/spine/gradle/github/pages/RepositoryExtensions.kt
+1 −1 buildSrc/src/main/kotlin/io/spine/gradle/github/pages/Update.kt
+7 −3 buildSrc/src/main/kotlin/io/spine/gradle/publish/ProtoExts.kt
+1 −1 buildSrc/src/main/kotlin/io/spine/gradle/publish/PublicationHandler.kt
+20 −2 buildSrc/src/main/kotlin/io/spine/gradle/publish/PublishingExts.kt
+1 −1 buildSrc/src/main/kotlin/io/spine/gradle/publish/StandardJavaPublicationHandler.kt
+9 −3 buildSrc/src/main/kotlin/io/spine/gradle/repo/Repositories.kt
+12 −5 buildSrc/src/main/kotlin/io/spine/gradle/report/license/LicenseReporter.kt
+1 −1 gradle.properties
+ gradle/wrapper/gradle-wrapper.jar
+1 −1 gradle/wrapper/gradle-wrapper.properties
56 changes: 28 additions & 28 deletions dependencies.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@


# Dependencies of `io.spine.tools:classic-codegen:2.0.0-SNAPSHOT.371`
# Dependencies of `io.spine.tools:classic-codegen:2.0.0-SNAPSHOT.372`

## Runtime
1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2.
Expand Down Expand Up @@ -888,14 +888,14 @@

The dependencies distributed under several licenses, are used according their commercial-use-friendly license.

This report was generated on **Tue Dec 02 18:51:33 WET 2025** using
This report was generated on **Fri Feb 20 20:25:48 WET 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:gradle-plugin-api:2.0.0-SNAPSHOT.371`
# Dependencies of `io.spine.tools:gradle-plugin-api:2.0.0-SNAPSHOT.372`

## Runtime
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.20.0.
Expand Down Expand Up @@ -1838,14 +1838,14 @@ This report was generated on **Tue Dec 02 18:51:33 WET 2025** using

The dependencies distributed under several licenses, are used according their commercial-use-friendly license.

This report was generated on **Tue Dec 02 18:51:33 WET 2025** using
This report was generated on **Fri Feb 20 20:25:48 WET 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:gradle-plugin-api-test-fixtures:2.0.0-SNAPSHOT.371`
# Dependencies of `io.spine.tools:gradle-plugin-api-test-fixtures:2.0.0-SNAPSHOT.372`

## Runtime
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.20.0.
Expand Down Expand Up @@ -2321,14 +2321,14 @@ This report was generated on **Tue Dec 02 18:51:33 WET 2025** using

The dependencies distributed under several licenses, are used according their commercial-use-friendly license.

This report was generated on **Tue Dec 02 18:51:33 WET 2025** using
This report was generated on **Fri Feb 20 20:25:48 WET 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:gradle-root-plugin:2.0.0-SNAPSHOT.371`
# Dependencies of `io.spine.tools:gradle-root-plugin:2.0.0-SNAPSHOT.372`

## Runtime
1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2.
Expand Down Expand Up @@ -3195,14 +3195,14 @@ This report was generated on **Tue Dec 02 18:51:33 WET 2025** using

The dependencies distributed under several licenses, are used according their commercial-use-friendly license.

This report was generated on **Tue Dec 02 18:51:33 WET 2025** using
This report was generated on **Fri Feb 20 20:25:48 WET 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:intellij-platform:2.0.0-SNAPSHOT.371`
# Dependencies of `io.spine.tools:intellij-platform:2.0.0-SNAPSHOT.372`

## Runtime
1. **Group** : be.cyberelf.nanoxml. **Name** : nanoxml. **Version** : 2.2.3.
Expand Down Expand Up @@ -4316,14 +4316,14 @@ This report was generated on **Tue Dec 02 18:51:33 WET 2025** using

The dependencies distributed under several licenses, are used according their commercial-use-friendly license.

This report was generated on **Tue Dec 02 18:51:33 WET 2025** using
This report was generated on **Fri Feb 20 20:25:48 WET 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:intellij-platform-java:2.0.0-SNAPSHOT.371`
# Dependencies of `io.spine.tools:intellij-platform-java:2.0.0-SNAPSHOT.372`

## Runtime
1. **Group** : be.cyberelf.nanoxml. **Name** : nanoxml. **Version** : 2.2.3.
Expand Down Expand Up @@ -6135,14 +6135,14 @@ This report was generated on **Tue Dec 02 18:51:33 WET 2025** using

The dependencies distributed under several licenses, are used according their commercial-use-friendly license.

This report was generated on **Tue Dec 02 18:51:34 WET 2025** using
This report was generated on **Fri Feb 20 20:25:49 WET 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:jvm-tool-plugins:2.0.0-SNAPSHOT.371`
# Dependencies of `io.spine.tools:jvm-tool-plugins:2.0.0-SNAPSHOT.372`

## Runtime
1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2.
Expand Down Expand Up @@ -7029,14 +7029,14 @@ This report was generated on **Tue Dec 02 18:51:34 WET 2025** using

The dependencies distributed under several licenses, are used according their commercial-use-friendly license.

This report was generated on **Tue Dec 02 18:51:33 WET 2025** using
This report was generated on **Fri Feb 20 20:25:48 WET 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:jvm-tools:2.0.0-SNAPSHOT.371`
# Dependencies of `io.spine.tools:jvm-tools:2.0.0-SNAPSHOT.372`

## Runtime
1. **Group** : org.jetbrains. **Name** : annotations. **Version** : 26.0.2.
Expand Down Expand Up @@ -7836,14 +7836,14 @@ This report was generated on **Tue Dec 02 18:51:33 WET 2025** using

The dependencies distributed under several licenses, are used according their commercial-use-friendly license.

This report was generated on **Tue Dec 02 18:51:33 WET 2025** using
This report was generated on **Fri Feb 20 20:25:48 WET 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:plugin-base:2.0.0-SNAPSHOT.371`
# Dependencies of `io.spine.tools:plugin-base:2.0.0-SNAPSHOT.372`

## Runtime
1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2.
Expand Down Expand Up @@ -8738,14 +8738,14 @@ This report was generated on **Tue Dec 02 18:51:33 WET 2025** using

The dependencies distributed under several licenses, are used according their commercial-use-friendly license.

This report was generated on **Tue Dec 02 18:51:33 WET 2025** using
This report was generated on **Fri Feb 20 20:25:48 WET 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:plugin-testlib:2.0.0-SNAPSHOT.371`
# Dependencies of `io.spine.tools:plugin-testlib:2.0.0-SNAPSHOT.372`

## Runtime
1. **Group** : com.google.auto.value. **Name** : auto-value-annotations. **Version** : 1.10.2.
Expand Down Expand Up @@ -9744,14 +9744,14 @@ This report was generated on **Tue Dec 02 18:51:33 WET 2025** using

The dependencies distributed under several licenses, are used according their commercial-use-friendly license.

This report was generated on **Tue Dec 02 18:51:33 WET 2025** using
This report was generated on **Fri Feb 20 20:25:48 WET 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:protobuf-setup-plugins:2.0.0-SNAPSHOT.371`
# Dependencies of `io.spine.tools:protobuf-setup-plugins:2.0.0-SNAPSHOT.372`

## Runtime
1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2.
Expand Down Expand Up @@ -10658,14 +10658,14 @@ This report was generated on **Tue Dec 02 18:51:33 WET 2025** using

The dependencies distributed under several licenses, are used according their commercial-use-friendly license.

This report was generated on **Tue Dec 02 18:51:33 WET 2025** using
This report was generated on **Fri Feb 20 20:25:49 WET 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:psi:2.0.0-SNAPSHOT.371`
# Dependencies of `io.spine.tools:psi:2.0.0-SNAPSHOT.372`

## Runtime
1. **Group** : be.cyberelf.nanoxml. **Name** : nanoxml. **Version** : 2.2.3.
Expand Down Expand Up @@ -11822,14 +11822,14 @@ This report was generated on **Tue Dec 02 18:51:33 WET 2025** using

The dependencies distributed under several licenses, are used according their commercial-use-friendly license.

This report was generated on **Tue Dec 02 18:51:33 WET 2025** using
This report was generated on **Fri Feb 20 20:25:48 WET 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:psi-java:2.0.0-SNAPSHOT.371`
# Dependencies of `io.spine.tools:psi-java:2.0.0-SNAPSHOT.372`

## Runtime
1. **Group** : be.cyberelf.nanoxml. **Name** : nanoxml. **Version** : 2.2.3.
Expand Down Expand Up @@ -13704,14 +13704,14 @@ This report was generated on **Tue Dec 02 18:51:33 WET 2025** using

The dependencies distributed under several licenses, are used according their commercial-use-friendly license.

This report was generated on **Tue Dec 02 18:51:34 WET 2025** using
This report was generated on **Fri Feb 20 20:25:49 WET 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:tool-base:2.0.0-SNAPSHOT.371`
# Dependencies of `io.spine.tools:tool-base:2.0.0-SNAPSHOT.372`

## Runtime
1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2.
Expand Down Expand Up @@ -14631,6 +14631,6 @@ This report was generated on **Tue Dec 02 18:51:34 WET 2025** using

The dependencies distributed under several licenses, are used according their commercial-use-friendly license.

This report was generated on **Tue Dec 02 18:51:33 WET 2025** using
This report was generated on **Fri Feb 20 20:25:48 WET 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).
Original file line number Diff line number Diff line change
Expand Up @@ -24,20 +24,30 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

@file:Suppress("UnstableApiUsage") // We need to use unstable settings API.

package io.spine.tools.gradle.root

import io.spine.tools.gradle.DslSpec
import io.spine.tools.gradle.applyStandard
import io.spine.tools.gradle.project.ProjectPlugin
import io.spine.tools.gradle.root.RootExtension.Companion.NAME
import org.gradle.api.Project
import org.gradle.api.file.Directory
import org.gradle.api.initialization.resolve.RepositoriesMode
import org.gradle.api.internal.GradleInternal
import org.gradle.api.internal.SettingsInternal
import org.gradle.api.plugins.ExtensionAware

/**
* Creates [RootExtension] in a project, if it is not already present.
*
* The extension is used by Gradle plugins of libraries that extend
* the [root extension][RootExtension] with custom configuration DSL.
*
* The plugin also applies repositories [standard for Spine SDK][applyStandard]
* to the project IFF `dependencyResolutionManagement.repositoriesMode` property set
* in `settings.gradle.kts` to [RepositoriesMode.PREFER_PROJECT] or assumed such.
*/
public class RootPlugin :
ProjectPlugin<RootExtension>(DslSpec(NAME, RootExtension::class)) {
Expand All @@ -58,11 +68,12 @@ public class RootPlugin :
}

/**
* Applies the plugin to the given project by forcing creation of the [extension].
* Applies the plugin to the given [project].
*/
override fun apply(project: Project) {
super.apply(project)
createExtension()
project.tryApplyStandardRepositories()
check(extension != null) {
"The extension of the `${this::class.simpleName}` has not been created."
}
Expand All @@ -76,3 +87,30 @@ public class RootPlugin :
public const val ID: String = "io.spine.root"
}
}

/**
* Attempts to apply repositories [standard for Spine SDK][applyStandard] to the project
* by inspecting the `dependencyResolutionManagement.repositoriesMode` value set
* in `settings.gradle.kts`.
*
* If the value set explicitly or assumed as [RepositoriesMode.PREFER_PROJECT],
* the repositories are applied.
*/
private fun Project.tryApplyStandardRepositories() {
val settings = project.settings
if (settings == null) {
repositories.applyStandard()
return
}
val mode = settings.dependencyResolutionManagement.repositoriesMode.get()
if (mode == RepositoriesMode.PREFER_PROJECT) {
repositories.applyStandard()
}
}

private val Project.settings: SettingsInternal?
get() = try {
(project.gradle as GradleInternal).settings
} catch (_: IllegalStateException) {
null
}
Loading
Loading