pnpm 12 Explained: 2026 Rust Rewrite and Faster Installs
12.0 is a Rust rewrite that still feels like pnpm 11. Socket saw up to ~90% faster median installs on a Vercel monorepo; npm latest remains 11.
Socket wrote on 1 September 2026 that pnpm 12 is stable, dating the cut to 26 August. InfoQ followed on 3 September. The official 12.0 post calls it a Rust rewrite that still speaks pnpm 11.
Decide whether to switch by matching these names: pnpm 12, Rust rewrite, and the install tag latest-12.
New engine, same vocabulary
Workflow stays
Commands, flags, settings, lockfile format, and the content-addressable store follow the 11 line. Docs now default to 12; 11 remains in the version picker.
The install path moved
npm latest still points at 11. The official post says pnpm self-update latest-12. Socket and InfoQ printed next-12. A standalone script can install without Node.js.
It was faster to rewrite pnpm in Rust than to migrate to ESM. — Zoltan Kochan, via Socket
Where the numbers come from
| Look at | Baseline | 12 line |
|---|---|---|
| Implementation | Node.js / TypeScript | Native Rust binary |
| Vercel 21 projects / 1,670 pkgs | pnpm 10.28 | Median install −64.4% to 90.5% (Socket, 20 runs) |
| node_modules present, warm store | 1.476 s | 142 ms |
| Corepack artifact | 17.5 MB | 47.3 MB; uncached start +11.1% |
Should you switch now
- 01Match the work
Repeated CI installs, cycle-heavy monorepos, and teams already fluent in pnpm 11 are the audience. Do not treat a cross-tool ranking as the decision.
- 02Read the behavior diffs
Git deps go through HTTPS; unknown workspace keys are reported; Linux hardlinks first. Socket says
--resolution-onlybecomespnpm peers check. Global-mutating commands refuse sudo. - 03Do not treat an installer as a design review
A faster lockfile still leaves module boundaries on one drawing. Open sitdraw when the meeting is the diagram.
- Is npm latest now 12?
- No. Official notes and Socket both say latest still points at 11. Take latest-12 (or next-12 as those stories printed).
- Is this the same story as Zed 1.18.0?
- No. That is an editor weekly. This is a package-manager engine change.
Start with what can stop CI
The install tag, git HTTPS, unknown workspace keys, and --resolution-only. The full list stays in the official compatibility notes.
# pnpm 12 official install (12.0 post)
pnpm self-update latest-12