Hunk 0.21 beta
This beta makes reviews more expressive, session connections safer, and the extension platform substantially more capable. It also restores first-frame and scrolling responsiveness after the new review features landed.
Install the beta with:
npm install -g hunkdiff@betaCompare any two revisions
hunk diff <from> <to> now performs backend-native two-revision reviews across Git, Jujutsu, and Sapling. Source expansion stays pinned to the compared revisions, and hunk diff --files <left> <right> explicitly compares two files. #938
Threaded review conversations
Inline notes are now editable and support arbitrarily nested replies with keyboard and mouse actions. Reviewers can also dismiss reply-free live agent notes without leaving the review flow. #925
Safer live sessions
The local session broker now authenticates producers and CLI controls with owner-private credentials and signed responses. Hunk can safely replace an incompatible idle daemon and reconnect active terminal sessions without manual intervention. #932 #933
A more adaptable review UI
- The file sidebar adapts to terminal width and expands its tree at full width. #921
- Built-in and extension panes support responsive fractional sizing. #924
- File and hunk spacing are configurable. #865
- Diff colors and word emphasis are corrected across roughly 25 bundled themes. #825 #828
- First paint, navigation, and scrolling remain responsive in large review streams. #922 #942
Extension API generations 9–14
Extensions can now:
- register generic top-level CLI command trees with streaming I/O and delegation; #888
- select syntax languages by filename or glob; #851
- use a
dimline-highlight tone; #909 - size panes responsively;
- observe
hunk_viewedand savednote_changedevents; #939 - follow the current source line from an opted-in pane; and #940
- receive structured two-revision
rangeEndpointsin VCS adapters.
Compatibility notes
- npm installs now require Node.js 22 or newer. Standalone Hunk binaries still run without Node.js. #917
hunk diff <from> <to>gives two positional arguments revision semantics. Existing scripts that used the second positional argument as a pathspec should use an explicit supported form instead.- Custom VCS adapters should handle extension API generation 14's
rangeEndpointsrequest variant to support two-revision comparisons.
Community contributors
Thank you to everyone who contributed to this release:
- @NiqhtFire made Hunk exit cleanly when its terminal disconnects. #724
- @nightcityblade completed synthetic key events for command handlers. #774
- @masonmcelvain corrected theme contrast behavior and re-harvested diff accents across the bundled theme catalog. #825 #828
- @Ajay-Satish-01 added configurable file and hunk spacing. #865
- @Yuki9814 added direct session navigation to listed comments. #845
- @samuela enabled unchanged-context expansion in Jujutsu reviews. #890
- @marmitar added pacman/AUR install-source recognition. #850
Please report beta issues on GitHub or in the Hunk Discord.
Full changelog: v0.20.1...v0.21.0-beta.0