You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by mb...@apache.org on 2012/10/16 21:34:19 UTC
svn commit: r1398943 - in /ant/ivy/core/trunk:
src/java/org/apache/ivy/plugins/resolver/IBiblioResolver.java
test/java/org/apache/ivy/core/resolve/ResolveTest.java
Author: mbenson
Date: Tue Oct 16 19:34:19 2012
New Revision: 1398943
URL: http://svn.apache.org/viewvc?rev=1398943&view=rev
Log:
[IVY-1036] latest.integration isn't resolved against a Maven snapshot repository (when uniqueVersion = true)
Modified:
ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/IBiblioResolver.java
ant/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java
Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/IBiblioResolver.java
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/IBiblioResolver.java?rev=1398943&r1=1398942&r2=1398943&view=diff
==============================================================================
--- ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/IBiblioResolver.java (original)
+++ ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/IBiblioResolver.java Tue Oct 16 19:34:19 2012
@@ -396,8 +396,13 @@ public class IBiblioResolver extends URL
List rres = new ArrayList();
for (Iterator iter = revs.iterator(); iter.hasNext();) {
String rev = (String) iter.next();
+ ModuleRevisionId historicalMrid = ModuleRevisionId.newInstance(mrid, rev);
+ String snapshotVersion = findSnapshotVersion(historicalMrid);
+ if (snapshotVersion != null) {
+ pattern = pattern.replaceFirst("\\-\\[revision\\]", "-" + snapshotVersion);
+ }
String resolvedPattern = IvyPatternHelper.substitute(
- pattern, ModuleRevisionId.newInstance(mrid, rev), artifact);
+ pattern, historicalMrid, artifact);
try {
Resource res = repository.getResource(resolvedPattern);
if ((res != null) && res.exists()) {
Modified: ant/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java?rev=1398943&r1=1398942&r2=1398943&view=diff
==============================================================================
--- ant/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java (original)
+++ ant/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java Tue Oct 16 19:34:19 2012
@@ -4602,6 +4602,26 @@ public class ResolveTest extends TestCas
"test-SNAPSHOT1", "jar", "jar").exists());
}
+ public void testResolveMaven2Snapshot1AsLatestIntegration() throws Exception {
+ // test case for IVY-1036
+ // here we test maven SNAPSHOT versions handling,
+ // with m2 snapshotRepository/uniqueVersion set to true
+ // but retrieving by latest.integration
+ Ivy ivy = new Ivy();
+ ivy.configure(new File("test/repositories/m2/ivysettings.xml"));
+ ResolveReport report = ivy.resolve(
+ ModuleRevisionId.newInstance("org.apache", "test-SNAPSHOT1", "latest.integration"),
+ getResolveOptions(new String[] {"*(public)"}), true);
+ assertNotNull(report);
+ assertFalse(report.hasError());
+
+ // dependencies
+ assertTrue(getIvyFileInCache(
+ ModuleRevisionId.newInstance("org.apache", "test-SNAPSHOT1", "2.0.2-SNAPSHOT")).exists());
+ assertTrue(getArchiveFileInCache(ivy, "org.apache", "test-SNAPSHOT1", "2.0.2-SNAPSHOT",
+ "test-SNAPSHOT1", "jar", "jar").exists());
+ }
+
public void testResolveMaven2Snapshot2() throws Exception {
// test case for IVY-501
// here we test maven SNAPSHOT versions handling,