Pangram verdict · v3.3
We believe that this text is a mix of AI and human-written content.
AI likelihood · overall
AIArticle text · 222 words · 4 segments analyzed
pnpm 12 is stable. It is a rewrite of pnpm in Rust, and it is deliberately not a migration: the commands, flags, settings, and lockfile format of pnpm 11 all carry over, and the documentation describes both versions. The short list of things that genuinely behave differently is in What's different in pnpm 12.
This post covers what pnpm 12 adds that pnpm 11 never shipped. Installing itlatest on npm still points at the pnpm 11 line, so pnpm 12 is installed from the next-12 tag:pnpm self-update next-12See Installing pnpm 12 for the other ways, including without Node.js. Homebrew, winget, Scoop, and Chocolatey don't offer it yet. Breaking changes Git dependencies are identities For repositories on GitHub, GitLab, and Bitbucket, a specifier now names a repository rather than choosing a transport.
github:owner/repo, owner/repo, git+https://…, and git+ssh://git@… all resolve through the host's canonical HTTPS URL, and the lockfile never records an SSH URL for those hosts.
To reach a private hosted repository over SSH, configure the machine with git's own URL rewriting: git config --global url."git@github.com:".insteadOf https://github.com/ pnpm shells out to git, so the rewrite applies to all of its git operations. Unknown hosts keep their exact URL, SSH included, and a URL with embedded credentials is kept verbatim and never resolves to a host archive. Details in How git dependencies are resolved.