gnodet opened a new pull request, #1164:
URL: https://github.com/apache/maven-compiler-plugin/pull/1164

   ## Summary
   
   Adds cross-module ABI manifest writing and external dependency resolution to 
enable incremental compilation across reactor modules.
   
   - **ABI manifest**: After compilation, writes a `abi-fingerprints` manifest 
listing every type and its ABI fingerprint. Downstream modules read this to 
detect upstream ABI changes without re-analyzing bytecode.
   - **External ABI resolver**: Three-strategy cascade (manifest → reactor 
metadata → bytecode fallback) for resolving external type fingerprints on the 
classpath.
   - **Cross-module invalidation**: During incremental builds, detects when 
upstream module ABI changed and recompiles affected consumers.
   - **JAR caching**: Reuses stored fingerprints for unchanged JARs (matched by 
size + mtime identity).
   
   This is step 3 of 4 splitting [PR 
#1157](https://github.com/apache/maven-compiler-plugin/pull/1157) per the 
[review 
comment](https://github.com/apache/maven-compiler-plugin/pull/1144#issuecomment-5984536369).
 Builds on [PR 
#1163](https://github.com/apache/maven-compiler-plugin/pull/1163) (intra-module 
ABI).
   
   ## Test plan
   
   - [x] Unit tests: `AbiManifestTest` (7 tests), `ExternalAbiResolverTest` (6 
tests, 3 require JDK 24+), `GraphIncrementalBuildTest` (3 new cross-module 
tests)
   - [x] Integration tests: `abi-incremental-basic`, `abi-incremental-cascade`
   - [x] Full build passes (`mvn clean verify -B`)
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   
   _Claude Code on behalf of Guillaume Nodet_


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to