Conversation
| */ | ||
| @Deprecated(since = "4.0.0") | ||
| public class DefaultType implements Type, ArtifactType { | ||
| public class DefaultType implements Type { |
There was a problem hiding this comment.
What's the benefit of this decoupling? It does not seem necessary.
There was a problem hiding this comment.
The decoupling is a must as we figured: this class violates (maven or resolver, dependending how you look at it) contract for Type: classifier returns null instead of "" (resolver).
|
Thanks. Just tried with the |
|
@desruisseaux that is weird, as I have locally (master of m-compiler-p): Invoked as: |
|
Aha, I think I see it now: |
|
Yes, the integration test passes because the line that cause a failure is commented out. If you open the following file: then uncomment the second line below: // TODO: pending https://github.com/apache/maven/pull/11373
// dependency.AnnotationProcessorDependency.foo();then, we get the test failure. You can also check that if the value on |
|
Blocked by apache/maven-resolver#1648 |
|
@desruisseaux if this build passes OK, you will have a Maven build (available as GH CI artifact here: https://github.com/apache/maven/actions/runs/19105278503?pr=11380) w/ resolver fix incorporated (will use 2.0.14-SNAPSHOT resolver) |
|
Using that Maven along with latest Toolbox you can inspect the tree output from Maven and how types are derived. |
|
Thanks! Will try this weekend. No worry for the github actions, I always build Maven core locally anyway. |
|
Funnily, GH Actions revealed several "leaks" (UT and IT bubbled up to checkout root), so I am just using this as a good test to fix all those leaks 😄 |
desruisseaux
left a comment
There was a problem hiding this comment.
I cannot really evaluate this part of Maven code, but I tested with the Maven Compiler Plugin and confirm that it worked. I was able to re-enable a processor dependency test which was commented-out.
3cf949b to
58027b5
Compare
|
Note: this PR and feature depends on latest (not yet released) Resolver 2.0.14! Will revisit once it is out. |
Instead to "smear" this feature across Maven and Resolver classes, for start let's keep it "confined" with single class: the TypeDeriver. Later we can see where to go further with it. Supersedes apache#11373
0794fa6 to
1e6f23f
Compare
Instead to "smear" this feature across Maven and Resolver classes, for start let's keep it "confined" with single class: the TypeDeriver.
Later we can see where to go further with it.
This PR also includes bugfix, where Maven
DefaultTypeimplementsArtifactType, while in reality it does not (violates contract by returningnullwhen no classifier present).Supersedes #11373