Releases
Changelog.
Public release notes for ngcompass. Use this page to track new rules, behavior changes, migrations, and beta milestones without needing access to the private source repository.
01
v0.2.6-beta
Current betaAugust 2026- Added baselines — record the violations a project already has so CI fails only on newly introduced ones. Makes it possible to adopt ngcompass on an existing codebase without switching rules off or fixing the backlog first.
- Added the ngcompass baseline command with four subcommands: create records the current state, update re-counts what this run scanned, prune follows renames and drops entries for deleted files, and show prints what is currently hidden, ranked by rule.
- Added analyze --baseline [path] and --no-baseline, plus a baseline block in config accepting enabled, path, and onStale.
- The baseline file stores a violation count per file and rule — no line numbers, no message hashes — so reformatting or moving code within a file does not invalidate it. Entries are sorted for reviewable diffs.
- Renamed files are carried over when exactly one baselined path and one new path share a base name; anything ambiguous is reported as new rather than guessed at.
- onStale controls what happens once baselined violations get fixed — warn by default, or error to make the baseline a ratchet that can only shrink. Console and HTML reports both show how many violations the baseline hid.
- Baselines are applied after analysis as a filter on results, so they never enter a cache key and filtered results are never written back to the cache.
- Reorganized every package by capability with shared domain types under src/models. Public type surfaces were verified unchanged — this is an internal change with no migration required.
02
v0.2.4-beta
Previous betaAugust 2026- Added Angular version awareness — rules now declare the Angular version they apply from, and ngcompass skips the ones your project is too old for instead of reporting fixes you cannot apply.
- The Angular version is detected automatically: installed @angular/core first, then the @angular/core range declared in package.json. When it cannot be resolved, every rule runs and the CLI says so.
- Added the angularVersion config option to pin the version explicitly — useful in monorepos where the config sits outside the Angular workspace. Accepts "17" or "17.2"; range prefixes are rejected by config health with invalid-angular-version.
- A rule you name explicitly in the rules block always runs, even below its version floor — your config still wins over the version gate.
- 14 of the published rules are version-gated, from prefer-inject-over-constructor-di (Angular 14) up to signal-prefer-output-function (Angular 17.3). Every floor is listed on the Rules page.
- Relicensed ngcompass under the MIT License — free to use, modify, redistribute, and sublicense in personal and commercial projects.
03
v0.2.3-beta
Previous betaAugust 2026- Added ngcompass complexity command — cyclomatic and cognitive complexity per function, exported as JSON for the Complexity heatmap viewer at ngcompass.dev/complexity.
- Added ngcompass callgraph <file> command — a per-file intra-file call graph showing which functions call which, including module-level calls and external calls.
- Added ngcompass visualize command — unit-level structure for a file, exported for the viewer at ngcompass.dev/visualize.
- Tightened CLI command validation so unknown commands and malformed flags fail with a clear message instead of a stack trace.
04
v0.2.2-beta
Previous betaJune 2026- Added ngcompass graph command — generates a full JSON import dependency graph that can be loaded into the interactive Dependency graph viewer at ngcompass.dev/graph.
- Added ngcompass circular command — scans for circular import chains and outputs JSON that can be loaded into the Circular dependencies viewer at ngcompass.dev/cycles.
- Both commands accept --output <path> to control the output file and --tsconfig <path> for non-default TypeScript project configs.
05
v0.2.1-beta
Previous betaJune 2026- Added the new zoneless preset covering 22 checks for zone.js-free Angular apps, including legacy lifecycle hooks (ngOnInit, ngOnChanges, ngDoCheck, ngAfter*), NgZone usage, provideZoneChangeDetection, raw zone.js imports, and reactive forms.
- Added zoneless-aware testing rules: no-detectchanges-testing, no-ngzone-testing, and no-zonejs-testing-functions (fakeAsync, tick, flush, waitForAsync).
- Added no-directive-accessor and no-view-decorator to nudge signal-based view queries and computed-derived template state.
06
v0.2.0-beta
Previous betaMay 2026- Added ng add setup guidance so Angular projects can install ngcompass locally and generate config in one step.
- Updated public beta metadata and website references for v0.2.0-beta.
- Documented the PolyForm Shield 1.0.0 license across the public site.
07
v0.1.4-beta
Previous betaMay 2026- Replaced --type-aware-chunk-size flag with the new --mode preset flag (balanced | turbo).
- balanced is the default, turbo maximises throughput on capable machines.
- Performance mode selection now covers chunk size, concurrency, isolation, and chunk strategy in a single flag.
08
v0.1.2-beta
Previous betaMay 2026- Initial beta release of the ngcompass CLI.
- Angular architecture, reactivity, SSR, performance, security, and template rule categories.
- Console, JSON, SARIF, and self-contained HTML report outputs.
- Incremental cache for faster repeated analysis.
- Presets and CI profile support for local and pipeline workflows.