6.2.0
Minor release introducing comma-separated CLI flags, a major main.py decomposition for readability and testability, and a path display fix for accurate relative paths in output.
Features
--excludeand--output-formatnow accept comma-separated values (--exclude tests/**,src/**), making multi-value flags easier to use without shell expansion issues. (#199)
Fixed
- Output now shows the correct relative path from the current working directory when analyzing a single file or a directory, instead of inconsistently stripping or including parent directory names. (#198)
- Added a deprecation notice to the
--output-sarifhelp text, clarifying that SARIF output is moving to a different mechanism. (#199)
Changed
- Decomposed the monolithic 316-line
main()function into a clean orchestrator (~80 lines) with extracted business logic in domain-specificutils/modules (config.py,paths.py,ignored.py). (#199) - Introduced
RunConfig,ExitReport, andSnapshotEvaluationdataclasses, replacing mutable accumulators and positional tuple unpacking with declarative, testable structures. (#199) - Eliminated all
global consoledeclarations — theconsoleinstance is now constructed once and passed explicitly, removing hidden state. (#199) - Refactored
get_arguments_valuefrom a 20-parameter function returning a 15-element tuple to a dict-based approach with aBOOLEAN_FIELDSloop. (#199) - Added 30 new tests covering config resolution and snapshot evaluation logic. (#199)
PRs
- fix(runner): show relative path from invocation directory in output by @rohaquinlop in #198
- refactor: improve main.py readability and code quality by @rohaquinlop in #199
Full Changelog: 6.1.0...6.2.0