Minor Changes
-
Added pnpm version management. If the
manage-package-manager-versions
setting is set totrue
, pnpm will switch to the version specified in thepackageManager
field ofpackage.json
#8363. This is the same field used by Corepack. Example:{ "packageManager": "pnpm@9.3.0" }
-
Added the ability to apply patch to all versions #8337.
If the key of
pnpm.patchedDependencies
is a package name without a version (e.g.pkg
), pnpm will attempt to apply the patch to all versions of the package. Failures will be skipped. If there's only one version ofpkg
installed,pnpm patch pkg
and subsequentpnpm patch-commit $edit_dir
will create an entry namedpkg
inpnpm.patchedDependencies
. And pnpm will attempt to apply this patch to other versions ofpkg
in the future. -
Change the default edit dir location when running
pnpm patch
from a temporary directory tonode_modules/.pnpm_patches/pkg[@version]
to allow the code editor to open the edit dir in the same file tree as the main project #8379. -
Substitute environment variables in config keys #6679.
Patch Changes
pnpm install
should runnode-gyp rebuild
if the project has abinding.gyp
file even if the project doesn't have an install script #8293.- Print warnings to stderr #8342.
- Peer dependencies of optional peer dependencies should be automatically installed #8323.