A patch release: a localStorage compatibility fix, two compat-floor runtime polyfill families, a prebuilt Nix flake, and a startup-path speedup.
Runtime fixes
localStorage matches vanilla Node on the 22.4–24 web-storage band. When web storage is unconfigured, Nub previously left localStorage present-but-undefined; it is now absent, exactly as on plain Node. This fixes test setups (vitest with happy-dom) and isomorphic libraries that feature-detect via an in check on the global. sessionStorage is unaffected. (#170, closes #166)
Runtime polyfills
Two TC39 feature families are now polyfilled where the running Node lacks them natively, complementing Nub's existing down-leveling. (#174)
| Feature | What changed | Availability |
|---|---|---|
Uint8Array base64/hex | The base64 and hex conversion methods are polyfilled | absent on Node 24 and below, native 25+ |
| Explicit Resource Management | DisposableStack, AsyncDisposableStack, and SuppressedError are polyfilled | absent on Node 23 and below, native 24+ |
Distribution
A prebuilt-binary Nix flake ships: install via nix run github:nubjs/nub or nix profile install github:nubjs/nub. (#169, closes #167)
Performance
Redundant work was removed from the startup path. (#160)
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.)