[ 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)