Skip to content

Commit 64115c3

Browse files
committed
fix(ci): pnpm 11 两阶段审批—改用 allowBuilds 真正放行 postinstall
pnpm 11 的 build script 审批拆成两步: - onlyBuiltDependencies 只声明"候选" - allowBuilds 才是真正"已批准可执行" 光配 onlyBuiltDependencies 不够,install 仍然抛 ERR_PNPM_IGNORED_BUILDS。 本地 pnpm 11.3.0 复现并验证:allowBuilds 单独就够,不需要再列 onlyBuiltDependencies。
1 parent 3520da5 commit 64115c3

1 file changed

Lines changed: 10 additions & 7 deletions

File tree

frontend/pnpm-workspace.yaml

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
1-
# pnpm 11 起,settings 必须放在 pnpm-workspace.yaml(即便不是真正的
2-
# workspace 也要这个文件)。package.json 里的 pnpm 字段已不再读取。
1+
# pnpm 11 起:
2+
# 1. settings 必须放在 pnpm-workspace.yaml(即使不是真正的 workspace),
3+
# package.json 里的 pnpm 字段不再读取。
4+
# 2. 两阶段审批机制:onlyBuiltDependencies 仅声明"候选",真正允许执行
5+
# postinstall 脚本要写在 allowBuilds 里(pnpm approve-builds --all
6+
# 会自动生成)。allowBuilds 已含完整语义,不需要再列 onlyBuiltDependencies。
37
#
4-
# esbuild / msgpackr-extract 带 native postinstall,pnpm 默认拒绝运行
5-
# 未授权脚本(ERR_PNPM_IGNORED_BUILDS);显式列在白名单里放行。
6-
onlyBuiltDependencies:
7-
- esbuild
8-
- msgpackr-extract
8+
# esbuild / msgpackr-extract 带 native postinstall,明示授权。
9+
allowBuilds:
10+
esbuild: true
11+
msgpackr-extract: true

0 commit comments

Comments
 (0)