A uniform way of expressing Task and Subsystem dependencies.

Review Request #2653 - Created Aug. 18, 2015 and submitted

Information
Benjy Weinberger
pants
1957
aad3d8d...
Reviewers
pants-reviews
gmalmquist, jsirois
Introduces the concept of a subsystem client, which Task
and Subsystem mix in (this is not in Optionable because
the GlobalOptionsRegistrar must not depend on any subsystems).

All subsystem dependencies are expressed by the client by
implementing subsystem_dependencies(). That dependency
consists of a subsystem type and a scope. This generalizes
the previous concept of global and task-specific subsystem
dependencies.

Contains a temporary hack so that the old declarations still
work.  Those will be mopped up in a followup change, just
to keep this one from spiraling out too much.

Issue: https://github.com/pantsbuild/pants/issues/1957

CI passes: https://travis-ci.org/pantsbuild/pants/builds/76136929.

Garrett Malmquist
John Sirois
Benjy Weinberger
Benjy Weinberger
Review request changed

Status: Closed (submitted)

Change Summary:

Submitted as c1a966a623f33d838d41351c0163d9ac09ad5b89.

Loading...