gnodet opened a new pull request, #13490:
URL: https://github.com/apache/maven/pull/13490

   ## Summary
   
   Internalizes `plexus-classworlds` as `impl/maven-classworlds` and introduces 
a stable public API module `api/maven-api-classworlds`.
   
   This is a prerequisite for:
   - #XXXXX — load JLine on module-path for targeted `--enable-native-access` 
(PR B)  
   - #XXXXX — per-plugin JPMS `ModuleLayer` support (PR C, future)
   
   ## Changes
   
   ### New modules
   - **`api/maven-api-classworlds`** — stable API interfaces (`ClassWorld`, 
`ClassRealm`, `Strategy`, `ClassWorldListener`, exceptions) under 
`org.apache.maven.api.classworlds`
   - **`impl/maven-classworlds`** — fork of `plexus-classworlds` with the 
`org.codehaus.plexus.classworlds` implementation, backward-compat adapters 
under `org.codehaus.classworlds`, and new capabilities:
     - `module` directive in `m2.conf` — loads JARs on the JPMS module-path in 
a child `ModuleLayer` (enables targeted `--enable-native-access`)
     - `META-INF/maven/module-access` descriptor — classpath plugins can 
declare `add-exports/add-opens/add-reads` against named modules declaratively
   
   ### Across the codebase
   - Replace external `plexus-classworlds` dependency with `maven-classworlds` 
across all modules
   - Remove `classWorldsVersion` property from root `pom.xml`
   - Import rewrites: `org.codehaus.plexus.classworlds.*` → same package 
(implementation unchanged), new API via `org.apache.maven.api.classworlds.*`
   
   ## Scope
   
   This PR intentionally excludes:
   - `mvn`, `mvn.cmd`, `m2.conf` changes (PR B — JLine on module-path)
   - `createModularPluginRealm`, `<modular>true</modular>`, 
`ModuleLayerCreationException` (PR C — per-plugin modular realms)
   
   ## Testing
   
   `api/maven-api-classworlds`, `impl/maven-classworlds`, and `impl/maven-core` 
compile and the classworlds unit tests pass.
   
   Note: `impl/maven-cli` has pre-existing compilation issues from master 
changes not yet integrated into this branch; they will resolve on rebase.
   


-- 
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