← Blog
The Nub Team

Nub 0.4.12

Package-manager and runtime fixes centered on the global virtual store, plus Node version resolution from tool-versions files.

A patch release with package-manager and runtime fixes, most of them around the global virtual store.

Package manager

Trusted packages whose build script targets the project they're installed into — git-hook installers such as simple-git-hooks, and similar tools — are now ejected from the shared global store and built inside your project. Their postinstall runs against your project instead of failing in the store. Self-contained builds stay in the shared store, built once and reused across projects. (#475)

Alongside that: type-only phantom dependencies in .d.ts and Vue SFC type surfaces are now detected under the global virtual store (#452), importing a bun or npm lockfile to pnpm-lock runs the peer-context pass (#471), incomplete version-cache entries are repaired rather than erroring (#467), and Yarn Berry frozen-install drift validation is fixed for workspaces (#462).

Node version management

Nub now reads asdf/mise .tool-versions when resolving the project's Node version (#474).

Runtime and process

  • The async hook tier is auto-selected when a foreign loader is detected in the preload (#472).
  • The nub run script child arms PR_SET_PDEATHSIG, so killing the leader no longer orphans the workload (#464).
  • Web Locks dictionary conversion is aligned to the spec (#461), and runtime env keys are filtered across nub watch restarts (#466).

The full release notes list every change in this release.