ArchitectureDiff
data class ArchitectureDiff(val addedModules: List<String> = emptyList(), val removedModules: List<String> = emptyList(), val addedEdges: List<String> = emptyList(), val removedEdges: List<String> = emptyList(), val newCycles: List<String> = emptyList(), val resolvedCycles: List<String> = emptyList(), val layerChanges: Map<String, LayerChange> = emptyMap(), val metricDeltas: Map<String, MetricDelta> = emptyMap())(source)
What changed between two snapshots of an architecture.
Ordered so the most consequential change is read first: a new cycle matters more than a new module, and a removed dependency matters more than a renamed one. Every list is sorted, so the same pair of snapshots always produces the same report.
Parameters
addedModules
Modules present now and not before.
removedModules
Modules present before and not now.
addedEdges
Dependencies added, as "from>to".
removedEdges
Dependencies removed, as "from>to".
newCycles
Modules newly caught in a cycle.
resolvedCycles
Modules no longer in a cycle.
layerChanges
Modules that moved from one declared layer to another, as module to (before, after). A module entering or leaving layer coverage counts too.
metricDeltas
Structural metrics that moved, keyed by metric name, as before to after.
Constructors
Link copied to clipboard
constructor(addedModules: List<String> = emptyList(), removedModules: List<String> = emptyList(), addedEdges: List<String> = emptyList(), removedEdges: List<String> = emptyList(), newCycles: List<String> = emptyList(), resolvedCycles: List<String> = emptyList(), layerChanges: Map<String, LayerChange> = emptyMap(), metricDeltas: Map<String, MetricDelta> = emptyMap())