Skip to content

build: split graph-compose-render-pptx out of render-docx#302

Merged
DemchaAV merged 1 commit into
2.0-devfrom
build/2.0-extract-render-pptx
Jul 5, 2026
Merged

build: split graph-compose-render-pptx out of render-docx#302
DemchaAV merged 1 commit into
2.0-devfrom
build/2.0-extract-render-pptx

Conversation

@DemchaAV

@DemchaAV DemchaAV commented Jul 5, 2026

Copy link
Copy Markdown
Owner

Why

graph-compose-render-docx carried both the DOCX backend (Apache POI) and the
semantic PPTX backend. Splitting PPTX into its own module lets a consumer who wants
only slide output avoid pulling POI, and keeps each backend's dependency surface
minimal. The PPTX backend is a POI-free skeleton today (it validates slide-safe
nodes and returns an export manifest), so the new module depends only on
graph-compose-core.

What

  • New graph-compose-render-pptx module — graph-compose-core only, no POI.
    PptxSemanticBackend moves here from render-docx with its package/FQN unchanged.
  • Split the shared SessionSemanticExportTest: the docx half stays in render-docx,
    the pptx half becomes PptxSemanticExportTest in render-pptx (both assertions
    preserved).
  • render-docx keeps the DOCX backend only; its description/comment updated.
  • Wired into the aggregator, publish (deploy after render-docx),
    cut-release.ps1 (version bump + commit list), VersionConsistencyGuardTest
    (version lockstep), and the CHANGELOG.
  • The CI build gate now also builds and tests render-docx and render-pptx — the
    render-docx tests weren't running in CI before (it's a reactor leaf, not an
    also-make upstream of the engine/testing/qa slice).

Tests

  • Full reactor ./mvnw -f aggregator/pom.xml clean verify → BUILD SUCCESS, all
    modules; the new PptxSemanticExportTest passes and render-docx stays green after
    the trim.

render-docx carried both the DOCX backend (Apache POI) and the semantic PPTX
backend. Split PPTX into its own graph-compose-render-pptx module so a consumer
that wants only slide output does not pull POI, and each backend keeps a minimal
dependency surface. The PPTX backend is a POI-free skeleton today, so the new
module depends only on graph-compose-core.

- New graph-compose-render-pptx module (core-only, no POI). PptxSemanticBackend
  moves here from render-docx; its package/FQN is unchanged.
- Split the shared SessionSemanticExportTest: the docx half stays in render-docx,
  the pptx half becomes PptxSemanticExportTest in render-pptx.
- Wire the module into the aggregator, publish (deploy after render-docx),
  cut-release (version bump + commit list), VersionConsistencyGuardTest (version
  lockstep), and the CHANGELOG.
- The CI build gate now also builds and tests render-docx and render-pptx; the
  render-docx tests were not running in CI before (it is a reactor leaf, not an
  also-make upstream of the engine/testing/qa slice).
@DemchaAV DemchaAV merged commit 8e2cdce into 2.0-dev Jul 5, 2026
10 checks passed
@DemchaAV DemchaAV deleted the build/2.0-extract-render-pptx branch July 5, 2026 20:55
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.

1 participant