gnodet opened a new pull request, #13556:
URL: https://github.com/apache/maven/pull/13556
Fix a logical gap between two independent fixes that both landed on master
today:
- #10375 (`ce26838575`) — activate parent file profiles with the parent's
properties,
using `start(Map)` → `model.withProperties(parentProps)`
- #13390 (`d3cc17bc22`) — stop POM properties from self-activating profiles
in external builds
The problem: `start(Map)` still calls
`model.withProperties(modelProperties)`, which means
`getModelProperty()` returns the parent POM's own declared properties. This
directly
contradicts the design intent of #13390: POM-declared properties must not
drive profile
activation in external builds.
This commit (backported from #13545) reconciles both fixes:
- Introduces a separate `interpolationProperties` field used **only** inside
`interpolate()`
for path placeholder resolution (e.g. `${message.file}` in file-condition
profiles)
- `start(Map)` no longer calls `model.withProperties(...)` — the model's own
properties
remain unchanged, so `getModelProperty()` stays clean
- A parent POM's declared properties can now be used to resolve path
placeholders in its
file-based profiles without being able to self-activate its property-based
or
condition-based profiles
The Javadoc on both the field and `start(Map)` explains the #10375/#13390
relationship.
Backport: #13545
--
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]