folke / ultra-runner

🏃⛰ Ultra fast monorepo script runner and build tool
https://www.npmjs.com/package/ultra-runner
Apache License 2.0
1.2k stars 32 forks source link

Missing `process.env.npm_config_user_agent` #251

Open TenviLi opened 2 years ago

TenviLi commented 2 years ago

How to reproduce this problem?

1⃣️ Add npm script

"print": "node -e 'console.log(process.env)'"

2⃣️ Run npm script with ultra-runner

$ ultra -r --filter '+your/package' npm run print
Result

It will be found that some environment variables of the package manager are missing from the printed environment variables.

3⃣️ Run npm script without ultra-runner

$ cd your/package
$ npm run print
Result

It will be found that some environment variables of the package manager (such as npm_node_execpath, npm_config_user_agent) are appearing from the printed environment variables.

Consequences

The various libraries will not work, which using npm_config_user_agent to determine package manager type, aka only-allow.

https://www.npmjs.com/package/only-allow