maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Hoffer (JIRA)" <j...@codehaus.org>
Subject [jira] Commented: (MNG-3001) Maven2 does not resolve version ranges correctly [PATCH INCLUDED]
Date Thu, 16 Aug 2007 16:50:48 GMT

    [ http://jira.codehaus.org/browse/MNG-3001?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_105041
] 

David Hoffer commented on MNG-3001:
-----------------------------------

Since this issue has been closed you might want to watch/vote for MNG-3092 which replaces
it.

> Maven2 does not resolve version ranges correctly [PATCH INCLUDED]
> -----------------------------------------------------------------
>
>                 Key: MNG-3001
>                 URL: http://jira.codehaus.org/browse/MNG-3001
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories
>    Affects Versions: 2.0.4, 2.0.6
>         Environment: Windows.  Affects versions 2.04 & 2.06 minimum.
>            Reporter: David Hoffer
>            Assignee: Mark Hobson
>            Priority: Blocker
>             Fix For: Reviewed Pending Version Assignment
>
>         Attachments: VersionRangeSnapshotFix.patch
>
>
> Maven does not properly handle version ranges when the high end is unbounded.  The spec
clearly states that it should not resolve to a SNAPSHOT unless included as an explicit boundary.
 Currently maven2 does resolve to a SNAPSHOT which makes usage of version ranges to control
versions of dependencies unworkable.  (We currently use a local build of maven with this fix
else we could not use version ranges.  This is a major issue can you please include in the
next release?)
> Code fix and unit tests are included.
> Example:
> <dependency>
> <groupId>myGroup</groupId>
> <artifactId>myArtifact</artifactId>
> <version>[1.0,)</version>
> </dependency>
> This version range can resolve to the latest development 1.0-SNAPSHOT. All artifact dependencies
should ignore SNAPSHOTS as that is not intended by the unbounded high end of the version range.
This should resolve to any released version of 1.1 or higher.
> This document:
> http://docs.codehaus.org/display/MAVEN/Dependency+Mediation+and+Conflict+Resolution#DependencyMediationandConflictResolution-DependencyVersionRanges
> addressed the requirements for version ranges and stated that "Resolution of dependency
ranges should not resolve to a snapshot (development version) unless it is included as an
explicit boundary". I think this requirement was forgotten when version ranges were implemented.
> I have included a patch for this bug. The fix is in the containsVersion method of VersionRange.
I have added tests in VersionRangeTest and DefaultArtifactCollectorTest. All tests in maven
pass with this fix.

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

        

Mime
View raw message