Repository navigation
chore(deps): update pnpm to v10.34.9 - #90
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
March 7, 2025 06:38
946c9e2 to
5c7ba4f
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
2 times, most recently
from
March 13, 2025 18:40
cf0bd43 to
1c5fe23
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
March 17, 2025 20:48
1c5fe23 to
bcf4f52
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
2 times, most recently
from
March 26, 2025 15:23
7e05938 to
ec5a998
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
2 times, most recently
from
April 7, 2025 18:36
1a442de to
f20382f
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
April 14, 2025 17:03
f20382f to
b47f5f2
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
2 times, most recently
from
April 28, 2025 01:52
2988ec3 to
42b10f7
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
May 13, 2025 17:00
42b10f7 to
ac0d730
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
June 2, 2025 14:41
ac0d730 to
d5302f0
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
June 8, 2025 17:41
d5302f0 to
bf0513b
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
June 23, 2025 02:45
bf0513b to
3de4373
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
September 13, 2025 19:04
49be11a to
f689439
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
September 17, 2025 16:22
f689439 to
71c25c0
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
September 22, 2025 14:54
71c25c0 to
c257662
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
October 2, 2025 17:05
c257662 to
256d93c
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
October 6, 2025 15:07
256d93c to
2fa4345
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
October 10, 2025 01:53
2fa4345 to
d47b57d
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
October 14, 2025 10:02
d47b57d to
a9d687a
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
October 21, 2025 22:12
a9d687a to
47ce834
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
October 28, 2025 20:10
47ce834 to
c7b5499
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
November 10, 2025 02:03
c7b5499 to
64cf306
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
November 12, 2025 20:15
64cf306 to
3498336
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
November 20, 2025 14:28
3498336 to
a5cbfbc
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
November 27, 2025 15:54
a5cbfbc to
b297687
Compare
renovate
Bot
force-pushed
the
renovate/pnpm-10.x
branch
from
December 8, 2025 20:10
b297687 to
0449b4c
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Note
This PR body was truncated due to platform limits.
This PR contains the following updates:
10.5.2→10.34.9Release Notes
pnpm/pnpm (pnpm)
v10.34.9: pnpm 10.34.9Compare Source
Patch Changes
0bff20d: The pnpm version thatpackageManagerpins now records that pin in a freshpnpm-lock.yamlwhen pnpm 10 switched to it. A laterpnpm install --frozen-lockfilethen succeeds #17303.Platinum Sponsors
Gold Sponsors
v10.34.8: pnpm 10.34.8Compare Source
Patch Changes
7ced81e: Recompute hoisted dependencies when a frozen install removes packages, so public hoist links are handed over to retained versions #16861.debbb4c: When pnpm removes or replaces a direct dependency, it now finishes removing the dependency's bins before it deletes the dependency's directory. Packages that declare bins throughdirectories.binno longer leave broken shims innode_modules/.bin#16876.07becba: The standalone pnpm executables now embed Node.js 24.22.1. They embedded Node.js 20, which has reached end of life and still trusts the certificate authority intermediates that Node.js distrusted in October 2026.Platinum Sponsors
Gold Sponsors
v10.34.7: pnpm 10.34.7Compare Source
Patch Changes
97f550c: Switching to the pnpm version inpackageManagernow works through registry mirrors that strip npm's signatures or re-sign packages with their own key. pnpm then reads the signature fromhttps://registry.npmjs.org/and verifies it against the integrity of the downloaded pnpm #16778.b11d7bb: The update notification now suggests the standalone install script instead ofpnpm self-updatewhenPNPM_HOMEis not set, such as when another package manager installed pnpm.pnpm self-updateinstalls intoPNPM_HOME, so in that case it cannot replace the pnpm in use.Platinum Sponsors
Gold Sponsors
v10.34.6Compare Source
Patch Changes
e7888e5:pnpm self-updatenow resolves and verifies pnpm through registry, authentication, proxy, and TLS settings from trusted non-project configuration. Project configuration and the default project pnpmfile can no longer redirect the pnpm download or disable engine identity verification.46bc7c9: pnpm no longer tells you to update itself with Corepack or withpnpm add -g:pnpm self-update, or the standalone install script when pnpm is running under Corepack. It used to suggestcorepack use pnpm@<version>, orpnpm add -g pnpm/pnpm add -g @pnpm/exewhen pnpm was not installed by the standalone script — butpnpm add -grefuses to install pnpm and points atpnpm self-updateanyway, and@pnpm/exeis not published for pnpm v12 or newer, where the unscopedpnpmpackage is itself the native executable.pnpm self-updateunder Corepack now points at the standalone install script too, instead of telling you to update pnpm with Corepack.46bc7c9: Updatedadm-zipto v0.6.0, which fixes a memory-exhaustion vulnerability where a crafted ZIP file could make it allocate 4 GB of memory.adm-zipis used to extract the Node.js, Bun, and Deno archives that pnpm downloads on Windows.Updated the embedded Node.js release keys to the current canonical
nodejs/release-keyslist.Updated the embedded npm registry signing keys to the set currently advertised by npm.
702ad5f: Update the embedded Node.js release keys with the new key added to nodejs/release-keys (Stewart X Addison,655F3B5C1FB3FA8D1A0CA6BDE4A7D232B936D2FD).Platinum Sponsors
Gold Sponsors
v10.34.5: pnpm 10.34.5Compare Source
Patch Changes
78e29fe: Prevent a craftedpnpm-lock.yamlfrom writing package content outside the virtual store. A dependency path key whose name reconstructs to a path-traversal sequence (e.g.../../../tmp/x@1.0.0) is now rejected by the isolated (virtual-store) linker and the Plug'n'Play resolver map, matching the containment already applied to the hoisted linker. Under the global virtual store, a traversal in the version-derived path segment (e.g. a snapshotversion: "../../x") is now rejected atiterateHashedGraphNodes, the single point every global-virtual-store slot path funnels through.78e29fe: Fixed a path traversal vulnerability where a dependency whose manifestnamewas a scoped path traversal (e.g.@x/../../../<path>) could be written outsidenode_modulesto an attacker-controlled location duringpnpm install, even with--ignore-scripts. The isolated linker now validates the package name before using it as a directory name, matching the existing protection in the hoisted linker.47ef6f0: Fixed switching to and self-updating to pnpm v12. pnpm v12 (the Rust port) ships as thepnpmand@pnpm/exenpm packages whose bins are placeholders replaced at install time by the host's native binary from a@pnpm/exe.<platform>-<arch>[-musl]optional dependency. Because pnpm installs its own engine with--ignore-scripts, that relinking never ran, leaving a non-executable placeholder. pnpm now relinks the native binary itself for v12 (recognizing the new platform-package naming scheme and the nativepnpmpackage), and verifies the native binary's npm registry signature before running it.36928be:${...}environment-variable placeholders in thehttpProxy,httpsProxy,noProxy,proxy, andnoproxysettings are no longer expanded when these settings come from a project'spnpm-workspace.yaml. They now receive the same protection already applied toregistry.Platinum Sponsors
Gold Sponsors
v10.34.4: pnpm 10.34.4Compare Source
Patch Changes
352ae48: Security: validate config dependency names and versions before using them to build filesystem paths. Apnpm-workspace.yamlwith a traversal-shapedconfigDependenciesname (such as../../PWNED) or version (such as../../../PWNED) could previously causepnpm installto create symlinks or write package files outsidenode_modules/.pnpm-configand the store. Names must now be valid npm package names and versions must be exact semver versions. See GHSA-qrv3-253h-g69c.352ae48: Reject path-traversal and reserved dependency aliases (such as../../../escape,.bin,.pnpm, ornode_modules) that come from a lockfile rather than a freshly resolved manifest. A crafted lockfile alias could otherwise be joined directly under a hoistednode_modulesdirectory, letting package files be written outside the intended install root or overwrite pnpm-owned layout.The
nodeLinker: hoistedgraph builder now validates each alias at the directory sink (safeJoinModulesDir), matching the validation pnpm already performs when resolving aliases from manifests. See GHSA-fr4h-3cph-29xv.352ae48: Preventpnpm patch-removefrom removing files outside the configured patches directory.217fbe0: Hardened the warning printed when a project.npmrcuses environment variables in registry/auth settings: the suggestedpnpm config setcommand is now only included for keys made up of shell-inert characters. Because the key comes from a repository-controlled.npmrcand a shell expands$(...), backticks, and$VAReven inside double quotes, a crafted key could otherwise have turned the suggested copy-paste command into command execution.Platinum Sponsors
Gold Sponsors
v10.34.3: pnpm 10.34.3Compare Source
.npmrc(action may be required)Following GHSA-3qhv-2rgh-x77r, pnpm no longer expands
${ENV_VAR}placeholders that come from a repository-controlled config file, because a malicious repository could otherwise use them to leak your environment secrets (npm tokens, CI job tokens, etc.) to an attacker-controlled registry during install. This applies to:.npmrc—registry,@scope:registry, proxy URLs, URL-scoped keys (//host/…), and credential values (_authToken,_auth,_password,username,tokenHelper,cert,key);pnpm-workspace.yaml.This release also closes a bypass where a project
.npmrccould setuserconfig,globalconfig, orprefixto make pnpm load a repo-supplied file as trusted config (via@pnpm/npm-conf@3.0.3).Environment variables are still expanded in trusted config: your user-level
~/.npmrc, the global config, CLI options, and environment config.If your authentication broke after upgrading, move the token out of the committed
.npmrc:Or keep the
${NPM_TOKEN}line but put it in your user-level~/.npmrcinstead of the repo. In GitHub Actions,actions/setup-nodewithregistry-urlalready writes a user-level.npmrc, soNODE_AUTH_TOKENkeeps working. For other CI where editing each pipeline is hard, setNPM_CONFIG_USERCONFIG=.npmrcin the CI environment to declare the project.npmrctrusted.See https://pnpm.io/npmrc for full migration details.
Patch Changes
.npmrcuses an environment variable in a registry/proxy URL or in registry credentials. The message now explains why the setting was ignored and how to migrate it to a trusted source — for example by runningpnpm config set "<key>" <value>to store it in the global config, or by keeping the${...}line in the user-level~/.npmrc— with a link to https://pnpm.io/npmrc..npmrccan no longer redirect which files pnpm loads as its trusted user and global configuration. Previously such a file could setuserconfig,globalconfig, orprefixto point at an attacker-supplied file shipped in the repository, and pnpm would load it as a trusted config source — bypassing the protection that prevents repository config from expanding environment variables into registry request destinations and credentials, and allowing it to settokenHelper. The user/global config file locations are now resolved only from trusted sources (CLI options, environment config, the npm builtin config, and defaults) before the project and workspace.npmrcfiles are read. Fixed by upgrading@pnpm/npm-confto3.0.3.Platinum Sponsors
Gold Sponsors
v10.34.2: pnpm 10.34.2Compare Source
.npmrc(action may be required)Following GHSA-3qhv-2rgh-x77r, pnpm no longer expands
${ENV_VAR}placeholders that come from a repository-controlled config file, because a malicious repository could otherwise use them to leak your environment secrets (npm tokens, CI job tokens, etc.) to an attacker-controlled registry during install. This applies to:.npmrc—registry,@scope:registry, proxy URLs, URL-scoped keys (//host/…), and credential values (_authToken,_auth,_password,username,tokenHelper,cert,key);pnpm-workspace.yaml.This release also closes a bypass where a project
.npmrccould setuserconfig,globalconfig, orprefixto make pnpm load a repo-supplied file as trusted config (via@pnpm/npm-conf@3.0.3).Environment variables are still expanded in trusted config: your user-level
~/.npmrc, the global config, CLI options, and environment config.If your authentication broke after upgrading, move the token out of the committed
.npmrc:Or keep the
${NPM_TOKEN}line but put it in your user-level~/.npmrcinstead of the repo. In GitHub Actions,actions/setup-nodewithregistry-urlalready writes a user-level.npmrc, soNODE_AUTH_TOKENkeeps working. For other CI where editing each pipeline is hard, setNPM_CONFIG_USERCONFIG=.npmrcin the CI environment to declare the project.npmrctrusted.See https://pnpm.io/npmrc for full migration details.
Patch Changes
packageManagerfield, the registry it fetches from (and the proxy/TLS settings used for that traffic) now come exclusively from trusted config sources — CLI options, env config, user and global.npmrc— defaulting to the public npm registry, instead of the repository's project/workspace settings.packageManagerfield (orpnpm self-update) makes pnpm download another pnpm version, the staged install is verified corepack-style: the integrity recorded in the staged lockfile must carry a valid npm registry signature for the exactname@version, validated against npm's public signing keys that ship embedded in the pnpm CLI. Verification fails closed — a tampered download, an unsigned package, or an unreachable registry refuses the version switch rather than running an unverified binary. It runs only when the wanted version is actually downloaded (a tools-directory cache miss), so repeated commands pay no extra network round trip..npmrcandpnpm-workspace.yaml) can no longer expand${...}placeholders in registry/proxy request destinations, URL-scoped keys, or registry credential values, preventing repository-controlled configuration from exfiltrating environment secrets through request URLs. Trusted user/global/CLI/env config keeps full env expansion, so existing token and registry setup flows continue to work.binnames ("",".","..", and scoped forms such as@scope/..) when resolving a package's bins. These names previously passed the bin-name guard and, when joined to the global bin directory during global remove/update/add operations, could resolve to the global bin directory itself or its parent and have it recursively deleted.onlyBuiltDependencies(andallowBuilds) entries can approve lifecycle scripts for git, git-hosted tarball, direct tarball, and local directory artifacts. To approve one of those artifacts explicitly, use its peer-suffix-free lockfile depPath as the key. Lockfile entries are now rejected when a registry-style dependency path (name@semver) is backed by a git, directory, or git-hosted tarball resolution (ERR_PNPM_RESOLUTION_SHAPE_MISMATCH), so the dependency path is a reliable artifact identity by the time scripts can run.SHASUMS256.txtagainst the Node.js release team's public keys (embedded in the pnpm CLI) before trusting its hashes. The Node.js download mirror is repository-configurable (node-mirror:<channel>in.npmrc), and the integrity check previously trusted aSHASUMS256.txtfetched from that same mirror — a circular check that a malicious mirror could satisfy with a tampered binary and matching hashes. A mirror that proxies the real signed SHASUMS keeps working unchanged. Only thereleasechannel publishes signed SHASUMS files, so pre-release channels (rc, nightly, …) remain unverified.Platinum Sponsors
Gold Sponsors
v10.34.1: pnpm 10.34.1Compare Source
Patch Changes
pnpm-lock.yamlentries whose remote tarballresolution:block is missing theintegrityfield. Previously the worker that extracts a downloaded tarball skipped hash verification when no integrity was supplied and minted a fresh one from the unverified bytes, so an attacker who could both alter the lockfile (e.g. via a pull request that stripsintegrity:) and serve modified content at the referenced tarball URL could install a tampered package without any error — including under--frozen-lockfile. pnpm now fails closed at lockfile-read time withERR_PNPM_MISSING_TARBALL_INTEGRITY. Git-hosted tarballs (gitHosted: trueor a URL on codeload.github.com / bitbucket.org / gitlab.com) andfile:tarballs are exempt — the commit SHA in a git-host URL and the user-controlled local path already anchor the bytes.Platinum Sponsors
Gold Sponsors
[!IMPORTANT]✂ PR body was truncated to here.
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.