You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by "Xavier Hanin (JIRA)" <ji...@apache.org> on 2008/04/04 17:43:25 UTC

[jira] Resolved: (IVY-465) conflict manager scoping does not work as expected

     [ https://issues.apache.org/jira/browse/IVY-465?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Xavier Hanin resolved IVY-465.
------------------------------

       Resolution: Fixed
    Fix Version/s:     (was: 2.0)
                   2.0-RC1

I've added a unit test and fixed the issue. Note that however if a new conflict for the same module is encountered at a higher level, then full conflict resolution will be performed at the level of the higher module, in which case you'll still have to add the conflict management directives to the higher module too.

> conflict manager scoping does not work as expected
> --------------------------------------------------
>
>                 Key: IVY-465
>                 URL: https://issues.apache.org/jira/browse/IVY-465
>             Project: Ivy
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.4.1
>            Reporter: Eric Friedman
>            Assignee: Xavier Hanin
>             Fix For: 2.0-RC1
>
>
> Suppose there are a set of dependencies like this:
> a -> b -> c -> d,e
> d and e are the same module/organisation, but with different revisions.  c requires both revisions and they can coexist because they are in different packages (d is antlr-2.7.6; e is antlr-3.0ea8; both are needed by jbossrules, which is "c" in this example).
> In the ivy file for c, I include the following:
>   <!-- this library needs both versions of antlr, which are in separate java packages
>        and so can coexist peacefully, like man and fish. -->
>   <conflicts>
>     <manager org="antlr" module="antlr" rev="2.7.6,3.0ea8"/>
>   </conflicts>
> The problem:  this manager only works if I include it in the ivies for A and B as well.  I would have expected it to be possible to encapsulate the conflict manager in the module that knows about the conflict and how to resolve it.  Instead I have to repeat the conflict resolution strategy everywhere.  I could understand that you'd want to be able to override a conflict resolution strategy in a "higher level" module, but I am surprised that I have to copy/paste it everywhere.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.