[ 
https://jira.codehaus.org/browse/MNG-3092?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=350881#comment-350881
 ] 

Mark Derricutt commented on MNG-3092:
-------------------------------------

As mentioned in Aether release notes, since 0.9 ( 
http://wiki.eclipse.org/Aether/New_and_Noteworthy ) Aether has support using 
2.* which would resolve anything from 2.0 up to 2.99999999 but NOT 3.0-SNAPSHOT 
or 3.0. If this was support by maven itself then Richards convention would no 
longer been needed - correct?

The other side of the question is ( and I think this has been discussed here 
and elsewhere ) is that its not that the resolution of "the range" that 
shouldn't include the SNAPSHOTs but what it chosen _from_ the range. Maven 
already supports basic filtering of this with snapshot enabled/disabled 
repositories, but sadly the local repository contains both - I'd rather see 
SNAPSHOTs be installed into a different localRepository than releases, that 
would make a) cleaning up snapshots easier b) filtering like we want in this 
ticket ( this does eventually run off into the question of upper/lower bound 
resolution as well, but thats a large can with a LOT of worms ).

> resolution of version ranges with non-snapshot bounds can resolve to a 
> snapshot version
> ---------------------------------------------------------------------------------------
>
>                 Key: MNG-3092
>                 URL: https://jira.codehaus.org/browse/MNG-3092
>             Project: Maven
>          Issue Type: Bug
>          Components: Dependencies
>            Reporter: Mark Hobson
>            Assignee: Jason van Zyl
>             Fix For: 3.2.x
>
>         Attachments: MNG-3092.patch, MNG-3092.patch
>
>
> Contrary to the 2.0 design docs:
> "Resolution of dependency ranges should not resolve to a snapshot 
> (development version) unless it is included as an explicit boundary."
> -- from 
> http://docs.codehaus.org/display/MAVEN/Dependency+Mediation+and+Conflict+Resolution#DependencyMediationandConflictResolution-Incorporating%7B%7BSNAPSHOT%7D%7Dversionsintothespecification
> The following is equates to true:
> VersionRange.createFromVersionSpec( "[1.0,1.1]" ).containsVersion( new 
> DefaultArtifactVersion( "1.1-SNAPSHOT" ) )
> The attached patch only allows snapshot versions to be contained in a range 
> if they are equal to one of the boundaries.  Note that this is a strict 
> equality, so [1.0,1.2-SNAPSHOT] will not contain 1.1-SNAPSHOT.



--
This message was sent by Atlassian JIRA
(v6.1.6#6162)

Reply via email to