apache / apache/maven-help-plugin

EffectivePomMojo.cleanModel() mutates the live project Model in-place

Open Beginner friendly
#384 2 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
Java
Stars
29
Forks
42
Avg merge
1d 12h
Merged PRs (30d)
6

Description

In src/main/java/org/apache/maven/plugins/help/EffectivePomMojo.java:210-213:

private static void cleanModel(Model pom) {
Properties properties = new SortedProperties();
properties.putAll(pom.getProperties());
pom.setProperties(properties);
}

Called from writeEffectivePom() at line 182 on project.getModel(). This permanently replaces the project Properties with a SortedProperties instance, altering property iteration order for the remainder of the build. This is a data corruption side effect in what should be a read-only display operation.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in src/main/java/org/apache/maven/plugins/help/EffectivePomMojo.java by reading writeEffectivePom() around line 182 and cleanModel() around lines 210-213. Verify that generating the effective POM no longer changes project.getModel().getProperties() or its iteration order, and run the relevant project tests to confirm the display operation remains correct.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
75/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.