You have an outdated npm. Please update to the latest stable npm.
npm ERR! code EPERM
npm ERR! code EACCES
sudo chown -R $(whoami) "$HOME/.npm"
.sudo
. e.g. sudo npm install express -g
. (You'll probably need to fix cache permissions afterwards, as above).In your .travis.yml
replace this:
before_install:- npm install -g npm@latest
with this:
before_install:- '[ "${TRAVIS_NODE_VERSION}" != "0.8" ] || npm install -g npm@1.4.28'- npm install -g npm@latest
This suggestion is based on this Travis issue and comes courtesy @simondean.
Error: ENOENT, stat 'C:\Users\<user>\AppData\Roaming\npm'
on Windows 7This is a consequence of joyent/node#8141, and is an issue with the Node installer for Windows. The workaround is to ensure that C:\Users\<user>\AppData\Roaming\npm
exists and is writable with your normal user account.
npm ERR! Error: ENOSPC, write
You are trying to install on a drive that either has no space, or has no permission to write.
npm config set tmp /path/to/big/drive/tmp
ornpm ERR! not found: git
ENOGIT
You need to install git.
@drmyersii went through what sounds like a lot of painful trial and error to come up with a working solution involving Windows long paths and some custom Vagrant configuration:
This is the commit that I implemented it in, but I'll go ahead and post the main snippet of code here:
config.vm.provider "virtualbox" do |v|v.customize ["sharedfolder", "add", :id, "--name", "www", "--hostpath", (("//?/" + File.dirname(__FILE__) + "/www").gsub("/","\\"))]endconfig.vm.provision :shell, inline: "mkdir /home/vagrant/www"config.vm.provision :shell, inline: "mount -t vboxsf -o uid=`id -u vagrant`,gid=`getent group vagrant | cut -d: -f3` > www /home/vagrant/www", run: "always"In the code above, I am appending
\\?\
to the current directory absolute path. This will actually force the Windows API to allow an increase in the MAX_PATH variable (normally capped at 260). Read more about max path. This is happening during the sharedfolder creation which is intentionally handled by VBoxManage and not Vagrant's "synced_folder" method. The last bit is pretty self-explanatory; we create the new shared folder and then make sure it's mounted each time the machine is accessed or touched since Vagrant likes to reload its mounts/shared folders on each load.
git:
and ssh+git:
URLs for GitHub repos, breaking proxies@LaurentGoderre fixed this with some Git trickery:
I fixed this issue for several of my colleagues by running the following two commands:
git config --global url."https://github.com/".insteadOf git@github.com: git config --global url."https://".insteadOf git://
One thing we noticed is that the
.gitconfig
used is not always the one expected so if you are on a machine that modified the home path to a shared drive, you need to ensure that your.gitconfig
is the same on both your shared drive and inc:\users\[your user]\
npm ERR! Error: 7684:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:openssl\ssl\s23_clnt.c:787:
You are trying to talk SSL to an unencrypted endpoint. More often than not, this is due to a proxy configuration error (see also this helpful, if dated, guide). In this case, you do not want to disable strict-ssl
– you may need to set up a CA / CA file for use with your proxy, but it's much better to take the time to figure that out than disabling SSL protection.
npm ERR! Error: SSL Error: CERT_UNTRUSTED
npm ERR! Error: SSL Error: UNABLE_TO_VERIFY_LEAF_SIGNATURE
This problem will happen if you're running Node 0.6. Please upgrade to node 0.8 or above. See this post for details.
You could also try these workarounds: npm config set ca ""
or npm config set strict-ssl false
npm ERR! Error: SSL Error: SELF_SIGNED_CERT_IN_CHAIN
npm no longer supports its self-signed certificates
Either:
npm install npm -g --ca=""
npm config set ca=""
If this does not fix the problem, then you may have an SSL-intercepting proxy. (For example, https://github.com/npm/npm/issues/7439#issuecomment-76024878)
Unsolved. See https://github.com/npm/npm/issues/9282
npm http 404 https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.7.0.tgz
npm ERR! fetch failed https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.7.0.tgz
npm ERR! Error: 404 Not Found
npm http 500 https://registry.npmjs.org/phonegap
Error: Invalid JSON
npm ERR! SyntaxError: Unexpected token <
npm ERR! registry error parsing json
npm cache clean
and/or try again later.package.json
requests. Check npm's proxy configuration.package.json
).ENOENT
/ ENOTEMPTY
errors in outputnpm is written to use resources efficiently on install, and part of this is that it tries to do as many things concurrently as is practical. Sometimes this results in race conditions and other synchronization issues. As of npm 2.0.0, a very large number of these issues were addressed. If you see ENOENT lstat
, ENOENT chmod
, ENOTEMPTY unlink
, or something similar in your log output, try updating npm to the latest version. If the problem persists, look at npm/npm#6043 and see if somebody has already discussed your issue.
cb() never called!
when using shrinkwrapped dependenciesTake a look at issue #5920. We're working on fixing this one, but it's a fairly subtle race condition and it's taking us a little time. You might try moving your This has been fixed in versions of npm newer than npm-shrinkwrap.json
file out of the way until we have this fixed.npm@2.1.5
, so update to npm@latest
.
npm login
errorsSometimes npm login
fails for no obvious reason. The first thing to do is to log in at https://www.npmjs.com/login and check that your e-mail address on npmjs.com
matches the
email address you are giving to npm login
.
If that's not the problem, or if you are seeing the message "may not mix password_sha and pbkdf2"
, then
~/.npmrc
– e.g., by running sed -ie '/registry.npmjs.org/d' ~/.npmrc
npm login
and it generally seems to work.
See https://github.com/npm/npm/issues/6641#issuecomment-72984009 for the history of this issue.
npm
hangs on Windows at addRemoteTarball
Check if you have two temp directories set in your .npmrc
:
> npm config ls -l
Look for lines defining the tmp
config variable. If you find more than one, remove all but one of them.
See https://github.com/npm/npm/issues/7590 for more about this unusual problem.
npm cache clean
and trying again.npm install
, use the -verbose
option to have more details.Last modified February 13, 2023 Found a typo? Send a pull request!