Skip to content

Bring the README version snippets up to 2.16.2-SNAPSHOT - #78

Merged
ghedwards merged 1 commit into
masterfrom
fix/version-drift-2.16.2
Sep 23, 2026
Merged

ghedwards merged 1 commit into
masterfrom
fix/version-drift-2.16.2

Conversation

@ghedwards

Copy link
Copy Markdown

The move to 2.16.2-SNAPSHOT updated the four poms, build.gradle and both gradle.properties, but left every README behind at 2.16.1-SNAPSHOT — five of the twelve declared locations. Anyone copying the dependency snippet out of a README got a version the project does not build.

location was now
README.md snippet 2.16.1 2.16.2
README.md versions:set example 2.16.1 2.16.2
cfml.dictionary/README.md 2.16.1 2.16.2
cfml.parsing/README.md 2.16.1 2.16.2
cfml.cli/README.md 2.16.1 2.16.2

This is the failure mode CLAUDE.md singles out as the recurring bug here — a bump touches some locations and not others, and nothing catches it until a build breaks months later. Gradle sat two versions behind Maven for five months the same way.

Why the replacer plugin did not already fix these

Three of the five are replacer output, but it only regenerates READMEs for modules that are actually built — and the documented build is scoped (mvn -pl cfml.dictionary,cfml.parsing -am install), because building the whole reactor pulls in cfml.cli and fails on a non-GraalVM JDK. So cfml.cli/README.md is never regenerated in normal use.

That one and the root README's versions:set example are the two the plugin never touches; both were corrected by hand.

Verification

The check CLAUDE.md prescribes, across all twelve locations:

$ grep -rn "2\.16\.[0-9]" --include=pom.xml --include=*.gradle --include=*.properties --include=README.md .
README.md:18                       2.16.2-SNAPSHOT
README.md:23                       2.16.2-SNAPSHOT
build.gradle:7                     2.16.2-SNAPSHOT
cfml.cli/README.md:9               2.16.2-SNAPSHOT
cfml.cli/pom.xml:8                 2.16.2-SNAPSHOT
cfml.dictionary/README.md:10       2.16.2-SNAPSHOT
cfml.dictionary/gradle.properties  2.16.2-SNAPSHOT
cfml.dictionary/pom.xml:6          2.16.2-SNAPSHOT
cfml.parsing/README.md:19          2.16.2-SNAPSHOT
cfml.parsing/gradle.properties     2.16.2-SNAPSHOT
cfml.parsing/pom.xml:6             2.16.2-SNAPSHOT
pom.xml:5                          2.16.2-SNAPSHOT

One distinct value throughout. Documentation only — no code, build or test changes.

Worth considering separately

cfml.cli/README.md will drift again on the next bump, for the same structural reason: the plugin that maintains it only runs in a build the project tells you not to run. Either the release process needs a step for it, or that README should not carry a version at all.

🤖 Generated with Claude Code

https://claude.ai/code/session_01GzpZFd4rnE1Yi2sVHAji35


Generated by Claude Code

The move to 2.16.2-SNAPSHOT updated the four poms, build.gradle and both
gradle.properties, but left every README behind at 2.16.1-SNAPSHOT. That
is five of the twelve declared locations, so anyone copying the dependency
snippet out of a README got a version that is not what the project builds.

CLAUDE.md calls this out as the recurring bug in this repo -- a bump
touches some locations and not others, and nothing catches it until a
build breaks months later. Gradle sat two versions behind Maven for five
months the same way.

Three of these are the replacer plugin's output, which only regenerates
for modules that are actually built; cfml.cli/README.md and the
versions:set example in the root README are the two the plugin never
touches, so they were corrected by hand.

Verified with the check CLAUDE.md prescribes: all twelve locations now
report a single value.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GzpZFd4rnE1Yi2sVHAji35
@ghedwards
ghedwards merged commit db5adb9 into master Sep 23, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants