wilx opened a new pull request, #417:
URL: https://github.com/apache/maven-help-plugin/pull/417

   ## Summary
   
   Fixes #327 for the Maven 4-enabled line.
   
   Maven 4 exposes evaluated model collections through `WrapperList` and uses 
immutable collection and map implementations inside the model. XStream does not 
recognize these implementations and falls back to reflective serialization, 
which fails when it tries to access JDK internals such as 
`AbstractList.modCount`.
   
   This change registers collection and map converters that accept their public 
interfaces and aliases the concrete runtime list class so the existing XML root 
name is preserved. The evaluated list is serialized directly without copying it.
   
   The commits are intentionally split: the first adds the regression IT and 
fails with the `WrapperList` reflection error; the second applies the fix.
   
   ## Validation
   
   - Maven 4.0.0-rc-6 / JDK 21 focused `clean verify`: passed
   - Maven 4.0.0-rc-6 / JDK 25 focused `clean verify`: passed
   - Maven 3 / JDK 21 full `clean verify`: 26 unit tests and 35 ITs passed; the 
Maven 4-only IT was skipped
   - Maven 4.0.0-rc-6 / JDK 21 full `clean verify`: the new IT passed; two 
existing Describe ITs failed (`describe-cmd-with-goal-report` and 
`describe-plugin-without-name`)
   
   ## Checklist
   
   - [x] This pull request addresses one issue without unrelated changes.
   - [x] The description explains what changed, how, and why.
   - [ ] Each commit has a meaningful subject line and body. Commit subjects 
are meaningful; no commit bodies were added.
   - [x] A regression integration test fails without the runtime change.
   - [x] `mvn verify` was run successfully.
   - [ ] The complete Maven 4 integration-test suite has unrelated failures 
documented above; the focused regression IT passes.
   
   - [ ] I hereby declare this contribution to be licenced under the Apache 
License Version 2.0, January 2004.
   - [ ] In any other case, an Apache Individual Contributor License Agreement 
has been filed.
   


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