gnodet opened a new pull request, #12175:
URL: https://github.com/apache/maven/pull/12175
## Summary
- Skip uninterpolated expression checks for root-level repositories during
raw model validation, because parent POM properties are not yet available at
that stage
- Add the same expression checks to effective model validation
(`validate20EffectiveRepository`), where parent properties have been merged and
full interpolation is complete
- Truly unresolvable expressions are still caught as errors, but after all
property sources have been resolved
## Context
Raw model validation runs before the parent POM is read (`doReadRawModel` →
`validateRawModel` happens before `readEffectiveModel` → `readParent`). This
means properties defined in parent POMs (e.g., `${eclipseP2RepoId}`) are not
available during raw validation, causing false positives.
Profile and distributionManagement repositories already skipped expression
checks for the same reason. This change extends that to root-level
`repositories` and `pluginRepositories`.
Fixes: MNG-15012, MNG-14390, MNG-10104, MNG-13299, MNG-14733
## Test plan
- [x] Updated raw validation tests to reflect skipped expression checks
- [x] Added effective model validation tests to verify unresolvable
expressions are still caught
- [x] All 470 maven-impl tests pass
_Generated with Claude Code_
--
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]