Skip to content

5.3.0

Choose a tag to compare

@rohaquinlop rohaquinlop released this 16 Apr 14:35
· 226 commits to main since this release

What's Changed

Added

  • --ratchet flag — CI fails only when complexity increases past the threshold; regressions blocked, improvements always pass (#159)
  • --plain flag — machine-readable plain-text output for scripting/piping (#158, closes #121)
  • --top N flag — display the N most complex functions, globally sorted across all files (#157)
  • --check-script / --script-strict flags — analyse module-level (script) complexity in addition to functions (#156)
  • Unified output destinations — consistent --output-* routing across all report formats (#155)
  • GitLab Code Quality report--output-gitlab generates a GitLab-compatible JSON report (#153)
  • SARIF 2.1.0 output--output-sarif for IDE and GitHub Advanced Security integration (#141)
  • Git diff analysis--diff <ref> reports complexity changes relative to any git reference (#140)
  • Comprehension complexity — list/dict/set comprehensions and generator expressions now contribute to cognitive complexity scores (#139)
  • # complexipy: ignore — new canonical inline suppression comment; # noqa: complexipy deprecated (#146)
  • Glob patterns in exclude — config exclude field now accepts glob patterns (#142)
  • Spanish documentation (#147)

Fixed

  • --top results now preserve global descending order across multi-file runs
  • --top N rejects N ≤ 0 with a clear error
  • --script-strict now correctly requires --check-script
  • Ignore markers (# complexipy: ignore) now work on multiline function definitions
  • JSON output includes a final newline (POSIX compliance) (#148)
  • Snapshot-allowed functions now shown as PASSED in output
  • Snapshot watermark correctly drives exit code when active

New Contributors

Full Changelog: 5.2.0...5.3.0