gnodet opened a new issue, #12081: URL: https://github.com/apache/maven/issues/12081
## Problem The `mvnup` tool currently uses JDOM on the `maven-4.0.x` branch but domtrip on `master`. This means every mvnup change needs to be implemented twice with different XML APIs, and cherry-picks between branches always produce conflicts in imports and API calls. Since `mvnup` is a brand-new tool shipping for the first time in Maven 4.0.0, there is no backwards compatibility concern — no existing users depend on the JDOM-based implementation. ## Proposal Migrate `mvnup` on the `maven-4.0.x` branch to use the domtrip API, aligning it with `master`. This would: 1. **Eliminate cherry-pick conflicts**: Changes can flow freely between `master` and `4.0.x` without manual API translation 2. **Reduce maintenance burden**: Only one implementation to maintain instead of two 3. **Enable faster iteration**: New mvnup features (like #12080) only need to be written once 4. **Reduce risk of divergence**: The two branches currently risk accumulating subtle behavioral differences from API translation errors ## Scope The migration affects only the `mvnup` goals package (`maven-cli/src/main/java/.../mvnup/goals/`): - `CompatibilityFixStrategy.java` - `PluginUpgradeStrategy.java` - `InferenceStrategy.java` - `ModelUpgradeStrategy.java` - `JDomUtils.java` (would be removed or replaced) - Associated test files The rest of Maven on `4.0.x` continues to use JDOM — only `mvnup` switches to domtrip. _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]
