Ivy
  1. Ivy
  2. IVY-1083

transitive dependencies and conflict management

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0, 2.1.0-RC1
    • Fix Version/s: 2.1.0-RC2
    • Component/s: Core
    • Labels:
      None

      Description

      let's say we have the following modules:

      mod20.4 ->  mod20.3;1.0 mod20.2;1.0
      mod20.3;1.0 -> mod20.1;1.0
      mod20.2;1.0 -> mod20.1;1.1 (transitive false)
      mod20.1;1.0 -> mod1.2;1.0
      mod20.1;1.1 -> mod1.2;1.0
      

      when the conflict manager evicts mod20.1;1.0 in favor of mod20.1;1.1, it loses the information that the dependency was transitive from mod20.3, and as such transitively exclude mod1.2.

      Note that if the dependencies in mod20.4 are expressed the other way (mod20.2;1.0 mod20.3;1.0) then transitivity is handled correctly.

        Activity

        Hide
        Xavier Hanin added a comment -

        I've added a unit test and fixed the problem.

        Show
        Xavier Hanin added a comment - I've added a unit test and fixed the problem.

          People

          • Assignee:
            Xavier Hanin
            Reporter:
            Xavier Hanin
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development