kev
kev

Reputation: 379

Npm ERR! Invalid version on npm install

Whenever I run npm install I get

npm ERR! Invalid Version:

This is the log file.

43 verbose stack TypeError: Invalid Version: 
43 verbose stack     at new SemVer (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\semver\classes\semver.js:38:13)
43 verbose stack     at compare (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\semver\functions\compare.js:3:32)
43 verbose stack     at Object.gte (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\semver\functions\gte.js:2:30)
43 verbose stack     at Node.canDedupe (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\@npmcli\arborist\lib\node.js:1054:32)
43 verbose stack     at PlaceDep.pruneDedupable (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\@npmcli\arborist\lib\place-dep.js:465:14)
43 verbose stack     at PlaceDep.placeInTree (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\@npmcli\arborist\lib\place-dep.js:326:14)
43 verbose stack     at PlaceDep.place (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\@npmcli\arborist\lib\place-dep.js:214:10)
43 verbose stack     at new PlaceDep (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\@npmcli\arborist\lib\place-dep.js:71:10)
43 verbose stack     at C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\@npmcli\arborist\lib\arborist\build-ideal-tree.js:965:31
43 verbose stack     at Array.map (<anonymous>)
44 verbose cwd C:\Users\Dont\Want\To\Reveal\This\Information
45 verbose Windows_NT 10.0.19042
46 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\Myself\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js" "i" "-force"
47 verbose node v16.14.0
48 verbose npm  v8.5.1
49 error Invalid Version: 
50 verbose exit 1
51 timing npm Completed in 18500ms

I don't understand what version of what is invalid? Help!

Upvotes: 32

Views: 85736

Answers (8)

Abraham
Abraham

Reputation: 15690

Solution

Delete the node_modules folder, remove package.lock and clean cache:

rm -rf node_modules/
npm cache clean

If still not working, you want to take the risk of breaking changes, this will do it

rm package-lock.json
npm cache clean --force

Re-install

npm install

or simply

npm i

Upvotes: 7

Yaya HC
Yaya HC

Reputation: 385

Try to remove the "version" key from your package.json file.

For example, your package.json may look like this:

{
  "name": "app_name",
  "version": "1.0.0",
  "private": true,
  // rest of file
}

Remove the "version" line so it becomes:

{
  "name": "app_name", 
  "private": true,
  // rest of file
}

Removing the version number forces npm to use the latest available version of each dependency instead of trying to install a specific one. This can resolve errors where npm tries to install an invalid or unavailable version.

Let me know if the error persists after removing the version number, as there could be other causes. But this solution works for me.

Upvotes: 1

shai tibber
shai tibber

Reputation: 154

Ran into a similar problem after cloning an old project. Tried all of these solutions, none worked. Turns out my problem was due to deprecated package versions. I removed them all and added them gradually until I figured out which were the ones giving me problems. Luckily, The newer versions of these packages were ok.

Upvotes: 0

jbuhacoff
jbuhacoff

Reputation: 1338

Delete package-lock.json and node_modules/.package-lock.json, then run the npm install command again.

This solves the problem for me without having to delete and re-download all the modules that were installed correctly.

Upvotes: 13

Basit Balogun
Basit Balogun

Reputation: 21

You should also ensure that the name properties in app.json and package.json are the same- they were different in mine and caused the error

Upvotes: 0

Victor Karangwa
Victor Karangwa

Reputation: 2216

Deletingnode_modules and package-lock.json (OR yarn.lock) solved the issue for me.

Upvotes: 51

Maxime Ch&#233;ramy
Maxime Ch&#233;ramy

Reputation: 18831

I had the same error with [email protected]. Fixed by downgrading to [email protected].

Upvotes: 2

bitbuoy
bitbuoy

Reputation: 393

Solution : if you check your "package.json" file in your projects root, it's probably missing one or all of the following properties:

  1. name
  2. version

for version, it has to be in the form "x.x.x", i.e in my(and probably yours) case "1.0.0"

for name you can obtain it from the "app.json" for example in my case:

{                                                                                                                                                                   
     "expo": {
       "name": "the-10-min",
       "slug": "the-10-min",
       "privacy": "public",
       "platforms": [
         "ios",
         "android",
         "web"
      ],

so in my case the name property in the "package.json" file will be "the-10-min" .Plug in the values for name and version then run the command "npm install"

Upvotes: 1

Related Questions