What does 'invalid' mean when using npm list?
I am new to nodejs and i had just installed bower module globally. Ever since then, npm list command gives the following output which I searched for on the web but couldn't find any help :
**npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/chalk
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/update-notifier/node_modules/configstore
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/got/node_modules/object-assign
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-url
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/update-notifier/node_modules/string-length/node_modules/strip-ansi
npm ERR! not ok code 0**
The rest of the output is normal and lists the installed modules. Can anyone explain what's going on?
Solution 1:
I was getting this error having the same package installed both in "dependencies" and "devDependencies" with different versions.
Solution 2:
It means that something depends on, for example, "async":"0.9.3"
but when they do require("async")
, npm thinks that they'll get some other version. And also check that the dependencies and their versions listed in your package.json
file are available.
If everything is right then you can solve this problem with
npm update
followed by
npm install.
Solution 3:
I was getting this error after installing a newer version of a module, without updating my package.json. So the package.json required the older version, while npm list
was detecting a newer version in my node_modules
directory.
Running the following command got me rid of the message.
npm install {required_module}@{new_version} --save
Solution 4:
Simplest answer
This can arise when the installed version of a package does not correspond to what package.json
would install.
Example
Say you have specified "axios": "0.19.2",
in your package.json
, but after that you would install a specific version using npm install [email protected]
.
An npm list | grep axios
would now yield
├─┬ [email protected] invalid
Follow the instructions in this answer on how to fix it.