diff options
author | isaacs <i@izs.me> | 2010-02-18 04:10:24 +0300 |
---|---|---|
committer | isaacs <i@izs.me> | 2010-02-18 04:10:24 +0300 |
commit | 84c402c3e97bb8e64350766582dd5d3b931566f9 (patch) | |
tree | ae27807428fb0305921663929b7839f85436c9d6 | |
parent | f22ff5a413662f328b57b4279b46d8d9e5177da3 (diff) |
Additional logging.
-rw-r--r-- | lib/install.js | 34 |
1 files changed, 21 insertions, 13 deletions
diff --git a/lib/install.js b/lib/install.js index d03e16bf2..33fe1b3e9 100644 --- a/lib/install.js +++ b/lib/install.js @@ -81,7 +81,7 @@ function install (tarball) { function () { utils.log("Successfully installed "+pkg.data._npmKey); } - ], function (f, k, lastResult) { return f(lastResult) }) + ], function (f, k, lastResult) { log(k + " " + f.name, "npm-install"); return f(lastResult) }) .addCallback(function () { p.emitSuccess("successfully installed "+pkg.data._npmKey) }) @@ -91,7 +91,7 @@ function install (tarball) { }; // move to ROOT/.npm/{name}/{version}/package -function moveIntoPlace (dir, pkg) { return function () { +function moveIntoPlace (dir, pkg) { return function moveIntoPlace () { var p = new Promise; pkg = pkg.data; if (!pkg.name || !pkg.version) { @@ -104,9 +104,16 @@ function moveIntoPlace (dir, pkg) { return function () { function () { var p = new Promise; path.exists(target, function (e) { - if (e) fs.unlink(target) - .addCallback(succeed(p)) - .addErrback(fail(p, target+" exists, and can't be removed")); + log(target + " " + (e?"exists":"doesn't exist")); + if (e) fs.rmdir(target) + .addCallback(function () { + log(target+" successfully unlinked"); + p.emitSuccess(); + }) + .addErrback(function () { + log("couldn't remove "+target); + p.emitError(target+" exists, and can't be removed"); + }); else p.emitSuccess(); }); return p; @@ -114,6 +121,7 @@ function moveIntoPlace (dir, pkg) { return function () { ensureDir(target), function () { pkg._npmPackage = target = path.join(target, "package") }, function () { return fs.rename(dir, target) }, + function () { log("moved into place") }, ], function (f) { return f() }); }}; @@ -136,7 +144,7 @@ function fetchAndInstall (tarball) { return p; }; -function ensureDir (dir, chmod) { return function () { +function ensureDir (dir, chmod) { return function ensureDir () { var dirs = dir.split("/"), walker = []; chmod = chmod || 0755; @@ -159,14 +167,14 @@ function ensureDir (dir, chmod) { return function () { }); }}; -function unpackTar (tarball, unpackTarget) { return function () { +function unpackTar (tarball, unpackTarget) { return function unpackTar () { utils.log("unpack "+tarball); return processPromise("tar", ["xzvf", tarball, "--strip", "1", "-C", unpackTarget]); }}; -function readJson (jsonFile) { return function () { +function readJson (jsonFile) { return function readJson () { var p = new Promise; - fs.cat(jsonFile) + fs.readFile(jsonFile) .addErrback(fail(p, "Could not read "+jsonFile)) .addCallback(function (jsonString) { var json; @@ -190,7 +198,7 @@ function readJson (jsonFile) { return function () { return p; }}; -function createMain (pkg) { return function () { +function createMain (pkg) { return function createMain () { pkg = pkg.data; if (!pkg.main) return; var p = new Promise, @@ -212,7 +220,7 @@ function createMain (pkg) { return function () { }}; // symlink ROOT/{name}-{version}/ to ROOT/.npm/{name}/{version}/{lib} -function linkLib (pkg) { return function () { +function linkLib (pkg) { return function linkLib () { pkg = pkg.data; var lib = pkg.directories && pkg.directories.lib || pkg.lib || false; defLib = (lib === false); @@ -236,7 +244,7 @@ function linkLib (pkg) { return function () { return p; }}; -function linkMain (pkg) { return function () { +function linkMain (pkg) { return function linkMain () { pkg = pkg.data; if (!pkg.main) return; var @@ -252,7 +260,7 @@ function linkMain (pkg) { return function () { return p; }}; -function runMake (pkg) { return function () { +function runMake (pkg) { return function runMake () { pkg = pkg.data; if (!pkg.make) return; var p = new Promise; |