I have a Node.js app hosted on Heroku. Every time I do a git push heroku
I get the following error:
Counting objects: 14, done.
Delta compression using up to 6 threads.
Compressing objects: 100% (12/12), done.
Writing objects: 100% (12/12), 1.20 KiB, done.
Total 12 (delta 8), reused 0 (delta 0)
-----> Node.js app detected
-----> Resolving engine versions
Using Node.js version: 0.6.20
Using npm version: 1.2.12
-----> Fetching Node.js binaries
-----> Vendoring node into slug
-----> Installing dependencies with npm
npm http GET https://registry.npmjs.org/pg/0.6.15
npm http GET https://registry.npmjs.org/socket.io
npm http 200 https://registry.npmjs.org/pg/0.6.15
npm http GET https://registry.npmjs.org/pg/-/pg-0.6.15.tgz
npm http 200 https://registry.npmjs.org/socket.io
npm http GET https://registry.npmjs.org/socket.io/-/socket.io-0.9.13.tgz
npm http 200 https://registry.npmjs.org/pg/-/pg-0.6.15.tgz
npm http 200 https://registry.npmjs.org/socket.io/-/socket.io-0.9.13.tgz
npm http GET https://registry.npmjs.org/socket.io-client/0.9.11
npm http GET https://registry.npmjs.org/policyfile/0.0.4
npm http GET https://registry.npmjs.org/base64id/0.1.0
npm http GET https://registry.npmjs.org/redis/0.7.3
npm http GET https://registry.npmjs.org/generic-pool/1.0.9
npm http 200 https://registry.npmjs.org/policyfile/0.0.4
npm http GET https://registry.npmjs.org/policyfile/-/policyfile-0.0.4.tgz
npm http 200 https://registry.npmjs.org/base64id/0.1.0
npm http GET https://registry.npmjs.org/base64id/-/base64id-0.1.0.tgz
npm http 200 https://registry.npmjs.org/generic-pool/1.0.9
npm http GET https://registry.npmjs.org/generic-pool/-/generic-pool-1.0.9
.tgz
npm http 200 https://registry.npmjs.org/socket.io-client/0.9.11
npm http GET https://registry.npmjs.org/socket.io-client/-/socket.io-clie
nt-0.9.11.tgz
npm http 200 https://registry.npmjs.org/redis/0.7.3
npm http GET https://registry.npmjs.org/redis/-/redis-0.7.3.tgz
npm http 200 https://registry.npmjs.org/policyfile/-/policyfile-0.0.4.tgz
npm http 200 https://registry.npmjs.org/base64id/-/base64id-0.1.0.tgz
npm http 200 https://registry.npmjs.org/generic-pool/-/generic-pool-1.0.9
.tgz
npm http 200 https://registry.npmjs.org/socket.io-client/-/socket.io-clie
nt-0.9.11.tgz
npm http 200 https://registry.npmjs.org/redis/-/redis-0.7.3.tgz
> [email protected] install /tmp/build_36us8733h7kkr/node_modules/pg
> node-waf configure build || (exit 0)
Checking for program g++ or c++ : /usr/bin/g++
Checking for program cpp : /usr/bin/cpp
Checking for program ar : /usr/bin/ar
Checking for program ranlib : /usr/bin/ranlib
Checking for g++ : ok
Checking for node path : not found
Checking for node prefix : ok /tmp/node-node-nNUw
Checking for program pg_config : /usr/bin/pg_config
'configure' finished successfully (0.058s)
Waf: Entering directory `/tmp/build_36us8733h7kkr/node_modules/pg/build'
[1/2] cxx: src/binding.cc -> build/Release/src/binding_1.o
[2/2] cxx_link: build/Release/src/binding_1.o -> build/Release/binding.no
de
Waf: Leaving directory `/tmp/build_36us8733h7kkr/node_modules/pg/build'
'build' finished successfully (0.492s)
npm http GET https://registry.npmjs.org/uglify-js/1.2.5
npm http GET https://registry.npmjs.org/ws
npm http GET https://registry.npmjs.org/xmlhttprequest/1.4.2
npm http GET https://registry.npmjs.org/active-x-obfuscator/0.0.1
npm http 200 https://registry.npmjs.org/active-x-obfuscator/0.0.1
npm http GET https://registry.npmjs.org/active-x-obfuscator/-/active-x-ob
fuscator-0.0.1.tgz
npm http 200 https://registry.npmjs.org/uglify-js/1.2.5
npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-1.2.5.tgz
npm http 200 https://registry.npmjs.org/xmlhttprequest/1.4.2
npm http GET https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1
.4.2.tgz
npm http 200 https://registry.npmjs.org/ws
npm http GET https://registry.npmjs.org/ws/-/ws-0.4.25.tgz
npm http 200 https://registry.npmjs.org/active-x-obfuscator/-/active-x-ob
fuscator-0.0.1.tgz
npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-1.2.5.tgz
npm http 200 https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1
.4.2.tgz
npm http 200 https://registry.npmjs.org/ws/-/ws-0.4.25.tgz
npm http GET https://registry.npmjs.org/zeparser/0.0.5
npm http GET https://registry.npmjs.org/commander
npm http GET https://registry.npmjs.org/tinycolor
npm http GET https://registry.npmjs.org/options
npm http 200 https://registry.npmjs.org/zeparser/0.0.5
npm http GET https://registry.npmjs.org/zeparser/-/zeparser-0.0.5.tgz
npm http 200 https://registry.npmjs.org/options
npm http GET https://registry.npmjs.org/options/-/options-0.0.3.tgz
npm http 200 https://registry.npmjs.org/tinycolor
npm http GET https://registry.npmjs.org/tinycolor/-/tinycolor-0.0.1.tgz
npm http 200 https://registry.npmjs.org/commander
npm http GET https://registry.npmjs.org/commander/-/commander-0.6.1.tgz
npm http 200 https://registry.npmjs.org/zeparser/-/zeparser-0.0.5.tgz
npm http 200 https://registry.npmjs.org/options/-/options-0.0.3.tgz
npm http 200 https://registry.npmjs.org/tinycolor/-/tinycolor-0.0.1.tgz
npm http 200 https://registry.npmjs.org/commander/-/commander-0.6.1.tgz
> [email protected] install /tmp/build_36us8733h7kkr/node_modules/socket.io/node_
modules/socket.io-client/node_modules/ws
> (node-gyp rebuild 2> builderror.log) || (exit 0)
make: Entering directory `/tmp/build_36us8733h7kkr/node_modules/socket.io
/node_modules/socket.io-client/node_modules/ws/build'
CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
SOLINK_MODULE(target) Release/obj.target/bufferutil.node
SOLINK_MODULE(target) Release/obj.target/bufferutil.node: Finished
COPY Release/bufferutil.node
CXX(target) Release/obj.target/validation/src/validation.o
SOLINK_MODULE(target) Release/obj.target/validation.node
SOLINK_MODULE(target) Release/obj.target/validation.node: Finished
COPY Release/validation.node
make: Leaving directory `/tmp/build_36us8733h7kkr/node_modules/socket.io/
node_modules/socket.io-client/node_modules/ws/build'
npm ERR! cb() never called!
npm ERR! not ok code undefined
npm ERR! cb() never called!
npm ERR! not ok code 1
! Failed to install --production dependencies with npm
! Heroku push rejected, failed to compile Node.js app
To [email protected]:still-chamber-1286.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to '[email protected]:still-chamber-1286.git'
The error is in the last few lines: npm ERR! cb() never called! npm ERR! not ok code undefined npm ERR! cb() never called! npm ERR! not ok code 1 ! Failed to install --production dependencies with npm ! Heroku push rejected, failed to compile Node.js app
To [email protected]:still-chamber-1286.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to '[email protected]:still-chamber-1286.git'
I have had no problems with pushing my code to Heroku before; only since Monday have I had this error.
I have seen similar posts on the web referring to slightly different errors, but haven't seen one with ! [remote rejected] master -> master (pre-receive hook declined)
before.
There may be two possibilities=>
Try to update your node js and npm.
Permission issue => a. Move your solution on c drive in your respective user account b. Need to run bash or cmd as administrator.
Hope this will resolve your issue
In my case, I was running npm install
from within a Docker container that was running the node:10.16.0-alpine
image. The problem was triggered by package.json
pointing at a package directly in GitHub:
"dependencies": {
"gulp-sass-inline-svg": "git+https://github.com/chriswburke/gulp-sass-inline-svg.git"
}
After switching to a Docker image that had git installed, the error went away.
Turns out I was out of space! Deleting files on the drive allowed for normal startup and running.
IMPORTANT! The solution below is now regarded as unstable, and you should use Node Version Management instead: Node Version Manager on Github. David Walsh also has a good introduction to NVM. NVM works beautifully and I've been using it to manage legacy WordPress projects for a few years.
Please don't use this - use NVM
I just had this exactly issue when trying to install the Sage theme for WordPress. When I ran npm install
on the theme directory, it failed.
Looking in the dependencies in package.json
, I could see that the engine I was running for Node was out of date. Running node -v
on the command line showed that I was on v0.10.9, and the latest version of Sage requires >= 0.12.0
So here's the fix for that. These steps are from David Walsh's blog
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
You should then get a progress display, after which you will be up to date.
When I ran npm install
after doing this, everything worked fine, and I was able to run gulp
to build the initial dist
directory.
[Works] try
npm config delete https-proxy
it would have conflicted with proxy.
I too faced the same problem today as I force stopped the npm package download in between due to internet issues.
I tried various things like,
npm cache clean -f
- which did not work as expectedI finally tried to delete the folder containing the npm cache that was creating the problem. I ran the following command,
sudo rm -rf /Users/{user_system_user}/.npm/
Then I tried installing the package that was stuck and everything worked like a charm.
P.S: replace {user_sytem_user}
according to the current user of your system.
I had the same problem with NPM version 1.3.11, and solved it simply by re-running the exact same command multiple times ("npm update -g" in my case). The error popped up for a different package on each subsequent run and eventually everything updated successfully.
For me at least, it seems like it was being caused by a network issue (corrupted downloads). I was also getting an error about an invalid package, which I was able to resolve by deleting all instances of "tmp.tgz".
Edit: (Probably unrelated, but in case this helps anyone: I was using Windows, and started a command prompt as an Administrator after receiving the initial error).
In my case i couldnt install a VueJS plugin and i had to:
Changing the ownership of files:
sudo chown -R $(whoami) ~/.npm
sudo chown -R $(whoami) /usr/local/lib
sudo chown -R $(whoami) /usr/local/bin
And then made sure to ahve latest npm:
npm install -g npm@latest
Then installed my plugin and in your case probably your command isntead.
I had the same problem while installing ionic@beta
.
I tried the following items and they didn't help me.
npm cache clean
%temp%\npm-*
I solved the problem by installing node-v5.10.1-x64.msi (Previous version was node-v5.9.0-x64.msi) and run an npm cache clean
before installing ionic@beta
It worked!
I had faced the same issue, and i spend days to get a solution for the issue. In the end, i figured it out and it was an issue with my network.
I was using corporate proxy using a script. When i opened the pac file and get the proxy from there and added, it started working and never ever i faced the same issue.
If you have updated angular cli, npm, node, you don't need to do anything more. Just run the command below to resolve the issue. This command also resolves the issue of "unexpected end of line".
npm install --no-package-lock
If you have npm version 5 or above, try this first:
$ sudo npm cache verify
Otherwise:
$ sudo npm cache clean
My node and npm versions are:
$ node -v
v0.10.0
$ npm -v
1.2.14
It seems like this issue is not occurring with a specific configuration or node version. We experienced it a couple of times when redeploying and suspect the npm servers to cause this issue.
Retrying a couple of times did solve the issue eventually.
For mac users (HighSierra), do not install node using brew. It'll mess up with npm. I had to uninstall node and install using the package in the main nodejs.org source : https://nodejs.org/en/
Here's a simple guide that doesn't use brew: https://coolestguidesontheplanet.com/installing-node-js-on-macos/
It appears that particular dependency versions can cause this issue. For example, gulp-uglifycss 1.0.7 has this problem (see https://github.com/rezzza/gulp-uglifycss/issues/15).
If you are allowing major or minor version updates in your packages.json
via ^
or ~
, remove those characters thoughout the file and try another npm install
. If it works that time then you'll be alright after you have the fun of narrowing down which package is causing the problem.
For Ubuntu Users, the given below method worked for me.
Firstly, perform this : sudo npm cache verify
Then go to Home->.npm and delete the _cache folder by : sudo rm -rf _cacache/
go and check, maybe you found the solution.
Do npm install npm@latest -g
to update npm to the latest version.
This fixed the problem for me.
I did do npm cache clean
first
What helped me get over that error - cb() never called...
is downgrading my NPM version.
I had version 6.14.9, and I downgraded to version 6.14.6 by typing:
npm install -g [email protected]
note: nothing seemed to help. I tried many of the suggested solutions, including "npm cache clean" or uninstalling NPM and reinstalling.
For anyone hitting this page around Sept 29th, 2013, there's a closed bug in Node.js 0.10.19 which is causing this error.
https://github.com/isaacs/npm/issues/2907#issuecomment-15215278 https://github.com/joyent/node/issues/6263#issuecomment-25113849
If you're on Heroku you should upgrade to 0.10.20
"engines": {
"node": "0.10.20"
}
Knowing that this is an old question and many of you had provided your answers. Just to share my experience with this error and how I fixed.
This all started after I upgrade my Node version to > 12, I did go through all the answers and try to follow steps clearing npm
Cache, deleting the node_modules
folder. No one of them resolve my problem.
The root cause in my case was proxy restricting installation. I deleted the proxy settings to fix the problem.
Check if you have any proxy config
npm config list
Delete them by
npm config delete proxy
npm config delete http-proxy
npm config delete https-proxy
Now try
npm install
Picking up where mdp left, the problem is with node 0.10.19 and npm 1.3.11
I found the easiest way to manage the downgrade to keep things going smoothly to be NVM, here is a nice tutorial on how to use it. I had my server environment modified and running correctly downgrading from 0.10.19 to 0.10.18 in a matter of minutes with NVM.
I tried many things from internet. Only below method worked for me. If every answer in this question don't work, try below steps in below order. Note :
package-lock
fileC:\Users\ YOUR LOGIN NAME \AppData\Roaming\npm
" and
"C:\Users\ YOUR LOGIN NAME \AppData\Roaming\npm-cache
"AppData
and delete them too.npm cache clean --force
npm cache verify
npm install --force
I had the cb() never called!
error, and none of the answers here directly worked for me. I was running Node v8.11.2
, and I had to manually delete the package-lock.json
file to get anywhere. After doing this, I ran npm cache verify
per what some of the answers recommended. Then, running npm i
yielded the following result:
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN [email protected] No description
npm WARN [email protected] No repository field.
up to date in 5.118s
What worked for me was: delete the package-lock.json file and run the following command:
npm cache clean --force
For me none of the above solutions worked (reinstalling, clearing cache, folders etc.).
My problem was solved with:
npm config set registry https://registry.npmjs.org/
For me on npm 6.4.0
and node 10.9.0
none of the answers worked. Reinstalled node, npm, cleaned cache, removed folders ...
After some debugging it turned out I used npm link
for two of my modules under development to link to each other. Once I removed and redid some linking I was able to get it all working again.
I just globally installed the newest version of NPM and it worked for me. I guess Clearing npm cache is optional.
npm install -g npm
For anyone who has upgraded recently from 6.x to 6.7.0.
Deleting the /Users/{YOUR USERNAME}/.npm
folder solved my issues with npm install
.
I also, ran some of these commands suggested by https://npm.community/t/crash-npm-err-cb-never-called/858/93?u=jasonfoglia
sudo npm cache clean -f
sudo npm install -g n
But I'm not sure which actually worked until I deleted the folder. So if you experience this issue and just delete the .npm folder fixing your issue please note that in the comments.
I encountered the same problem on my Mac and I have tried all methods I can find: upgrade to latest Node, clean cache, remove _node_mudules_ directory, but all have no effect. Eventually, I believed it was the problem of Node environment, so I degraded my Node to an old LTS version 6.14.1, then the problem disappeared. This is what I do:
Install NVM (To get a brand new isolated node environment, you'd better use NVM to manage your multiple Node environments, go to here for details)
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash
Install Node.js 6.14.1
nvm install 6.14.1
Switch to the specific Node environment you install above
nvm use 6.14.1
Install create-react-app
npm install -g create-react-app
Create your react app
create-react-app appname
I was using WSL2 and ubuntu. I had added a .npmrc to home/user and run sudo and then I had this issue. I realized that I had to create my project inside ~ folder ($home/user). It was not working because my project was inside /mnt/c
I had the same issue while trying to install firebase-tools in my windows laptop. this is how i solved it.
npm cache clean --force
npm install npm@latest -g
npm install -g firebase-tools
I suggest: Switch to Yarn! - Yarn is a package manager which uses the same package.json
file and node_modules
folder as npm.
With npm I had the same problem: On a CentOS 6 install I got the ERR cb() never called
error repeatedly and could not find a way to make npm reliably complete installation of some packages (like webpack
for example). - Yarn works flawlessly, even on flaky network connections.
Migration to Yarn is easy. Most subcommands are the same. They have a good Migration guide. Read on to the handy CLI commands comparison at the end.
UPDATED: The problem is pretty common here is the new fix npm cache verify
run that you will be good to go!
Windows WSL, Ubuntu, npm install returns the error. My solution:
sudo npm install
not sure why i have to use sudo. Other solutions like clean cache didn't work for me.
Deleting package-lock.json
and installing the desired package again solved the issue for me.
sudo npm cache clean
didn't work out for me. Update to the latest version of node helps.
I had node v.5.91 and updated to v6.9.1
Do you have a specific version of "npm"
specified under "engines"
in your package.json
? Sounds like NPM v1.2.15 resolved the issue (and Heroku has available). I was getting the same problem with "1.1.x"
.
Run the following command which solved my issue
npm install --no-package-lock
I stumbled upon this issue when installing local packages from my computer.
I had moved the local packages to another folder. And then when I wanted to update, I started getting this error.
To resolve this, I deleted all the previously created symlinks from the following folder:
C:\Users\<USERNAME>\AppData\Roaming\npm\node_modules
After this i could install packages like before!
brew uninstall node
cd /usr/local
git checkout f7bbdcc /usr/local/Library/Formula/node.rb
brew install node
Find other versions like so:
brew versions node
Updating the NodeJS https://nodejs.org/en/ Fixed My Issue.
Run npm install -g npm
& npm cache clean
npm install -g npm
npm install
For me helped turn off antivirus
npm install
would result in:
npm ERR! cb() never called!
npm ERR! This is an error with npm itself. Please report this error at:
npm ERR! <https://github.com/npm/npm/issues>
In my case, this error started happening when I upgraded to Node.js version 8.11.1
. Previously using Node.js version 6.12.x
and NPM version 5.8.0
.
In addition to that, my test scripts would not find AVA:
sh: ava: command not found
npm ERR! Test failed. See above for more details.
The solution was to downgrade NPM to 5.7.1
Check if you have multiple versions of the npm
command in your system path variable.
In my case, I had a version in the Node install directory and an older one in the npm globals
install directory (called prefix
in the npm config file). So I checked npm config get prefix
for the location and deleted the link and the npm
folder from node_modules. (Deleting the other one might also work, depending on the order in your PATH variable.)
I have the same error in my project. I am working on isolated intranet so my solution was following:
npm clean cache --force
.npmrc
Source: Stackoverflow.com