gnodet opened a new pull request, #12084:
URL: https://github.com/apache/maven/pull/12084
## Summary
- Filter out transitive dependencies and managed dependencies with
uninterpolated `${...}` expressions in
`DefaultArtifactDescriptorReader.populateResult()` before they reach the
resolver/validator
- Follows the same pattern used for transitive repositories with
uninterpolated IDs/URLs (commit 9332ad3d55, PR #12050)
- Fixes builds that fail with `IllegalArgumentException: Not fully
interpolated dependency` when a transitive POM contains dependencies with
undefined property expressions (e.g., `org.osgi:osgi.core:jar:${osgi.version}`)
## Context
Maven 4's `MavenValidator.validateDependency()` rejects dependencies with
uninterpolated property expressions. This is correct for the project's own POMs
(caught during model validation), but transitive dependency POMs from Maven
Central may contain managed dependencies with expressions that are not
resolvable outside their original build context. These should be silently
filtered rather than causing a build failure.
This is the resolver-side complement to #12083 (mvnup fix for project-local
POMs with undefined property expressions).
## Test plan
- [x] `mvn test -B -pl impl/maven-impl` — 462 tests pass
- [x] `mvn test -B -pl compat/maven-resolver-provider` — 27 tests pass
- [ ] Verify with causeway-app-simpleapp (transitive
`org.osgi:osgi.core:jar:${osgi.version}`)
🤖 Generated with [Claude Code](https://claude.com/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]