Uploaded image for project: 'ZooKeeper'
  1. ZooKeeper
  2. ZOOKEEPER-2915

Use "strict" conflict management in ivy

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 3.4.11, 3.5.4, 3.6.0
    • 3.4.11, 3.5.4, 3.6.0
    • None
    • None
    • Reviewed

    Description

      Currently it is very difficult to tell exactly which dependencies make it into the final classpath of zookeeper. We do not perform any conflict resolution between the test and default classpaths (this has resulted in strange behavior with the slf4j-log4j12 binding) and have no way of telling if a change to the dependencies has altered the transitive dependencies pulled down by the project.

      Our dependency list is relatively small so we should use "strict" conflict management (break the build when we try to pull two versions of the same dependency) so we can exercise maximum control over the classpath.

      Note: I also attempted to find a way to see if I could always prefer transitive dependencies from the default configuration over those pulled by the test configuration (to make sure that the zookeeper we test against has the same dependencies as the one we ship) but this appears to be impossible (or at least incredibly difficult) with ivy. Any opinions here would be greatly appreciated.

      Attachments

        Activity

          People

            abrahamfine Abraham Fine
            abrahamfine Abraham Fine
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: