Skip to content

hunk 0.24.0 - #319527

Merged
BrewTestBot merged 2 commits into
mainfrom
bump-hunk-0.24.0
Oct 19, 2026
Merged

BrewTestBot merged 2 commits into
mainfrom
bump-hunk-0.24.0

Conversation

@BrewTestBot

Copy link
Copy Markdown
Contributor

Created by brew bump


Created with brew bump-formula-pr.

Details

release notes
## Hunk 0.24: beyond the diff

Hunk 0.24 brings complete-file and directory browsing, a live workspace compass, npm-installed extensions, and version-matched agent skills into your terminal review workspace. Worker highlighting makes startup interaction smoother, while a round of memory fixes keeps large reviews and long-running sessions leaner.

For npm- and curl-managed installs:

hunk update 0.24.0
npm install -g hunkdiff@0.24.0

Homebrew availability will be verified after publication; until then, Homebrew propagation is pending. The commands above select the exact release for npm- and curl-managed installations.

Explore the source and find your next review

hunk open shows complete syntax-highlighted files and browses directories with lazy loading, live refresh, and keyboard or mouse navigation. Inspect the surrounding source without manufacturing a diff. The new read-only workspace status view brings together staging state, tracked and untracked changes, and sibling worktrees, with navigation into history and full diff reviews. Static and versioned JSON status output are available too. #1148, #1067

Automatic diff layout now uses the space actually left after side panes and padding: opening a pane can switch to unified, and closing it can restore split. auto_split_min_width controls the threshold, while scroll_off keeps surrounding context visible during line navigation. Binary files remain reachable through file navigation and sidebar clicks, and the sidebar follows held file-navigation keys without overriding ordinary manual scrolling. #1170, #1109, #1178, #1085

Keep reviews responsive鈥攁nd let old reviews go

Syntax highlighting runs in a worker by default, with grammar warmup during startup to reduce the input stall after the review first appears. Large-diff highlight failures use bounded retries rather than restarting on every scroll. #1105, #785

Live reloads no longer retain every previous review's files and render state. Nonwrapped reviews reuse geometry across terminal resizes, and keyboard navigation leaves copy-selection content lazy rather than materializing it eagerly. Sessions also stop repeatedly submitting a rejected review to an unchanged daemon while retaining recovery when the review or daemon changes. #1201, #1200, #1202, #1199

Review reliability improves too: wheel scrolling no longer leaves comments targeting stale lines, notes survive reloads that temporarily omit their files, suspended windows keep their sessions registered, and terminal-editor handoffs release Hunk's stdin reader before launching the editor. #1143, #1164, #1131, #1134, #1165

Performance note: release benchmarks have no gated regressions against 0.23.0 or beta.1. The known sidebar-follow tradeoff from beta.1 remains relative to beta.0: navigation p95 is 42.74 ms versus beta.0's 36.35 ms, beta.1's 44.55 ms, and 0.23.0's 46.32 ms. This preserves correct sidebar following during held navigation and resizing.

Easier extensions, agent setup, and shell navigation

hunk extension install accepts npm packages鈥攊ncluding scopes, versions, ranges, and tags鈥攁longside Git sources, without running npm lifecycle scripts. Folder-local package imports work in compiled Hunk binaries. Extensions gain generation-scoped presentation filters and independent left/right pane controls. #1162, #1163, #1118, #1171

Install agent pointer skills through the skills CLI; hunk skill show supplies the full instructions matched to your installed Hunk version. Bash and Zsh completions help discover commands, flags, and supported values. The note-composer save shortcut is now remappable, and hunk gh --help and the docs cover more of the available review workflows. #1167, #1157, #962, #1186

Compatibility notes

  • Default theme: github-dark-default is the default again. Set theme = "terminal", pass --theme terminal, or use the theme picker to keep following your terminal palette. This differs from 0.23 and the 0.24 betas. #1195
  • Automatic layout: the default threshold is 160 available diff columns, excluding panes and outer padding. Configure auto_split_min_width or select explicit split/unified mode to override it.
  • Navigation context: scroll_off defaults to five rows; scroll_off = 0 or --scroll-off 0 restores edge-only scrolling.
  • Highlighting: --fast is now a no-op and will be removed in a later release. Windows compiled binaries and custom themes with syntax_scopes continue to highlight inline.
  • Patch validation: nonempty input without recognizable file changes now fails explicitly instead of silently opening an empty review. Genuinely empty reviews have their own message. #1183, #1182
  • Extensions: the public API is version 31. Gate new APIs on hunk.apiVersion when supporting older Hunk versions.
  • Persistent state: Hunk uses the XDG state directory while preserving existing state and global extension locations. Agent notes start hidden; use the review controls to reveal them.
  • Runtime requirements: npm installations require Node.js 22 or newer; standalone binaries do not require Node.js.

Community contributors

