feat: migrate pnpm v10 to v11#4783
Conversation
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (1)
Summary by CodeRabbit
WalkthroughBumps frontend packageManager to [email protected], removes pnpm.overrides from Changespnpm v11 Upgrade
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Suggested labels
Suggested reviewers
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
⚔️ Resolve 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. Comment |
arkid15r
left a comment
There was a problem hiding this comment.
@anirudhprmar have you tried to build the app with these changes?
|
yes, it worked. Done in 29.5s using pnpm v11.4.0. |
e81ccdb
what's |
|
ran pnpm build |
could you check |
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docker/frontend/Dockerfile.a11y.test`:
- Around line 8-10: Replace the invalid pnpm env vars by setting the correct
fetch-related pnpm config names: change PNPM_CONFIG_RETRY to
PNPM_CONFIG_FETCH_RETRIES and PNPM_CONFIG_TIMEOUT to PNPM_CONFIG_FETCH_TIMEOUT
in the ENV declaration that currently includes PNPM_CONFIG_RETRY,
PNPM_CONFIG_TIMEOUT and PATH (the same ENV block that references PNPM_HOME).
Ensure the values remain the same (5 and 30000) and keep PATH="$PNPM_HOME:$PATH"
untouched.
In `@docker/frontend/Dockerfile.local`:
- Around line 55-57: The COPY step currently sets ownership to root then runs
RUN chown -R node:node, creating an extra large layer; change the COPY
--from=builder ... --chown=root:root to use --chown=node:node so node_modules
are copied with final ownership and remove the subsequent RUN chown -R node:node
line (references: COPY --from=builder, node_modules, RUN chown -R node:node).
In `@frontend/pnpm-workspace.yaml`:
- Line 20: Remove the global workspace setting "confirmModulesPurge: false"
(which disables the pnpm confirmation prompt for all environments) and instead
set the CI environment variable to true in your CI pipeline; locate the
"confirmModulesPurge" entry in the pnpm workspace config and delete or revert
that key, and update your CI config to export or set CI=true so pnpm will run in
CI-safe mode without modifying local developer behavior.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
Run ID: dab7a513-5be2-4f3c-9a64-20d7f340ba12
⛔ Files ignored due to path filters (1)
frontend/pnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (6)
docker/frontend/Dockerfiledocker/frontend/Dockerfile.a11y.testdocker/frontend/Dockerfile.localdocker/frontend/Dockerfile.unit.testfrontend/.pnpmrcfrontend/pnpm-workspace.yaml
💤 Files with no reviewable changes (1)
- frontend/.pnpmrc
There was a problem hiding this comment.
2 issues found across 7 files (changes from recent commits).
Tip: Review your code locally with the cubic CLI to iterate faster.
Re-trigger cubic
There was a problem hiding this comment.
1 issue found across 1 file (changes from recent commits).
Tip: Review your code locally with the cubic CLI to iterate faster.
Re-trigger cubic
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
docker/frontend/Dockerfile.local (1)
11-12:⚠️ Potential issue | 🟠 Major | ⚡ Quick winFix pnpm v11 env var names in
docker/frontend/Dockerfile.local(lines 11-12).
pnpmreadsPNPM_CONFIG_*env vars and maps the suffix (snake_case/underscore form) to camelCase config keys; the fetch settings correspond tofetchRetries/fetchTimeout, so the correct env vars arePNPM_CONFIG_FETCH_RETRIESandPNPM_CONFIG_FETCH_TIMEOUT.PNPM_CONFIG_RETRY/PNPM_CONFIG_TIMEOUTwon’t set those values (whiledocker/frontend/Dockerfile.a11y.testalready uses the correct names). TheCOPY ... --chown=node:nodechange is fine.🔧 Proposed fix
-ENV PNPM_CONFIG_RETRY=5 \ - PNPM_CONFIG_TIMEOUT=30000 \ +ENV PNPM_CONFIG_FETCH_RETRIES=5 \ + PNPM_CONFIG_FETCH_TIMEOUT=30000 \ PATH="$PNPM_HOME:$PATH"🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docker/frontend/Dockerfile.local` around lines 11 - 12, Replace the incorrect pnpm env vars PNPM_CONFIG_RETRY and PNPM_CONFIG_TIMEOUT in the Dockerfile ENV block with the correct pnpm v11 names PNPM_CONFIG_FETCH_RETRIES and PNPM_CONFIG_FETCH_TIMEOUT so pnpm actually applies fetchRetries/fetchTimeout; update the ENV line(s) that currently set PNPM_CONFIG_RETRY and PNPM_CONFIG_TIMEOUT to use PNPM_CONFIG_FETCH_RETRIES and PNPM_CONFIG_FETCH_TIMEOUT respectively (preserve the values like 5 and 30000).
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Outside diff comments:
In `@docker/frontend/Dockerfile.local`:
- Around line 11-12: Replace the incorrect pnpm env vars PNPM_CONFIG_RETRY and
PNPM_CONFIG_TIMEOUT in the Dockerfile ENV block with the correct pnpm v11 names
PNPM_CONFIG_FETCH_RETRIES and PNPM_CONFIG_FETCH_TIMEOUT so pnpm actually applies
fetchRetries/fetchTimeout; update the ENV line(s) that currently set
PNPM_CONFIG_RETRY and PNPM_CONFIG_TIMEOUT to use PNPM_CONFIG_FETCH_RETRIES and
PNPM_CONFIG_FETCH_TIMEOUT respectively (preserve the values like 5 and 30000).
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
Run ID: 2b197463-dd9b-4aec-892e-4709a89d417b
📒 Files selected for processing (3)
docker/frontend/Dockerfile.a11y.testdocker/frontend/Dockerfile.localfrontend/pnpm-workspace.yaml
e085db8
|




Proposed change
Resolves #4747
Migrated pnpm version to 11.4.0(latest) for Frontend.
Checklist
make check-testlocally: all warnings addressed, tests passed