v10.7.0
📦 pnpmView on GitHub →
✨ 6 features🐛 1 fixes⚡ 1 deprecations🔧 8 symbols
Summary
This minor release adds workspace‑aware config commands, env‑var support in workspace files, version‑range based dependency patching, a new ignore‑patch‑failures option, and fixes audit output memory issues.
Migration Steps
- Replace any usage of `pnpm.allowNonAppliedPatches` with `pnpm.allowUnusedPatches` in your configuration files.
- Review `patchedDependencies` entries to ensure version ranges do not overlap; use exact versions for specialized sub‑ranges if needed.
- If you relied on the previous default of ignoring all patch failures, set `pnpm.ignorePatchFailures` to `true` or adjust the flag according to the desired behavior.
- No other changes are required for a smooth upgrade.
✨ New Features
- `pnpm config get` and `pnpm config list` now also display settings defined in `pnpm-workspace.yaml`.
- Environment variables can be used in `pnpm-workspace.yaml` for both setting names and values.
- Support for patching dependencies by version ranges via the `patchedDependencies` field. Exact versions override ranges, which override name‑only patches.
- `pnpm config set --location=project` will write the setting to a `pnpm-workspace.yaml` file when no `.npmrc` is present.
- New configuration option `pnpm.ignorePatchFailures` to control how pnpm reacts to patch application failures.
- Renamed configuration key `pnpm.allowNonAppliedPatches` to `pnpm.allowUnusedPatches` (still supported with warning).
🐛 Bug Fixes
- Removed dependency paths from audit output to prevent out‑of‑memory errors.
🔧 Affected Symbols
pnpm.config.getpnpm.config.listpnpm.config.setpnpm.allowNonAppliedPatchespnpm.allowUnusedPatchespnpm.ignorePatchFailurespatchedDependenciesaudit output⚡ Deprecations
- Rename `pnpm.allowNonAppliedPatches` to `pnpm.allowUnusedPatches`. The old name still works but emits a deprecation warning. Update your configuration to use `pnpm.allowUnusedPatches` to avoid warnings.