Hunk 0.23
Unreleased · 1 release
Hunk 0.23 brings diff search, bundled GitHub review, an inline status line, and a default theme that follows your terminal, while making daemon version mismatches easier to resolve.
Related documentation
Section titled “Related documentation”Releases in this series
Section titled “Releases in this series”0.23.0
Section titled “0.23.0”Unreleased
Minor Changes
Section titled “Minor Changes”- Bundle
hunk ghfor reviewing GitHub pull requests, commits, and comparisons without a separate extension or the GitHub CLI, with exact-id controls through[extensions] disabled,--disable-extension, and--enable-extension. (#1129) /now searches diff content from aless-style prompt on the status row andn/Nstep through matches with in-diff marks; the file filter stays on Tab and in the menu ("hunk.review.focusFilter" = "/"restores it), note stepping ships unbound, and extension API 27 addsctx.selection.files. (#1096)- Make a session daemon left over from a previous Hunk build visible and replaceable. A window the daemon refuses now shows a sticky status-bar notice naming which side is older and what to do: run
hunk daemon restartwhen the daemon is the older build, or relaunch the window when it is the newer one. A window whose registration the daemon rejects after the handshake gets its own notice instead of silently reconnecting.hunk sessioncommands fail with a structureddaemon-build-mismatcherror that says which side is older, counts the attached windows, and recommends an action; under--jsonit is returned in-band with the build details. Newhunk daemon statusreports the daemon's version, uptime, and attached windows, and newhunk daemon restartreplaces the daemon with one from the current build after confirming how many windows that disconnects. UnderHUNK_DEBUG=1the daemon logs which parser rejected a registration. (#1099) - Let file-view extensions declare complete code documents and map symbolic spans into them for host-owned, theme-aware syntax highlighting with bounded worker, cache, and plain-fallback behavior. (#1053)
- The bottom status row is now a host-owned status line with real inline inputs for the file filter and
hunk logsearch, and extension API 26 lets extensions set status items (ctx.statusLine) and ask for a line of text inline (ctx.prompts.line()). (#1095) - Add a
terminaltheme that follows the terminal's own foreground, background, and ANSI palette for diffs, chrome, and syntax highlighting, and make it the default theme. Hunk re-reads the terminal's colors and repaints when the terminal reports a color-scheme change or onSIGWINCH, so switching terminal themes restyles a running Hunk. (#1128)
Patch Changes
Section titled “Patch Changes”- Let reviewers configure a fixed number of rows per mouse-wheel event for faster large-diff scrolling. (#853)
- Keep the focused file filter and its current text open across content reloads. (#1095)
- npm installs now fall back to the bundled JavaScript runtime when the prebuilt binary cannot run on the machine, report signal exits as 128 + signal, and pick the native arm64 build under Rosetta. (#1099)
- Fix
hunk patch(and other review flows) under the Nix flake package by installing thehunkdiffalias next tohunk, mirroring the npm package's dual binaries. Without it the review flow fails with "unable to execute '…/bin/hunkdiff'". (#1108) - Truncate long status prompt lead-ins so typed input stays visible beside the keyboard-mode badge on narrow terminals. (#1095)
- Opening the help dialog or menu for the first time no longer waits ~300 ms. (#1079)
- Large reviews no longer print a
MaxListenersExceededWarningover the terminal UI when more than ten files are on screen. (#1111) - Preserve surrounding whitespace in content search queries when matching, repeating, and reopening the prompt. (#1096)
- Highlight every non-overlapping search occurrence on a matching line while keeping only the first landed match current. (#1096)
- Resolve bundled skills from the nearest matching directory, preferring
hunkdiff/skills, thenskills, thennode_modules/hunkdiff/skillswithin that directory to avoid unrelated ancestor and nested-package copies. (#1116) - Reduce startup input stalls by loading syntax-highlighting WASM without synchronous base64 decoding. (#1078)
- Pass the selected line to Zed (
zedandzeditor) when opening a file withe, matching the existing Helix support. (#1073)