npm Community Forum (Archive)

The npm community forum has been discontinued.

To discuss usage of npm, visit the GitHub Support Community.

npm install --only=prod --verbose please do not pre fetch devDependencies

What I Wanted to Do

When is use npm install with --only=prod arguments, i just want npm only fetch module in dependencies.

What Happened Instead

it’s supposed to ONLY fetch the dependent module but it fetch all if npm version >= 5.10.0

Reproduction Steps


  "name": "test",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "dependencies": {
    "qqtea": "*"
  "devDependencies": {
    "pm2": "*",
    "express": "*",
    "@babel/cli": "^7.2.3",
    "@babel/core": "^7.2.2",
    "@babel/plugin-proposal-class-properties": "^7.2.3",
    "@babel/plugin-transform-modules-commonjs": "^7.2.0",
    "@babel/preset-flow": "^7.0.0",
    "@skpm/babel-preset": "^0.2.1",
    "@skpm/sketchapp-json-plugin": "^0.2.0",
    "react": "^16.7.0",
    "react-native-web": "^0.10.0-alpha.2",
    "sketchapp-json-flow-types": "^0.3.4",
    "react-art": "^16.7.0",
    "react-dom": "^16.7.0",
    "react-sketchapp": "^2.1.2",
    "react-sketchapp-web": "^0.1.7",
    "react-test-renderer": "^16.7.0",
    "sketch-constants": "^1.1.0",
    "sketchapp-json-plugin": "^0.1.2"

npm version >= 5.10.0

run npm install --only=prod --verbose you will see npm fetch all the module.

if you use npm version <= 5.8.0 , run the same command, you will see the different.

this bug make npm install in production mode very slow if i have a lot of module in devDependencies.


I find which commit make this change.



this commit (db846c2d57399f277829036f9d96cd767088097e) remove if condition and add all the dependencies to the steps, and make this bug.

Npm fetched all dependencies, include depDependencies.

npm install with --only=prod arguments only fetch the dependencies filed modules in package.json.

@zkat @iarna

about this commit, why change install.js line 461-475 ?

This change causes npm to ignore the command line parameters requesting all dependent modules.

Please pay attention to this issue!!!