A minor release introducing privacy-preserving graph export, dead-code redundant public reporting, architectural zone classifications in metrics, and cycle node highlighting in DOT output.
New Features & CLI surfaces
graph --format anon(dependency-cruiser parity): exports privacy-preserving anonymized dependency graphs. File paths and identifiers are replaced with deterministic injective tokens (s0,s1, ...) while preserving graph topology, file extensions, and idiomatic Dart vocabulary. Limitation strings are sanitized in a single alternation pass.dead --report-redundant-public(Periphery parity): reports live public declarations that are never referenced outside their defining library as informational (info) diagnostics (exit code 0). Compatible with--sinceand machine-readable output formats (usage 64 when combined with--explain,--baseline, or--report-test-only).metricsarchitectural zones (cartograph parity): JSON output now includes azonefield (main-sequence,zone-of-pain,zone-of-uselessness, orisolated) for each metric item, aligned with--strictthreshold calculations.graph --format dotcircular dependency highlighting (madge parity): vertices participating in dependency cycles (detected via Tarjan's SCC) are rendered in red (#d9383a). Acyclic graph outputs remain byte-identical.
Analysis & Diagnostics
GraphNodeexplicitisLibrary: HTML export and graph projections now use an explicit flag rather than.dart::string heuristics, properly classifying libraries with::in their filenames. Analysis cache serialization schema version bumped tov3(automatic re-analysis of prior caches; cache identity unchanged).bridgeslimitations grammar: fixed plural noun formatting forunscanned-*limitations (N ≥ 2) and singular verb agreement for dynamic channel/method names (N = 1).
Full details: CHANGELOG.md (English) / CHANGELOG.ko.md (Korean).
Install: dart pub global activate dartograph — pure Dart CLI, Dart SDK 3.11+, no Flutter SDK required. MIT licensed, permanently free (commercial use included).