From 22802c9db3cf990c905e8f61304db9b5571d7964 Mon Sep 17 00:00:00 2001 From: Rebecca Turner Date: Thu, 7 Jul 2016 14:55:59 -0700 Subject: rimraf@2.5.3 Dependency updates. Fixes EPERM errors when lstating RO dirs. Fixes: https://github.com/isaacs/rimraf/issues/105 Credit: @isaacs --- node_modules/rimraf/package.json | 68 ++++++++++++++++++++++------------------ node_modules/rimraf/rimraf.js | 12 +++++-- 2 files changed, 48 insertions(+), 32 deletions(-) (limited to 'node_modules/rimraf') diff --git a/node_modules/rimraf/package.json b/node_modules/rimraf/package.json index ccc09c5af..cb1eb18b1 100644 --- a/node_modules/rimraf/package.json +++ b/node_modules/rimraf/package.json @@ -1,53 +1,61 @@ { "_args": [ [ - "rimraf@~2.5.1", + { + "raw": "rimraf@2.5.3", + "scope": null, + "escapedName": "rimraf", + "name": "rimraf", + "rawSpec": "2.5.3", + "spec": "2.5.3", + "type": "version" + }, "/Users/rebecca/code/npm" ] ], - "_from": "rimraf@>=2.5.1 <2.6.0", - "_id": "rimraf@2.5.2", + "_from": "rimraf@2.5.3", + "_id": "rimraf@2.5.3", "_inCache": true, "_installable": true, "_location": "/rimraf", - "_nodeVersion": "5.6.0", + "_nodeVersion": "4.4.4", "_npmOperationalInternal": { - "host": "packages-6-west.internal.npmjs.com", - "tmp": "tmp/rimraf-2.5.2.tgz_1455346499772_0.9326622514054179" + "host": "packages-16-east.internal.npmjs.com", + "tmp": "tmp/rimraf-2.5.3.tgz_1467582915019_0.6380921453237534" }, "_npmUser": { - "email": "i@izs.me", - "name": "isaacs" + "name": "isaacs", + "email": "i@izs.me" }, - "_npmVersion": "3.7.0", + "_npmVersion": "3.10.2", "_phantomChildren": {}, "_requested": { - "name": "rimraf", - "raw": "rimraf@~2.5.1", - "rawSpec": "~2.5.1", + "raw": "rimraf@2.5.3", "scope": null, - "spec": ">=2.5.1 <2.6.0", - "type": "range" + "escapedName": "rimraf", + "name": "rimraf", + "rawSpec": "2.5.3", + "spec": "2.5.3", + "type": "version" }, "_requiredBy": [ + "#USER", "/", "/fs-vacuum", "/fstream", "/node-gyp", "/npm-registry-client", - "/standard/standard-engine/eslint/file-entry-cache/flat-cache/del", - "/tacks", - "/tap/nyc", - "/tap/nyc/spawn-wrap" + "/standard/eslint/file-entry-cache/flat-cache/del", + "/tacks" ], - "_resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.2.tgz", - "_shasum": "62ba947fa4c0b4363839aefecd4f0fbad6059726", + "_resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.3.tgz", + "_shasum": "6e5efdda4aa2f03417f6b2a574aec29f4b652705", "_shrinkwrap": null, - "_spec": "rimraf@~2.5.1", + "_spec": "rimraf@2.5.3", "_where": "/Users/rebecca/code/npm", "author": { - "email": "i@izs.me", "name": "Isaac Z. Schlueter", + "email": "i@izs.me", "url": "http://blog.izs.me/" }, "bin": { @@ -57,17 +65,17 @@ "url": "https://github.com/isaacs/rimraf/issues" }, "dependencies": { - "glob": "^7.0.0" + "glob": "^7.0.5" }, "description": "A deep deletion module for node (like `rm -rf`)", "devDependencies": { "mkdirp": "^0.5.1", - "tap": "^5.1.1" + "tap": "^6.1.1" }, "directories": {}, "dist": { - "shasum": "62ba947fa4c0b4363839aefecd4f0fbad6059726", - "tarball": "http://registry.npmjs.org/rimraf/-/rimraf-2.5.2.tgz" + "shasum": "6e5efdda4aa2f03417f6b2a574aec29f4b652705", + "tarball": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.3.tgz" }, "files": [ "LICENSE", @@ -75,14 +83,14 @@ "bin.js", "rimraf.js" ], - "gitHead": "f414f87021f88d004ac487eebc8d07ce6a152721", + "gitHead": "7263a784e8f08d94dd6caf6ee934fceb525a6f3d", "homepage": "https://github.com/isaacs/rimraf#readme", "license": "ISC", "main": "rimraf.js", "maintainers": [ { - "email": "i@izs.me", - "name": "isaacs" + "name": "isaacs", + "email": "i@izs.me" } ], "name": "rimraf", @@ -95,5 +103,5 @@ "scripts": { "test": "tap test/*.js" }, - "version": "2.5.2" + "version": "2.5.3" } diff --git a/node_modules/rimraf/rimraf.js b/node_modules/rimraf/rimraf.js index c01d13b20..db518a9d6 100644 --- a/node_modules/rimraf/rimraf.js +++ b/node_modules/rimraf/rimraf.js @@ -61,7 +61,7 @@ function rimraf (p, options, cb) { if (options.disableGlob || !glob.hasMagic(p)) return afterGlob(null, [p]) - fs.lstat(p, function (er, stat) { + options.lstat(p, function (er, stat) { if (!er) return afterGlob(null, [p]) @@ -135,6 +135,10 @@ function rimraf_ (p, options, cb) { if (er && er.code === "ENOENT") return cb(null) + // Windows can EPERM on stat. Life is suffering. + if (er && er.code === "EPERM" && isWindows) + fixWinEPERM(p, options, er, cb) + if (st && st.isDirectory()) return rmdir(p, options, er, cb) @@ -269,7 +273,7 @@ function rimrafSync (p, options) { results = [p] } else { try { - fs.lstatSync(p) + options.lstatSync(p) results = [p] } catch (er) { results = glob.sync(p, options.glob) @@ -287,6 +291,10 @@ function rimrafSync (p, options) { } catch (er) { if (er.code === "ENOENT") return + + // Windows can EPERM on stat. Life is suffering. + if (er.code === "EPERM" && isWindows) + fixWinEPERMSync(p, options, er) } try { -- cgit v1.2.3