Bump Validation and related dependencies; modernize build and proofread docs#8
Merged
Conversation
Sync the config-distributed files with the latest `config` submodule and register the `.agents/shared` submodule: agent guidelines and skills (`.agents`, `.claude`, `.junie`, `AGENTS.md`, `CLAUDE.md`), CI workflows, IDE settings, the Gradle wrapper, and the `buildSrc` build infrastructure. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Bump the local Spine dependency versions the branch targets: Validation `.450`, Base `.425`, Compiler `.062`, CoreJvm `.450`, CoreJvmCompiler `.080`, Time `.244`, ToolBase `.403`, and others. Sync the rest of the dependency definitions with `config`: add the new `storage` libraries and `Testcontainers`, and drop the obsolete `McJava` and `ProtoData` declarations. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Root `buildscript`: drop `doForceVersions` (fail-on-version-conflict) and reduce the classpath force list to the minimal set, mirroring the lenient buildscript of `base-types`. The bumped Spine tools now resolve to their newest transitive versions instead of failing configuration. - `module.gradle.kts`: force `Time` artifacts and `Base.environment` / `Base.format` so the bumped versions win in the module and Spine compiler configurations. - Rename the root project `spine-change` -> `change`; the `spine-` prefix is added automatically when publishing. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Regenerate `docs/dependencies/pom.xml` and `docs/dependencies/dependencies.md` for version `2.0.0-SNAPSHOT.207` and the bumped dependency set. Remove the legacy root-level `pom.xml` and `dependencies.md`, superseded by the reports under `docs/dependencies/`. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Fix English-grammar errors in prose, per the shared style catalog:
- Subject-verb agreement: `instance represent` -> `represents`.
- Missing articles: `Obtains expected value` -> `Obtains the expected
value`; `Creates {@code ValueMismatch}` -> `Creates a ...`.
- Restrictive `which` -> `that` in `value_mismatch.proto`.
- `can be use` -> `can be used`; `rule apply` -> `rule applies`.
- Restore the word dropped from `different than expected by a command`
(confirmed against the parallel `StringMismatch` summary).
- Article and which/that fixes in `CONTRIBUTING.md` and the `.agents`
conversion note.
Comment and Markdown prose only; no code or identifiers changed.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- The modules build with Java 17, not Java 11. - Retitle the usage section to "Using in a Gradle project". Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Address the pre-PR documentation review: - Finish the article and hyphen fixes the first proofread pass left in the same sentences: `discovering a non-zero value`, `discovering a zero value`, `a non-zero amount`, `when a command finds a false/true value`. - Restrictive `which` -> `that` in the `.agents` Java-to-Kotlin note. - Wrap the over-long comment line in `change.proto` under the 100-char limit. - Stamp the copyright year (2026) on the proofread-modified sources so the change set is consistent. Comment and Markdown prose only; no code or identifiers changed. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
`Build on Ubuntu` failed at the Codecov upload step with "Found 0 coverage files to report": the custom `module` convention plugin applied the plain `jacoco` plugin but never configured a report, and the root `JacocoConfig.jacocoRootReport` was skipped, so no coverage XML was produced. Adopt the Kover setup that `base-types` uses via `jvm-module`: apply `org.jetbrains.kotlinx.kover` in the module with `useJacoco(...)` and an XML report on `check`, producing `build/reports/kover/report.xml` for Codecov to discover. Drop the now-unused root `jacoco` plugin and `JacocoConfig`. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #8 +/- ##
=========================================
Coverage 99.31% 99.31%
Complexity 86 86
=========================================
Files 9 9
Lines 290 290
Branches 4 4
=========================================
Hits 288 288
Misses 1 1
Partials 1 1 🚀 New features to boost your workflow:
|
alexander-yevsyukov
enabled auto-merge
July 23, 2026 18:17
armiol
requested changes
Jul 23, 2026
armiol
left a comment
Collaborator
There was a problem hiding this comment.
@alexander-yevsyukov let's fill in docs/project.md as discussed.
Fill in `docs/project.md` (symlinked from `.agents/project.md`) with the overview and architecture of the `change` library: the `Change` and `ValueMismatch` Protobuf types, the `io.spine.change` public API (`Changes`, the `*Mismatch` utilities, `ChangePreconditions`), the new-value-not-equal invariant, and the role of the module within the Spine SDK. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Contributor
Author
|
Done — 🤖 Addressed by Claude Code |
armiol
approved these changes
Jul 23, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Continues the dependency modernization begun in #7 (merged), advancing the
published version
2.0.0-SNAPSHOT.206→2.0.0-SNAPSHOT.207. It syncs theshared
configtooling, bumps the local Spine dependencies, resolves theresulting version-conflict build failures using the
base-typesrepo as thereference, and proofreads the library's API documentation.
What changed
configsubmodule and re-syncsdistributed files (
.agents,.claude,.junie, CI workflows, Gradlewrapper,
buildSrc); registers the.agents/sharedsubmodule..450, Base.425, Compiler.062,CoreJvm
.450, CoreJvmCompiler.080, Time.244, ToolBase.403; dropsobsolete
McJava/ProtoData, adds the newstoragelibraries.buildscriptis now lenient(dropped
doForceVersions/fail-on-version-conflict, minimalforcelist),so the bumped Spine tools resolve to their newest transitive versions instead
of failing configuration; the
moduleforce list pinsTime,Base.environment, andBase.format; the root project is renamedspine-change→change(thespine-prefix is added on publishing)..206→.207, migrating the deprecatedval versionToPublish by extra(...)toextra.set(...)(clears a Gradle 9deprecation warning); dependency reports regenerated under
docs/dependencies/, and the legacy rootpom.xml/dependencies.mdremoved.(subject–verb agreement, missing articles, restrictive which → that, a
dropped word); README now states Java 17 and retitles the usage section to
"Using in a Gradle project".
Verification
./gradlew clean build dokkaGenerate— green, tests run, no unresolveddoc links.
.207>.206(base).spine-code-review APPROVE WITH CHANGES, review-docs APPROVE WITH
CHANGES — no Must-fix items; the flagged should-fixes (a comment line over
100 chars, and articles the first proofread pass missed) are fixed in this
branch.
Notes for reviewers
AGENTS.md § Code review. The repo-owned changes are the build scripts(
build.gradle.kts,module.gradle.kts,settings.gradle.kts,version.gradle.kts),change/src/**, and the Markdown/doc-comment prose.forward work relative to
master(.206→.207).moduleconvention plugin rather than migratingto the config-provided
jvm-module, to avoid changing the publisheddependency surface (
implementation→api).docs/dependencies/pom.xmlregenerates nondeterministically due tomulti-module report aggregation; it is committed at the correct forced
versions. CI's
ensure-reports-updatedonly checks the report files weremodified in the PR.
🤖 Generated with Claude Code