chore: rename Maven artifactId graphcompose -> graph-compose ahead of Central debut#105
Merged
Merged
Conversation
… Central debut
Reads better on Maven Central. Done now while there is still no
artefact on Central to break — the v1.6.6 cut will be the first
publish, and we choose hyphenated coordinates from day one.
All four artefacts rename:
- root library graphcompose -> graph-compose
- reactor parent graphcompose-build -> graph-compose-build
- examples module graphcompose-examples -> graph-compose-examples
- benchmarks graphcompose-benchmarks -> graph-compose-benchmarks
The internal Maven property <graphcompose.version> stays as-is — it
is build-tool wiring, not a documented coord, and renaming it would
ripple across every ${graphcompose.version} reference for zero
external benefit. Same for system properties like
-Dgraphcompose.visual.approve and the Java package
com.demcha.compose: the rename is a coord-level concern, not a
brand or codebase rename.
Build chain updated atomically (4 poms) so dependency resolution
keeps working end-to-end: examples/pom.xml + benchmarks/pom.xml
parent refs flip to graph-compose-build, their library dep flips
to graph-compose, and the property they read (graphcompose.version)
still resolves from the same source via the reactor.
Forward-facing docs all switch to the new coord:
- README install snippet (Maven + Gradle) + the Maven Central badge
URL + the "Distribution" note + the javadoc.io URL
- docs/index.html JSON-LD downloadUrl + the Maven + Gradle install
snippet panels
- CONTRIBUTING.md release-flow javadoc.io URL
- SECURITY.md artifacts line
- ROADMAP.md "Maven Central distribution" entry + the hypothetical
future split into graph-compose-{core,pdf,docx,templates,testing}
- docs/templates/which-template-system.md "Maven coordinates do not
change in 2.0" section
- docs/roadmaps/v1.6-roadmap.md Phase E README-snippet wording +
the benchmark-module artifact reference + the release-identity
Maven coords line
- docs/contributing/release-process.md top distribution coords
block + Phase 0.D parent-artifact name + Phase 2.B dependency:get
command + Phase 6 done-criteria dependency:get command
- CHANGELOG.md v1.6.6 Planned: hero paragraph rewritten to call out
the hyphenated artifactId, JitPack legacy notice clarified, the
javadoc.io URL flipped
Historical lessons-learned in docs/contributing/release-process.md
sections 167-169 keep verbatim references to graphcompose-build /
the graphcompose dependency — they describe what happened during
v1.6.0 / v1.6.5 prep when the artifactId was graphcompose, and
rewriting them would falsify history.
scripts/cut-release.ps1 regexes:
- Update-ReadmeVersion: primary Maven Central regex now matches
<artifactId>graph-compose</artifactId>; legacy graphcompose +
JitPack regexes kept as ordered fallbacks
- Update-IndexHtmlVersion: Central downloadUrl regex, Maven snippet
regex, and Gradle snippet regex all switch to graph-compose
VersionConsistencyGuardTest regex list extended to try
graph-compose first, then graphcompose, then the legacy JitPack
format — the snippet check passes on any of the three. Same pattern
on README and docs/index.html. Once the rename is the only form
left, the older patterns can be removed in a cleanup PR; keeping
them now means the test does not flake during the transition
window if any stale snippet sneaks through review.
Build verified: 4-pom dependency resolution OK (./mvnw -DskipTests
install -pl . + ./mvnw -f examples/pom.xml clean compile + ./mvnw
-f benchmarks/pom.xml clean compile all green). Guard suite green:
CanonicalSurfaceGuardTest + DocumentationExamplesTest +
DocumentationCoverageTest + VersionConsistencyGuardTest +
PublicApiNoEngineLeakTest + SemanticLayerNoPdfBoxDependencyTest =
33/0/0. GenerateAllExamples exit 0, 53 PDFs, no layout errors.
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
Reads better on Maven Central. Done now while there is still no artefact on Central to break — the v1.6.6 cut will be the first publish, and we choose hyphenated coordinates from day one. After v1.6.6 ships under `graph-compose`, this rename becomes irreversible without coordinating two artifactIds in parallel.
What renames
What stays
Files (15 total)
Test plan
After merge
`develop` carries `graph-compose` as the canonical Maven Central artifactId. At v1.6.6 cut, the artefact ships to Central under `io.github.demchaav:graph-compose:1.6.6` — the coordinate users see and copy from day one is the readable form.