[ http://jira.codehaus.org/browse/MNG-303?page=comments#action_39277 ]
     
Brett Porter commented on MNG-303:
----------------------------------

some more notes from my email to ant-dev describing this:

What we have is pretty basic, and we're definitely looking to improve it with 
some other types of resolution, such as what you've described. Ideally, a 
project would declare the minimum version it needs to work (and if applicable, 
maximum - or perhaps even known incompatible versions in between). The final 
project should use the most recent version allowed by all of the definitions 
(on the assumption that the most recent is backwards compatible and has less 
bugs than earlier versions :)

Again, local definition of an explicit version will ensure you get what you ask 
for. 

This also has important consequences for making builds reproducible in the 
future, too - obviously if the version remains flexible at the point it is 
published then it might not be the same later on. There needs to be a point 
during QA where you can lock it down to a version.



> dependency mediation and conflict management
> --------------------------------------------
>
>          Key: MNG-303
>          URL: http://jira.codehaus.org/browse/MNG-303
>      Project: m2
>         Type: New Feature
>   Components: maven-artifact
>     Reporter: Brett Porter
>      Fix For: 2.0-alpha-3

>
>
> as previously planned, we need to introduce the concepts of dependency 
> mediation and conflict management to complement the transitive dependency 
> mechanism.
> Currently, a "nearest wins" approach is being taken which gives full control, 
> but can result in having to re-state runtime dependencies to force a 
> specified newer version in some instances.
> An example in the m2 build is that when maven-artifact requires a newer 
> version of wagon, it is not applied to core because plexus-artifact-container 
> depends on an older version.
> We should also only resolve a dependency once - for example, currently we 
> build up the tree from all the versions of maven-artifact wanted, when in 
> fact, we should decide what version of maven-artifact will be used, and use 
> that for everything using maven-artifact before traversing to the next level. 
> This would reduce the number of old dependencies appearing.
> This will continue to make mboot less useful without replicating the feature. 
> I suggest that we only bootstrap maven-artifact (or move it to wagon and 
> don't bootstrap it at all), and then use it and wagon to execute mboot itself.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to