You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by "John Gibson (JIRA)" <ji...@apache.org> on 2009/04/16 23:12:14 UTC
[jira] Created: (IVY-1067) Exclusions not properly applied to
circular dependencies
Exclusions not properly applied to circular dependencies
--------------------------------------------------------
Key: IVY-1067
URL: https://issues.apache.org/jira/browse/IVY-1067
Project: Ivy
Issue Type: Bug
Affects Versions: 2.0, 2.1.0-RC1
Environment: % java -version
java version "1.5.0_16"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_16-b06-284)
Java HotSpot(TM) Client VM (build 1.5.0_16-133, mixed mode, sharing)
% ant -version
Apache Ant version 1.7.0 compiled on August 25 2008
Reporter: John Gibson
Exclusion rules are not applied properly to circular dependencies.
Specifically, in doesCallersExclude() in org.apache.ivy.core.resolve.IvyNodeCallers this return condition:
if (callersStack.contains(node.getId())) {
return false;
}
causes the process to abort before reaching the exclusion rules at the top-level module.
I examined the source for 2.1.0 RC1, but I've experienced the same behavior under 2.0.0.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (IVY-1067) Exclusions not properly applied to
circular dependencies
Posted by "John Gibson (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/IVY-1067?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
John Gibson updated IVY-1067:
-----------------------------
Attachment: circular_dependency_bug.tgz
Here is a test case illustrating the issue.
There is a single dependency, dom4j#dom4j 1.5.2 and several exclusion requests in the ivy file.
A single dependency exclude of icu4j, a global exclusion of tagsoup, and a global exclusion of the StAX API.
The first two are transitive dependencies of dom4j by way of jaxen. The last is a direct dependency of dom4j. Jaxen has a circular dependency on dom4j and the exclusion calculations for all of its dependencies is not reliable.
If you run 'ant test' you should see that the lib directory contains icu4j and tagsoup despite their explicit exclusion. However, you'll also notice that the exclusion of the StAX API was successful.
Note that there is also an override to force jdom to 1.0 because the jdom b10 release on repo1.maven.org has a bad version in the POM file. It shouldn't affect the outcome of the test.
> Exclusions not properly applied to circular dependencies
> --------------------------------------------------------
>
> Key: IVY-1067
> URL: https://issues.apache.org/jira/browse/IVY-1067
> Project: Ivy
> Issue Type: Bug
> Affects Versions: 2.0, 2.1.0-RC1
> Environment: % java -version
> java version "1.5.0_16"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_16-b06-284)
> Java HotSpot(TM) Client VM (build 1.5.0_16-133, mixed mode, sharing)
> % ant -version
> Apache Ant version 1.7.0 compiled on August 25 2008
> Reporter: John Gibson
> Attachments: circular_dependency_bug.tgz
>
>
> Exclusion rules are not applied properly to circular dependencies.
> Specifically, in doesCallersExclude() in org.apache.ivy.core.resolve.IvyNodeCallers this return condition:
> if (callersStack.contains(node.getId())) {
> return false;
> }
> causes the process to abort before reaching the exclusion rules at the top-level module.
> I examined the source for 2.1.0 RC1, but I've experienced the same behavior under 2.0.0.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.