A patch release: broader pnpm patch-key support, catalog and upgrade fixes, and a link-time performance improvement.
Package-manager compatibility
| Area | What changed | Commit |
|---|---|---|
| Patched dependencies | Accept pnpm's name-only (foo), range (foo@>=1), and wildcard (foo@*) patchedDependencies keys, not just exact name@version. Each resolved version maps to the applicable patch by pnpm's priority (exact > single satisfying range > all); an all-exact project's install and lockfile bytes are unchanged. (#376) |
355b05d |
| Catalogs | nub add --save-catalog under nub identity now writes the entry to the neutral workspaces.catalog field the resolver reads, instead of a pnpm-named workspace YAML nub identity does not read — which previously left a dangling catalog: reference and failed the follow-up resolve. The write target is pre-flighted so a catalog entry that cannot land no longer mutates the dependent manifest. (#369) |
56f0330 |
Upgrade
nub upgrade on the Homebrew channel now runs brew update before brew upgrade, so a stale tap checkout no longer reports the installed version as newest and misses a published release. (#375, abf82e5)
Performance
The hoisted macOS link pass memoizes the per-package clonedir volume probe across a process, so it runs a handful of times per install instead of once per package. Install output is byte-identical. (#390, 6725571)
What's Changed
- blog: v0.4.4 release post by @colinhacks in #389
- perf(linker): memoize the per-package clonedir volume probe by @colinhacks in #390
- fix(pm): write --save-catalog to package.json under nub identity by @colinhacks in #392
- fix(upgrade): refresh the Homebrew tap before upgrading by @colinhacks in #391
- fix(patches): support name-only and range pnpm patch keys by @colinhacks in #393
Full Changelog: v0.4.4...v0.4.5