JVM dependency usage task

Review Request #2757 - Created Sept. 3, 2015 and submitted

Cody Gibb
benjyw, jsirois, patricklaw, stuhood, zundel

New goal, jvm-dep-usage, analyzes the relationship between the products target T produces vs. the products which T's dependents actually require (this is done by observing analysis files). If the ratio of required products to available products is low, then this is a sign that target T isn't factored well.

A graph is formed from these results, where each node of the graph is a target, and each edge is a product usage ratio between a target and its dependency. The nodes also contain additional information to guide refactoring -- for example, the estimated job size of each target, which indicates the impact a poorly factored target has on the build times.

The graph is outputted into a JSON file, with the intent of consuming and analyzing the graph via some external tool.

Manual testing on Twitter source

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



  • 1
  • 4
  • 0
  • 5
Description From Last Updated
This should be computed precisely once per target, no? Stu Hood Stu Hood
Cody Gibb
Cody Gibb
Stu Hood
Eric Ayers
Cody Gibb
John Sirois
Cody Gibb
Stu Hood
Cody Gibb
Stu Hood
Stu Hood
Cody Gibb
Cody Gibb
Review request changed

Status: Closed (submitted)

Change Summary:

Merged as 8c82cf54da2a78d005dd0b4a5067e520aceb9af3