When using soft-excludes, ignore all target defined excludes

Review Request #2340 - Created June 10, 2015 and submitted

Information
Nick Howard (Twitter)
pants
1663
26750de...
Reviewers
pants-reviews
fkorotkov, ity, jsirois, patricklaw, stuhood, tejal, zundel

Currently, soft-excludes only removes excludes from the ivy resolve arguments when some other target has explicitly included that jar. This means that excludes for transitive dependencies of artifacts remain even with soft-excludes enabled. If a target depends on a transitive dependency of an artifact directly, and some other target excludes it, when both are compiled together, the one with the transitive dependency will fail to compile.

This change causes soft-excludes to just skip all target defined excludes, which makes its behavior easier to reason about.

Excludes are now applied separately, so this shouldn't affect how libraries are excluded from classpaths, only how they are communicated to ivy.

Added unit tests for the new flag on calculate_classpath, CI running off of PR

Issues

  • 0
  • 2
  • 0
  • 2
Description From Last Updated
Tejal Desai
Stu Hood
Nick Howard (Twitter)
Stu Hood
Nick Howard (Twitter)
Nick Howard (Twitter)
Eric Ayers
Benjy Weinberger
Nick Howard (Twitter)
Patrick Lawson
Ity Kaul
Nick Howard (Twitter)
Nick Howard (Twitter)
Nick Howard (Twitter)
Review request changed

Status: Closed (submitted)

Loading...