Replace corepack with pnpm/action-setup - #250
Merged
Merged
Conversation
|
mraible
enabled auto-merge (squash)
August 14, 2026 14:13
The pnpm team recommends against using corepack to install pnpm. The Node.js TSC has also voted to stop bundling corepack, though it still ships as of Node 26. pnpm/action-setup is the officially supported way to install pnpm in GitHub Actions. The pnpm version continues to come from the packageManager field in package.json, so there is no version duplicated into the workflows. See https://x.com/pnpmjs/status/2087964982289854928
mraible
force-pushed
the
remove-corepack
branch
from
August 14, 2026 14:32
cc0c302 to
0f7cfa6
Compare
prvn
approved these changes
Aug 14, 2026
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.
The pnpm team recommends against using corepack to install pnpm, since it wraps pnpm in a JS shim and is redundant once pnpm resolves its own version from the
packageManagerfield. The Node.js TSC has also voted to stop bundling corepack, though it still ships as of Node 26, so this is cleanup rather than anything urgent.pnpm/action-setupis the officially supported way to install pnpm in GitHub Actions. The pnpm version still comes from thepackageManagerfield, so no version is duplicated into the workflows and there is nothing new to keep in sync.One tradeoff worth naming: corepack verified the downloaded pnpm tarball against the
+sha512hash committed inpackageManager, andpnpm/action-setupdoes not. It passes the version topnpm install, where the hash is treated as semver build metadata and ignored, so the tarball is verified against the registry's own integrity metadata instead. SincepackageManagerpins an exact version and npm versions are immutable, the practical exposure is narrow, but it is a real difference from the current behavior.