cli
cli copied to clipboard
[BUG] "sill idealTree buildDeps" takes a lot of time a project with workspaces
Is there an existing issue for this?
- [X] I have searched the existing issues
Current Behavior
After executing npm install the sill idealTree buildDeps step takes a long time (minutes) causing npm@7 working with workspaces slower than npm@6 installing projects separately.
It seems that is fetching packages sequentially instead using parallelization.
Vídeo with the demo:
https://user-images.githubusercontent.com/1561955/118666331-61c26d80-b7f3-11eb-8060-4cb7d28480a9.mp4
Expected Behavior
npm install on npm@7 with workspaces takes less time than npm@6 installing manually each workspace.
Steps To Reproduce
- In a environment with a lot of dependencies and workspaces.
- With this config:
"workspaces": [
"domain",
"icons",
"literals"
],
- Run
npm install - See that the step
buildDepstake longer than expected.
Some considerations:
- We're using some npm private packages on our package.json.
- Workspaces are dependencies of root project as well.
More info: On Travis, builds using npm@6 and installing workspaces manually takes 90s. Using npm@7 it takes 170s using a single npm install.
Environment
- OS: macOS 11.3.1
- Node: 16.1.0
- npm: 7.17.0
I can't provide a example project as it's a commercial project with full of private dependencies but If there's some log or something I could try to give you, feel free to tell me how to extract it.
Tried latest version 7.17.0. Still happening.
I am still facing the slowness on latest npm v7 and v8
What helped me was to completely uninstall node and then to reinstall it with nvm. However, I dont know if this is going to happen again.
Edit: Okay, it happens again.
@v-dawg this is happening in Travis as well. I think it's something related with the way of resolving the tree.
Tried with yarn and npm (v8.1.4 and v8.3.0), also the same thing happens.
But it's working on 7.19.1
This bug is critical for me. It's so slow that causes ETIMEDOUT even on a empty project.

