Cha

1.0.4 - 2026-04-17

v1.0.4 Apr 17 2026 at 13:15 UTC

Added

  • cha:set inline directive: override thresholds per-function/class via comments (// cha:set rule_name=value)
  • Finding.actual_value and Finding.threshold fields for post-filter re-evaluation
  • cha lsp subcommand: start LSP server from unified binary (+3MB)
  • deps --direction in|out|both: filter edges by direction (who depends on target vs target depends on)
  • deps --format plantuml: PlantUML output for component and class diagrams
  • C OOP false positive filter: removes lazy_class/data_class for structs with cross-file methods
  • .pre-commit-hooks.yaml: pre-commit framework integration
  • action.yml: GitHub Action for CI analysis with SARIF upload
  • VS Code extension (vscode-cha/): cha LSP integration, auto-download binary, esbuild bundle

Fixed

  • .h files with C++ constructs now parsed as C++ (content sniffing)
  • class MACRO Name {} no longer misidentified as function definition
  • WIT Finding record now includes actual_value/threshold fields
  • build.rs auto-copies wit/plugin.wit for crates.io packaging
  • VS Code extension: esbuild bundle, LICENSE, .vscodeignore, publisher ID, homepage