-
-
Notifications
You must be signed in to change notification settings - Fork 952
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.
Already on GitHub? Sign in to your account
pnpm runs scripts with notable delay compared to yarn and npm #3409
Comments
The best solution would be to wrap pnpm with some native code (Rust, Reason, Go?) and use it to run scripts. An easier to implement solution would be to add some code to pnpm.cjs that will load a smaller bundle of code when scripts should be executed. |
I have published an experimental version of pnpm, where I bundled pnpm with pkg. It is published as This version of pnpm is much faster at startup. the pnpm version bundled with pkg:
the pnpm version that is NOT bundled with pkg:
|
I did not build an artifact for macOS yet. |
Oh. Got it. You only built an artifact for win, right? This is cool. Are there any drawbacks to using |
There are currently two artifacts. For linux-x64 and win-x64 https://github.com/pnpm/pnpm/tree/main/packages/artifacts so I think it should work in that docker image. Seems like there is issue with npm. Try to install with sudo. Or try to install it not globally but in some directory |
I hope pkg has no drawbacks because I have big plans: #3434 |
I released an artifact for macOS x64 as well. |
pnpm version: 6.2.1
pnpm offers great developer experience, for which I am very grateful 馃檹馃徎. However, I noticed that running scripts with pnpm is visibly slower than running them with yarn or npm. For example, a simple
echo
with pnpm finishes in 0.5s, whereas yarn gets back in 0.2s.This is not a feature request per se, but rather a request for improvement. Hopefully, the run performance can get much closer to a direct script call.
The floor seems to be at ~0.05s for me with this setup:
The text was updated successfully, but these errors were encountered: