Skip to content

fix: use one pnpm pin throughout the workspace - #479

Merged
tannerlinsley merged 4 commits into
TanStack:mainfrom
Sheraff:chore/pnpm-11-9
Nov 6, 2026
Merged

tannerlinsley merged 4 commits into
TanStack:mainfrom
Sheraff:chore/pnpm-11-9

Conversation

@Sheraff

@Sheraff Sheraff commented Jun 23, 2026 •

Copy link
Copy Markdown
Contributor

Running Corepack from a workspace package currently selects its stale pnpm 9.15.5 pin instead of the root's pnpm 11.1.0 pin. This removes the ten nested pins so every workspace uses the single existing root version.

The pnpm 11.9 upgrade and minimum-release-age policy are separate proposals. Neither is needed to fix directory-dependent version selection, and neither is included in the final diff.

AI review notes:
Validation:

  • Actual Corepack selected pnpm 11.1.0 at the root and in all ten workspaces, with Corepack network access disabled.
  • A frozen install launched through Corepack from packages/create passed without lockfile changes.
  • A negative control retaining a nested pin still selected pnpm 9.15.5.
  • Normal Husky hook passed all ten workspace builds, lint, 569 unit tests and eight blocking browser cases.
  • No runtime or dependency changes. Provider traffic was blocked throughout validation.

Summary by CodeRabbit

  • Chores
    • Removed the explicit pnpm version declaration from the CLI, app-creation packages, and custom CLI examples. These packages no longer specify a particular pnpm version in their metadata. The Node.js engine requirements remain unchanged where noted.

@coderabbitai

coderabbitai Bot commented Jun 23, 2026 •

Copy link
Copy Markdown

Explain Change →

No actionable comments were generated in the recent review.

Walkthrough

The packageManager field specifying pnpm@9.15.5 was removed from ten package manifests. Other manifest fields, including the stated Node.js engine requirements, remain unchanged.

Changes: Package manager metadata

Layer / File(s) Summary
Remove package manager pins
cli-aliases/*/package.json, examples/custom-cli/*/package.json, packages/cli/package.json, packages/create/package.json
Removes the packageManager field specifying pnpm@9.15.5 from the listed package manifests.

Estimated code review effort: 1 (Trivial) | ~4 minutes

Change: Bug fix

Merge Risk: Minimal · up to 7a962

This change makes pnpm version selection consistent across the workspace by relying on the root pin. No actionable merge risk remains.

Pre-merge checks: Passed 4

Check name Status Explanation
Title check Passed The title clearly describes the removal of nested pnpm pins so the workspace uses the root pin.
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Finishing Touches

Generate unit tests (beta)

  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

Recent review info

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 329b1f69-c46f-45d8-b906-8f74703ed7dc
Commits

Reviewing files that changed from the base of the PR and between 4892999 and 7a962f5.

Files selected for processing: 10

  • cli-aliases/create-start-app/package.json
  • cli-aliases/create-tanstack-app/package.json
  • cli-aliases/create-tanstack/package.json
  • cli-aliases/create-tsrouter-app/package.json
  • cli-aliases/ts-create-start/package.json
  • examples/custom-cli/create-qwik-app/package.json
  • examples/custom-cli/create-rwsdk/package.json
  • examples/custom-cli/customized-react/package.json
  • packages/cli/package.json
  • packages/create/package.json
Files with no reviewable changes: 10

  • packages/cli/package.json
  • cli-aliases/create-tsrouter-app/package.json
  • cli-aliases/create-start-app/package.json
  • cli-aliases/ts-create-start/package.json
  • cli-aliases/create-tanstack-app/package.json
  • cli-aliases/create-tanstack/package.json
  • packages/create/package.json
  • examples/custom-cli/customized-react/package.json
  • examples/custom-cli/create-qwik-app/package.json
  • examples/custom-cli/create-rwsdk/package.json

Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 2 remain after this review.

@tannerlinsley

Copy link
Copy Markdown
Member

The version mismatch is reproducible. Can we fix it by keeping one pnpm pin at the workspace root, then handle the tool upgrade and release-age policy separately?

AI review notes:
On current main, Corepack selects pnpm 11.1.0 at the root and pnpm 9.15.5 inside packages/cli and cli-aliases/create-tsrouter-app. pnpm 9.15.5 rejects the current frozen workspace lockfile with an overrides mismatch. In a disposable copy, deleting just those nested pins made both directories select the existing root version. That fixes the mismatch without needing to keep a second copy of the pin in each package.

@tannerlinsley tannerlinsley changed the title chore: update pnpm to 11.9.0 fix: use one pnpm pin throughout the workspace Nov 6, 2026
@changeset-bot

changeset-bot Bot commented Nov 6, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 7a962f5

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@tannerlinsley
tannerlinsley merged commit 0183df7 into TanStack:main Nov 6, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants