Skip to content
This repository was archived by the owner on Aug 11, 2022. It is now read-only.

Commit 6401643

Browse files
thefourtheyeiarna
authored andcommitted
Creating lib directory before installing
1 parent df46773 commit 6401643

File tree

1 file changed

+22
-20
lines changed

1 file changed

+22
-20
lines changed

lib/install.js

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -401,26 +401,28 @@ Installer.prototype.readLocalPackageData = function (cb) {
401401
validate('F', arguments)
402402
log.silly('install', 'readLocalPackageData')
403403
var self = this
404-
readPackageTree(this.where, iferr(cb, function (currentTree) {
405-
self.currentTree = currentTree
406-
if (!self.noPackageJsonOk && !currentTree.package) {
407-
log.error('install', "Couldn't read dependencies")
408-
var er = new Error("ENOENT, open '" + path.join(self.where, 'package.json') + "'")
409-
er.code = 'ENOPACKAGEJSON'
410-
er.errno = 34
411-
return cb(er)
412-
}
413-
if (!currentTree.package) currentTree.package = {}
414-
if (currentTree.package._shrinkwrap) return cb()
415-
fs.readFile(path.join(self.where, 'npm-shrinkwrap.json'), {encoding: 'utf8'}, function (er, data) {
416-
if (er) return cb()
417-
try {
418-
currentTree.package._shrinkwrap = JSON.parse(data)
419-
} catch (ex) {
420-
return cb(ex)
421-
}
422-
return cb()
423-
})
404+
mkdirp(this.where, iferr(cb, function () {
405+
readPackageTree(self.where, iferr(cb, function (currentTree) {
406+
self.currentTree = currentTree
407+
if (!self.noPackageJsonOk && !currentTree.package) {
408+
log.error('install', "Couldn't read dependencies")
409+
var er = new Error("ENOENT, open '" + path.join(self.where, 'package.json') + "'")
410+
er.code = 'ENOPACKAGEJSON'
411+
er.errno = 34
412+
return cb(er)
413+
}
414+
if (!currentTree.package) currentTree.package = {}
415+
if (currentTree.package._shrinkwrap) return cb()
416+
fs.readFile(path.join(self.where, 'npm-shrinkwrap.json'), {encoding: 'utf8'}, function (er, data) {
417+
if (er) return cb()
418+
try {
419+
currentTree.package._shrinkwrap = JSON.parse(data)
420+
} catch (ex) {
421+
return cb(ex)
422+
}
423+
return cb()
424+
})
425+
}))
424426
}))
425427

426428
}

0 commit comments

Comments
 (0)