You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
chore: rename Maven artifactId graphcompose -> graph-compose ahead of Central debut (#105)
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.
1.**Release prep** lands on `develop`— version bumps propagate via `aggregator/pom.xml` to all modules in one pass; fresh CHANGELOG entry; migration guide for minor releases. **README install snippet stays pinned to the previously published version** until Maven Central confirms the new artifact, otherwise consumers copying the snippet during the publish window hit a 404.
80
80
2.**`scripts/cut-release.ps1 -Version <X.Y.Z>`** automates the bump + CHANGELOG date + commit + tag + push from `develop`. The maintainer fast-forwards `main` from `develop` after the tag lands (`git push origin develop:main`).
81
-
3.**Maven Central** picks up the new tag automatically via [`.github/workflows/publish.yml`](./.github/workflows/publish.yml)— the workflow re-runs `mvnw verify` at the tagged commit, signs the four artefacts (main / sources / javadoc / pom) with the repo's GPG key, and uploads via the `central-publishing-maven-plugin`. Hyphenated tags (`-rc`, `-alpha`, `-beta`) are skipped on Central; they ship only to the GitHub Release pre-release surface. Javadocs auto-publish to [javadoc.io/doc/io.github.demchaav/graphcompose](https://javadoc.io/doc/io.github.demchaav/graphcompose) shortly after each Central release.
81
+
3.**Maven Central** picks up the new tag automatically via [`.github/workflows/publish.yml`](./.github/workflows/publish.yml)— the workflow re-runs `mvnw verify` at the tagged commit, signs the four artefacts (main / sources / javadoc / pom) with the repo's GPG key, and uploads via the `central-publishing-maven-plugin`. Hyphenated tags (`-rc`, `-alpha`, `-beta`) are skipped on Central; they ship only to the GitHub Release pre-release surface. Javadocs auto-publish to [javadoc.io/doc/io.github.demchaav/graph-compose](https://javadoc.io/doc/io.github.demchaav/graph-compose) shortly after each Central release.
82
82
4.**GitHub Release** is created with notes from the matching `CHANGELOG.md` section.
83
83
84
84
See [docs/contributing/release-process.md](./docs/contributing/release-process.md) for the full checklist (audit gates, hotfix protocol, lessons learned).
-**Maven Central distribution**— debut shipping in v1.6.6 under `io.github.demchaav:graphcompose`. Replaces JitPack as the primary install channel; the JitPack URL stays alive for existing pinned consumers but is no longer documented as a primary option. Tracked in [#7](https://github.com/DemchaAV/GraphCompose/issues/7).
11
+
-**Maven Central distribution**— debut shipping in v1.6.6 under `io.github.demchaav:graph-compose`. Replaces JitPack as the primary install channel; the JitPack URL stays alive for existing pinned consumers but is no longer documented as a primary option. Tracked in [#7](https://github.com/DemchaAV/GraphCompose/issues/7).
12
12
13
13
## Next (v1.7)
14
14
@@ -23,7 +23,7 @@ Not committed. Reflects current thinking; priorities may shift based on user fee
23
23
24
24
-**DOCX visibility for unsupported nodes.** Make currently-silent skips (`shape`, `line`, `ellipse`, `barcode`) loud — minimum a warn log, ideally a strict-mode flag that fails instead of dropping content silently.
25
25
-**Backend-neutral layout measurement.** Decouple measurement from PDFBox-specific resources so non-PDF backends do not pull PDFBox into the dependency graph.
26
-
-**Multi-module Maven layout.** Split the artifact into `graphcompose-core` / `graphcompose-pdf` / `graphcompose-docx` / `graphcompose-templates` / `graphcompose-testing` if there is clear demand. Adds release complexity, so requires a real adoption signal first.
26
+
-**Multi-module Maven layout.** Split the artifact into `graph-compose-core` / `graph-compose-pdf` / `graph-compose-docx` / `graph-compose-templates` / `graph-compose-testing` if there is clear demand. Adds release complexity, so requires a real adoption signal first.
27
27
-**DOCX maturity.** Either expand DOCX coverage toward PDF parity, or move DOCX behind an explicitly experimental flag.
- Templates shipped in `com.demcha.compose.document.templates`.
49
49
- Public authoring API (`GraphCompose`, `DocumentSession`, DSL).
50
-
- Build and release artifacts on Maven Central (`io.github.demchaav:graphcompose`). The legacy JitPack URL remains available for consumers pinned to v1.6.5 and earlier but is no longer the documented install channel.
50
+
- Build and release artifacts on Maven Central (`io.github.demchaav:graph-compose`). The legacy JitPack URL remains available for consumers pinned to v1.6.5 and earlier but is no longer the documented install channel.
0 commit comments