diff options
Diffstat (limited to 'deps/npm/lib/install/validate-args.js')
-rw-r--r-- | deps/npm/lib/install/validate-args.js | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/deps/npm/lib/install/validate-args.js b/deps/npm/lib/install/validate-args.js index c30bf8695b..65b660417a 100644 --- a/deps/npm/lib/install/validate-args.js +++ b/deps/npm/lib/install/validate-args.js @@ -14,12 +14,23 @@ module.exports = function (idealTree, args, next) { asyncMap(args, function (pkg, done) { chain([ + [hasMinimumFields, pkg], [checkSelf, idealTree, pkg, force], [isInstallable, pkg] ], done) }, next) } +function hasMinimumFields (pkg, cb) { + if (pkg.name === '' || pkg.name == null) { + return cb(new Error(`Can't install ${pkg._resolved}: Missing package name`)) + } else if (pkg.version === '' || pkg.version == null) { + return cb(new Error(`Can't install ${pkg._resolved}: Missing package version`)) + } else { + return cb() + } +} + function getWarnings (pkg) { while (pkg.parent) pkg = pkg.parent if (!pkg.warnings) pkg.warnings = [] |