ProjectGraphMetrics

constructor(moduleCount: Int, fanInGini: Double, maxDepth: Int, entryPoints: List<String>, foundation: List<String>, articulationPoints: List<String>, stabilityViolations: List<StabilityViolation>)(source)

Parameters

moduleCount

Modules in the graph.

fanInGini

Concentration of fan-in across modules, in [0, 1]. 0 means every module is depended on equally; approaching 1 means a handful of modules absorb nearly all dependencies.

maxDepth

Longest shortest-path from an entry point - how many layers deep the project goes.

entryPoints

Modules nothing depends on, the ones reaching furthest into the project first. A build has several - an app shell, a benchmark, a test-support module - and only the ones with real reach are worth naming.

foundation

Modules that depend on nothing, sorted.

articulationPoints

Modules whose removal disconnects the graph, sorted.

stabilityViolations

Edges pointing against the stability gradient, worst gap first.