Skip to content

Commit a25b3bf

Browse files
authored
Enables postinstall scripts for pnpm (#6902)
## What's the problem this PR addresses? It came to me that since pnpm no longer runs postinstall scripts by default, the benchmark was a little skewed since Yarn (and npm) do. The benchmarks are intended to compare apples to apples, so either postinstalls should be disabled in Yarn / npm as well, or they should be enabled in pnpm. I think it makes more sense to enable them, as it can uncover bugs that would otherwise be hidden away. ## How did you fix it? Enabled the postinstall scripts in the package manager benchmarks. To be fair it probably doesn't change much, if anything - the full cold Gatsby benchmark shows around 2 seconds of removed install time around Feb 3rd 2025 which I think is caused by the lack of postinstall, although I'm not certain, but that's about it. Pnpm remains really fast, kudos! <img width="145" height="93" alt="Screenshot 2025-09-18 at 10 43 02" src="https://github.com/user-attachments/assets/3f9a362a-5c71-41c1-99b2-b2bc930ca796" /> Curiously the same change occurs in the "Recurrent calls" benchmark which probably shouldn't need to run postinstall scripts. Does pnpm have a bug causing it to rebuild postinstall scripts when they aren't needed? ## Checklist <!--- Don't worry if you miss something, chores are automatically tested. --> <!--- This checklist exists to help you remember doing the chores when you submit a PR. --> <!--- Put an `x` in all the boxes that apply. --> - [x] I have read the [Contributing Guide](https://yarnpkg.com/advanced/contributing). <!-- See https://yarnpkg.com/advanced/contributing#preparing-your-pr-to-be-released for more details. --> <!-- Check with `yarn version check` and fix with `yarn version check -i` --> - [x] I have set the packages that need to be released for my changes to be effective. <!-- The "Testing chores" workflow validates that your PR follows our guidelines. --> <!-- If it doesn't pass, click on it to see details as to what your PR might be missing. --> - [x] I will check that all automated PR checks pass before the PR gets reviewed.
1 parent a282913 commit a25b3bf

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

scripts/bench-run.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,8 @@ setup-yarn2-pnpm() {
6060
setup-pnpm() {
6161
>> "$BENCH_DIR/.npmrc" echo \
6262
"strict-peer-dependencies=false"
63+
>> "$BENCH_DIR/pnpm-workspace.yaml" echo \
64+
"dangerouslyAllowAllBuilds: true"
6365
}
6466

6567
case $PACKAGE_MANAGER in

0 commit comments

Comments
 (0)