Update:
After running for a while, npm returns:
npm ERR! code ETIMEDOUT
npm ERR! syscall connect
npm ERR! errno ETIMEDOUT
npm ERR! network request to https://registry.npmjs.org/natural failed, reason: connect ETIMEDOUT 2606:4700::6810:1223:443
npm ERR! network This is a problem related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settings.
npm ERR! network
npm ERR! network If you are behind a proxy, please make sure that the
npm ERR! network 'proxy' config is set properly. See: 'npm help config'
npm ERR! A complete log of this run can be found in:
npm ERR! /home/eduardo/.npm/_logs/2021-12-11T07_56_48_769Z-debug.log
But when I go to https://registry.npmjs.org/natural, it loads pretty fast, so I don't think it's a network problem.
Same issue I think?
npm install
⸨⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⸩ ⠦ idealTree:myrepo: sill idealTree buildDeps
nvm ls
v14.17.0
-> v16.11.1
npm --version
8.0.0
Edit, just updated to
⸨#########⠂⠂⠂⠂⠂⠂⠂⠂⠂⸩ ⠙ idealTree:auth0-configuration: timing idealTree:#root Completed in 493084ms
installing react with npx or installing packages for backend :,c
Aborting installation.
npm install --no-audit --save --save-exact --loglevel error react react-dom react-scripts cra-template has failed.
Deleting generated file... package.json
Deleting frontend/ from M:\nodeB\principal\list-to-task2
Done.
PS M:\nodeB\principal\list-to-task2> mkdir backend
PS M:\nodeB\principal\list-to-task2\backend> npm i dotenv
added 1 package, and audited 2 packages in 969ms
found 0 vulnerabilities
PS M:\nodeB\principal\list-to-task2\backend> npm i express
PS M:\nodeB\principal\list-to-task2\backend> l idealTree buildDeps
I tried all the solutions I found on the Internet: removing the proxy, setting the ssl cert to false, removing node_modules, removing the package-lock... nothing worked...
Then, I updated my WSL Ubuntu 20.04 to 22.04 and it worked!
sudo apt update
sudo apt upgrade
sudo apt dist-upgrade
sudo apt install update-manager-core
sudo nano /etc/update-manager/release-upgrades
change the Prompt value to Prompt = lts
sudo do-release-upgrade -d
cat /etc/os-release
for more info see this link
I tried all the solutions I found on the Internet: removing the proxy, setting the ssl cert to false, removing node_modules, removing the package-lock... nothing worked...
Then, I updated my WSL Ubuntu 20.04 to 22.04 and it worked!
sudo apt update sudo apt upgrade sudo apt dist-upgrade sudo apt install update-manager-core sudo nano /etc/update-manager/release-upgradeschange the
Promptvalue toPrompt = ltssudo do-release-upgrade -d cat /etc/os-releasefor more info see this link
This worked for me. It took a few hours but now everything is working as it should again. Clean slate. Thanks a lot for this @PedroLuisBernardos !!!
npm set strict-ssl false
works for me
suddenly encountered this kind of issue again. I had this node app running, then eventually when i run npm i, the installation hangs only.
even if i tried creating new empty project, i tried installing one package, it hangs too.
what seems to be the problem?
i have tried also the solutions provided on stack overflow and on this, still not work.
suddenly encountered this kind of issue again. I had this node app running, then eventually when i run npm i, the installation hangs only.
even if i tried creating new empty project, i tried installing one package, it hangs too.
what seems to be the problem?
i have tried also the solutions provided on stack overflow and on this, still not work.
What you have tried to resolve that isssue? I am stuck now.
I've tried so many ways to run npm install but doesn't work. If you're in a react application, try to use the yarn package running the following command yarn install or just yarn. It worked for me.
And if you're using a corporation network, try to use an wireless signal (Wi-fi).
I tried all the solutions I found on the Internet: removing the proxy, setting the ssl cert to false, removing node_modules, removing the package-lock... nothing worked... Then, I updated my WSL Ubuntu 20.04 to 22.04 and it worked!
sudo apt update sudo apt upgrade sudo apt dist-upgrade sudo apt install update-manager-core sudo nano /etc/update-manager/release-upgradeschange the
Promptvalue toPrompt = ltssudo do-release-upgrade -d cat /etc/os-releasefor more info see this link
This worked for me. It took a few hours but now everything is working as it should again. Clean slate. Thanks a lot for this @PedroLuisBernardos !!!
Yeah you should definitely upgrade to 22.04 I would just set the "Prompt = normal" instead of LTS. Otherwise, the deps will be pretty old.
npm set strict-ssl false
works for me
I can confirm the same issue:
Environment OS: macOS Monterey 12.6 Node: v17.8.0 npm: 8.5.5
I've moved the project to pnpm and now it's using a decent amount of time.
I'm closing the issue as I don't think there's no special interest on this. :)
After all the cache clearing and folder deletion, good ol' machine restart done the trick...
I'm having the similar issues. Mine just freeze without any progress. Have anyone found any solution to this yet?
For me, it was due to the fact that npm was not failing even if it doesn't get a reply from the server for a very long time, it stays stuck. I figured out it was due to some wrong configuration on my WSL environment that npm requests were ignored silently.
npm set strict-ssl false
Finally get this and it works!
For me it worked ignoring the .npmrc file
C:\Users\your_user search for .npmrc and rename it as you wish in my case I renamed it like this .npmrc_ and it worked.
I can confirm the same issue:
Environment OS: macOS Ventura 13.1 Node: v19.3.0 npm: 9.2.0
Same issue.
Environment OS: Ubuntu Linux 22.04 Node: v18.12.1 npm: 8.19.2
Node and NPM installed through NVM.
I have tried everything on this thread without success.
npm set strict-ssl false does not fix the issue.
I have also tried node 16 with same hang.
I cannot downgrade any further than 16 because it breaks min requirements on some packages.
Running npm doctor and there are no reported ping issues so not a connection issue.
[Solved!] In my case was I am using a wifi connection with a WPA password (not secure). Changed to my personal 4G (WPA2/3) and now is working again. =/
For me it worked to delete the proxy with
npm config delete proxy
and also making sure that registry.npmjs.org is reachable, ie.
ping registry.npmjs.org
one of the reason is IPV6.
Same issue
MacOs node: 18.12.0 npm: 8.19.2
Switched to my personal G4 from Wifi and it worked. wtf