← Blog
The Nub Team

Nub 0.1.6

Two reported correctness divergences fixed — duplicate SIGINT delivery on Ctrl-C, and a pnpm-generated patch that was wrongly rejected — plus output-prefix cleanup and site polish.

This release fixes two reported correctness divergences from Node and pnpm — duplicate SIGINT delivery on Ctrl-C, and patch application that rejected a pnpm-generated patch — alongside output-prefix cleanup and site polish.

Fixes

Patch application now matches pnpm. nub install applies pnpm-generated patches that pnpm and GNU patch apply cleanly. The applier was reimplemented as a faithful port of pnpm's lenient line-array algorithm — replacing the prior strict, git-apply-style applier — closing five fidelity divergences: the missing no-newline-at-end-of-file marker case, trailing-whitespace tolerance on context and deleted lines, and a fuzz cap that now matches pnpm's ±20 lines. Reported by @AlexGodard. (#25)

SIGINT fires once on Ctrl-C. process.on('SIGINT') previously fired twice on a single Ctrl-C; it now fires once, matching Node. The file-run child runs in its own process group, so the controlling TTY signals only Nub's group and the forwarder's single relay is the lone delivery. Reported by @dmitri-gb. (#26)

Note

The pnpm-patch port also means Nub now rejects a patch whose context has drifted beyond ±20 lines — it previously applied it — matching pnpm's fuzz limit.

CLI and site

The status-prefix was dropped from nub upgrade, nub pm shim, and nub pm unshim informational output, so the status lines read clean. On the site, light-mode accent colors were darkened to clear WCAG AA contrast, and a GitHub repo link now appears under the table of contents on every docs page.

The full release notes list every change in this release.

Get started

Or paste this "Get Started" prompt into an agent. It will install Nub and explain how it can be used in your project. (It won't make any changes without permission.)