Releases
v0.47.0
Compare
Sorry, something went wrong.
No results found
0.47.0 (2026-09-01)
Features
ctest: add compact output filter (c75522e )
ls: cap listing with tee tail hint and standard dotfile semantics (aa40853 )
mvn: add rtk mvnd support for Maven Daemon (774465e )
phpt: add PHP .phpt filter for php-src run-tests.php (-99%) (e8541d1 )
Bug Fixes
bom: degrade gracefully on unparseable Gemini settings, strip BOM on claude/gemini hook stdin and rtk json fallback (b6f354c )
diff: keep +/- markers at column 0 in condense_unified_diff (cf6d99d )
diff: measure savings against the classic diff, not a dump of both files (8495176 )
diff: remove misleading overflow indicator from condense_unified_diff (947467e )
emit classic hunk headers in the diff fallback (1246ce3 )
filters: tighten overly broad spring-boot/liquibase/ssh matching (0de9610 )
git-diff: count one truncated line as singular (75dda6c )
git-diff: decode quoted paths, and read the header kind before splitting (7409cb5 )
git-diff: emit hunk lines at column 0 so ^- anchors again (b166396 )
git-diff: end hunks at their declared length, keep context adjacent (844d6fa )
git-diff: pass word diffs through, and stop guessing at path pairs (e59276e )
git-diff: reset hunk state on combined diffs, exempt leading context (5d4b549 )
git-diff: slice markers as bytes, and bound a combined hunk by every parent (eac9b99 )
git-diff: stop dropping hunk content that starts with ++ or -- (60ec79f )
grep: free -m for GNU --max-count instead of rtk --max (d9a5893 )
grep: stop -l and -t shadowing native grep flags (16228b7 )
grep: stop -l/-t shadowing native grep flags (4ea0555 )
hooks,json: hermetic gemini BOM test, restore serde diagnostics, honest init summary, zero-copy fallback (ed8b0eb )
hooks: honor CLAUDE_CONFIG_DIR when loading permission rules (196780d )
hooks: honour exclude_commands for head and tail (7dc503d )
hooks: keep exclude_commands honoured under routable wrappers (2eed6de )
hooks: match exclude_commands against the peeled command form (e533c40 )
hooks: strip the BOM on Mistral Vibe hook stdin too (ac3389a )
init,utils: propagate Gemini settings parse errors, add from_json_str wrapper (dd867b2 )
json,deps: tolerate UTF-8 BOM at the remaining JSON parse sites (7e7be16 )
json,deps: tolerate UTF-8 BOM at the three remaining JSON parse sites (a39a872 )
ls: avoid underflow in verbose reduction stat (2f75c7a )
ls: record dot noise dirs under -A and track real args (a7e7329 )
render a real diff instead of dumping both files for modified lines (e4b9705 )
tsc: count global diagnostics and keep the failure head (6232c37 )
tsc: handle pretty diagnostics (a93d63b )
tsc: strip escapes before the blank filter and bound the failure dump (1906cb2 )
grep: rtk grep --file-type and its -t short are removed. The option never reached the engine, so it was a silent no-op; -t now flows through, which means rtk rg -t rust filters by type while rtk grep -t rust returns grep's own invalid option -- 't'. -l and -m under rtk grep are likewise the native grep flags now rather than rtk's --max-len and --max.
Performance Improvements
hook: avoid Pi package barrel import (322db4d )
Miscellaneous Chores
Code Refactoring
grep: trim comments and align the siblings of the flag change (eb3f814 )
You can’t perform that action at this time.