GroupIterator must not reorder past a transitive dependency

Review Request #706 - Created July 21, 2014 and submitted

Information
Stu Hood
pants
Reviewers
pants-reviews
areitz, benjyw, jsirois, patricklaw
A Java target A has a transitive dep on a Scala target C via an intermediate JarLibrary/Dependencies target B (ie, "un-flavored" from GroupTask's perspective.) GroupIterator's call to sort_targets correctly includes target B, which results in a topsort of 'C <- B <- A'. But coalesce_targets drops target B, because it doesn't match the discriminator ("is unflavored".) Because target B is ignored and coalesce only looks at direct deps, C is allowed to be reordered before A.

- Must not reorder past an intermediate (dropped) target in GroupIterator
- Allow for more subclasses of GroupTaskTest
- Add reproduction unit test
- fails/passes new unit test before/after fix
- fixes described situation (transitive unflavored target dep) in internal repos

Issues

  • 1
  • 0
  • 0
  • 1
Description From Last Updated
Separate lines, please Patrick Lawson Patrick Lawson
John Sirois
John Sirois
Stu Hood
John Sirois
Stu Hood
John Sirois
Stu Hood
Review request changed

Status: Closed (submitted)

Patrick Lawson
lgtm other than the tiny import nit
Separate lines, please
Loading...