v0.2.7
This release restores the nub upgrade path for sidecar-era v0.1.x installs, with warm-install store reuse, a lockfile-compatibility guard, and a runtime fix alongside.
Important
nub upgrade from a sidecar-era v0.1.x now works. Older v0.1.x builds shipped a separate runtime/ directory and their upgrader swaps it on every upgrade; the bin-only archives v0.2.x publishes no longer carried that directory, so nub upgrade hard-failed with could not install new …/.nub/runtime. v0.2.7 archives now include a vestigial empty runtime/ so the old upgrader's swap completes — the v0.2.x binary ignores it (its runtime is embedded). If you are on a sidecar-era v0.1.x, nub upgrade to v0.2.7 or later now succeeds. (#223, 4c510afe1b5c09e91fa61b84f009e11307181e72)
Upgrade path
The current upgrader is also more tolerant of artifact-shape changes between releases: the nubx alias is now best-effort and no longer hard-bails when absent. (#223, 4c510afe1b5c09e91fa61b84f009e11307181e72)
Performance
Warm installs reuse the content-addressed store more reliably, and the hoisted layout links faster.
| Area | What changed | Commit |
|---|---|---|
| Hoisted linker | Whole-dir clonefile plus parallel fill for the hoisted layout | 00e28f8 (#222) |
| Store reuse | Write a root-key index for no-integrity packages so warm installs reuse the store | 05bc533 (#220) |
| Store reuse | Content-address the no-integrity warm lookup per project | f9ec60f (#221) |
Package manager
nub install now aborts with a clear error on unresolvable yarn.lock sources and Yarn Plug'n'Play projects rather than producing an incorrect install. (#217, eb9de97)
Runtime
nub watch re-reads .env across restarts, so edits to environment files take effect on the next restart. (#214, 75adc31, closes #207)
CLI & distribution
| Area | What changed | Commit |
|---|---|---|
| External subcommands | Git-style external subcommand dispatch — nub <verb> resolves a nub-<verb> executable on PATH |
f11ecf5 (#200) |
| winget | winget manifest plus release-time submission to winget-pkgs | 41f36fd (#213) |
| Windows installer | Suppress the Invoke-WebRequest progress bar during install on Windows |
3c28f05 (#206) |
Documentation
| Area | What changed | Commit |
|---|---|---|
| Install | Add mise installation instructions | e39b13c (#203) |
| Install | Use the canonical mise use nub short form |
38161be |
| Workers | Rewrite the workers page and fix prose-skill violations across docs | da212ad (#219) |
| Plugins | Fix the reserved-verb example and correct the TypeScript-plugin claim | 161af4f |
| Node provisioning | Describe Node provisioning accurately in the docs | 1ad05e4 |
| Site | Switch the typeface to Encode Sans | c65b8a0 (#216) |
Testing & internals
- Harden four shared-state flake hazards in the nub-cli suite (
ce5308b, #218). - Isolate the PM vocab-precedence cases against the manifest cache (
038dc48, #215). - Internal tooling: durable notification queue plus perf-tracing and control-surface updates (
d93f22b).
Commits in this release
- docs(install): add mise installation instructions (#203,
e39b13c) - fix(install): suppress IWR progress bar on Windows (#206,
3c28f05) - docs(install): use canonical
mise use nubshort form (38161be) - feat: git-style external subcommand dispatch (nub-) (#200,
f11ecf5) - feat(dist): winget manifest + release-time winget-pkgs submission (#213,
41f36fd) - docs(plugins): fix reserved-verb example + correct the TS-plugin claim (
161af4f) - test(pm): isolate vocab-precedence cases against the manifest cache (#215,
038dc48) - pm: abort install on unresolvable yarn.lock sources and Yarn PnP (#217,
eb9de97) - test: harden four shared-state flake hazards in the nub-cli suite (#218,
ce5308b) - site: switch typeface to Encode Sans (#216,
c65b8a0) - fix(aube): write root-key index for no-integrity packages so warm installs reuse the store (#220,
05bc533) - docs: rewrite the workers page + fix prose-skill violations across docs (#219,
da212ad) - fix(watch): re-read .env across restarts (closes #207) (#214,
75adc31) - perf(linker): whole-dir clonefile + parallel fill for the hoisted layout (#222,
00e28f8) - site: describe Node provisioning accurately in docs (
1ad05e4) - orchestration: durable notification queue + perf-tracing/control-surface updates (internal tooling) (
d93f22b) - fix(aube): content-address the no-integrity warm lookup per project (#221,
f9ec60f) - fix(upgrade): ship vestigial runtime/ dir so sidecar-era v0.1.x upgraders complete (#223,
4c510afe1b5c09e91fa61b84f009e11307181e72)
Full Changelog: v0.2.6...v0.2.7