Skip to content

Hunk 0.15

June 8, 2026 – June 13, 2026 · 4 releases

Hunk 0.15 adds release benchmark gating, Sapling support, and a run of rendering performance work that keeps large reviews responsive on Windows and Unix alike.

Terminal window
npm i -g hunkdiff@0.15.3

Hunk 0.15 is no longer the current release. See the latest release or all install options.

June 13, 2026

  • Added release benchmark snapshots and a release workflow gate that blocks publishing when committed benchmark results show material performance regressions, with auditable accepted-regression records for intentional release tradeoffs.
  • Fixed Windows launches from Cygwin, Git Bash, and WSL-style VCS paths by normalizing Unix-style repo roots before reusing them as subprocess working directories or filesystem roots.
  • Fixed release staging so benchmark comparison artifacts are not mistaken for platform binary artifacts.
  • Reduced hunk-navigation latency and memory growth on large reviews by keeping diff geometry memoized when the selected hunk changes.
  • Reduced scroll and hunk-navigation latency on large reviews by avoiding repeated separator measurement and preserving memoized offscreen/visible diff rows across viewport updates.
  • Reduced main diff pane rendering work on large reviews by virtualizing offscreen file sections behind exact-height spacers.
  • Reduced sidebar rendering work on many-file reviews by virtualizing offscreen file rows behind exact-height spacers.

June 13, 2026

  • Coalesced scroll-position React updates into a single per-frame read and shifted background syntax highlighting from microtasks to timers, so rapid wheel or held-arrow scrolling no longer produces visible jank from per-delta state updates or per-file highlight work starving input and render callbacks.
  • Honored --transparent-bg and transparent_background in static pager output, so captured pager hosts like LazyGit let translucent terminal backgrounds through on context lines, gutters, and hunk headers while added/removed rows keep their tinted backgrounds.
  • Kept menu dropdowns and the help dialog on the base theme in transparent-background mode so popups remain readable over translucent terminals.
  • Resolved hunk session ... --repo <path> selectors to the containing repo root before matching, so --repo . (and any path inside the tree) targets the live session from a subdirectory instead of reporting no match.

June 9, 2026

  • Restored the e keyboard shortcut and menu hint for opening the selected file in $EDITOR.
  • Added timeouts to hunk session * daemon capability and API calls so unresponsive daemons fail instead of hanging indefinitely.
  • Updated OpenTUI so light and dark theme backgrounds render without the native renderer's color shift.
  • Prevented Git watch polling from taking optional index locks while discovering untracked files.

June 8, 2026

  • Show the newly selected theme in the footer status bar when switching themes.
  • Added Catppuccin Frappé and Macchiato as built-in themes, completing the four official Catppuccin flavors.
  • Added a Zenburn built-in theme (theme = "zenburn"), a warm low-contrast dark palette inspired by Jani Nurminen's original Zenburn. It also works as a custom-theme base.
  • Added a --transparent-bg flag and transparent_background config option for translucent terminal setups.
  • Added Sapling VCS backend support for hunk diff and hunk show.
  • Preserved split diff alignment when horizontal scrolling starts inside a wide CJK or emoji character.
  • Made diff syntax highlighting follow the active theme: keyword, function, number, and variable token colors now resolve to the configured theme's palette (including custom themes) in both light and dark, instead of passing through Pierre's built-in syntax colors.
  • Expanded the diff window during rapid scrolling bursts so large reviews keep real rows mounted instead of falling back to blank placeholder regions.

Newer: Hunk 0.16 · Older: Hunk 0.14 · All releases