I think I understand where the confusion is coming from. We must be very clear 
about definitions. 
Transitive means adding all indirect dependencies with the compile and runtime 
dependencies.
So the transitive *scope* itself is not transitive, meaning all indirect 
*test*-scoped are not added to the classpath. But IMO a test-scoped 
*dependency* is transitive, all its compile and runtime dependencies must be 
added to the classpath.

Robert

Verzonden vanaf Samsung Mobile.

<div>-------- Oorspronkelijk bericht --------</div><div>Van: Christian Schulte 
<c...@schulte.it> </div><div>Datum:15-12-2016  01:29  (GMT+01:00) 
</div><div>Aan: Maven Developers List <dev@maven.apache.org> 
</div><div>Onderwerp: Re: maven-wagon git commit: [MRESOLVER-9] 
DefaultDependencyCollector
  does not correctly handle dependency management. </div><div>
</div>Am 12/15/16 um 01:15 schrieb Christian Schulte:
> Am 12/14/16 um 23:29 schrieb Michael Osipov:
>> I just hit the same issue with the Maven Clean Plugin: 
>> plexus-container-default is missing on the classpath.
>>
>> I think that Christian does the right thing, either adjusting code to 
>> documentation or the other way around. We just need to agree what is the 
>> right thing and change the problematic spot accordingly.
>>
>> Don't having compile, runtime and test scoped transitive deps of a 
>> direct test dependency doesn't look right to me. There must be some 
>> reason why this decision was made eons ago.
> 
> That could be another bug.
> 
> A -> B (test) -> C (compile)
> 
> When we say "Test scope is not transitive", C should not be resolved as
> well. That's just another inconsistency. We have B in test scope and so
> all transitive dependencies of B implicitly will become test scope. That
> scope is not transitive, so C and all other transitive dependencies of B
> should not be resolved. It's really still inconsistent.

By this I mean: If the scope of C is not managed to 'test', it currently
will be resolved. It really shouldn't, following the 'Test scope is not
transitive'. I read that as: The test scope does not support transitive
dependencies.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org

Reply via email to