Return-Path: Delivered-To: apmail-ant-notifications-archive@locus.apache.org Received: (qmail 33595 invoked from network); 6 Dec 2007 23:17:30 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 6 Dec 2007 23:17:30 -0000 Received: (qmail 87696 invoked by uid 500); 6 Dec 2007 23:17:19 -0000 Delivered-To: apmail-ant-notifications-archive@ant.apache.org Received: (qmail 87668 invoked by uid 500); 6 Dec 2007 23:17:19 -0000 Mailing-List: contact notifications-help@ant.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ant.apache.org Delivered-To: mailing list notifications@ant.apache.org Received: (qmail 87659 invoked by uid 99); 6 Dec 2007 23:17:19 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 06 Dec 2007 15:17:19 -0800 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 06 Dec 2007 23:17:28 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id B0D7F1A983A; Thu, 6 Dec 2007 15:17:06 -0800 (PST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r601906 - in /ant/ivy/core/trunk: ./ src/java/org/apache/ivy/plugins/conflict/ test/java/org/apache/ivy/plugins/conflict/ Date: Thu, 06 Dec 2007 23:17:06 -0000 To: notifications@ant.apache.org From: maartenc@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20071206231706.B0D7F1A983A@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: maartenc Date: Thu Dec 6 15:17:05 2007 New Revision: 601906 URL: http://svn.apache.org/viewvc?rev=601906&view=rev Log: FIX: Strict conflictmanager seems to not support dynamic revisions (IVY-474) Added: ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/ivy-conflict-dynamic.xml ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/ivy-noconflict-dynamic.xml Modified: ant/ivy/core/trunk/CHANGES.txt ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/conflict/StrictConflictManager.java ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/StrictConflictManagerTest.java Modified: ant/ivy/core/trunk/CHANGES.txt URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/CHANGES.txt?rev=601906&r1=601905&r2=601906&view=diff ============================================================================== --- ant/ivy/core/trunk/CHANGES.txt (original) +++ ant/ivy/core/trunk/CHANGES.txt Thu Dec 6 15:17:05 2007 @@ -54,6 +54,11 @@ John Williams Jaroslaw Wypychowski + version in SVN +===================================== +- FIX: Strict conflictmanager seems to not support dynamic revisions (IVY-474) + + 2.0.0-beta1 ===================================== - NEW: Share cache with locking (IVY-654) Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/conflict/StrictConflictManager.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/conflict/StrictConflictManager.java?rev=601906&r1=601905&r2=601906&view=diff ============================================================================== --- ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/conflict/StrictConflictManager.java (original) +++ ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/conflict/StrictConflictManager.java Thu Dec 6 15:17:05 2007 @@ -22,6 +22,7 @@ import java.util.Iterator; import org.apache.ivy.core.resolve.IvyNode; +import org.apache.ivy.plugins.version.VersionMatcher; public class StrictConflictManager extends AbstractConflictManager { @@ -29,10 +30,17 @@ } public Collection resolveConflicts(IvyNode parent, Collection conflicts) { + VersionMatcher versionMatcher = getSettings().getVersionMatcher(); + IvyNode lastNode = null; for (Iterator iter = conflicts.iterator(); iter.hasNext();) { IvyNode node = (IvyNode) iter.next(); + if (versionMatcher.isDynamic(node.getResolvedId())) { + // dynamic revision, not enough information to resolve conflict + return null; + } + if (lastNode != null && !lastNode.equals(node)) { throw new StrictConflictException(lastNode, node); } Modified: ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/StrictConflictManagerTest.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/StrictConflictManagerTest.java?rev=601906&r1=601905&r2=601906&view=diff ============================================================================== --- ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/StrictConflictManagerTest.java (original) +++ ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/StrictConflictManagerTest.java Thu Dec 6 15:17:05 2007 @@ -52,9 +52,25 @@ getResolveOptions()); } + public void testNoConflictWithDynamicRevisionResolve() throws Exception { + ivy.resolve(StrictConflictManagerTest.class.getResource("ivy-noconflict-dynamic.xml"), + getResolveOptions()); + } + public void testConflictResolve() throws Exception { try { ivy.resolve(StrictConflictManagerTest.class.getResource("ivy-conflict.xml"), + getResolveOptions()); + + fail("Resolve should have failed with a conflict"); + } catch (StrictConflictException e) { + // this is expected + } + } + + public void testConflictWithDynamicRevisionResolve() throws Exception { + try { + ivy.resolve(StrictConflictManagerTest.class.getResource("ivy-conflict-dynamic.xml"), getResolveOptions()); fail("Resolve should have failed with a conflict"); Added: ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/ivy-conflict-dynamic.xml URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/ivy-conflict-dynamic.xml?rev=601906&view=auto ============================================================================== --- ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/ivy-conflict-dynamic.xml (added) +++ ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/ivy-conflict-dynamic.xml Thu Dec 6 15:17:05 2007 @@ -0,0 +1,25 @@ + + + + + + + + Added: ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/ivy-noconflict-dynamic.xml URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/ivy-noconflict-dynamic.xml?rev=601906&view=auto ============================================================================== --- ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/ivy-noconflict-dynamic.xml (added) +++ ant/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/ivy-noconflict-dynamic.xml Thu Dec 6 15:17:05 2007 @@ -0,0 +1,25 @@ + + + + + + + +