Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/npm/cli.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKat Marchán <kzm@sykosomatic.org>2015-09-03 02:08:42 +0300
committerRebecca Turner <me@re-becca.org>2015-09-18 01:20:26 +0300
commit5efed61fc2e8fd4321ba9ab507c04ec94d01a154 (patch)
treea7da76aaeb07779011da0ef1aeb0c632a5438810 /node_modules/npm-registry-client
parenta1278013f729485b8f181192b7d4df64fa3d6de6 (diff)
npm-registry-client@7.0.7
Fixes error when deprecating scoped packages PR-URL: https://github.com/npm/npm-registry-client/pull/115 PR-URL: https://github.com/npm/npm/pull/9558
Diffstat (limited to 'node_modules/npm-registry-client')
-rw-r--r--node_modules/npm-registry-client/.travis.yml6
-rw-r--r--node_modules/npm-registry-client/lib/deprecate.js3
-rw-r--r--node_modules/npm-registry-client/lib/request.js13
-rw-r--r--node_modules/npm-registry-client/node_modules/graceful-fs/.npmignore1
-rw-r--r--node_modules/npm-registry-client/node_modules/graceful-fs/LICENSE15
-rw-r--r--node_modules/npm-registry-client/node_modules/graceful-fs/README.md36
-rw-r--r--node_modules/npm-registry-client/node_modules/graceful-fs/fs.js11
-rw-r--r--node_modules/npm-registry-client/node_modules/graceful-fs/graceful-fs.js158
-rw-r--r--node_modules/npm-registry-client/node_modules/graceful-fs/package.json96
-rw-r--r--node_modules/npm-registry-client/node_modules/graceful-fs/polyfills.js255
-rw-r--r--node_modules/npm-registry-client/node_modules/graceful-fs/test/max-open.js69
-rw-r--r--node_modules/npm-registry-client/node_modules/graceful-fs/test/open.js39
-rw-r--r--node_modules/npm-registry-client/node_modules/graceful-fs/test/readdir-sort.js20
-rw-r--r--node_modules/npm-registry-client/node_modules/graceful-fs/test/write-then-read.js47
-rw-r--r--node_modules/npm-registry-client/node_modules/retry/.npmignore1
-rw-r--r--node_modules/npm-registry-client/node_modules/retry/License21
-rw-r--r--node_modules/npm-registry-client/node_modules/retry/Makefile6
-rw-r--r--node_modules/npm-registry-client/node_modules/retry/README.md167
-rw-r--r--node_modules/npm-registry-client/node_modules/retry/equation.gifbin1209 -> 0 bytes
-rw-r--r--node_modules/npm-registry-client/node_modules/retry/example/dns.js31
-rw-r--r--node_modules/npm-registry-client/node_modules/retry/index.js1
-rw-r--r--node_modules/npm-registry-client/node_modules/retry/lib/retry.js50
-rw-r--r--node_modules/npm-registry-client/node_modules/retry/lib/retry_operation.js109
-rw-r--r--node_modules/npm-registry-client/node_modules/retry/package.json74
-rw-r--r--node_modules/npm-registry-client/node_modules/retry/test/common.js10
-rw-r--r--node_modules/npm-registry-client/node_modules/retry/test/integration/test-retry-operation.js80
-rw-r--r--node_modules/npm-registry-client/node_modules/retry/test/integration/test-timeouts.js69
-rw-r--r--node_modules/npm-registry-client/node_modules/retry/test/runner.js5
-rw-r--r--node_modules/npm-registry-client/package.json33
-rw-r--r--node_modules/npm-registry-client/test/access.js5
-rw-r--r--node_modules/npm-registry-client/test/adduser-new.js1
-rw-r--r--node_modules/npm-registry-client/test/adduser-update.js1
-rw-r--r--node_modules/npm-registry-client/test/deprecate.js60
-rw-r--r--node_modules/npm-registry-client/test/dist-tags-add.js1
-rw-r--r--node_modules/npm-registry-client/test/dist-tags-fetch.js1
-rw-r--r--node_modules/npm-registry-client/test/dist-tags-rm.js1
-rw-r--r--node_modules/npm-registry-client/test/dist-tags-set.js1
-rw-r--r--node_modules/npm-registry-client/test/dist-tags-update.js1
-rw-r--r--node_modules/npm-registry-client/test/fetch-404.js1
-rw-r--r--node_modules/npm-registry-client/test/fetch-408.js1
-rw-r--r--node_modules/npm-registry-client/test/fetch-503.js1
-rw-r--r--node_modules/npm-registry-client/test/fetch-authed.js1
-rw-r--r--node_modules/npm-registry-client/test/fetch-basic.js1
-rw-r--r--node_modules/npm-registry-client/test/fetch-github-api-json.js1
-rw-r--r--node_modules/npm-registry-client/test/fetch-not-authed.js1
-rw-r--r--node_modules/npm-registry-client/test/get-403.js1
-rw-r--r--node_modules/npm-registry-client/test/get-basic.js5
-rw-r--r--node_modules/npm-registry-client/test/get-error-403.js1
-rw-r--r--node_modules/npm-registry-client/test/lib/common.js8
-rw-r--r--node_modules/npm-registry-client/test/lib/server.js5
-rw-r--r--node_modules/npm-registry-client/test/ping.js1
-rw-r--r--node_modules/npm-registry-client/test/publish-again-scoped.js5
-rw-r--r--node_modules/npm-registry-client/test/publish-again.js5
-rw-r--r--node_modules/npm-registry-client/test/publish-failed-no-message.js1
-rw-r--r--node_modules/npm-registry-client/test/publish-mixcase-name.js5
-rw-r--r--node_modules/npm-registry-client/test/publish-new-mixcase-name.js7
-rw-r--r--node_modules/npm-registry-client/test/publish-scoped-auth-token.js7
-rw-r--r--node_modules/npm-registry-client/test/publish-scoped.js7
-rw-r--r--node_modules/npm-registry-client/test/publish.js7
-rw-r--r--node_modules/npm-registry-client/test/redirects.js9
-rw-r--r--node_modules/npm-registry-client/test/request-gzip-content.js11
-rw-r--r--node_modules/npm-registry-client/test/request.js41
-rw-r--r--node_modules/npm-registry-client/test/retries.js1
-rw-r--r--node_modules/npm-registry-client/test/star.js55
-rw-r--r--node_modules/npm-registry-client/test/stars.js1
-rw-r--r--node_modules/npm-registry-client/test/tag.js1
-rw-r--r--node_modules/npm-registry-client/test/team.js5
-rw-r--r--node_modules/npm-registry-client/test/unpublish-scoped.js5
-rw-r--r--node_modules/npm-registry-client/test/unpublish.js1
-rw-r--r--node_modules/npm-registry-client/test/whoami.js1
70 files changed, 248 insertions, 1453 deletions
diff --git a/node_modules/npm-registry-client/.travis.yml b/node_modules/npm-registry-client/.travis.yml
index 686d9aeca..3669bc76e 100644
--- a/node_modules/npm-registry-client/.travis.yml
+++ b/node_modules/npm-registry-client/.travis.yml
@@ -2,9 +2,11 @@ language: node_js
node_js:
- "0.12"
- "0.10"
+ - "0.8"
- iojs
-before_install:
- - "npm install -g npm@^2"
script: "npm test"
+sudo: false
+before_install:
+ - "npm install -g npm@latest"
notifications:
slack: npm-inc:kRqQjto7YbINqHPb1X6nS3g8
diff --git a/node_modules/npm-registry-client/lib/deprecate.js b/node_modules/npm-registry-client/lib/deprecate.js
index 04d311cc0..5ff3a8891 100644
--- a/node_modules/npm-registry-client/lib/deprecate.js
+++ b/node_modules/npm-registry-client/lib/deprecate.js
@@ -1,7 +1,6 @@
module.exports = deprecate
var assert = require('assert')
-var url = require('url')
var semver = require('semver')
function deprecate (uri, params, cb) {
@@ -38,6 +37,6 @@ function deprecate (uri, params, cb) {
body: data,
auth: auth
}
- this.request(url.resolve(uri, data._id), options, cb)
+ this.request(uri, options, cb)
}.bind(this))
}
diff --git a/node_modules/npm-registry-client/lib/request.js b/node_modules/npm-registry-client/lib/request.js
index e4dc39957..567fc8dbe 100644
--- a/node_modules/npm-registry-client/lib/request.js
+++ b/node_modules/npm-registry-client/lib/request.js
@@ -64,6 +64,13 @@ function regRequest (uri, params, cb_) {
var self = this
this.attempt(function (operation) {
makeRequest.call(self, uri, params, function (er, parsed, raw, response) {
+ if (response) {
+ self.log.verbose('headers', response.headers)
+ if (response.headers['npm-notice']) {
+ self.log.warn('notice', response.headers['npm-notice'])
+ }
+ }
+
if (!er || (er.message && er.message.match(/^SSL Error/))) {
if (er) er.code = 'ESSL'
return cb(er, parsed, raw, response)
@@ -79,12 +86,6 @@ function regRequest (uri, params, cb_) {
self.log.info('retry', 'will retry, error on last attempt: ' + er)
return undefined
}
- if (response) {
- self.log.verbose('headers', response.headers)
- if (response.headers['npm-notice']) {
- self.log.warn('notice', response.headers['npm-notice'])
- }
- }
cb.apply(null, arguments)
})
})
diff --git a/node_modules/npm-registry-client/node_modules/graceful-fs/.npmignore b/node_modules/npm-registry-client/node_modules/graceful-fs/.npmignore
deleted file mode 100644
index c2658d7d1..000000000
--- a/node_modules/npm-registry-client/node_modules/graceful-fs/.npmignore
+++ /dev/null
@@ -1 +0,0 @@
-node_modules/
diff --git a/node_modules/npm-registry-client/node_modules/graceful-fs/LICENSE b/node_modules/npm-registry-client/node_modules/graceful-fs/LICENSE
deleted file mode 100644
index 19129e315..000000000
--- a/node_modules/npm-registry-client/node_modules/graceful-fs/LICENSE
+++ /dev/null
@@ -1,15 +0,0 @@
-The ISC License
-
-Copyright (c) Isaac Z. Schlueter and Contributors
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
-IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/node_modules/npm-registry-client/node_modules/graceful-fs/README.md b/node_modules/npm-registry-client/node_modules/graceful-fs/README.md
deleted file mode 100644
index 13a2e8605..000000000
--- a/node_modules/npm-registry-client/node_modules/graceful-fs/README.md
+++ /dev/null
@@ -1,36 +0,0 @@
-# graceful-fs
-
-graceful-fs functions as a drop-in replacement for the fs module,
-making various improvements.
-
-The improvements are meant to normalize behavior across different
-platforms and environments, and to make filesystem access more
-resilient to errors.
-
-## Improvements over [fs module](http://api.nodejs.org/fs.html)
-
-graceful-fs:
-
-* Queues up `open` and `readdir` calls, and retries them once
- something closes if there is an EMFILE error from too many file
- descriptors.
-* fixes `lchmod` for Node versions prior to 0.6.2.
-* implements `fs.lutimes` if possible. Otherwise it becomes a noop.
-* ignores `EINVAL` and `EPERM` errors in `chown`, `fchown` or
- `lchown` if the user isn't root.
-* makes `lchmod` and `lchown` become noops, if not available.
-* retries reading a file if `read` results in EAGAIN error.
-
-On Windows, it retries renaming a file for up to one second if `EACCESS`
-or `EPERM` error occurs, likely because antivirus software has locked
-the directory.
-
-## USAGE
-
-```javascript
-// use just like fs
-var fs = require('graceful-fs')
-
-// now go and do stuff with it...
-fs.readFileSync('some-file-or-whatever')
-```
diff --git a/node_modules/npm-registry-client/node_modules/graceful-fs/fs.js b/node_modules/npm-registry-client/node_modules/graceful-fs/fs.js
deleted file mode 100644
index 64ad98023..000000000
--- a/node_modules/npm-registry-client/node_modules/graceful-fs/fs.js
+++ /dev/null
@@ -1,11 +0,0 @@
-// eeeeeevvvvviiiiiiillllll
-// more evil than monkey-patching the native builtin?
-// Not sure.
-
-var mod = require("module")
-var pre = '(function (exports, require, module, __filename, __dirname) { '
-var post = '});'
-var src = pre + process.binding('natives').fs + post
-var vm = require('vm')
-var fn = vm.runInThisContext(src)
-fn(exports, require, module, __filename, __dirname)
diff --git a/node_modules/npm-registry-client/node_modules/graceful-fs/graceful-fs.js b/node_modules/npm-registry-client/node_modules/graceful-fs/graceful-fs.js
deleted file mode 100644
index fb206b838..000000000
--- a/node_modules/npm-registry-client/node_modules/graceful-fs/graceful-fs.js
+++ /dev/null
@@ -1,158 +0,0 @@
-// Monkey-patching the fs module.
-// It's ugly, but there is simply no other way to do this.
-var fs = module.exports = require('./fs.js')
-
-var assert = require('assert')
-
-// fix up some busted stuff, mostly on windows and old nodes
-require('./polyfills.js')
-
-var util = require('util')
-
-function noop () {}
-
-var debug = noop
-if (util.debuglog)
- debug = util.debuglog('gfs')
-else if (/\bgfs\b/i.test(process.env.NODE_DEBUG || ''))
- debug = function() {
- var m = util.format.apply(util, arguments)
- m = 'GFS: ' + m.split(/\n/).join('\nGFS: ')
- console.error(m)
- }
-
-if (/\bgfs\b/i.test(process.env.NODE_DEBUG || '')) {
- process.on('exit', function() {
- debug('fds', fds)
- debug(queue)
- assert.equal(queue.length, 0)
- })
-}
-
-
-var originalOpen = fs.open
-fs.open = open
-
-function open(path, flags, mode, cb) {
- if (typeof mode === "function") cb = mode, mode = null
- if (typeof cb !== "function") cb = noop
- new OpenReq(path, flags, mode, cb)
-}
-
-function OpenReq(path, flags, mode, cb) {
- this.path = path
- this.flags = flags
- this.mode = mode
- this.cb = cb
- Req.call(this)
-}
-
-util.inherits(OpenReq, Req)
-
-OpenReq.prototype.process = function() {
- originalOpen.call(fs, this.path, this.flags, this.mode, this.done)
-}
-
-var fds = {}
-OpenReq.prototype.done = function(er, fd) {
- debug('open done', er, fd)
- if (fd)
- fds['fd' + fd] = this.path
- Req.prototype.done.call(this, er, fd)
-}
-
-
-var originalReaddir = fs.readdir
-fs.readdir = readdir
-
-function readdir(path, cb) {
- if (typeof cb !== "function") cb = noop
- new ReaddirReq(path, cb)
-}
-
-function ReaddirReq(path, cb) {
- this.path = path
- this.cb = cb
- Req.call(this)
-}
-
-util.inherits(ReaddirReq, Req)
-
-ReaddirReq.prototype.process = function() {
- originalReaddir.call(fs, this.path, this.done)
-}
-
-ReaddirReq.prototype.done = function(er, files) {
- if (files && files.sort)
- files = files.sort()
- Req.prototype.done.call(this, er, files)
- onclose()
-}
-
-
-var originalClose = fs.close
-fs.close = close
-
-function close (fd, cb) {
- debug('close', fd)
- if (typeof cb !== "function") cb = noop
- delete fds['fd' + fd]
- originalClose.call(fs, fd, function(er) {
- onclose()
- cb(er)
- })
-}
-
-
-var originalCloseSync = fs.closeSync
-fs.closeSync = closeSync
-
-function closeSync (fd) {
- try {
- return originalCloseSync(fd)
- } finally {
- onclose()
- }
-}
-
-
-// Req class
-function Req () {
- // start processing
- this.done = this.done.bind(this)
- this.failures = 0
- this.process()
-}
-
-Req.prototype.done = function (er, result) {
- var tryAgain = false
- if (er) {
- var code = er.code
- var tryAgain = code === "EMFILE" || code === "ENFILE"
- if (process.platform === "win32")
- tryAgain = tryAgain || code === "OK"
- }
-
- if (tryAgain) {
- this.failures ++
- enqueue(this)
- } else {
- var cb = this.cb
- cb(er, result)
- }
-}
-
-var queue = []
-
-function enqueue(req) {
- queue.push(req)
- debug('enqueue %d %s', queue.length, req.constructor.name, req)
-}
-
-function onclose() {
- var req = queue.shift()
- if (req) {
- debug('process', req.constructor.name, req)
- req.process()
- }
-}
diff --git a/node_modules/npm-registry-client/node_modules/graceful-fs/package.json b/node_modules/npm-registry-client/node_modules/graceful-fs/package.json
deleted file mode 100644
index 651f94213..000000000
--- a/node_modules/npm-registry-client/node_modules/graceful-fs/package.json
+++ /dev/null
@@ -1,96 +0,0 @@
-{
- "_args": [
- [
- "graceful-fs@^3.0.0",
- "/Users/rebecca/code/npm/node_modules/npm-registry-client"
- ]
- ],
- "_from": "graceful-fs@>=3.0.0 <4.0.0",
- "_id": "graceful-fs@3.0.8",
- "_inCache": true,
- "_location": "/npm-registry-client/graceful-fs",
- "_nodeVersion": "2.0.1",
- "_npmUser": {
- "email": "isaacs@npmjs.com",
- "name": "isaacs"
- },
- "_npmVersion": "2.10.1",
- "_phantomChildren": {},
- "_requested": {
- "name": "graceful-fs",
- "raw": "graceful-fs@^3.0.0",
- "rawSpec": "^3.0.0",
- "scope": null,
- "spec": ">=3.0.0 <4.0.0",
- "type": "range"
- },
- "_requiredBy": [
- "/npm-registry-client"
- ],
- "_resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.8.tgz",
- "_shasum": "ce813e725fa82f7e6147d51c9a5ca68270551c22",
- "_shrinkwrap": null,
- "_spec": "graceful-fs@^3.0.0",
- "_where": "/Users/rebecca/code/npm/node_modules/npm-registry-client",
- "author": {
- "email": "i@izs.me",
- "name": "Isaac Z. Schlueter",
- "url": "http://blog.izs.me"
- },
- "bugs": {
- "url": "https://github.com/isaacs/node-graceful-fs/issues"
- },
- "dependencies": {},
- "description": "A drop-in replacement for fs, making various improvements.",
- "devDependencies": {
- "mkdirp": "^0.5.0",
- "rimraf": "^2.2.8",
- "tap": "^1.2.0"
- },
- "directories": {
- "test": "test"
- },
- "dist": {
- "shasum": "ce813e725fa82f7e6147d51c9a5ca68270551c22",
- "tarball": "http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.8.tgz"
- },
- "engines": {
- "node": ">=0.4.0"
- },
- "gitHead": "45c57aa5e323c35a985a525de6f0c9a6ef59e1f8",
- "homepage": "https://github.com/isaacs/node-graceful-fs#readme",
- "keywords": [
- "EACCESS",
- "EAGAIN",
- "EINVAL",
- "EMFILE",
- "EPERM",
- "error",
- "errors",
- "fs",
- "handling",
- "module",
- "queue",
- "reading",
- "retries",
- "retry"
- ],
- "license": "ISC",
- "main": "graceful-fs.js",
- "maintainers": [
- {
- "name": "isaacs",
- "email": "i@izs.me"
- }
- ],
- "name": "graceful-fs",
- "optionalDependencies": {},
- "repository": {
- "type": "git",
- "url": "git://github.com/isaacs/node-graceful-fs.git"
- },
- "scripts": {
- "test": "tap test/*.js"
- },
- "version": "3.0.8"
-}
diff --git a/node_modules/npm-registry-client/node_modules/graceful-fs/polyfills.js b/node_modules/npm-registry-client/node_modules/graceful-fs/polyfills.js
deleted file mode 100644
index 42705391a..000000000
--- a/node_modules/npm-registry-client/node_modules/graceful-fs/polyfills.js
+++ /dev/null
@@ -1,255 +0,0 @@
-var fs = require('./fs.js')
-var constants = require('constants')
-
-var origCwd = process.cwd
-var cwd = null
-process.cwd = function() {
- if (!cwd)
- cwd = origCwd.call(process)
- return cwd
-}
-var chdir = process.chdir
-process.chdir = function(d) {
- cwd = null
- chdir.call(process, d)
-}
-
-// (re-)implement some things that are known busted or missing.
-
-// lchmod, broken prior to 0.6.2
-// back-port the fix here.
-if (constants.hasOwnProperty('O_SYMLINK') &&
- process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)) {
- fs.lchmod = function (path, mode, callback) {
- callback = callback || noop
- fs.open( path
- , constants.O_WRONLY | constants.O_SYMLINK
- , mode
- , function (err, fd) {
- if (err) {
- callback(err)
- return
- }
- // prefer to return the chmod error, if one occurs,
- // but still try to close, and report closing errors if they occur.
- fs.fchmod(fd, mode, function (err) {
- fs.close(fd, function(err2) {
- callback(err || err2)
- })
- })
- })
- }
-
- fs.lchmodSync = function (path, mode) {
- var fd = fs.openSync(path, constants.O_WRONLY | constants.O_SYMLINK, mode)
-
- // prefer to return the chmod error, if one occurs,
- // but still try to close, and report closing errors if they occur.
- var err, err2
- try {
- var ret = fs.fchmodSync(fd, mode)
- } catch (er) {
- err = er
- }
- try {
- fs.closeSync(fd)
- } catch (er) {
- err2 = er
- }
- if (err || err2) throw (err || err2)
- return ret
- }
-}
-
-
-// lutimes implementation, or no-op
-if (!fs.lutimes) {
- if (constants.hasOwnProperty("O_SYMLINK")) {
- fs.lutimes = function (path, at, mt, cb) {
- fs.open(path, constants.O_SYMLINK, function (er, fd) {
- cb = cb || noop
- if (er) return cb(er)
- fs.futimes(fd, at, mt, function (er) {
- fs.close(fd, function (er2) {
- return cb(er || er2)
- })
- })
- })
- }
-
- fs.lutimesSync = function (path, at, mt) {
- var fd = fs.openSync(path, constants.O_SYMLINK)
- , err
- , err2
- , ret
-
- try {
- var ret = fs.futimesSync(fd, at, mt)
- } catch (er) {
- err = er
- }
- try {
- fs.closeSync(fd)
- } catch (er) {
- err2 = er
- }
- if (err || err2) throw (err || err2)
- return ret
- }
-
- } else if (fs.utimensat && constants.hasOwnProperty("AT_SYMLINK_NOFOLLOW")) {
- // maybe utimensat will be bound soonish?
- fs.lutimes = function (path, at, mt, cb) {
- fs.utimensat(path, at, mt, constants.AT_SYMLINK_NOFOLLOW, cb)
- }
-
- fs.lutimesSync = function (path, at, mt) {
- return fs.utimensatSync(path, at, mt, constants.AT_SYMLINK_NOFOLLOW)
- }
-
- } else {
- fs.lutimes = function (_a, _b, _c, cb) { process.nextTick(cb) }
- fs.lutimesSync = function () {}
- }
-}
-
-
-// https://github.com/isaacs/node-graceful-fs/issues/4
-// Chown should not fail on einval or eperm if non-root.
-// It should not fail on enosys ever, as this just indicates
-// that a fs doesn't support the intended operation.
-
-fs.chown = chownFix(fs.chown)
-fs.fchown = chownFix(fs.fchown)
-fs.lchown = chownFix(fs.lchown)
-
-fs.chmod = chownFix(fs.chmod)
-fs.fchmod = chownFix(fs.fchmod)
-fs.lchmod = chownFix(fs.lchmod)
-
-fs.chownSync = chownFixSync(fs.chownSync)
-fs.fchownSync = chownFixSync(fs.fchownSync)
-fs.lchownSync = chownFixSync(fs.lchownSync)
-
-fs.chmodSync = chownFix(fs.chmodSync)
-fs.fchmodSync = chownFix(fs.fchmodSync)
-fs.lchmodSync = chownFix(fs.lchmodSync)
-
-function chownFix (orig) {
- if (!orig) return orig
- return function (target, uid, gid, cb) {
- return orig.call(fs, target, uid, gid, function (er, res) {
- if (chownErOk(er)) er = null
- cb(er, res)
- })
- }
-}
-
-function chownFixSync (orig) {
- if (!orig) return orig
- return function (target, uid, gid) {
- try {
- return orig.call(fs, target, uid, gid)
- } catch (er) {
- if (!chownErOk(er)) throw er
- }
- }
-}
-
-// ENOSYS means that the fs doesn't support the op. Just ignore
-// that, because it doesn't matter.
-//
-// if there's no getuid, or if getuid() is something other
-// than 0, and the error is EINVAL or EPERM, then just ignore
-// it.
-//
-// This specific case is a silent failure in cp, install, tar,
-// and most other unix tools that manage permissions.
-//
-// When running as root, or if other types of errors are
-// encountered, then it's strict.
-function chownErOk (er) {
- if (!er)
- return true
-
- if (er.code === "ENOSYS")
- return true
-
- var nonroot = !process.getuid || process.getuid() !== 0
- if (nonroot) {
- if (er.code === "EINVAL" || er.code === "EPERM")
- return true
- }
-
- return false
-}
-
-
-// if lchmod/lchown do not exist, then make them no-ops
-if (!fs.lchmod) {
- fs.lchmod = function (path, mode, cb) {
- process.nextTick(cb)
- }
- fs.lchmodSync = function () {}
-}
-if (!fs.lchown) {
- fs.lchown = function (path, uid, gid, cb) {
- process.nextTick(cb)
- }
- fs.lchownSync = function () {}
-}
-
-
-
-// on Windows, A/V software can lock the directory, causing this
-// to fail with an EACCES or EPERM if the directory contains newly
-// created files. Try again on failure, for up to 1 second.
-if (process.platform === "win32") {
- var rename_ = fs.rename
- fs.rename = function rename (from, to, cb) {
- var start = Date.now()
- rename_(from, to, function CB (er) {
- if (er
- && (er.code === "EACCES" || er.code === "EPERM")
- && Date.now() - start < 1000) {
- return rename_(from, to, CB)
- }
- if(cb) cb(er)
- })
- }
-}
-
-
-// if read() returns EAGAIN, then just try it again.
-var read = fs.read
-fs.read = function (fd, buffer, offset, length, position, callback_) {
- var callback
- if (callback_ && typeof callback_ === 'function') {
- var eagCounter = 0
- callback = function (er, _, __) {
- if (er && er.code === 'EAGAIN' && eagCounter < 10) {
- eagCounter ++
- return read.call(fs, fd, buffer, offset, length, position, callback)
- }
- callback_.apply(this, arguments)
- }
- }
- return read.call(fs, fd, buffer, offset, length, position, callback)
-}
-
-var readSync = fs.readSync
-fs.readSync = function (fd, buffer, offset, length, position) {
- var eagCounter = 0
- while (true) {
- try {
- return readSync.call(fs, fd, buffer, offset, length, position)
- } catch (er) {
- if (er.code === 'EAGAIN' && eagCounter < 10) {
- eagCounter ++
- continue
- }
- throw er
- }
- }
-}
-
diff --git a/node_modules/npm-registry-client/node_modules/graceful-fs/test/max-open.js b/node_modules/npm-registry-client/node_modules/graceful-fs/test/max-open.js
deleted file mode 100644
index a6b9ba43d..000000000
--- a/node_modules/npm-registry-client/node_modules/graceful-fs/test/max-open.js
+++ /dev/null
@@ -1,69 +0,0 @@
-var test = require('tap').test
-var fs = require('../')
-
-test('open lots of stuff', function (t) {
- // Get around EBADF from libuv by making sure that stderr is opened
- // Otherwise Darwin will refuse to give us a FD for stderr!
- process.stderr.write('')
-
- // How many parallel open()'s to do
- var n = 1024
- var opens = 0
- var fds = []
- var going = true
- var closing = false
- var doneCalled = 0
-
- for (var i = 0; i < n; i++) {
- go()
- }
-
- function go() {
- opens++
- fs.open(__filename, 'r', function (er, fd) {
- if (er) throw er
- fds.push(fd)
- if (going) go()
- })
- }
-
- // should hit ulimit pretty fast
- setTimeout(function () {
- going = false
- t.equal(opens - fds.length, n)
- done()
- }, 100)
-
-
- function done () {
- if (closing) return
- doneCalled++
-
- if (fds.length === 0) {
- console.error('done called %d times', doneCalled)
- // First because of the timeout
- // Then to close the fd's opened afterwards
- // Then this time, to complete.
- // Might take multiple passes, depending on CPU speed
- // and ulimit, but at least 3 in every case.
- t.ok(doneCalled >= 2)
- return t.end()
- }
-
- closing = true
- setTimeout(function () {
- // console.error('do closing again')
- closing = false
- done()
- }, 100)
-
- // console.error('closing time')
- var closes = fds.slice(0)
- fds.length = 0
- closes.forEach(function (fd) {
- fs.close(fd, function (er) {
- if (er) throw er
- })
- })
- }
-})
diff --git a/node_modules/npm-registry-client/node_modules/graceful-fs/test/open.js b/node_modules/npm-registry-client/node_modules/graceful-fs/test/open.js
deleted file mode 100644
index 85732f236..000000000
--- a/node_modules/npm-registry-client/node_modules/graceful-fs/test/open.js
+++ /dev/null
@@ -1,39 +0,0 @@
-var test = require('tap').test
-var fs = require('../graceful-fs.js')
-
-test('graceful fs is monkeypatched fs', function (t) {
- t.equal(fs, require('../fs.js'))
- t.end()
-})
-
-test('open an existing file works', function (t) {
- var fd = fs.openSync(__filename, 'r')
- fs.closeSync(fd)
- fs.open(__filename, 'r', function (er, fd) {
- if (er) throw er
- fs.close(fd, function (er) {
- if (er) throw er
- t.pass('works')
- t.end()
- })
- })
-})
-
-test('open a non-existing file throws', function (t) {
- var er
- try {
- var fd = fs.openSync('this file does not exist', 'r')
- } catch (x) {
- er = x
- }
- t.ok(er, 'should throw')
- t.notOk(fd, 'should not get an fd')
- t.equal(er.code, 'ENOENT')
-
- fs.open('neither does this file', 'r', function (er, fd) {
- t.ok(er, 'should throw')
- t.notOk(fd, 'should not get an fd')
- t.equal(er.code, 'ENOENT')
- t.end()
- })
-})
diff --git a/node_modules/npm-registry-client/node_modules/graceful-fs/test/readdir-sort.js b/node_modules/npm-registry-client/node_modules/graceful-fs/test/readdir-sort.js
deleted file mode 100644
index cb63a6846..000000000
--- a/node_modules/npm-registry-client/node_modules/graceful-fs/test/readdir-sort.js
+++ /dev/null
@@ -1,20 +0,0 @@
-var test = require("tap").test
-var fs = require("../fs.js")
-
-var readdir = fs.readdir
-fs.readdir = function(path, cb) {
- process.nextTick(function() {
- cb(null, ["b", "z", "a"])
- })
-}
-
-var g = require("../")
-
-test("readdir reorder", function (t) {
- g.readdir("whatevers", function (er, files) {
- if (er)
- throw er
- t.same(files, [ "a", "b", "z" ])
- t.end()
- })
-})
diff --git a/node_modules/npm-registry-client/node_modules/graceful-fs/test/write-then-read.js b/node_modules/npm-registry-client/node_modules/graceful-fs/test/write-then-read.js
deleted file mode 100644
index 21e4c26bf..000000000
--- a/node_modules/npm-registry-client/node_modules/graceful-fs/test/write-then-read.js
+++ /dev/null
@@ -1,47 +0,0 @@
-var fs = require('../');
-var rimraf = require('rimraf');
-var mkdirp = require('mkdirp');
-var test = require('tap').test;
-var p = require('path').resolve(__dirname, 'files');
-
-process.chdir(__dirname)
-
-// Make sure to reserve the stderr fd
-process.stderr.write('');
-
-var num = 4097;
-var paths = new Array(num);
-
-test('make files', function (t) {
- rimraf.sync(p);
- mkdirp.sync(p);
-
- for (var i = 0; i < num; ++i) {
- paths[i] = 'files/file-' + i;
- fs.writeFileSync(paths[i], 'content');
- }
-
- t.end();
-})
-
-test('read files', function (t) {
- // now read them
- var done = 0;
- for (var i = 0; i < num; ++i) {
- fs.readFile(paths[i], function(err, data) {
- if (err)
- throw err;
-
- ++done;
- if (done === num) {
- t.pass('success');
- t.end()
- }
- });
- }
-});
-
-test('cleanup', function (t) {
- rimraf.sync(p);
- t.end();
-});
diff --git a/node_modules/npm-registry-client/node_modules/retry/.npmignore b/node_modules/npm-registry-client/node_modules/retry/.npmignore
deleted file mode 100644
index 5a23aa6a0..000000000
--- a/node_modules/npm-registry-client/node_modules/retry/.npmignore
+++ /dev/null
@@ -1 +0,0 @@
-/node_modules/*
diff --git a/node_modules/npm-registry-client/node_modules/retry/License b/node_modules/npm-registry-client/node_modules/retry/License
deleted file mode 100644
index 0b58de379..000000000
--- a/node_modules/npm-registry-client/node_modules/retry/License
+++ /dev/null
@@ -1,21 +0,0 @@
-Copyright (c) 2011:
-Tim Koschützki (tim@debuggable.com)
-Felix Geisendörfer (felix@debuggable.com)
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in
- all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
diff --git a/node_modules/npm-registry-client/node_modules/retry/Makefile b/node_modules/npm-registry-client/node_modules/retry/Makefile
deleted file mode 100644
index 72baaac19..000000000
--- a/node_modules/npm-registry-client/node_modules/retry/Makefile
+++ /dev/null
@@ -1,6 +0,0 @@
-SHELL := /bin/bash
-
-test:
- @node test/runner.js
-
-.PHONY: test
diff --git a/node_modules/npm-registry-client/node_modules/retry/README.md b/node_modules/npm-registry-client/node_modules/retry/README.md
deleted file mode 100644
index ba6602205..000000000
--- a/node_modules/npm-registry-client/node_modules/retry/README.md
+++ /dev/null
@@ -1,167 +0,0 @@
-# retry
-
-Abstraction for exponential and custom retry strategies for failed operations.
-
-## Installation
-
- npm install retry
-
-## Current Status
-
-This module has been tested and is ready to be used.
-
-## Tutorial
-
-The example below will retry a potentially failing `dns.resolve` operation
-`10` times using an exponential backoff strategy. With the default settings, this
-means the last attempt is made after `17 minutes and 3 seconds`.
-
-``` javascript
-var dns = require('dns');
-var retry = require('retry');
-
-function faultTolerantResolve(address, cb) {
- var operation = retry.operation();
-
- operation.attempt(function(currentAttempt) {
- dns.resolve(address, function(err, addresses) {
- if (operation.retry(err)) {
- return;
- }
-
- cb(err ? operation.mainError() : null, addresses);
- });
- });
-}
-
-faultTolerantResolve('nodejs.org', function(err, addresses) {
- console.log(err, addresses);
-});
-```
-
-Of course you can also configure the factors that go into the exponential
-backoff. See the API documentation below for all available settings.
-currentAttempt is an int representing the number of attempts so far.
-
-``` javascript
-var operation = retry.operation({
- retries: 5,
- factor: 3,
- minTimeout: 1 * 1000,
- maxTimeout: 60 * 1000,
- randomize: true,
-});
-```
-
-## API
-
-### retry.operation([options])
-
-Creates a new `RetryOperation` object. See the `retry.timeouts()` function
-below for available `options`.
-
-### retry.timeouts([options])
-
-Returns an array of timeouts. All time `options` and return values are in
-milliseconds. If `options` is an array, a copy of that array is returned.
-
-`options` is a JS object that can contain any of the following keys:
-
-* `retries`: The maximum amount of times to retry the operation. Default is `10`.
-* `factor`: The exponential factor to use. Default is `2`.
-* `minTimeout`: The number of milliseconds before starting the first retry. Default is `1000`.
-* `maxTimeout`: The maximum number of milliseconds between two retries. Default is `Infinity`.
-* `randomize`: Randomizes the timeouts by multiplying with a factor between `1` to `2`. Default is `false`.
-
-The formula used to calculate the individual timeouts is:
-
-```
-var Math.min(random * minTimeout * Math.pow(factor, attempt), maxTimeout);
-```
-
-Have a look at [this article][article] for a better explanation of approach.
-
-If you want to tune your `factor` / `times` settings to attempt the last retry
-after a certain amount of time, you can use wolfram alpha. For example in order
-to tune for `10` attempts in `5 minutes`, you can use this equation:
-
-![screenshot](https://github.com/tim-kos/node-retry/raw/master/equation.gif)
-
-Explaining the various values from left to right:
-
-* `k = 0 ... 9`: The `retries` value (10)
-* `1000`: The `minTimeout` value in ms (1000)
-* `x^k`: No need to change this, `x` will be your resulting factor
-* `5 * 60 * 1000`: The desired total amount of time for retrying in ms (5 minutes)
-
-To make this a little easier for you, use wolfram alpha to do the calculations:
-
-[http://www.wolframalpha.com/input/?i=Sum%5B1000*x^k%2C+{k%2C+0%2C+9}%5D+%3D+5+*+60+*+1000]()
-
-[article]: http://dthain.blogspot.com/2009/02/exponential-backoff-in-distributed.html
-
-### new RetryOperation(timeouts)
-
-Creates a new `RetryOperation` where `timeouts` is an array where each value is
-a timeout given in milliseconds.
-
-#### retryOperation.errors()
-
-Returns an array of all errors that have been passed to
-`retryOperation.retry()` so far.
-
-#### retryOperation.mainError()
-
-A reference to the error object that occured most frequently. Errors are
-compared using the `error.message` property.
-
-If multiple error messages occured the same amount of time, the last error
-object with that message is returned.
-
-If no errors occured so far, the value is `null`.
-
-#### retryOperation.attempt(fn, timeoutOps)
-
-Defines the function `fn` that is to be retried and executes it for the first
-time right away. The `fn` function can receive an optional `currentAttempt` callback that represents the number of attempts to execute `fn` so far.
-
-Optionally defines `timeoutOps` which is an object having a property `timeout` in miliseconds and a property `cb` callback function.
-Whenever your retry operation takes longer than `timeout` to execute, the timeout callback function `cb` is called.
-
-
-#### retryOperation.try(fn)
-
-This is an alias for `retryOperation.attempt(fn)`. This is deprecated.
-
-#### retryOperation.start(fn)
-
-This is an alias for `retryOperation.attempt(fn)`. This is deprecated.
-
-#### retryOperation.retry(error)
-
-Returns `false` when no `error` value is given, or the maximum amount of retries
-has been reached.
-
-Otherwise it returns `true`, and retries the operation after the timeout for
-the current attempt number.
-
-#### retryOperation.attempts()
-
-Returns an int representing the number of attempts it took to call `fn` before it was successful.
-
-## License
-
-retry is licensed under the MIT license.
-
-
-#Changelog
-
-0.6.0 Introduced optional timeOps parameter for the attempt() function which is an object having a property timeout in miliseconds and a property cb callback function. Whenever your retry operation takes longer than timeout to execute, the timeout callback function cb is called.
-
-0.5.0 Some minor refactorings.
-
-0.4.0 Changed retryOperation.try() to retryOperation.attempt(). Deprecated the aliases start() and try() for it.
-
-0.3.0 Added retryOperation.start() which is an alias for retryOperation.try().
-
-0.2.0 Added attempts() function and parameter to retryOperation.try() representing the number of attempts it took to call fn().
diff --git a/node_modules/npm-registry-client/node_modules/retry/equation.gif b/node_modules/npm-registry-client/node_modules/retry/equation.gif
deleted file mode 100644
index 97107237b..000000000
--- a/node_modules/npm-registry-client/node_modules/retry/equation.gif
+++ /dev/null
Binary files differ
diff --git a/node_modules/npm-registry-client/node_modules/retry/example/dns.js b/node_modules/npm-registry-client/node_modules/retry/example/dns.js
deleted file mode 100644
index e4082af72..000000000
--- a/node_modules/npm-registry-client/node_modules/retry/example/dns.js
+++ /dev/null
@@ -1,31 +0,0 @@
-var dns = require('dns');
-var retry = require('../lib/retry');
-
-function faultTolerantResolve(address, cb) {
- var opts = {
- times: 2,
- factor: 2,
- minTimeout: 1 * 1000,
- maxTimeout: 2 * 1000,
- randomize: true
- };
- var operation = retry.operation(opts);
-
- operation.attempt(function(currentAttempt) {
- dns.resolve(address, function(err, addresses) {
- if (operation.retry(err)) {
- return;
- }
-
- cb(operation.mainError(), operation.errors(), addresses);
- });
- });
-}
-
-faultTolerantResolve('nodejs.org', function(err, errors, addresses) {
- console.warn('err:');
- console.log(err);
-
- console.warn('addresses:');
- console.log(addresses);
-}); \ No newline at end of file
diff --git a/node_modules/npm-registry-client/node_modules/retry/index.js b/node_modules/npm-registry-client/node_modules/retry/index.js
deleted file mode 100644
index ee62f3a11..000000000
--- a/node_modules/npm-registry-client/node_modules/retry/index.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./lib/retry'); \ No newline at end of file
diff --git a/node_modules/npm-registry-client/node_modules/retry/lib/retry.js b/node_modules/npm-registry-client/node_modules/retry/lib/retry.js
deleted file mode 100644
index 38406860d..000000000
--- a/node_modules/npm-registry-client/node_modules/retry/lib/retry.js
+++ /dev/null
@@ -1,50 +0,0 @@
-var RetryOperation = require('./retry_operation');
-
-exports.operation = function(options) {
- var timeouts = exports.timeouts(options);
- return new RetryOperation(timeouts);
-};
-
-exports.timeouts = function(options) {
- if (options instanceof Array) {
- return [].concat(options);
- }
-
- var opts = {
- retries: 10,
- factor: 2,
- minTimeout: 1 * 1000,
- maxTimeout: Infinity,
- randomize: false
- };
- for (var key in options) {
- opts[key] = options[key];
- }
-
- if (opts.minTimeout > opts.maxTimeout) {
- throw new Error('minTimeout is greater than maxTimeout');
- }
-
- var timeouts = [];
- for (var i = 0; i < opts.retries; i++) {
- timeouts.push(this._createTimeout(i, opts));
- }
-
- // sort the array numerically ascending
- timeouts.sort(function(a,b) {
- return a - b;
- });
-
- return timeouts;
-};
-
-exports._createTimeout = function(attempt, opts) {
- var random = (opts.randomize)
- ? (Math.random() + 1)
- : 1;
-
- var timeout = Math.round(random * opts.minTimeout * Math.pow(opts.factor, attempt));
- timeout = Math.min(timeout, opts.maxTimeout);
-
- return timeout;
-}; \ No newline at end of file
diff --git a/node_modules/npm-registry-client/node_modules/retry/lib/retry_operation.js b/node_modules/npm-registry-client/node_modules/retry/lib/retry_operation.js
deleted file mode 100644
index f24d2d5a4..000000000
--- a/node_modules/npm-registry-client/node_modules/retry/lib/retry_operation.js
+++ /dev/null
@@ -1,109 +0,0 @@
-function RetryOperation(timeouts) {
- this._timeouts = timeouts;
- this._fn = null;
- this._errors = [];
- this._attempts = 1;
- this._operationTimeout = null;
- this._operationTimeoutCb = null;
- this._timeout = null;
-}
-module.exports = RetryOperation;
-
-RetryOperation.prototype.retry = function(err) {
- if (this._timeout) {
- clearTimeout(this._timeout);
- }
-
- if (!err) {
- return false;
- }
-
- this._errors.push(err);
-
- var timeout = this._timeouts.shift();
- if (timeout === undefined) {
- return false;
- }
-
- this._attempts++;
-
- var self = this;
- setTimeout(function() {
- self._fn(self._attempts);
-
- if (self._operationTimeoutCb) {
- self._timeout = setTimeout(function() {
- self._operationTimeoutCb(self._attempts);
- }, self._operationTimeout);
- }
- }, timeout);
-
- return true;
-};
-
-RetryOperation.prototype.attempt = function(fn, timeoutOps) {
- this._fn = fn;
-
- if (timeoutOps) {
- if (timeoutOps.timeout) {
- this._operationTimeout = timeoutOps.timeout;
- }
- if (timeoutOps.cb) {
- this._operationTimeoutCb = timeoutOps.cb;
- }
- }
-
- this._fn(this._attempts);
-
- var self = this;
- if (this._operationTimeoutCb) {
- this._timeout = setTimeout(function() {
- self._operationTimeoutCb();
- }, self._operationTimeout);
- }
-};
-
-RetryOperation.prototype.try = function(fn) {
- console.log('Using RetryOperation.try() is deprecated');
- this.attempt(fn);
-};
-
-RetryOperation.prototype.start = function(fn) {
- console.log('Using RetryOperation.start() is deprecated');
- this.attempt(fn);
-};
-
-RetryOperation.prototype.start = RetryOperation.prototype.try;
-
-RetryOperation.prototype.errors = function() {
- return this._errors;
-};
-
-RetryOperation.prototype.attempts = function() {
- return this._attempts;
-};
-
-RetryOperation.prototype.mainError = function() {
- if (this._errors.length === 0) {
- return null;
- }
-
- var counts = {};
- var mainError = null;
- var mainErrorCount = 0;
-
- for (var i = 0; i < this._errors.length; i++) {
- var error = this._errors[i];
- var message = error.message;
- var count = (counts[message] || 0) + 1;
-
- counts[message] = count;
-
- if (count >= mainErrorCount) {
- mainError = error;
- mainErrorCount = count;
- }
- }
-
- return mainError;
-}; \ No newline at end of file
diff --git a/node_modules/npm-registry-client/node_modules/retry/package.json b/node_modules/npm-registry-client/node_modules/retry/package.json
deleted file mode 100644
index 95d7a67a6..000000000
--- a/node_modules/npm-registry-client/node_modules/retry/package.json
+++ /dev/null
@@ -1,74 +0,0 @@
-{
- "_args": [
- [
- "retry@^0.6.1",
- "/Users/rebecca/code/npm/node_modules/npm-registry-client"
- ]
- ],
- "_from": "retry@>=0.6.1 <0.7.0",
- "_id": "retry@0.6.1",
- "_inCache": true,
- "_location": "/npm-registry-client/retry",
- "_npmUser": {
- "email": "tim@debuggable.com",
- "name": "tim-kos"
- },
- "_npmVersion": "1.4.9",
- "_phantomChildren": {},
- "_requested": {
- "name": "retry",
- "raw": "retry@^0.6.1",
- "rawSpec": "^0.6.1",
- "scope": null,
- "spec": ">=0.6.1 <0.7.0",
- "type": "range"
- },
- "_requiredBy": [
- "/npm-registry-client"
- ],
- "_resolved": "https://registry.npmjs.org/retry/-/retry-0.6.1.tgz",
- "_shasum": "fdc90eed943fde11b893554b8cc63d0e899ba918",
- "_shrinkwrap": null,
- "_spec": "retry@^0.6.1",
- "_where": "/Users/rebecca/code/npm/node_modules/npm-registry-client",
- "author": {
- "email": "tim@debuggable.com",
- "name": "Tim Koschützki",
- "url": "http://debuggable.com/"
- },
- "bugs": {
- "url": "https://github.com/tim-kos/node-retry/issues"
- },
- "dependencies": {},
- "description": "Abstraction for exponential and custom retry strategies for failed operations.",
- "devDependencies": {
- "fake": "0.2.0",
- "far": "0.0.1"
- },
- "directories": {
- "lib": "./lib"
- },
- "dist": {
- "shasum": "fdc90eed943fde11b893554b8cc63d0e899ba918",
- "tarball": "http://registry.npmjs.org/retry/-/retry-0.6.1.tgz"
- },
- "engines": {
- "node": "*"
- },
- "homepage": "https://github.com/tim-kos/node-retry",
- "installable": true,
- "main": "index",
- "maintainers": [
- {
- "name": "tim-kos",
- "email": "tim@debuggable.com"
- }
- ],
- "name": "retry",
- "optionalDependencies": {},
- "repository": {
- "type": "git",
- "url": "git://github.com/tim-kos/node-retry.git"
- },
- "version": "0.6.1"
-}
diff --git a/node_modules/npm-registry-client/node_modules/retry/test/common.js b/node_modules/npm-registry-client/node_modules/retry/test/common.js
deleted file mode 100644
index 224720696..000000000
--- a/node_modules/npm-registry-client/node_modules/retry/test/common.js
+++ /dev/null
@@ -1,10 +0,0 @@
-var common = module.exports;
-var path = require('path');
-
-var rootDir = path.join(__dirname, '..');
-common.dir = {
- lib: rootDir + '/lib'
-};
-
-common.assert = require('assert');
-common.fake = require('fake'); \ No newline at end of file
diff --git a/node_modules/npm-registry-client/node_modules/retry/test/integration/test-retry-operation.js b/node_modules/npm-registry-client/node_modules/retry/test/integration/test-retry-operation.js
deleted file mode 100644
index d873d1fa8..000000000
--- a/node_modules/npm-registry-client/node_modules/retry/test/integration/test-retry-operation.js
+++ /dev/null
@@ -1,80 +0,0 @@
-var common = require('../common');
-var assert = common.assert;
-var fake = common.fake.create();
-var retry = require(common.dir.lib + '/retry');
-
-(function testErrors() {
- var operation = retry.operation();
-
- var error = new Error('some error');
- var error2 = new Error('some other error');
- operation._errors.push(error);
- operation._errors.push(error2);
-
- assert.deepEqual(operation.errors(), [error, error2]);
-})();
-
-(function testMainErrorReturnsMostFrequentError() {
- var operation = retry.operation();
- var error = new Error('some error');
- var error2 = new Error('some other error');
-
- operation._errors.push(error);
- operation._errors.push(error2);
- operation._errors.push(error);
-
- assert.strictEqual(operation.mainError(), error);
-})();
-
-(function testMainErrorReturnsLastErrorOnEqualCount() {
- var operation = retry.operation();
- var error = new Error('some error');
- var error2 = new Error('some other error');
-
- operation._errors.push(error);
- operation._errors.push(error2);
-
- assert.strictEqual(operation.mainError(), error2);
-})();
-
-(function testAttempt() {
- var operation = retry.operation();
- var fn = new Function();
-
- var timeoutOpts = {
- timeout: 1,
- cb: function() {}
- };
- operation.attempt(fn, timeoutOpts);
-
- assert.strictEqual(fn, operation._fn);
- assert.strictEqual(timeoutOpts.timeout, operation._operationTimeout);
- assert.strictEqual(timeoutOpts.cb, operation._operationTimeoutCb);
-})();
-
-(function testRetry() {
- var times = 3;
- var error = new Error('some error');
- var operation = retry.operation([1, 2, 3]);
- var attempts = 0;
-
- var finalCallback = fake.callback('finalCallback');
- fake.expectAnytime(finalCallback);
-
- var fn = function() {
- operation.attempt(function(currentAttempt) {
- attempts++;
- assert.equal(currentAttempt, attempts);
- if (operation.retry(error)) {
- return;
- }
-
- assert.strictEqual(attempts, 4);
- assert.strictEqual(operation.attempts(), attempts);
- assert.strictEqual(operation.mainError(), error);
- finalCallback();
- });
- };
-
- fn();
-})(); \ No newline at end of file
diff --git a/node_modules/npm-registry-client/node_modules/retry/test/integration/test-timeouts.js b/node_modules/npm-registry-client/node_modules/retry/test/integration/test-timeouts.js
deleted file mode 100644
index 7206b0fb0..000000000
--- a/node_modules/npm-registry-client/node_modules/retry/test/integration/test-timeouts.js
+++ /dev/null
@@ -1,69 +0,0 @@
-var common = require('../common');
-var assert = common.assert;
-var retry = require(common.dir.lib + '/retry');
-
-(function testDefaultValues() {
- var timeouts = retry.timeouts();
-
- assert.equal(timeouts.length, 10);
- assert.equal(timeouts[0], 1000);
- assert.equal(timeouts[1], 2000);
- assert.equal(timeouts[2], 4000);
-})();
-
-(function testDefaultValuesWithRandomize() {
- var minTimeout = 5000;
- var timeouts = retry.timeouts({
- minTimeout: minTimeout,
- randomize: true
- });
-
- assert.equal(timeouts.length, 10);
- assert.ok(timeouts[0] > minTimeout);
- assert.ok(timeouts[1] > timeouts[0]);
- assert.ok(timeouts[2] > timeouts[1]);
-})();
-
-(function testPassedTimeoutsAreUsed() {
- var timeoutsArray = [1000, 2000, 3000];
- var timeouts = retry.timeouts(timeoutsArray);
- assert.deepEqual(timeouts, timeoutsArray);
- assert.notStrictEqual(timeouts, timeoutsArray);
-})();
-
-(function testTimeoutsAreWithinBoundaries() {
- var minTimeout = 1000;
- var maxTimeout = 10000;
- var timeouts = retry.timeouts({
- minTimeout: minTimeout,
- maxTimeout: maxTimeout
- });
- for (var i = 0; i < timeouts; i++) {
- assert.ok(timeouts[i] >= minTimeout);
- assert.ok(timeouts[i] <= maxTimeout);
- }
-})();
-
-(function testTimeoutsAreIncremental() {
- var timeouts = retry.timeouts();
- var lastTimeout = timeouts[0];
- for (var i = 0; i < timeouts; i++) {
- assert.ok(timeouts[i] > lastTimeout);
- lastTimeout = timeouts[i];
- }
-})();
-
-(function testTimeoutsAreIncrementalForFactorsLessThanOne() {
- var timeouts = retry.timeouts({
- retries: 3,
- factor: 0.5
- });
-
- var expected = [250, 500, 1000];
- assert.deepEqual(expected, timeouts);
-})();
-
-(function testRetries() {
- var timeouts = retry.timeouts({retries: 2});
- assert.strictEqual(timeouts.length, 2);
-})();
diff --git a/node_modules/npm-registry-client/node_modules/retry/test/runner.js b/node_modules/npm-registry-client/node_modules/retry/test/runner.js
deleted file mode 100644
index e0ee2f570..000000000
--- a/node_modules/npm-registry-client/node_modules/retry/test/runner.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var far = require('far').create();
-
-far.add(__dirname);
-far.include(/\/test-.*\.js$/);
-far.execute();
diff --git a/node_modules/npm-registry-client/package.json b/node_modules/npm-registry-client/package.json
index d84d5028c..3ab27508a 100644
--- a/node_modules/npm-registry-client/package.json
+++ b/node_modules/npm-registry-client/package.json
@@ -1,12 +1,12 @@
{
"_args": [
[
- "npm-registry-client@~7.0.1",
+ "npm-registry-client@~7.0.7",
"/Users/rebecca/code/npm"
]
],
- "_from": "npm-registry-client@>=7.0.1 <7.1.0",
- "_id": "npm-registry-client@7.0.1",
+ "_from": "npm-registry-client@>=7.0.7 <7.1.0",
+ "_id": "npm-registry-client@7.0.7",
"_inCache": true,
"_location": "/npm-registry-client",
"_nodeVersion": "2.2.2",
@@ -14,23 +14,23 @@
"email": "kat@sykosomatic.org",
"name": "zkat"
},
- "_npmVersion": "2.13.5",
+ "_npmVersion": "2.14.4",
"_phantomChildren": {},
"_requested": {
"name": "npm-registry-client",
- "raw": "npm-registry-client@~7.0.1",
- "rawSpec": "~7.0.1",
+ "raw": "npm-registry-client@~7.0.7",
+ "rawSpec": "~7.0.7",
"scope": null,
- "spec": ">=7.0.1 <7.1.0",
+ "spec": ">=7.0.7 <7.1.0",
"type": "range"
},
"_requiredBy": [
"/"
],
- "_resolved": "https://registry.npmjs.org/npm-registry-client/-/npm-registry-client-7.0.1.tgz",
- "_shasum": "1184253d2085dcaa01a394cfdd66f2dad0d26feb",
+ "_resolved": "https://registry.npmjs.org/npm-registry-client/-/npm-registry-client-7.0.7.tgz",
+ "_shasum": "899d7c8fefe87b72a70d8c9e075fb874539e0d3e",
"_shrinkwrap": null,
- "_spec": "npm-registry-client@~7.0.1",
+ "_spec": "npm-registry-client@~7.0.7",
"_where": "/Users/rebecca/code/npm",
"author": {
"email": "i@izs.me",
@@ -43,14 +43,14 @@
"dependencies": {
"chownr": "^1.0.1",
"concat-stream": "^1.4.6",
- "graceful-fs": "^3.0.0",
+ "graceful-fs": "^4.1.2",
"mkdirp": "^0.5.0",
"normalize-package-data": "~1.0.1 || ^2.0.0",
"npm-package-arg": "^3.0.0 || ^4.0.0",
"npmlog": "",
"once": "^1.3.0",
"request": "^2.47.0",
- "retry": "^0.6.1",
+ "retry": "^0.8.0",
"rimraf": "2",
"semver": "2 >=2.2.1 || 3.x || 4 || 5",
"slide": "^1.1.3"
@@ -59,15 +59,16 @@
"devDependencies": {
"negotiator": "^0.4.9",
"nock": "^0.56.0",
+ "readable-stream": "^2.0.2",
"standard": "^4.0.0",
"tap": "^1.2.0"
},
"directories": {},
"dist": {
- "shasum": "1184253d2085dcaa01a394cfdd66f2dad0d26feb",
- "tarball": "http://registry.npmjs.org/npm-registry-client/-/npm-registry-client-7.0.1.tgz"
+ "shasum": "899d7c8fefe87b72a70d8c9e075fb874539e0d3e",
+ "tarball": "http://registry.npmjs.org/npm-registry-client/-/npm-registry-client-7.0.7.tgz"
},
- "gitHead": "250563a6a64f73e5e683e75aa21d36739f63159a",
+ "gitHead": "06f188917bf575fe7dc7c2f6d1d4adbaa50bc423",
"homepage": "https://github.com/isaacs/npm-registry-client#readme",
"installable": true,
"license": "ISC",
@@ -100,5 +101,5 @@
"scripts": {
"test": "standard && tap test/*.js"
},
- "version": "7.0.1"
+ "version": "7.0.7"
}
diff --git a/node_modules/npm-registry-client/test/access.js b/node_modules/npm-registry-client/test/access.js
index ba0fb2c81..c07b1bd6a 100644
--- a/node_modules/npm-registry-client/test/access.js
+++ b/node_modules/npm-registry-client/test/access.js
@@ -285,6 +285,11 @@ test('access command base validation', function (t) {
t.end()
})
+test('cleanup', function (t) {
+ server.close()
+ t.end()
+})
+
function onJsonReq (req, cb) {
var buffer = ''
req.setEncoding('utf8')
diff --git a/node_modules/npm-registry-client/test/adduser-new.js b/node_modules/npm-registry-client/test/adduser-new.js
index d8c415bc5..a834841de 100644
--- a/node_modules/npm-registry-client/test/adduser-new.js
+++ b/node_modules/npm-registry-client/test/adduser-new.js
@@ -51,6 +51,7 @@ tap.test('create new user account', function (t) {
function (er, data) {
if (er) throw er
t.deepEqual(data, auth, 'received expected auth data')
+ server.close()
t.end()
}
)
diff --git a/node_modules/npm-registry-client/test/adduser-update.js b/node_modules/npm-registry-client/test/adduser-update.js
index 18aad3ebe..03d5f468f 100644
--- a/node_modules/npm-registry-client/test/adduser-update.js
+++ b/node_modules/npm-registry-client/test/adduser-update.js
@@ -61,6 +61,7 @@ tap.test('update a user acct', function (t) {
function (er, data) {
if (er) throw er
t.deepEqual(data, auth, 'got expected auth data')
+ server.close()
t.end()
}
)
diff --git a/node_modules/npm-registry-client/test/deprecate.js b/node_modules/npm-registry-client/test/deprecate.js
index d49f71215..4407d7c97 100644
--- a/node_modules/npm-registry-client/test/deprecate.js
+++ b/node_modules/npm-registry-client/test/deprecate.js
@@ -154,3 +154,63 @@ test('deprecate a package', function (t) {
}
)
})
+
+test('deprecate a scoped package', function (t) {
+ server.expect('GET', '/@test%2funderscore?write=true', function (req, res) {
+ t.equal(req.method, 'GET')
+
+ res.json(cache)
+ })
+
+ server.expect('PUT', '/@test%2funderscore', function (req, res) {
+ t.equal(req.method, 'PUT')
+
+ var b = ''
+ req.setEncoding('utf8')
+ req.on('data', function (d) {
+ b += d
+ })
+
+ req.on('end', function () {
+ var updated = JSON.parse(b)
+
+ var undeprecated = [
+ '1.0.3', '1.0.4', '1.1.0', '1.1.1', '1.1.2', '1.1.3', '1.1.4', '1.1.5', '1.1.6',
+ '1.1.7', '1.2.0', '1.2.1', '1.2.2', '1.2.3', '1.2.4', '1.3.0', '1.3.1', '1.3.3'
+ ]
+ for (var i = 0; i < undeprecated.length; i++) {
+ var current = undeprecated[i]
+ t.notEqual(
+ updated.versions[current].deprecated,
+ MESSAGE,
+ current + ' not deprecated'
+ )
+ }
+
+ t.equal(
+ updated.versions[VERSION].deprecated,
+ MESSAGE,
+ VERSION + ' deprecated'
+ )
+ res.statusCode = 201
+ res.json({ deprecated: true })
+ })
+ })
+
+ client.deprecate(
+ common.registry + '/@test%2funderscore',
+ PARAMS,
+ function (er, data) {
+ t.ifError(er)
+ t.ok(data.deprecated, 'was deprecated')
+
+ t.end()
+ }
+ )
+})
+
+test('cleanup', function (t) {
+ server.close()
+ t.ok(true)
+ t.end()
+})
diff --git a/node_modules/npm-registry-client/test/dist-tags-add.js b/node_modules/npm-registry-client/test/dist-tags-add.js
index e66d80a3e..00f43b0f2 100644
--- a/node_modules/npm-registry-client/test/dist-tags-add.js
+++ b/node_modules/npm-registry-client/test/dist-tags-add.js
@@ -136,6 +136,7 @@ test('add a new dist-tag to a package', function (t) {
t.ifError(error, 'no errors')
t.ok(data.test, 'dist-tag added')
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/dist-tags-fetch.js b/node_modules/npm-registry-client/test/dist-tags-fetch.js
index ef0901ea7..cde338cf1 100644
--- a/node_modules/npm-registry-client/test/dist-tags-fetch.js
+++ b/node_modules/npm-registry-client/test/dist-tags-fetch.js
@@ -93,6 +93,7 @@ test('fetch dist-tags for a package', function (t) {
t.ifError(error, 'no errors')
t.same(data, { a: '1.0.0', b: '2.0.0' }, 'etag filtered from response')
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/dist-tags-rm.js b/node_modules/npm-registry-client/test/dist-tags-rm.js
index a035014dc..2076eb931 100644
--- a/node_modules/npm-registry-client/test/dist-tags-rm.js
+++ b/node_modules/npm-registry-client/test/dist-tags-rm.js
@@ -112,6 +112,7 @@ test('remove a dist-tag from a package', function (t) {
t.ifError(error, 'no errors')
t.notOk(data.test, 'dist-tag removed')
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/dist-tags-set.js b/node_modules/npm-registry-client/test/dist-tags-set.js
index 691aef13e..cb595f6d2 100644
--- a/node_modules/npm-registry-client/test/dist-tags-set.js
+++ b/node_modules/npm-registry-client/test/dist-tags-set.js
@@ -116,6 +116,7 @@ test('set dist-tags for a package', function (t) {
t.ifError(error, 'no errors')
t.ok(data.a && data.b, 'dist-tags set')
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/dist-tags-update.js b/node_modules/npm-registry-client/test/dist-tags-update.js
index 4a829c85d..37508fc07 100644
--- a/node_modules/npm-registry-client/test/dist-tags-update.js
+++ b/node_modules/npm-registry-client/test/dist-tags-update.js
@@ -107,6 +107,7 @@ test('update dist-tags for a package', function (t) {
t.ifError(error, 'no errors')
t.ok(data.a && data.b, 'dist-tags set')
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/fetch-404.js b/node_modules/npm-registry-client/test/fetch-404.js
index 805c88a67..fa400cd5c 100644
--- a/node_modules/npm-registry-client/test/fetch-404.js
+++ b/node_modules/npm-registry-client/test/fetch-404.js
@@ -28,6 +28,7 @@ tap.test('fetch with a 404 response', function (t) {
'fetch failed with status code 404',
'got expected error message'
)
+ server.close()
t.end()
}
)
diff --git a/node_modules/npm-registry-client/test/fetch-408.js b/node_modules/npm-registry-client/test/fetch-408.js
index d49b149f6..422376ef3 100644
--- a/node_modules/npm-registry-client/test/fetch-408.js
+++ b/node_modules/npm-registry-client/test/fetch-408.js
@@ -40,6 +40,7 @@ tap.test('fetch with retry on timeout', function (t) {
var sink = cat(function (data) {
t.deepEqual(data, readFileSync(tgz))
+ server.close()
t.end()
})
diff --git a/node_modules/npm-registry-client/test/fetch-503.js b/node_modules/npm-registry-client/test/fetch-503.js
index 04f5901e8..6dff11558 100644
--- a/node_modules/npm-registry-client/test/fetch-503.js
+++ b/node_modules/npm-registry-client/test/fetch-503.js
@@ -40,6 +40,7 @@ tap.test('fetch with retry on server error', function (t) {
var sink = cat(function (data) {
t.deepEqual(data, readFileSync(tgz))
+ server.close()
t.end()
})
diff --git a/node_modules/npm-registry-client/test/fetch-authed.js b/node_modules/npm-registry-client/test/fetch-authed.js
index ccfd4b77f..d516deb37 100644
--- a/node_modules/npm-registry-client/test/fetch-authed.js
+++ b/node_modules/npm-registry-client/test/fetch-authed.js
@@ -44,6 +44,7 @@ tap.test('basic fetch with scoped always-auth enabled', function (t) {
var sink = cat(function (data) {
t.deepEqual(data, readFileSync(tgz))
+ server.close()
t.end()
})
diff --git a/node_modules/npm-registry-client/test/fetch-basic.js b/node_modules/npm-registry-client/test/fetch-basic.js
index 7bf4d1bd1..31ad17edd 100644
--- a/node_modules/npm-registry-client/test/fetch-basic.js
+++ b/node_modules/npm-registry-client/test/fetch-basic.js
@@ -79,6 +79,7 @@ test('basic fetch', function (t) {
var sink = concat(function (data) {
t.deepEqual(data, readFileSync(tgz))
+ server.close()
t.end()
})
diff --git a/node_modules/npm-registry-client/test/fetch-github-api-json.js b/node_modules/npm-registry-client/test/fetch-github-api-json.js
index 43f25f1ad..688c91d27 100644
--- a/node_modules/npm-registry-client/test/fetch-github-api-json.js
+++ b/node_modules/npm-registry-client/test/fetch-github-api-json.js
@@ -54,6 +54,7 @@ tap.test("fetch accepts github api's json", function (t) {
var sink = cat(function (data) {
t.deepEqual(data, readFileSync(tgz))
+ server.close()
t.end()
})
diff --git a/node_modules/npm-registry-client/test/fetch-not-authed.js b/node_modules/npm-registry-client/test/fetch-not-authed.js
index 2fb92c2c2..6a397cc5e 100644
--- a/node_modules/npm-registry-client/test/fetch-not-authed.js
+++ b/node_modules/npm-registry-client/test/fetch-not-authed.js
@@ -40,6 +40,7 @@ tap.test('basic fetch with scoped always-auth disabled', function (t) {
var sink = cat(function (data) {
t.deepEqual(data, readFileSync(tgz))
+ server.close()
t.end()
})
diff --git a/node_modules/npm-registry-client/test/get-403.js b/node_modules/npm-registry-client/test/get-403.js
index 0b8592e50..004de207f 100644
--- a/node_modules/npm-registry-client/test/get-403.js
+++ b/node_modules/npm-registry-client/test/get-403.js
@@ -23,6 +23,7 @@ tap.test('get returns 403', function (t) {
t.equal(er.statusCode, 403, 'status code was attached to error as expected')
t.equal(er.code, 'E403', 'error code was formatted as expected')
+ server.close()
t.end()
}
)
diff --git a/node_modules/npm-registry-client/test/get-basic.js b/node_modules/npm-registry-client/test/get-basic.js
index a2ab27fe0..031309c92 100644
--- a/node_modules/npm-registry-client/test/get-basic.js
+++ b/node_modules/npm-registry-client/test/get-basic.js
@@ -78,3 +78,8 @@ test('basic request', function (t) {
t.deepEqual(data, usroot)
})
})
+
+test('cleanup', function (t) {
+ server.close()
+ t.end()
+})
diff --git a/node_modules/npm-registry-client/test/get-error-403.js b/node_modules/npm-registry-client/test/get-error-403.js
index c9c96d354..73ef43611 100644
--- a/node_modules/npm-registry-client/test/get-error-403.js
+++ b/node_modules/npm-registry-client/test/get-error-403.js
@@ -27,6 +27,7 @@ tap.test('get fails with 403', function (t) {
'got error message'
)
+ server.close()
t.end()
}
)
diff --git a/node_modules/npm-registry-client/test/lib/common.js b/node_modules/npm-registry-client/test/lib/common.js
index 8b7875d4c..78e543f69 100644
--- a/node_modules/npm-registry-client/test/lib/common.js
+++ b/node_modules/npm-registry-client/test/lib/common.js
@@ -2,6 +2,14 @@ var server = require('./server.js')
var RC = require('../../')
var REGISTRY = 'http://localhost:' + server.port
+// cheesy hackaround for test deps (read: nock) that rely on setImmediate
+if (!global.setImmediate || !require('timers').setImmediate) {
+ require('timers').setImmediate = global.setImmediate = function () {
+ var args = [arguments[0], 0].concat([].slice.call(arguments, 1))
+ setTimeout.apply(this, args)
+ }
+}
+
module.exports = {
port: server.port,
registry: REGISTRY,
diff --git a/node_modules/npm-registry-client/test/lib/server.js b/node_modules/npm-registry-client/test/lib/server.js
index 60b116d80..06bebdc13 100644
--- a/node_modules/npm-registry-client/test/lib/server.js
+++ b/node_modules/npm-registry-client/test/lib/server.js
@@ -29,11 +29,6 @@ function handler (req, res) {
var fn = server._expect[k].shift()
if (!fn) throw Error('unexpected request: ' + req.method + ' ' + req.url)
- var remain = (Object.keys(server._expect).reduce(function (s, k) {
- return s + server._expect[k].length
- }, 0))
- if (remain === 0) server.close()
- else this.log.info('fake-registry', 'TEST SERVER: %d reqs remain', remain)
this.log.info('fake-registry', Object.keys(server._expect).map(function (k) {
return [k, server._expect[k].length]
}).reduce(function (acc, kv) {
diff --git a/node_modules/npm-registry-client/test/ping.js b/node_modules/npm-registry-client/test/ping.js
index 002d8ba8f..1b30b9052 100644
--- a/node_modules/npm-registry-client/test/ping.js
+++ b/node_modules/npm-registry-client/test/ping.js
@@ -70,6 +70,7 @@ test('ping', function (t) {
username: DEP_USER
}
t.same(found, wanted)
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/publish-again-scoped.js b/node_modules/npm-registry-client/test/publish-again-scoped.js
index 42f672721..611a852cd 100644
--- a/node_modules/npm-registry-client/test/publish-again-scoped.js
+++ b/node_modules/npm-registry-client/test/publish-again-scoped.js
@@ -17,7 +17,7 @@ tap.test('publish again', function (t) {
// not really a tarball, but doesn't matter
var bodyPath = require.resolve('../package.json')
var tarball = fs.createReadStream(bodyPath)
- var pd = fs.readFileSync(bodyPath, 'base64')
+ var pd = fs.readFileSync(bodyPath)
var pkg = require('../package.json')
var lastTime = null
@@ -36,7 +36,7 @@ tap.test('publish again', function (t) {
t.has(o.versions[pkg.version], pkg)
t.same(o.maintainers, [ { name: 'username', email: 'i@izs.me' } ])
var att = o._attachments[ pkg.name + '-' + pkg.version + '.tgz' ]
- t.same(att.data, pd)
+ t.same(att.data, pd.toString('base64'))
res.statusCode = 409
res.json({reason: 'must supply latest _rev to update existing package'})
})
@@ -85,6 +85,7 @@ tap.test('publish again', function (t) {
client.publish('http://localhost:1337/', params, function (er, data) {
if (er) throw er
t.deepEqual(data, { created: true })
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/publish-again.js b/node_modules/npm-registry-client/test/publish-again.js
index 5beec90e4..4a895205e 100644
--- a/node_modules/npm-registry-client/test/publish-again.js
+++ b/node_modules/npm-registry-client/test/publish-again.js
@@ -17,7 +17,7 @@ tap.test('publish again', function (t) {
// not really a tarball, but doesn't matter
var bodyPath = require.resolve('../package.json')
var tarball = fs.createReadStream(bodyPath)
- var pd = fs.readFileSync(bodyPath, 'base64')
+ var pd = fs.readFileSync(bodyPath)
var pkg = require('../package.json')
var lastTime = null
@@ -36,7 +36,7 @@ tap.test('publish again', function (t) {
t.has(o.versions[pkg.version], pkg)
t.same(o.maintainers, [ { name: 'username', email: 'i@izs.me' } ])
var att = o._attachments[ pkg.name + '-' + pkg.version + '.tgz' ]
- t.same(att.data, pd)
+ t.same(att.data, pd.toString('base64'))
res.statusCode = 409
res.json({reason: 'must supply latest _rev to update existing package'})
})
@@ -83,6 +83,7 @@ tap.test('publish again', function (t) {
client.publish('http://localhost:1337/', params, function (er, data) {
if (er) throw er
t.deepEqual(data, { created: true })
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/publish-failed-no-message.js b/node_modules/npm-registry-client/test/publish-failed-no-message.js
index 5cb66d1e0..d2641e85c 100644
--- a/node_modules/npm-registry-client/test/publish-failed-no-message.js
+++ b/node_modules/npm-registry-client/test/publish-failed-no-message.js
@@ -38,6 +38,7 @@ test('publish with a 500 response but no message', function (t) {
t.ok(er, 'got expected error')
t.notOk(data, 'no payload on failure')
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/publish-mixcase-name.js b/node_modules/npm-registry-client/test/publish-mixcase-name.js
index f2cc1d668..5f2c44e69 100644
--- a/node_modules/npm-registry-client/test/publish-mixcase-name.js
+++ b/node_modules/npm-registry-client/test/publish-mixcase-name.js
@@ -17,7 +17,7 @@ tap.test('publish mixcase name', function (t) {
// not really a tarball, but doesn't matter
var bodyPath = require.resolve('../package.json')
var tarball = fs.createReadStream(bodyPath)
- var pd = fs.readFileSync(bodyPath, 'base64')
+ var pd = fs.readFileSync(bodyPath)
var pkg = require('../package.json')
var lastTime = null
@@ -39,7 +39,7 @@ tap.test('publish mixcase name', function (t) {
t.has(o.versions[pkg.version], pkg)
t.same(o.maintainers, [ { name: 'username', email: 'i@izs.me' } ])
var att = o._attachments[ pkg.name + '-' + pkg.version + '.tgz' ]
- t.same(att.data, pd)
+ t.same(att.data, pd.toString('base64'))
res.statusCode = 409
res.json({reason: 'must supply latest _rev to update existing package'})
})
@@ -86,6 +86,7 @@ tap.test('publish mixcase name', function (t) {
client.publish('http://localhost:1337/', params, function (er, data) {
if (er) throw er
t.deepEqual(data, { created: true })
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/publish-new-mixcase-name.js b/node_modules/npm-registry-client/test/publish-new-mixcase-name.js
index 5b0e47655..e3e8ed232 100644
--- a/node_modules/npm-registry-client/test/publish-new-mixcase-name.js
+++ b/node_modules/npm-registry-client/test/publish-new-mixcase-name.js
@@ -28,7 +28,7 @@ var PARAMS = {
}
test('publish-new-mixcase-name', function (t) {
- var pd = fs.readFileSync(BODY_PATH, 'base64')
+ var pd = fs.readFileSync(BODY_PATH)
// change to mixed-case name
METADATA.name = 'npm-Registry-Client'
@@ -51,9 +51,9 @@ test('publish-new-mixcase-name', function (t) {
t.same(o.maintainers, o.versions[METADATA.version].maintainers)
var att = o._attachments[METADATA.name + '-' + METADATA.version + '.tgz']
- t.same(att.data, pd)
+ t.same(att.data, pd.toString('base64'))
- var hash = crypto.createHash('sha1').update(pd, 'base64').digest('hex')
+ var hash = crypto.createHash('sha1').update(pd).digest('hex')
t.equal(o.versions[METADATA.version].dist.shasum, hash)
res.statusCode = 403
@@ -67,6 +67,7 @@ test('publish-new-mixcase-name', function (t) {
// TODO: need a test that ensures useful error message
// t.similar(data.error, /must be lower-case/)
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/publish-scoped-auth-token.js b/node_modules/npm-registry-client/test/publish-scoped-auth-token.js
index d4704ca49..a9c5768e5 100644
--- a/node_modules/npm-registry-client/test/publish-scoped-auth-token.js
+++ b/node_modules/npm-registry-client/test/publish-scoped-auth-token.js
@@ -13,7 +13,7 @@ tap.test('publish', function (t) {
// not really a tarball, but doesn't matter
var bodyPath = require.resolve('../package.json')
var tarball = fs.createReadStream(bodyPath)
- var pd = fs.readFileSync(bodyPath, 'base64')
+ var pd = fs.readFileSync(bodyPath)
var pkg = require('../package.json')
pkg.name = '@npm/npm-registry-client'
@@ -34,8 +34,8 @@ tap.test('publish', function (t) {
t.has(o.versions[pkg.version], pkg)
t.same(o.maintainers, o.versions[pkg.version].maintainers)
var att = o._attachments[ pkg.name + '-' + pkg.version + '.tgz' ]
- t.same(att.data, pd)
- var hash = crypto.createHash('sha1').update(pd, 'base64').digest('hex')
+ t.same(att.data, pd.toString('base64'))
+ var hash = crypto.createHash('sha1').update(pd).digest('hex')
t.equal(o.versions[pkg.version].dist.shasum, hash)
res.statusCode = 201
res.json({ created: true })
@@ -51,6 +51,7 @@ tap.test('publish', function (t) {
client.publish(common.registry, params, function (er, data) {
if (er) throw er
t.deepEqual(data, { created: true })
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/publish-scoped.js b/node_modules/npm-registry-client/test/publish-scoped.js
index 7758c3c12..347364ea9 100644
--- a/node_modules/npm-registry-client/test/publish-scoped.js
+++ b/node_modules/npm-registry-client/test/publish-scoped.js
@@ -19,7 +19,7 @@ tap.test('publish', function (t) {
// not really a tarball, but doesn't matter
var bodyPath = require.resolve('../package.json')
var tarball = fs.createReadStream(bodyPath)
- var pd = fs.readFileSync(bodyPath, 'base64')
+ var pd = fs.readFileSync(bodyPath)
var pkg = require('../package.json')
pkg.name = '@npm/npm-registry-client'
@@ -41,8 +41,8 @@ tap.test('publish', function (t) {
t.same(o.maintainers, [ { name: 'username', email: 'ogd@aoaioxxysz.net' } ])
t.same(o.maintainers, o.versions[pkg.version].maintainers)
var att = o._attachments[ pkg.name + '-' + pkg.version + '.tgz' ]
- t.same(att.data, pd)
- var hash = crypto.createHash('sha1').update(pd, 'base64').digest('hex')
+ t.same(att.data, pd.toString('base64'))
+ var hash = crypto.createHash('sha1').update(pd).digest('hex')
t.equal(o.versions[pkg.version].dist.shasum, hash)
res.statusCode = 201
res.json({ created: true })
@@ -58,6 +58,7 @@ tap.test('publish', function (t) {
client.publish(common.registry, params, function (er, data) {
if (er) throw er
t.deepEqual(data, { created: true })
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/publish.js b/node_modules/npm-registry-client/test/publish.js
index f2c257e95..07c8bb461 100644
--- a/node_modules/npm-registry-client/test/publish.js
+++ b/node_modules/npm-registry-client/test/publish.js
@@ -164,7 +164,7 @@ test('publish call contract', function (t) {
})
test('publish', function (t) {
- var pd = fs.readFileSync(BODY_PATH, 'base64')
+ var pd = fs.readFileSync(BODY_PATH)
server.expect('/npm-registry-client', function (req, res) {
t.equal(req.method, 'PUT')
@@ -184,9 +184,9 @@ test('publish', function (t) {
t.same(o.maintainers, o.versions[METADATA.version].maintainers)
var att = o._attachments[METADATA.name + '-' + METADATA.version + '.tgz']
- t.same(att.data, pd)
+ t.same(att.data, pd.toString('base64'))
- var hash = crypto.createHash('sha1').update(pd, 'base64').digest('hex')
+ var hash = crypto.createHash('sha1').update(pd).digest('hex')
t.equal(o.versions[METADATA.version].dist.shasum, hash)
res.statusCode = 201
@@ -198,6 +198,7 @@ test('publish', function (t) {
if (er) throw er
t.deepEqual(data, { created: true })
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/redirects.js b/node_modules/npm-registry-client/test/redirects.js
index d589f161a..2da565769 100644
--- a/node_modules/npm-registry-client/test/redirects.js
+++ b/node_modules/npm-registry-client/test/redirects.js
@@ -1,4 +1,4 @@
-var tap = require('tap')
+var test = require('tap').test
var server = require('./lib/server.js')
var common = require('./lib/common.js')
@@ -10,7 +10,7 @@ var pkg = {
version: '1.2.3'
}
-tap.test('basic request', function (t) {
+test('basic request', function (t) {
// Expect one request for { follow : false }
server.expect('/-/some-package/1.2.3', function (req, res) {
res.writeHead(301, {
@@ -49,3 +49,8 @@ tap.test('basic request', function (t) {
}
)
})
+
+test('cleanup', function (t) {
+ server.close()
+ t.end()
+})
diff --git a/node_modules/npm-registry-client/test/request-gzip-content.js b/node_modules/npm-registry-client/test/request-gzip-content.js
index 27a76b8a8..5e25214f2 100644
--- a/node_modules/npm-registry-client/test/request-gzip-content.js
+++ b/node_modules/npm-registry-client/test/request-gzip-content.js
@@ -1,5 +1,5 @@
var zlib = require('zlib')
-var tap = require('tap')
+var test = require('tap').test
var server = require('./lib/server.js')
var common = require('./lib/common.js')
@@ -20,7 +20,7 @@ var pkg = {
}
zlib.gzip(JSON.stringify(pkg), function (err, pkgGzip) {
- tap.test('request gzip package content', function (t) {
+ test('request gzip package content', function (t) {
t.ifError(err, 'example package compressed')
server.expect('GET', '/some-package-gzip/1.2.3', function (req, res) {
@@ -37,7 +37,7 @@ zlib.gzip(JSON.stringify(pkg), function (err, pkgGzip) {
})
})
- tap.test('request wrong gzip package content', function (t) {
+ test('request wrong gzip package content', function (t) {
// will retry 3 times
for (var i = 0; i < 3; i++) {
server.expect('GET', '/some-package-gzip/1.2.3', function (req, res) {
@@ -53,4 +53,9 @@ zlib.gzip(JSON.stringify(pkg), function (err, pkgGzip) {
t.end()
})
})
+
+ test('cleanup', function (t) {
+ server.close()
+ t.end()
+ })
})
diff --git a/node_modules/npm-registry-client/test/request.js b/node_modules/npm-registry-client/test/request.js
index 113bafd34..ed02f1972 100644
--- a/node_modules/npm-registry-client/test/request.js
+++ b/node_modules/npm-registry-client/test/request.js
@@ -1,4 +1,4 @@
-var Readable = require('stream').Readable
+var Readable = require('readable-stream').Readable
var inherits = require('util').inherits
var test = require('tap').test
@@ -276,3 +276,42 @@ test('run request through its paces', function (t) {
t.ok(typeof er !== 'string', "Error shouldn't be returned as string.")
})
})
+
+test('outputs notice if npm-notice header is set', function (t) {
+ var client = common.freshClient({
+ log: {
+ error: noop,
+ warn: function (prefix, msg) {
+ warnings.push(msg)
+ },
+ info: noop,
+ verbose: noop,
+ silly: noop,
+ http: noop,
+ pause: noop,
+ resume: noop
+ }
+ })
+ var message = 'notice me!'
+ var warnings = []
+
+ function noop () {}
+
+ server.expect('GET', '/npm-notice', function (req, res) {
+ req.pipe(concat(function () {
+ res.statusCode = 200
+ res.setHeader('npm-notice', message)
+ res.end()
+ }))
+ })
+
+ client.request(common.registry + '/npm-notice', {}, function (er) {
+ t.notEqual(warnings.indexOf(message), -1, 'notice not printed')
+ t.end()
+ })
+})
+
+test('cleanup', function (t) {
+ server.close()
+ t.end()
+})
diff --git a/node_modules/npm-registry-client/test/retries.js b/node_modules/npm-registry-client/test/retries.js
index 3101a5d57..a75cbf7e0 100644
--- a/node_modules/npm-registry-client/test/retries.js
+++ b/node_modules/npm-registry-client/test/retries.js
@@ -46,6 +46,7 @@ tap.test('create new user account', function (t) {
client.get('http://localhost:1337/some-package/1.2.3', {}, function (er, data) {
if (er) throw er
t.deepEqual(data, pkg)
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/star.js b/node_modules/npm-registry-client/test/star.js
index ff00bab1c..e9e60266d 100644
--- a/node_modules/npm-registry-client/test/star.js
+++ b/node_modules/npm-registry-client/test/star.js
@@ -112,13 +112,13 @@ test('if password auth, only sets authorization on put', function (t) {
.reply(200, {})
var starPut = nock('http://localhost:1010', {
- reqheaders: {
- authorization: 'Basic ' + new Buffer(AUTH.username + ':' +
- AUTH.password).toString('base64')
- }
- })
- .put('/underscore')
- .reply(200)
+ reqheaders: {
+ authorization: 'Basic ' + new Buffer(AUTH.username + ':' +
+ AUTH.password).toString('base64')
+ }
+ })
+ .put('/underscore')
+ .reply(200)
var params = { starred: STARRED, auth: AUTH }
@@ -132,28 +132,28 @@ test('if password auth, only sets authorization on put', function (t) {
test('if token auth, sets bearer on get and put', function (t) {
var starGet = nock('http://localhost:1010', {
- reqheaders: {
- authorization: 'Bearer foo'
- }
- })
- .get('/underscore?write=true')
- .reply(200, {})
+ reqheaders: {
+ authorization: 'Bearer foo'
+ }
+ })
+ .get('/underscore?write=true')
+ .reply(200, {})
var getUser = nock('http://localhost:1010', {
- reqheaders: {
- authorization: 'Bearer foo'
- }
- })
- .get('/-/whoami')
- .reply(200, { username: 'bcoe' })
+ reqheaders: {
+ authorization: 'Bearer foo'
+ }
+ })
+ .get('/-/whoami')
+ .reply(200, { username: 'bcoe' })
var starPut = nock('http://localhost:1010', {
- reqheaders: {
- authorization: 'Bearer foo'
- }
- })
- .put('/underscore')
- .reply(200)
+ reqheaders: {
+ authorization: 'Bearer foo'
+ }
+ })
+ .put('/underscore')
+ .reply(200)
var params = {
starred: STARRED,
@@ -169,3 +169,8 @@ test('if token auth, sets bearer on get and put', function (t) {
t.end()
})
})
+
+test('cleanup', function (t) {
+ server.close()
+ t.end()
+})
diff --git a/node_modules/npm-registry-client/test/stars.js b/node_modules/npm-registry-client/test/stars.js
index d990e05c5..a5e713c58 100644
--- a/node_modules/npm-registry-client/test/stars.js
+++ b/node_modules/npm-registry-client/test/stars.js
@@ -75,6 +75,7 @@ test('get the stars for a package', function (t) {
t.ifError(er, 'no errors')
t.deepEqual(info, USERS, 'got the list of users')
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/tag.js b/node_modules/npm-registry-client/test/tag.js
index 2ab5134e4..e10490ee6 100644
--- a/node_modules/npm-registry-client/test/tag.js
+++ b/node_modules/npm-registry-client/test/tag.js
@@ -102,6 +102,7 @@ test('tag a package', function (t) {
t.ifError(error, 'no errors')
t.ok(data.tagged, 'was tagged')
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/team.js b/node_modules/npm-registry-client/test/team.js
index 638690c57..ffbd18fc8 100644
--- a/node_modules/npm-registry-client/test/team.js
+++ b/node_modules/npm-registry-client/test/team.js
@@ -202,6 +202,11 @@ test('team command base validation', function (t) {
t.end()
})
+test('cleanup', function (t) {
+ server.close()
+ t.end()
+})
+
function onJsonReq (req, cb) {
var buffer = ''
req.setEncoding('utf8')
diff --git a/node_modules/npm-registry-client/test/unpublish-scoped.js b/node_modules/npm-registry-client/test/unpublish-scoped.js
index d3222de47..26d4ac7b1 100644
--- a/node_modules/npm-registry-client/test/unpublish-scoped.js
+++ b/node_modules/npm-registry-client/test/unpublish-scoped.js
@@ -1,4 +1,4 @@
-var tap = require('tap')
+var test = require('tap').test
var server = require('./lib/server.js')
var common = require('./lib/common.js')
@@ -19,7 +19,7 @@ var PARAMS = {
auth: AUTH
}
-tap.test('unpublish a package', function (t) {
+test('unpublish a package', function (t) {
server.expect('GET', '/@npm%2fnpm-registry-client?write=true', function (req, res) {
t.equal(req.method, 'GET')
@@ -62,6 +62,7 @@ tap.test('unpublish a package', function (t) {
client.unpublish(URI, PARAMS, function (er) {
t.ifError(er, 'no errors')
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/unpublish.js b/node_modules/npm-registry-client/test/unpublish.js
index afb16b787..8a114c899 100644
--- a/node_modules/npm-registry-client/test/unpublish.js
+++ b/node_modules/npm-registry-client/test/unpublish.js
@@ -98,6 +98,7 @@ test('unpublish a package', function (t) {
client.unpublish(URI, PARAMS, function (error) {
t.ifError(error, 'no errors')
+ server.close()
t.end()
})
})
diff --git a/node_modules/npm-registry-client/test/whoami.js b/node_modules/npm-registry-client/test/whoami.js
index 764fc0c30..80979ee97 100644
--- a/node_modules/npm-registry-client/test/whoami.js
+++ b/node_modules/npm-registry-client/test/whoami.js
@@ -64,6 +64,7 @@ test('whoami', function (t) {
t.ifError(error, 'no errors')
t.equal(wombat, WHOIAM, 'im a wombat')
+ server.close()
t.end()
})
})