Details
-
Type:
Bug
-
Status:
Reopened
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: None
-
Fix Version/s: 3.1.1
-
Component/s: Dependencies
-
Labels:None
-
Patch Submitted:Yes
-
Number of attachments :
Description
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.
Issue Links
- is depended upon by
-
MRELEASE-318
Release plugin throws NullPointerException when using version range for dependency
-
-
MNG-2994
Snapshot repositories are not checked when using ranges
-
- is duplicated by
-
MNG-3001
Maven2 does not resolve version ranges correctly [PATCH INCLUDED]
-
-
MNG-3109
version ranges can include snapshots
-
-
MNG-4089
Allow LATEST and RELEASE to peg major version similar to SNAPSHOT
-
- is related to
-
MIDEA-90
IDEA Plugin does not resolve version ranges correctly
-
- relates to
-
MRELEASE-216
Release plugin should ignore SNAPSHOTS that are not specified in the POM
-
-
MNG-4751
Snapshot version not resolved for version range
-
-
MNG-4295
version ranges are not resolved from snapshot only repositories
-
-
MNG-5353
Ignore pre-releases in exclusive upper bound [lw,up)
-
-
MENFORCER-94
Review evaluation of version ranges with regard to inclusion of snapshots
-