All merged pull requests
  • publish v0.23.0 notes by @benvinegar in #1135

  • resolve releases from the apex domain by @elucid in #1140

  • bump taiki-e/install-action from 2.86.3 to 2.87.14 in the github-actions group by @dependabot[bot] in #1139

  • adopt new hunk logo, flat favicon, and brand guide by @benvinegar in #1145

  • explain selector misses instead of protocol-validation-failed by @elucid in #1149

  • refresh terminal colors via direct OSC probe by @elucid in #1130

  • pass the lifecycle, trust prompt and jj source tests on macOS by @andrewloux in #1146

  • Add hunk-mark-read to hunk-extension marketplace by @benvinegar in #1155

  • measure grapheme Prepend scalars with the cluster that follows them by @strawberry-little-bear in #1153

  • compact same-directory rename labels by @benvinegar in #1156

  • add complete-file viewer and lazy directory browser by @benvinegar in #1148

  • Fix/draft note focus transition by @igshehata in #1125

  • render conflicted Git diffs by @0xferrous in #1102

  • handle plain text output through pipes by @0xferrous in #1112

  • add generation-scoped presentation scope API by @brettinternet in #1118

  • bound and surface large-diff highlight retries by @benvinegar in #785

  • Add hunk-guide and hunk-verdict to hunk-extension marketplace by @benvinegar in #1159

  • Highlighting: Make the worker the default and warm it during startup by @masonmcelvain in #1105

  • reveal note composers at the bottom edge by @benvinegar in #1160

  • preserve filter focus when results reappear by @benvinegar in #1161

  • reject non-callable VCS operation watch hooks by @edenbuilds in #1080

  • stop annotated navigation skipping notes drawn outside hunks by @HackAttack in #1147

  • refresh bun.lock when versioning packages by @bottercode in #1158

  • Add LandonSchropp/hunk-verdict and hunk-backup to the extension directory by @LandonSchropp in #1137

  • add scroll_off setting for viewport margin by @andreifilip123 in #1109

  • keep a session connected when a reload leaves out a noted file by @andrewloux in #1131

  • stop wheel scroll and stale hover from drifting comment targets off the highlighted line by @HackAttack in #1143

  • restore comment targets after batched wheel returns by @benvinegar in #1164

  • add bash and zsh shell completions by @silvioprog in #1157

  • release stdin before launching terminal editors by @benvinegar in #1165

  • support managed npm package sources by @benvinegar in #1162

  • add a workspace compass with sibling worktrees by @benvinegar in #1067

  • link GitHub release notes after hunk update by @benvinegar in #1166

  • load folder-local packages in compiled binaries by @benvinegar in #1163

  • let note composer save be remapped by @Ajay-Satish-01 in #962

  • reveal pane edges independently by @benvinegar in #1171

  • distribute version-matched agent skills via skills CLI by @benvinegar in #1167

  • trim verbose README prose by @benvinegar in #1174

  • keep sessions alive while window is suspended by @HackAttack in #1134

  • store persistent state under XDG state directory by @mikemikimike in #920

  • isolate suspension test daemon port by @benvinegar in #1176

  • clarify configuration overrides and examples by @benvinegar in #1175

  • Auto width threshold by @teepark in #1170

  • prepare 0.24.0-beta.0 by @benvinegar in #1177

  • keep binary files reachable by file navigation and clicks by @bottercode in #1178

  • reject unrecognized nonempty patch input by @benvinegar in #1183

  • Add hunk-why to hunk-extension marketplace by @benvinegar in #1179

  • distinguish empty reviews from filtered files by @benvinegar in #1182

  • keep the selected file visible in the sidebar during held navigation by @Lawgk in #1085

  • allow published prereleases in changelog smoke by @benvinegar in #1185

  • correct stale facts and fill gaps across hunk.dev docs by @benvinegar in #1186

  • prepare 0.24.0-beta.1 by @benvinegar in #1187

  • publish 0.24.0-beta.1 notes by @benvinegar in #1194

  • restore GitHub Dark Default as the default theme by @benvinegar in #1195

  • reuse nowrap geometry across terminal resizes by @benvinegar in #1200

  • stop resubmitting rejected reviews to unchanged daemons by @benvinegar in #1199

  • stop reloads from retaining every previous review by @rnihesh in #1201

  • Add hunk-checkpoint to hunk-extension marketplace by @benvinegar in #1189

  • keep copy-selection rows lazy during navigation by @benvinegar in #1202

  • add brand page and logo downloads by @benvinegar in #1203

  • Prepare stable 0.24.0 by @benvinegar in #1205

Release notes: https://hunk.dev/changelog/0.24/
Full changelog: modem-dev/hunk@v0.23.0...v0.24.0

View the full release notes at https://github.com/modem-dev/hunk/releases/tag/v0.24.0.


@github-actions github-actions Bot added nodejs Node or npm use is a significant feature of the PR or issue bump-formula-pr PR was created using `brew bump-formula-pr` missing network sandbox The formula does not define network sandbox settings labels Oct 19, 2026
@github-actions

Copy link
Copy Markdown
Contributor

馃 An automated task has requested bottles to be published to this PR.

Caution

Please do not push to this PR branch before the bottle commits have been pushed, as this results in a state that is difficult to recover from. If you need to resolve a merge conflict, please use a merge commit. Do not force-push to this PR branch.

@github-actions github-actions Bot added the CI-published-bottle-commits The commits for the built bottles have been pushed to the PR branch. label Oct 19, 2026
@BrewTestBot
BrewTestBot enabled auto-merge October 19, 2026 17:40
@BrewTestBot
BrewTestBot added this pull request to the merge queue Oct 19, 2026
Merged via the queue into main with commit a98d637 Oct 19, 2026
23 checks passed
@BrewTestBot
BrewTestBot deleted the bump-hunk-0.24.0 branch October 19, 2026 17:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bump-formula-pr PR was created using `brew bump-formula-pr` CI-published-bottle-commits The commits for the built bottles have been pushed to the PR branch. missing network sandbox The formula does not define network sandbox settings nodejs Node or npm use is a significant feature of the PR or issue

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants