Skip to content

Commit 5e9380c

Browse files
committed
Disable pnpm strict-dep-builds in stable-install-modes guard
pnpm 11.0.7+ turned `ignored build scripts` into a fatal `ERR_PNPM_IGNORED_BUILDS`. Temp fixtures created by `assert-stable-install-modes.mjs` install `@parcel/watcher` transitively (via `@rspack/dev-server@^2`); its build script is unapproved in the freshly-copied fixture, so `pnpm install` dies before the canary CLI even runs. The 8 pnpm-mode failures in https://github.com/extension-js/examples/actions/runs/25494125419/job/74809414463 are all this — bun/npm/yarn modes pass on the same canary. Set `PNPM_CONFIG_STRICT_DEP_BUILDS=false` in the spawn env so pnpm 11 behaves like 10 (warn instead of fail). The guard exercises canary install paths; it has no business gating on pnpm's policy-of-the-week for build-script approval.
1 parent b075aa1 commit 5e9380c

1 file changed

Lines changed: 8 additions & 0 deletions

File tree

scripts/assert-stable-install-modes.mjs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,14 @@ function run(command, args, cwd, env = {}) {
8585
COREPACK_ENABLE_AUTO_PIN: '0',
8686
PNPM_CONFIG_FROZEN_LOCKFILE: 'false',
8787
npm_config_frozen_lockfile: 'false',
88+
// pnpm 11.0.7+ promoted "ignored build scripts" from a warning to a
89+
// fatal `ERR_PNPM_IGNORED_BUILDS`. Temp fixtures created here pull in
90+
// `@parcel/watcher` (transitive of `@rspack/dev-server@^2`) which has
91+
// an unapproved build script, so a fresh pnpm install in the fixture
92+
// dies before the canary even runs. Restore the pnpm 10 behaviour
93+
// (warn-only) so this guard exercises canary install paths, not
94+
// pnpm's policy-of-the-week.
95+
PNPM_CONFIG_STRICT_DEP_BUILDS: 'false',
8896
...env
8997
}
9098
})

0 commit comments

Comments
 (0)