Skip to content

Update local dependencies - #326

Merged
alexander-yevsyukov merged 9 commits into
masterfrom
update-local-dependencies
Aug 24, 2026
Merged

Update local dependencies#326
alexander-yevsyukov merged 9 commits into
masterfrom
update-local-dependencies

Conversation

@alexander-yevsyukov

@alexander-yevsyukovalexander-yevsyukov commented Aug 24, 2026

Copy link
Copy Markdown
Collaborator

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.

CopilotAI lite review requested due to automatic review settings August 24, 2026 16:57
@alexander-yevsyukovalexander-yevsyukov moved this to In Review in v2.0Aug 24, 2026

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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 collectResolvedVersions tasks) 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
FileDescription
version.gradle.ktsBumps the published Validation snapshot version.
tests/extensions/build.gradle.ktsSwitches CoreJvmCompiler buildscript dependency to the new Gradle plugin artifact accessor.
jvm-runtime/build.gradle.ktsUpdates buildscript classpath to CoreJvmCompiler.gradlePlugin.
java/build.gradle.ktsUpdates buildscript classpath to CoreJvmCompiler.gradlePlugin.
gradle/wrapper/gradle-wrapper.propertiesUpdates Gradle wrapper distribution URL.
docs/dependencies/pom.xmlRefreshes the generated dependency report POM versions and adds new entries.
context/build.gradle.ktsUpdates CoreJvmCompiler classpath dependency accessor.
buildSrc/src/test/kotlin/io/spine/gradle/report/pom/PomGeneratorIgTest.ktAdds TestKit-based integration tests for deterministic generatePom.
buildSrc/src/test/kotlin/io/spine/gradle/report/pom/DependencyWriterSpec.ktUpdates tests for the new resolved-versions injection model and adds a failure-mode assertion.
buildSrc/src/main/kotlin/module.gradle.ktsUpdates forced artifacts (JacksonV2, Caffeine) and adjusts dependTestOnJvmRuntime() wiring.
buildSrc/src/main/kotlin/io/spine/gradle/report/pom/ResolvedVersions.ktIntroduces per-project resolved-version collection + serialization.
buildSrc/src/main/kotlin/io/spine/gradle/report/pom/PomXmlWriter.ktPlumbs resolved-versions lookup into dependency writing.
buildSrc/src/main/kotlin/io/spine/gradle/report/pom/PomGenerator.ktMakes generatePom depend on per-project resolved-version collectors.
buildSrc/src/main/kotlin/io/spine/gradle/report/pom/DependencyWriter.ktRefactors dependency collection to accept a resolved-versions provider.
buildSrc/src/main/kotlin/io/spine/gradle/report/license/LicenseReporter.ktAdjusts report paths usage and opts license report task out of build cache.
buildSrc/src/main/kotlin/io/spine/dependency/test/Testcontainers.ktUpdates Testcontainers coordinates/version and adds PostgreSQL module constant.
buildSrc/src/main/kotlin/io/spine/dependency/local/Validation.ktBumps Validation runtime dependency version and removes unused constants.
buildSrc/src/main/kotlin/io/spine/dependency/local/ToolBase.ktUpdates ToolBase version and documents the split into focused modules.
buildSrc/src/main/kotlin/io/spine/dependency/local/ProtoTap.ktBumps ProtoTap version.
buildSrc/src/main/kotlin/io/spine/dependency/local/ModelCompiler.ktRemoves ModelCompiler dependency descriptor.
buildSrc/src/main/kotlin/io/spine/dependency/local/CoreJvmCompiler.ktSplits Gradle plugin vs compiler plugins artifacts and updates accessors/names.
buildSrc/src/main/kotlin/io/spine/dependency/local/CoreJvm.ktBumps CoreJvm version.
buildSrc/src/main/kotlin/io/spine/dependency/local/Compiler.ktUpdates compiler versions and renames fat CLI artifact coordinate.
buildSrc/src/main/kotlin/io/spine/dependency/local/Base.ktBumps Base version(s).
buildSrc/src/main/kotlin/io/spine/dependency/lib/Roaster.ktRemoves outdated Java-version note from Roaster dependency descriptor.
buildSrc/src/main/kotlin/io/spine/dependency/lib/PalantirJavaFormat.ktBumps Palantir Java Format version.
buildSrc/src/main/kotlin/io/spine/dependency/lib/Log4j2.ktBumps Log4j2 version and adds SLF4J 2.x bridge artifact.
buildSrc/src/main/kotlin/io/spine/dependency/lib/JacksonV2.ktAdds an explicit Jackson 2.x dependency set for transitive alignment.
buildSrc/src/main/kotlin/io/spine/dependency/lib/Jackson.ktSwitches Jackson “primary line” to 3.x (tools.jackson) and clarifies 2.x/3.x split.
buildSrc/src/main/kotlin/io/spine/dependency/boms/Boms.ktPoints the optional Jackson BOM to JacksonV2.
buildSrc/src/main/kotlin/ForcePlugins.ktUpdates CoreJvmCompiler artifact references.
buildSrc/src/main/kotlin/BuildExtensions.ktUpdates comment wording around Gradle/Kotlin dependency reconciliation.
buildSrc/build.gradle.ktsAdds Gradle TestKit, and injects buildSrc classpath into TestKit runs.
.gitignoreAdjusts IDEA ignore rules commentary.
.github/workflows/gradle-wrapper-validation.ymlRemoves 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.

Comment threadbuildSrc/build.gradle.kts
Comment threadbuildSrc/src/main/kotlin/module.gradle.kts Outdated
@codecov

codecovBot commented Aug 24, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 92.63%. Comparing base (05cd322) to head (fdbe417).

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:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

CopilotAI review requested due to automatic review settings August 24, 2026 17:26

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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 wires shadowJar into launchProtoData / 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)

CopilotAI review requested due to automatic review settings August 24, 2026 17:56

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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 wires launchProtoData / launchTestProtoData to depend on the shadowJar output, 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)

CopilotAI review requested due to automatic review settings August 24, 2026 18:07

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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 (Jackson defines databind). This makes IDE quick-fixes for the deprecated symbol invalid; update the replacement to Jackson.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 (databind is 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 is databind). 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

@alexander-yevsyukov
alexander-yevsyukov merged commit 15a7be4 into masterAug 24, 2026
12 checks passed
@alexander-yevsyukov
alexander-yevsyukov deleted the update-local-dependencies branch August 24, 2026 18:24
@github-project-automationgithub-project-automationBot moved this from In Review to ✅ Done in v2.0Aug 24, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: ✅ Done

Development

Successfully merging this pull request may close these issues.

3 participants

@alexander-yevsyukov@armiol