Troubleshooting
Fix ERR_PNPM_IGNORED_BUILDS in DSH
Treat ERR_PNPM_IGNORED_BUILDS as a blocked dependency build, not proof that the DSH plugin itself is broken.
01
Confirm which dependency was blocked
Keep the full pnpm output and identify the package requesting a build script. Do not approve every package to make the warning disappear.
- Run pnpm ignored-builds to inspect blocked packages
- Compare the package with the plugin lockfile
- Review the package repository before approval
02
Approve the smallest trusted set
Use pnpm approve-builds interactively or an explicit allowBuilds policy only after review. Commit policy changes so the build remains reproducible.
- Avoid blanket approval
- Reinstall after policy changes
- Keep the original error for rollback
Review sources
Sources help verify current facts. Their inclusion does not imply endorsement of this page.
ERR_PNPM_IGNORED_BUILDS questions
What does ERR_PNPM_IGNORED_BUILDS mean?
pnpm found dependencies that want to run install scripts and refused to run them, because arbitrary install scripts are the main supply-chain risk in a package install. It is a safety default rather than a sign that the DSH plugin is broken.
Can I approve everything to make ERR_PNPM_IGNORED_BUILDS go away?
You can, and you should not. Blanket approval runs the install script of every dependency including transitive ones you never chose, so approve only the specific packages you have looked at.
How do I see which packages are blocked?
Run pnpm ignored-builds in the same directory as the failed install. It prints the exact package names, which you then compare against the plugin's lockfile before deciding anything.
Will the plugin work without approving the build?
Sometimes. Packages that only build an optional native speedup still load, while ones that compile a required binary do not. Try the plugin first and approve only if it actually fails.
Does ERR_PNPM_IGNORED_BUILDS mean the plugin is unsafe?
No. The warning fires for any dependency carrying a build script and says nothing about the plugin's own code. Treat it as a prompt to look, not a verdict.