github modem-dev/hunk v0.21.0-beta.0

pre-release3 hours ago

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@beta

Compare 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 dim line-highlight tone; #909
  • size panes responsively;
  • observe hunk_viewed and saved note_changed events; #939
  • follow the current source line from an opted-in pane; and #940
  • receive structured two-revision rangeEndpoints in 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 rangeEndpoints request variant to support two-revision comparisons.

Community contributors

Thank you to everyone who contributed to this release:

Please report beta issues on GitHub or in the Hunk Discord.

Full changelog: v0.20.1...v0.21.0-beta.0

Don't miss a new hunk release

NewReleases is sending notifications on new releases.