Skip to content

fix: pin pnpm@10.30.2 in web Dockerfile builder stage#22

Merged
UsamaSadiq merged 1 commit into
foss-mainfrom
fix/corepack-pin-pnpm-builder
May 13, 2026
Merged

fix: pin pnpm@10.30.2 in web Dockerfile builder stage#22
UsamaSadiq merged 1 commit into
foss-mainfrom
fix/corepack-pin-pnpm-builder

Conversation

@aznszn
Copy link
Copy Markdown

@aznszn aznszn commented May 13, 2026

Summary

  • corepack enable pnpm runs before COPY . . in the builder stage, so package.json (which declares packageManager: pnpm@10.30.2) isn't present yet
  • Corepack falls back to downloading the latest pnpm (11.1.1), which changed the global bin directory and breaks pnpm add -g turbo
  • Replace with corepack prepare pnpm@10.30.2 --activate to explicitly pin the version before any files are copied in

Temporary workaround until upstream fixes the COPY ordering in the builder stage so package.json is present before corepack runs.

Test plan

  • Run make dev.build.plane.web on the devstack and confirm the build completes successfully

🤖 Generated with Claude Code

corepack enable pnpm runs before COPY . . so the packageManager field
in package.json (pnpm@10.30.2) is not yet available. Corepack falls
back to downloading the latest pnpm (11.1.1), which changed the global
bin directory and breaks the subsequent pnpm add -g turbo call.

Replace with corepack prepare pnpm@10.30.2 --activate to explicitly
pin the version. Temporary workaround until upstream fixes the COPY
ordering in the builder stage so package.json is present before
corepack runs.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@UsamaSadiq UsamaSadiq merged commit 3eb8097 into foss-main May 13, 2026
8 checks passed
UsamaSadiq pushed a commit that referenced this pull request May 14, 2026
* fix: pin pnpm@10.30.2 via corepack prepare in admin, live, space Dockerfiles

corepack enable without a version pinned causes corepack to resolve pnpm
from the workspace packageManager field (11.x), which moved the global bin
to $PNPM_HOME/bin — breaking pnpm add -g in each builder stage.

Add `corepack prepare pnpm@10.30.2 --activate` to builder and installer
stages in Dockerfile.admin, Dockerfile.live, and Dockerfile.space,
matching the pattern already used in Dockerfile.web (PR #22).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(space): use corepack prepare to pin pnpm@10.30.2 in installer stage

Replace `corepack enable pnpm` with `corepack prepare pnpm@10.30.2 --activate`
in the installer stage for parity with Dockerfile.admin and Dockerfile.live.
Also restore explicit `corepack enable pnpm` in the base stage for clarity.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
aznszn added a commit that referenced this pull request May 14, 2026
* fix: pin pnpm@10.30.2 via corepack prepare in admin, live, space Dockerfiles

corepack enable without a version pinned causes corepack to resolve pnpm
from the workspace packageManager field (11.x), which moved the global bin
to $PNPM_HOME/bin — breaking pnpm add -g in each builder stage.

Add `corepack prepare pnpm@10.30.2 --activate` to builder and installer
stages in Dockerfile.admin, Dockerfile.live, and Dockerfile.space,
matching the pattern already used in Dockerfile.web (PR #22).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(space): use corepack prepare to pin pnpm@10.30.2 in installer stage

Replace `corepack enable pnpm` with `corepack prepare pnpm@10.30.2 --activate`
in the installer stage for parity with Dockerfile.admin and Dockerfile.live.
Also restore explicit `corepack enable pnpm` in the base stage for clarity.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
hunzlahmalik added a commit that referenced this pull request May 20, 2026
revert: retire pnpm@10.30.2 pin (PRs #22 + #28) — fixed upstream in v1.3.1
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