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

Bruno Medeiros commented on MNG-3092:
-------------------------------------

I agree someone can find some usefulness in resolving a snapshot with neither 
the lower limit nor upper limit of the range being a SNAPSHOT, but to support 
these cases we're transforming version ranges in a useless function IMHO.

Resolving a snapshot without any snapshot boundary makes no sense to me. It's 
against the own concept of ranges. If you declare a range, you are saying that 
you project WILL work with any version that matches this range, so why people 
say that the snapshot should be resolved? why would you choose a snapshot if 
you can choose a release as both match? If you need something that is only on 
the latest snapshot, you should go to you pom and change the range boundary to 
say that.

Have such a bug open for this long time, without a workaround, is a shame! If 
the community don't agree about a solution, so let's use the most voted, the 
one the project leader decides, or whatever. Do NOTHING just to be backward 
compatible is the WORST option.

> Version ranges with non-snapshot bounds can contain snapshot versions
> ---------------------------------------------------------------------
>
>                 Key: MNG-3092
>                 URL: https://jira.codehaus.org/browse/MNG-3092
>             Project: Maven 2 & 3
>          Issue Type: Bug
>          Components: Dependencies
>            Reporter: Mark Hobson
>         Attachments: 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 is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to