diff options
author | Rebecca Turner <me@re-becca.org> | 2015-04-15 21:52:37 +0300 |
---|---|---|
committer | Rebecca Turner <me@re-becca.org> | 2015-06-26 03:26:48 +0300 |
commit | 0af3a615f53062922b333ea6b3a03559bc19d2d3 (patch) | |
tree | 9b1e08e32135c88465bd4eb8d460687d31424ff1 /lib/dedupe.js | |
parent | 18faff23741644d619dffd7c734d22a6cffadac7 (diff) |
Stop deduping from resolving/installing missing deps
Diffstat (limited to 'lib/dedupe.js')
-rw-r--r-- | lib/dedupe.js | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/lib/dedupe.js b/lib/dedupe.js index 36cc63cb0..91bbd6928 100644 --- a/lib/dedupe.js +++ b/lib/dedupe.js @@ -4,14 +4,16 @@ var validate = require('aproba') var without = require('lodash.without') var asyncMap = require('slide').asyncMap var chain = require('slide').chain +var npa = require('npm-package-arg') +var log = require('npmlog') var npm = require('./npm.js') var Installer = require('./install.js').Installer var findRequirement = require('./install/deps.js').findRequirement var earliestInstallable = require('./install/deps.js').earliestInstallable var decomposeActions = require('./install/decompose-actions.js') -var npa = require('npm-package-arg') +var loadExtraneous = require('./install/deps.js').loadExtraneous +var filterInvalidActions = require('./install/filter-invalid-actions.js') var recalculateMetadata = require('./install/deps.js').recalculateMetadata -var log = require('npmlog') module.exports = dedupe module.exports.Deduper = Deduper @@ -50,17 +52,17 @@ Deduper.prototype.normalizeTree = function (log, cb) { Deduper.prototype.loadAllDepsIntoIdealTree = function (cb) { validate('F', arguments) - var idealTree = this.idealTree - var differences = this.differences - Installer.prototype.loadAllDepsIntoIdealTree.call(this, function (er) { - if (er) return cb(er) - hoistChildren(idealTree, differences, cb) - }) + var cg = this.progress.loadAllDepsIntoIdealTree + loadExtraneous(this.idealTree, cg.newGroup('loadExtraneous'), cb) } Deduper.prototype.generateActionsToTake = function (cb) { validate('F', arguments) - decomposeActions(this.differences, this.todo, this.progress.generateActionsToTake, cb) + chain([ + [hoistChildren, this.idealTree, this.differences], + [filterInvalidActions, this.where, this.differences], + [decomposeActions, this.differences, this.todo] + ], cb) } function hoistChildren (tree, diff, next) { |