Change8

v11.19.0

📦 pnpmView on GitHub →
2 features🐛 8 fixes🔧 10 symbols

Summary

This release enhances `pnpm login` for non-interactive environments and improves dependency version handling with the `=` prefix. It also includes several bug fixes related to dependency management, lockfile stability, and workspace package handling.

✨ New Features

  • `pnpm login` now supports non-interactive terminals for web-based logins by printing the authentication URL.
  • The `save-prefix` setting now accepts `=` to save newly added dependencies with an explicit `=` operator (e.g., `=1.2.3`).

🐛 Bug Fixes

  • `allowBuilds` can now approve git-hosted packages downloaded as tarballs (e.g., `github:` dependencies) by their repository URL without the resolved commit hash.
  • `pnpm outdated --include-github-actions` no longer blocks on interactive git credential prompts for private action repos.
  • Prevented `minimumReleaseAge` from incorrectly replacing `latest` with a SemVer-greater version than the registry tag target.
  • Fixed empty `bundledDependencies` and `bundleDependencies` arrays causing nondeterministic lockfile changes.
  • The install summary no longer prints `(X is available)` when the registry's `dist-tags.latest` is held back by `minimumReleaseAge`.
  • `pnpm update` now preserves the explicit `=` operator of an exact version pin when updating dependencies.
  • Preserved a workspace dependency's `link:` entry when a run does not target it, preventing spurious rewriting to a peer-suffixed `file:` protocol.
  • Workspace dependencies declared with a relative path (e.g., `"foo": "workspace:../foo"`) are no longer silently dropped from the workspace projects graph.

Affected Symbols