docs: add the 2.0 module migration guide and modularization ADR#309
Merged
Conversation
Document the completed module split for consumers and record the decision. - ADR 0016 captures the multi-module packaging decision: the split into a lean graph-compose-core plus render backends and templates, the ServiceLoader backend seam, lockstep versioning, and the back-compat wrapper that keeps graph-compose rendering PDF out of the box. - A new migration guide (docs/migration/v2.0.0-modules.md) walks a consumer through the dependency change: PDF callers are unchanged, lean consumers use graph-compose-core, templates become opt-in, and MissingBackendException is the lean-core signal. - Flip the api-stability section 3 ledger's single-jar-packaging row from planned to landed and correct it to the shipped topology.
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.
Why
The module split has landed, but there was no consumer-facing guide for the dependency
change and no recorded decision for the architecture. This adds both, and graduates the
api-stability ledger entry from "planned" to "landed".
What
graph-compose-coreplus render backends and templates, theServiceLoaderbackendseam, lockstep versioning, and the back-compat
graph-composewrapper that keeps PDFrendering out of the box (with the reversal rationale).
docs/migration/v2.0.0-modules.md— a dependency-focused migration guide: PDFcallers are unchanged, lean consumers use
graph-compose-core, templates become opt-in(
graph-compose-templates), andMissingBackendExceptionis the lean-core signal (itsmessage quoted verbatim). API-level removals are left to the changelog rather than
duplicated.
api-stability.md§ 3 ledger — flip the single-jar-packaging row fromplannedtolanded 2.0and correct it to the shipped topology (the pre-reversal text wrongly saidgraph-composeno longer contains the PDF backend), linking ADR 0016 and the guide.Tests
CanonicalSurfaceGuardTest,DocumentationCoverageTest,PackageMapGuardTest,VersionConsistencyGuardTest) — 24 tests, 0 failures.core deps, bundle contents, the verbatim exception message, SPI seams, the ECS-in-render-pdf
move); all links resolve.