Uh oh!
There was an error while loading. Please reload this page.
Update local dependencies - #326
Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates the Validation repo’s local dependency coordinates/versions (ToolBase, CoreJvmCompiler, Compiler, Base, ProtoTap, etc.), upgrades the Gradle wrapper, and adjusts build tooling to generate a deterministic docs/dependencies/pom.xml by collecting per-project resolved dependency versions (avoiding cross-project resolution locks).
Changes:
- Bump published Validation snapshot version and refresh multiple local/3rd‑party dependency versions and artifact coordinates.
- Replace CoreJvmCompiler “pluginLib/pluginsArtifact” usage with the new “gradlePlugin/compilerPlugins” artifacts across build scripts.
- Rework POM generation to read per-project resolved versions (new
collectResolvedVersionstasks) and add Gradle TestKit functional coverage.
Reviewed changes
Copilot reviewed 35 out of 38 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| version.gradle.kts | Bumps the published Validation snapshot version. |
| tests/extensions/build.gradle.kts | Switches CoreJvmCompiler buildscript dependency to the new Gradle plugin artifact accessor. |
| jvm-runtime/build.gradle.kts | Updates buildscript classpath to CoreJvmCompiler.gradlePlugin. |
| java/build.gradle.kts | Updates buildscript classpath to CoreJvmCompiler.gradlePlugin. |
| gradle/wrapper/gradle-wrapper.properties | Updates Gradle wrapper distribution URL. |
| docs/dependencies/pom.xml | Refreshes the generated dependency report POM versions and adds new entries. |
| context/build.gradle.kts | Updates CoreJvmCompiler classpath dependency accessor. |
| buildSrc/src/test/kotlin/io/spine/gradle/report/pom/PomGeneratorIgTest.kt | Adds TestKit-based integration tests for deterministic generatePom. |
| buildSrc/src/test/kotlin/io/spine/gradle/report/pom/DependencyWriterSpec.kt | Updates tests for the new resolved-versions injection model and adds a failure-mode assertion. |
| buildSrc/src/main/kotlin/module.gradle.kts | Updates forced artifacts (JacksonV2, Caffeine) and adjusts dependTestOnJvmRuntime() wiring. |
| buildSrc/src/main/kotlin/io/spine/gradle/report/pom/ResolvedVersions.kt | Introduces per-project resolved-version collection + serialization. |
| buildSrc/src/main/kotlin/io/spine/gradle/report/pom/PomXmlWriter.kt | Plumbs resolved-versions lookup into dependency writing. |
| buildSrc/src/main/kotlin/io/spine/gradle/report/pom/PomGenerator.kt | Makes generatePom depend on per-project resolved-version collectors. |
| buildSrc/src/main/kotlin/io/spine/gradle/report/pom/DependencyWriter.kt | Refactors dependency collection to accept a resolved-versions provider. |
| buildSrc/src/main/kotlin/io/spine/gradle/report/license/LicenseReporter.kt | Adjusts report paths usage and opts license report task out of build cache. |
| buildSrc/src/main/kotlin/io/spine/dependency/test/Testcontainers.kt | Updates Testcontainers coordinates/version and adds PostgreSQL module constant. |
| buildSrc/src/main/kotlin/io/spine/dependency/local/Validation.kt | Bumps Validation runtime dependency version and removes unused constants. |
| buildSrc/src/main/kotlin/io/spine/dependency/local/ToolBase.kt | Updates ToolBase version and documents the split into focused modules. |
| buildSrc/src/main/kotlin/io/spine/dependency/local/ProtoTap.kt | Bumps ProtoTap version. |
| buildSrc/src/main/kotlin/io/spine/dependency/local/ModelCompiler.kt | Removes ModelCompiler dependency descriptor. |
| buildSrc/src/main/kotlin/io/spine/dependency/local/CoreJvmCompiler.kt | Splits Gradle plugin vs compiler plugins artifacts and updates accessors/names. |
| buildSrc/src/main/kotlin/io/spine/dependency/local/CoreJvm.kt | Bumps CoreJvm version. |
| buildSrc/src/main/kotlin/io/spine/dependency/local/Compiler.kt | Updates compiler versions and renames fat CLI artifact coordinate. |
| buildSrc/src/main/kotlin/io/spine/dependency/local/Base.kt | Bumps Base version(s). |
| buildSrc/src/main/kotlin/io/spine/dependency/lib/Roaster.kt | Removes outdated Java-version note from Roaster dependency descriptor. |
| buildSrc/src/main/kotlin/io/spine/dependency/lib/PalantirJavaFormat.kt | Bumps Palantir Java Format version. |
| buildSrc/src/main/kotlin/io/spine/dependency/lib/Log4j2.kt | Bumps Log4j2 version and adds SLF4J 2.x bridge artifact. |
| buildSrc/src/main/kotlin/io/spine/dependency/lib/JacksonV2.kt | Adds an explicit Jackson 2.x dependency set for transitive alignment. |
| buildSrc/src/main/kotlin/io/spine/dependency/lib/Jackson.kt | Switches Jackson “primary line” to 3.x (tools.jackson) and clarifies 2.x/3.x split. |
| buildSrc/src/main/kotlin/io/spine/dependency/boms/Boms.kt | Points the optional Jackson BOM to JacksonV2. |
| buildSrc/src/main/kotlin/ForcePlugins.kt | Updates CoreJvmCompiler artifact references. |
| buildSrc/src/main/kotlin/BuildExtensions.kt | Updates comment wording around Gradle/Kotlin dependency reconciliation. |
| buildSrc/build.gradle.kts | Adds Gradle TestKit, and injects buildSrc classpath into TestKit runs. |
| .gitignore | Adjusts IDEA ignore rules commentary. |
| .github/workflows/gradle-wrapper-validation.yml | Removes the Gradle wrapper validation workflow. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@## master #326 +/- ##
=========================================
Coverage 92.63% 92.63% Complexity 363 363 =========================================
Files 84 84 Lines 2090 2090 Branches 157 157 =========================================
Hits 1936 1936 Misses 110 110 Partials 44 44 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 35 out of 39 changed files in this pull request and generated no new comments.
Suppressed comments (1)
buildSrc/src/main/kotlin/module.gradle.kts:134
dependTestOnJvmRuntime()no longer wiresshadowJarintolaunchProtoData/launchTestProtoData, but the KDoc above still lists those tasks as covered. Either restore those task dependencies (if they still exist) or update the KDoc list to reflect the current behavior.
javaBundleJar?.let {
tasks.test.configure {
dependsOn(it)
}
"pmdMain".dependOn(it)
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 37 out of 41 changed files in this pull request and generated no new comments.
Suppressed comments (1)
buildSrc/src/main/kotlin/module.gradle.kts:129
dependTestOnJvmRuntime()no longer wireslaunchProtoData/launchTestProtoDatato depend on theshadowJaroutput, but the KDoc above the function still lists those tasks as being configured. Please update the KDoc (or reintroduce the dependencies if those tasks still need the JAR) so documentation matches behavior.
}
afterEvaluate {
val javaBundleJar = project(javaBundleModule).tasks.findByName("shadowJar")
fun String.dependOn(task: Task) = tasks.findByName(this)?.dependsOn(task)
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 37 out of 41 changed files in this pull request and generated no new comments.
Suppressed comments (3)
Previously missed (1) — in code that hasn't changed since the last review.
buildSrc/src/main/kotlin/io/spine/dependency/lib/Jackson.kt:88
ReplaceWith("Jackson.databind", ...)refers to a non-existent property (Jacksondefinesdatabind). This makes IDE quick-fixes for the deprecated symbol invalid; update the replacement toJackson.databind(with the extra 'b').
This issue also appears in the following locations of the same file:
- line 125
- line 133
@Deprecated(
"The module was merged into `jackson-databind` in Jackson 3.0" +
" and is no longer published.",
ReplaceWith("Jackson.databind", "io.spine.dependency.lib.Jackson"),
level = DeprecationLevel.ERROR
buildSrc/src/main/kotlin/io/spine/dependency/lib/Jackson.kt:129
- The deprecation
ReplaceWith("Jackson.databind", ...)points to a non-existent property (databindis defined). Please fix the replacement expression so automated refactors compile.
@Deprecated(
"The module was merged into `jackson-databind` in Jackson 3.0" +
" and is no longer published.",
ReplaceWith("Jackson.databind", "io.spine.dependency.lib.Jackson"),
level = DeprecationLevel.ERROR
buildSrc/src/main/kotlin/io/spine/dependency/lib/Jackson.kt:137
- The
ReplaceWith("Jackson.databind", ...)expression is misspelled (the property isdatabind). As written, IDE-assisted replacements will fail to compile.
@Deprecated(
"The module was merged into `jackson-databind` in Jackson 3.0" +
" and is no longer published.",
ReplaceWith("Jackson.databind", "io.spine.dependency.lib.Jackson"),
level = DeprecationLevel.ERROR
Uh oh!
There was an error while loading. Please reload this page.
This PR updates the dependency on ToolBase and other local and 3rd party dependencies changed recently via pulling latest
config. Build scripts were adjusted accordingly.