v12.0.0-alpha.20Pre-release
pnpm 12 Alpha 20
Added 2
- Accept `--registry <url>` on every command as a universal rc-option, not only through `--config.registry=<url>`
- Accept `--allow-build=<pkg>` on `pnpm add` and `pnpm add -g` to append named packages to allowBuilds so they can run their lifecycle scripts during install
Changed 2
- Make `--dir` / `-C` position-independent so it is accepted anywhere on the command line, before or after the subcommand
- Apply `fetch-timeout` setting to the sigstore signing exchange in `pnpm publish --provenance` and retry it up to two more times with exponential backoff when it fails or times out
Fixed 1
- Resolve a dependency declared through an `npm:` alias in `pnpm update --latest` to the latest version of the aliased package, keeping the `npm:<name>@` prefix in the rewritten specifier
Patch Changes
-
Close three CLI parity gaps with the TypeScript pnpm CLI:
--registry <url>is now accepted on every command as a universal rc-option, not only through--config.registry=<url>(pnpm view pnpm dist-tags.latest --registry=https://registry.npmjs.org/).pnpm add(andpnpm add -g) now accept--allow-build=<pkg>, appending the named packages toallowBuildsso they can run their lifecycle scripts during the install (pnpm add @pnpm/exe@11.16.0 --allow-build=@pnpm/exe).--dir/-Cis now position-independent: it is accepted anywhere on the command line, before or after the subcommand (pnpm add foo --dir /tmp/proj).
-
pnpm publish --provenancenow applies thefetch-timeoutsetting to the sigstore signing exchange and retries it up to two more times with exponential backoff when it fails or times out, instead of aborting the publish on the first transient network error or hanging on a stalled connection. -
pnpm update --latestnow resolves a dependency declared through annpm:alias — directly inpackage.jsonor in the catalog entry acatalog:reference points to — to the latest version of the aliased package, keeping thenpm:<name>@prefix in the rewritten specifier. Previously the alias name itself was looked up on the registry, failing the update with a 404 when no package of that name exists.