From a35ef6c745cbd9dbf02c3cd7c786bc2444b54e96 Mon Sep 17 00:00:00 2001 From: Sam Swarr Date: Mon, 11 Apr 2016 09:23:06 -0700 Subject: [PATCH] Remove socket interface from dependencies command Reviewed By: davidaurelio Differential Revision: D3136438 fb-gh-sync-id: 51fce2caf60fdf32a8cba180c79b1996834cda6e fbshipit-source-id: 51fce2caf60fdf32a8cba180c79b1996834cda6e --- local-cli/dependencies/dependencies.js | 62 +++++++++----------------- packager/react-packager/index.js | 9 ++++ 2 files changed, 29 insertions(+), 42 deletions(-) diff --git a/local-cli/dependencies/dependencies.js b/local-cli/dependencies/dependencies.js index 372c65705ccde7..a9ac19118210b9 100644 --- a/local-cli/dependencies/dependencies.js +++ b/local-cli/dependencies/dependencies.js @@ -80,50 +80,28 @@ function _dependencies(argv, config, resolve, reject, packagerInstance) { ? fs.createWriteStream(args.output) : process.stdout; - if (packagerInstance) { - resolve(packagerInstance.getOrderedDependencyPaths(options).then( - deps => { - return _dependenciesHandler( - deps, - packageOpts.projectRoots, - outStream, - writeToFile - ); - } - )); - } else { - resolve(ReactPackager.createClientFor(packageOpts).then(client => { - return client.getOrderedDependencyPaths(options) - .then(deps => { - client.close(); - return _dependenciesHandler( - deps, - packageOpts.projectRoots, - outStream, - writeToFile - ); - }); - })); - } -} + resolve((packagerInstance ? + packagerInstance.getOrderedDependencyPaths(options) : + ReactPackager.getOrderedDependencyPaths(packageOpts, options)).then( + deps => { + deps.forEach(modulePath => { + // Temporary hack to disable listing dependencies not under this directory. + // Long term, we need either + // (a) JS code to not depend on anything outside this directory, or + // (b) Come up with a way to declare this dependency in Buck. + const isInsideProjectRoots = packageOpts.projectRoots.filter( + root => modulePath.startsWith(root) + ).length > 0; -function _dependenciesHandler(deps, projectRoots, outStream, writeToFile) { - deps.forEach(modulePath => { - // Temporary hack to disable listing dependencies not under this directory. - // Long term, we need either - // (a) JS code to not depend on anything outside this directory, or - // (b) Come up with a way to declare this dependency in Buck. - const isInsideProjectRoots = projectRoots.filter( - root => modulePath.startsWith(root) - ).length > 0; - - if (isInsideProjectRoots) { - outStream.write(modulePath + '\n'); + if (isInsideProjectRoots) { + outStream.write(modulePath + '\n'); + } + }); + return writeToFile + ? Promise.denodeify(outStream.end).bind(outStream)() + : Promise.resolve(); } - }); - return writeToFile - ? Promise.denodeify(outStream.end).bind(outStream)() - : Promise.resolve(); + )); } module.exports = dependencies; diff --git a/packager/react-packager/index.js b/packager/react-packager/index.js index 49848ededce355..960342f6243faa 100644 --- a/packager/react-packager/index.js +++ b/packager/react-packager/index.js @@ -64,6 +64,15 @@ exports.getDependencies = function(options, bundleOptions) { }); }; +exports.getOrderedDependencyPaths = function(options, bundleOptions) { + var server = createNonPersistentServer(options); + return server.getOrderedDependencyPaths(bundleOptions) + .then(function(paths) { + server.end(); + return paths; + }); +}; + exports.createClientFor = function(options) { if (options.verbose) { enableDebug();