v11.0.0-rc.4
📦 pnpmView on GitHub →
✨ 2 features🐛 2 fixes⚡ 2 deprecations🔧 8 symbols
Summary
This release significantly speeds up Node.js runtime installations by excluding bundled tools like npm and npx, and introduces the flexible `--runtime` flag for packaging apps. It also restores compatibility for older `pnpm self-update` versions by reverting a recent package name change.
Migration Steps
- When using `pnpm pack-app`, replace the `--node-version` flag with the new `--runtime` flag using the syntax `<name>@<version>` (e.g., `--runtime node@22.0.0`).
- If using `pnpm.app.nodeVersion` in package.json, rename the key to `pnpm.app.runtime` and update its value to use the `<name>@<version>` syntax.
✨ New Features
- Installing Node.js runtimes via `node@runtime:<version>` (and related commands) no longer extracts bundled `npm`, `npx`, and `corepack`, significantly speeding up runtime installation.
- Introduced the `--runtime` flag for `pnpm pack-app` which accepts a `<name>@<version>` spec (e.g., `--runtime node@22.0.0`), allowing for future support of runtimes other than Node.
🐛 Bug Fixes
- Restored legacy npm package names (`@pnpm/{macos,win,linux,linuxstatic}-{x64,arm64}`) for platform-specific optional dependencies of `@pnpm/exe` to fix `pnpm self-update` from v10.
- Fixed an issue where the previous `--node-version` flag silently inherited from the global `node-version` rc setting, potentially embedding the wrong Node build in SEAs.
Affected Symbols
⚡ Deprecations
- The `--node-version` flag for `pnpm pack-app` is deprecated and replaced by `--runtime`.
- The `pnpm.app.nodeVersion` key in package.json is deprecated and renamed to `pnpm.app.runtime`.