Skip to content

Commit 4d71a2b

Browse files
committed
chore: release v0.16.0
## Enhanced Interactive TUI (`rma scan --interactive`) - Call Graph Statistics Panel with real-time overview - Security Classification Badges for sources, sinks, sanitizers - Source→Sink Flow Highlighting with ⚠ icon - Source→Sink Filter (press x) to show dangerous edges only - Edge Detail Panel (Enter) with security warnings and remediation - Enhanced Finding Detail View with full metadata ## Analysis Caching - Incremental scan cache with content-hash based caching - --no-cache flag to force fresh analysis - Cache stored in .rma/cache/analysis/ ## Test Exclusion - Tests excluded by default across all languages - --include-tests to opt-in to scanning test files - 70+ test patterns for JS/TS, Python, Go, Rust, Java, Kotlin - Call graph edges now exclude test files by default ## Flows Command - rma flows --interactive for TUI data flow browsing - Test file filtering in cross-file flows ## Fixes - Updated yanked zip crate dependency (2.6 → 2.4) - Fixed Clippy warnings for trait object syntax - Fixed missing SystemTime import in OSV provider
1 parent b0dd927 commit 4d71a2b

File tree

2,219 files changed

+136155
-24156
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,219 files changed

+136155
-24156
lines changed

.gitignore

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,16 @@ coverage/
2828

2929
# Logs
3030
*.log
31+
32+
# Secret detection test fixtures (contain sample secrets for testing)
33+
# Keep only .yaml rule files, exclude all test case files
34+
crates/rules/rules/generic/secrets/**/*.txt
35+
crates/rules/rules/generic/secrets/**/*.go
36+
crates/rules/rules/generic/secrets/**/*.js
37+
crates/rules/rules/generic/secrets/**/*.jsx
38+
crates/rules/rules/generic/secrets/**/*.php
39+
crates/rules/rules/generic/secrets/**/*.npmrc
40+
crates/rules/rules/generic/secrets/**/*.generic
41+
42+
# External repos
43+
external/

CHANGELOG.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,46 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [0.16.0] - 2026-02-03
11+
12+
### Added
13+
14+
#### Enhanced Interactive TUI (`rma scan --interactive`)
15+
- **Call Graph Statistics Panel**: Real-time overview showing total functions, edges, sources, sinks, sanitizers, and unresolved calls
16+
- **Security Classification Badges**: Visual indicators for taint sources `[HTTP Handler]`, sinks `[SQL Injection]`, sanitizers `[SAN]`, and exported functions ``
17+
- **Source→Sink Flow Highlighting**: Dangerous flows marked with `` icon and red highlighting
18+
- **Source→Sink Filter** (press `x`): Toggle to show only potentially dangerous source-to-sink edges
19+
- **Edge Detail Panel** (press `Enter`): Comprehensive view with:
20+
- Caller/callee function info with file paths and line numbers
21+
- Source classification type (HTTP Handler, File Input, etc.)
22+
- Sink vulnerability types (SQL Injection, XSS, Command Injection, etc.)
23+
- Sanitizer information if present
24+
- Classification confidence percentage
25+
- Security warning box for source→sink flows with remediation guidance
26+
- **Enhanced Finding Detail View**: Full metadata display including rule ID, language, severity (color-coded), confidence, category, fingerprint, fix suggestions, and complete code snippets
27+
28+
#### Analysis Caching
29+
- **Incremental Scan Cache**: Content-hash based caching for faster re-scans
30+
- **`--no-cache` flag**: Force fresh analysis bypassing cache
31+
- **Cache stored in `.rma/cache/analysis/`**: Per-file analysis results
32+
33+
#### Flows Command Enhancements
34+
- **`rma flows --interactive`**: Launch TUI for browsing cross-file data flows
35+
- **Test file filtering**: Flows from/to test files excluded by default
36+
1037
### Changed
1138
- **Test Files Excluded by Default**: Tests are now excluded from scans by default across all languages
1239
- Use `--include-tests` to opt-in to scanning test files
1340
- Unified test pattern detection: 70+ patterns for JS/TS, Python, Go, Rust, Java, Kotlin
1441
- `--skip-tests` flag deprecated (tests excluded by default)
1542
- `security` command now uses same comprehensive patterns as `scan` command
43+
- **Call Graph Test Filtering**: Call graph edges now exclude test files by default
44+
- **TUI Status Bar**: Updated help text with available keyboard shortcuts
45+
46+
### Fixed
47+
- **Zip crate dependency**: Updated from yanked 2.6 to stable 2.4
48+
- **Clippy warnings**: Fixed trait object syntax and unused imports
49+
- **Missing SystemTime import**: Fixed compilation error in OSV provider
1650

1751
## [0.15.1] - 2026-02-02
1852

0 commit comments

Comments
 (0)