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:
authorisaacs <i@izs.me>2012-10-04 02:14:55 +0400
committerisaacs <i@izs.me>2012-10-04 02:14:55 +0400
commitef1dcaf0f80c3933bbbc4c3c2f1377f8d13544b3 (patch)
tree8e43de6831bb1d8c30ad8f3e77a1967a44a95175
parent889103827cf99e1e7a1e281ecc3a4d041e7e1e80 (diff)
npm-registry-client@0.2.9
-rw-r--r--node_modules/npm-registry-client/index.js2
-rw-r--r--node_modules/npm-registry-client/node_modules/couch-login/.npmignore (renamed from node_modules/couch-login/.npmignore)0
-rw-r--r--node_modules/npm-registry-client/node_modules/couch-login/LICENSE (renamed from node_modules/couch-login/LICENSE)0
-rw-r--r--node_modules/npm-registry-client/node_modules/couch-login/README.md (renamed from node_modules/couch-login/README.md)19
-rw-r--r--node_modules/npm-registry-client/node_modules/couch-login/couch-login.js (renamed from node_modules/couch-login/couch-login.js)18
-rw-r--r--node_modules/npm-registry-client/node_modules/couch-login/package.json (renamed from node_modules/couch-login/package.json)8
-rw-r--r--node_modules/npm-registry-client/node_modules/couch-login/test/00-setup.js (renamed from node_modules/couch-login/test/00-setup.js)0
-rw-r--r--node_modules/npm-registry-client/node_modules/couch-login/test/basic.js (renamed from node_modules/couch-login/test/basic.js)0
-rw-r--r--node_modules/npm-registry-client/node_modules/couch-login/test/fixtures/_replicator.couch (renamed from node_modules/couch-login/test/fixtures/_replicator.couch)bin4194 -> 4194 bytes
-rw-r--r--node_modules/npm-registry-client/node_modules/couch-login/test/fixtures/couch.ini (renamed from node_modules/couch-login/test/fixtures/couch.ini)0
-rw-r--r--node_modules/npm-registry-client/node_modules/couch-login/test/fixtures/registry.couch (renamed from node_modules/couch-login/test/fixtures/registry.couch)bin24674 -> 24674 bytes
-rw-r--r--node_modules/npm-registry-client/node_modules/couch-login/test/registry.js (renamed from node_modules/couch-login/test/registry.js)0
-rw-r--r--node_modules/npm-registry-client/node_modules/couch-login/test/reset-then-signup.js (renamed from node_modules/couch-login/test/reset-then-signup.js)0
-rw-r--r--node_modules/npm-registry-client/node_modules/couch-login/test/zz-teardown.js (renamed from node_modules/couch-login/test/zz-teardown.js)0
-rw-r--r--node_modules/npm-registry-client/package.json8
-rw-r--r--package.json4
16 files changed, 48 insertions, 11 deletions
diff --git a/node_modules/npm-registry-client/index.js b/node_modules/npm-registry-client/index.js
index 8d321b869..c2d50b6c0 100644
--- a/node_modules/npm-registry-client/index.js
+++ b/node_modules/npm-registry-client/index.js
@@ -58,6 +58,8 @@ function RegClient (conf) {
var token = this.conf.get('_token')
this.couchLogin = new CouchLogin(registry, token)
this.couchLogin.proxy = this.conf.get('proxy')
+ this.couchLogin.strictSSL = this.conf.get('strict-ssl')
+ this.couchLogin.ca = this.conf.get('ca')
}
this.log = conf.log || conf.get('log') || npmlog
diff --git a/node_modules/couch-login/.npmignore b/node_modules/npm-registry-client/node_modules/couch-login/.npmignore
index 9ed56e7a5..9ed56e7a5 100644
--- a/node_modules/couch-login/.npmignore
+++ b/node_modules/npm-registry-client/node_modules/couch-login/.npmignore
diff --git a/node_modules/couch-login/LICENSE b/node_modules/npm-registry-client/node_modules/couch-login/LICENSE
index 0c44ae716..0c44ae716 100644
--- a/node_modules/couch-login/LICENSE
+++ b/node_modules/npm-registry-client/node_modules/couch-login/LICENSE
diff --git a/node_modules/couch-login/README.md b/node_modules/npm-registry-client/node_modules/couch-login/README.md
index 0b6c75d94..cebba79a3 100644
--- a/node_modules/couch-login/README.md
+++ b/node_modules/npm-registry-client/node_modules/couch-login/README.md
@@ -148,6 +148,25 @@ discarded.
Related to tokenGet and tokenSet. Takes a callback which should be
called when the token is deleted.
+### couch.ca
+
+* {String | Array | null}
+
+A certificate authority string, or an array of CA strings. Only
+relevant for HTTPS couches, of course.
+
+Leave as `null` to use the default ca settings built into node.
+
+### couch.strictSSL
+
+* {Boolean | null}
+
+Whether or not to be strict about SSL connections. If left as null,
+then use the default setting in node, which is true in node versions
+0.9.x and above, and false prior to 0.8.x.
+
+Only relevant for HTTPS couches, of course.
+
### couch.anonymous()
Return a new CouchLogin object that points at the same couchdb server,
diff --git a/node_modules/couch-login/couch-login.js b/node_modules/npm-registry-client/node_modules/couch-login/couch-login.js
index f0b2d4388..828a0e265 100644
--- a/node_modules/couch-login/couch-login.js
+++ b/node_modules/npm-registry-client/node_modules/couch-login/couch-login.js
@@ -42,6 +42,18 @@ function CouchLogin (couch, tok) {
this.proxy = null
this.maxAge = YEAR
+
+ // replace with a CA cert string, or an array, or leave as null
+ // to use the defaults included in node. Only relevant for HTTPS
+ // couches, of course.
+ this.ca = null
+
+ // set to boolean true or false to specify the strictSSL behavior.
+ // if left as null, then it'll use whatever node defaults to, which
+ // is false <=0.8.x, and true >=0.9.x
+ //
+ // Again, only relevant for https couches, of course.
+ this.strictSSL = null
}
CouchLogin.prototype =
@@ -136,6 +148,12 @@ function makeReq (meth, body, f) { return function madeReq (p, d, cb) {
// we're handling cookies, don't do it for us.
req.jar = false
+ if (this.ca)
+ req.ca = this.ca
+
+ if (this.strictSSL && this.strictSSL !== null)
+ req.strictSSL = this.strictSSL
+
request(req, function (er, res, data) {
// update cookie.
if (er || res.statusCode !== 200) return cb(er, res, data)
diff --git a/node_modules/couch-login/package.json b/node_modules/npm-registry-client/node_modules/couch-login/package.json
index 0e10bd38c..30e9e022c 100644
--- a/node_modules/couch-login/package.json
+++ b/node_modules/npm-registry-client/node_modules/couch-login/package.json
@@ -6,7 +6,7 @@
},
"name": "couch-login",
"description": "A module for doing logged-in requests to a couchdb server",
- "version": "0.1.14",
+ "version": "0.1.15",
"repository": {
"type": "git",
"url": "git://github.com/isaacs/couch-login.git"
@@ -21,7 +21,7 @@
"devDependencies": {
"tap": "~0.2.4"
},
- "readme": "# couch-login\n\nThis module lets you log into couchdb to get a session token, then make\nrequests using that session. It is basically just a thin wrapper around\n[@mikeal's request module](https://github.com/mikeal/request).\n\nThis is handy if you want a user to take actions in a couchdb database\non behalf of a user, without having to store their couchdb username and\npassword anywhere. (You do need to store the AuthSession token\nsomewhere, though.)\n\n## Usage\n\n```javascript\nvar CouchLogin = require('couch-login')\n\n// Nothing about this module is http-server specific of course.\n// You could also use it to do authenticated requests against\n// a couchdb using sessions and storing the token somewhere else.\n\nhttp.createServer(function (req, res) {\n var couch = new CouchLogin('http://my-couch.iriscouch.com:5984/')\n\n // .. look up the token in the user's session or whatever ..\n // Look at couch.decorate(req, res) for more on doing that\n // automatically, below.\n\n if (sessionToken) {\n // this user already logged in.\n couch.token = sessionToken\n\n // now we can do things on their behalf, like:\n // 1. View their session info.\n // like doing request.get({ uri: couch + '/_session', ... })\n // but with the cookie and whatnot\n\n couch.get('/_session', function (er, resp, data) {\n // er = some kind of communication error.\n // resp = response object from the couchdb request.\n // data = parsed JSON response body.\n if (er || resp.statusCode !== 200) {\n res.statusCode = resp.statusCode || 403\n return res.end('Invalid login or something')\n }\n\n // now we have the session info, we know who this user is.\n // hitting couchdb for this on every request is kinda costly,\n // so maybe you should store the username wherever you're storing\n // the sessionToken. RedSess is a good util for this, if you're\n // into redis. And if you're not into redis, you're crazy,\n // because it is awesome.\n\n // now let's get the user record.\n // note that this will 404 for anyone other than the user,\n // unless they're a server admin.\n couch.get('/_users/org.couchdb.user:' + data.userCtx.name, etc)\n\n // PUTs and DELETEs will also use their session, of course, so\n // your validate_doc_update's will see their info in userCtx\n })\n\n } else {\n // don't have a sessionToken.\n // get a username and password from the post body or something.\n // maybe redirect to a /login page or something to ask for that.\n var login = { name: name, password: password }\n couch.login(login, function (er, resp, data) {\n // again, er is an error, resp is the response obj, data is the json\n if (er || resp.statusCode !== 200) {\n res.statusCode = resp.statusCode || 403\n return res.end('Invalid login or something')\n }\n\n // the data is something like\n // {\"ok\":true,\"name\":\"testuser\",\"roles\":[]}\n // and couch.token is the token you'll need to save somewhere.\n\n // at this point, you can start making authenticated requests to\n // couchdb, or save data in their session, or do whatever it is\n // that you need to do.\n\n res.statusCode = 200\n res.write(\"Who's got two thumbs and just logged you into couch?\\n\")\n setTimeout(function () {\n res.end(\"THIS GUY!\")\n }, 500)\n })\n }\n})\n```\n\n## Class: CouchLogin\n### new CouchLogin(couchdbUrl, token)\n\nCreate a new CouchLogin object bound to the couchdb url.\n\nIn addition to these, the `get`, `post`, `put`, and `del` methods all\nproxy to the associated method on [request](https://github.com/mikeal/request).\n\nHowever, as you'll note in the example above, only the pathname portion\nof the url is required. Urls will be appended to the couchdb url passed\ninto the constructor.\n\nIf you have to talk to more than one couchdb, then you'll need more than\none CouchLogin object, for somewhat obvious reasons.\n\nAll callbacks get called with the following arguments, which are exactly\nidentical to the arguments passed to a `request` callback.\n\n* `er` {Error | null} Set if a communication error happens.\n* `resp` {HTTP Response} The response from the request to couchdb\n* `data` {Object} The parsed JSON data from couch\n\nIf the token is the string \"anonymous\", then it will not attempt to log\nin before making requests. If the token is not \"anonymous\", then it\nmust be an object with the appropriate fields.\n\n### couch.token\n\n* {Object}\n\nAn object representing the couchdb session token. (Basically just a\ncookie and a timeout.)\n\nIf the token has already timed out, then setting it will have no effect.\n\n### couch.tokenSet\n\nIf set, this method is called whenever the token is saved.\n\nFor example, you could assign a function to this method to save the\ntoken into a redis session, a cookie, or in some other database.\n\nTakes a callback which should be called when the token is saved.\n\n### couch.tokenGet\n\nIf set, this method is called to look up the token on demand.\n\nThe inverse of couch.tokenSet. Takes a callback which is called with\nthe `cb(er || null, token)`.\n\n### couch.tokenDel\n\nIf set, this method is called to delete the token when it should be\ndiscarded.\n\nRelated to tokenGet and tokenSet. Takes a callback which should be\ncalled when the token is deleted.\n\n### couch.anonymous()\n\nReturn a new CouchLogin object that points at the same couchdb server,\nbut doesn't try to log in before making requests.\n\nThis is handy for situations where the user is not logged in at the\nmoment, but a request needs to be made anyway, and does not require\nauthorization.\n\n### couch.login(auth, callback)\n\n* `auth` {Object} The login details\n * `name` {String}\n * `password` {String}\n* `callback` {Function}\n\nWhen the callback is called, the `couch.token` will already have been\nset (assuming it worked!), so subsequent requests will be done as that\nuser.\n\n### couch.get(path, callback)\n\nGET the supplied path from the couchdb using the credentials on the\ntoken.\n\nFails if the token is invalid or expired.\n\n### couch.del(path, callback)\n\nDELETE the supplied path from the couchdb using the credentials on the\ntoken.\n\nFails if the token is invalid or expired.\n\n### couch.post(path, data, callback)\n\nPOST the data to the supplied path in the couchdb, using the credentials\non the token.\n\nFails if the token is invalid or expired.\n\n### couch.put(path, data, callback)\n\nPUT the data to the supplied path in the couchdb, using the credentials\non the token.\n\nFails if the token is invalid or expired.\n\n### couch.changePass(newAuth, callback)\n\nMust already be logged in. Updates the `_users` document with new salt\nand hash, and re-logs in with the new credentials. Callback is called\nwith the same arguments as login, or the first step of the process that\nfailed.\n\n### couch.signup(userData, callback)\n\nCreate a new user account. The userData must contain at least a `name`\nand `password` field. Any additional data will be copied to the user\nrecord. The `_id`, `name`, `roles`, `type`, `password_sha`, `salt`, and\n`date` fields are generated.\n\nAlso signs in as the newly created user, on successful account creation.\n\n### couch.deleteAccount(name, callback)\n\nDeletes a user account. If not logged in as the user, or a server\nadmin, then the request will fail.\n\nNote that this immediately invalidates any session tokens for the\ndeleted user account. If you are deleting the user's record, then you\nought to follow this with `couch.logout(callback)` so that it won't try\nto re-use the invalid session.\n\n### couch.logout(callback)\n\nDelete the session out of couchdb. This makes the token permanently\ninvalid, and deletes it.\n\n### couch.decorate(req, res)\n\nSet up `req.couch` and `res.couch` as references to this couch login\ninstance.\n\nAdditionall, if `req.session` or `res.session` is set, then it'll call\n`session.get('couch_token', cb)` as the tokenGet method,\n`session.set('couch_token', token, cb)` as the tokenSet method, and\n`session.del('couch_token', cb)` as the tokenDel method.\n\nThis works really nice with\n[RedSess](https://github.com/isaacs/redsess).\n",
- "_id": "couch-login@0.1.14",
- "_from": "couch-login@~0.1.9"
+ "readme": "# couch-login\n\nThis module lets you log into couchdb to get a session token, then make\nrequests using that session. It is basically just a thin wrapper around\n[@mikeal's request module](https://github.com/mikeal/request).\n\nThis is handy if you want a user to take actions in a couchdb database\non behalf of a user, without having to store their couchdb username and\npassword anywhere. (You do need to store the AuthSession token\nsomewhere, though.)\n\n## Usage\n\n```javascript\nvar CouchLogin = require('couch-login')\n\n// Nothing about this module is http-server specific of course.\n// You could also use it to do authenticated requests against\n// a couchdb using sessions and storing the token somewhere else.\n\nhttp.createServer(function (req, res) {\n var couch = new CouchLogin('http://my-couch.iriscouch.com:5984/')\n\n // .. look up the token in the user's session or whatever ..\n // Look at couch.decorate(req, res) for more on doing that\n // automatically, below.\n\n if (sessionToken) {\n // this user already logged in.\n couch.token = sessionToken\n\n // now we can do things on their behalf, like:\n // 1. View their session info.\n // like doing request.get({ uri: couch + '/_session', ... })\n // but with the cookie and whatnot\n\n couch.get('/_session', function (er, resp, data) {\n // er = some kind of communication error.\n // resp = response object from the couchdb request.\n // data = parsed JSON response body.\n if (er || resp.statusCode !== 200) {\n res.statusCode = resp.statusCode || 403\n return res.end('Invalid login or something')\n }\n\n // now we have the session info, we know who this user is.\n // hitting couchdb for this on every request is kinda costly,\n // so maybe you should store the username wherever you're storing\n // the sessionToken. RedSess is a good util for this, if you're\n // into redis. And if you're not into redis, you're crazy,\n // because it is awesome.\n\n // now let's get the user record.\n // note that this will 404 for anyone other than the user,\n // unless they're a server admin.\n couch.get('/_users/org.couchdb.user:' + data.userCtx.name, etc)\n\n // PUTs and DELETEs will also use their session, of course, so\n // your validate_doc_update's will see their info in userCtx\n })\n\n } else {\n // don't have a sessionToken.\n // get a username and password from the post body or something.\n // maybe redirect to a /login page or something to ask for that.\n var login = { name: name, password: password }\n couch.login(login, function (er, resp, data) {\n // again, er is an error, resp is the response obj, data is the json\n if (er || resp.statusCode !== 200) {\n res.statusCode = resp.statusCode || 403\n return res.end('Invalid login or something')\n }\n\n // the data is something like\n // {\"ok\":true,\"name\":\"testuser\",\"roles\":[]}\n // and couch.token is the token you'll need to save somewhere.\n\n // at this point, you can start making authenticated requests to\n // couchdb, or save data in their session, or do whatever it is\n // that you need to do.\n\n res.statusCode = 200\n res.write(\"Who's got two thumbs and just logged you into couch?\\n\")\n setTimeout(function () {\n res.end(\"THIS GUY!\")\n }, 500)\n })\n }\n})\n```\n\n## Class: CouchLogin\n### new CouchLogin(couchdbUrl, token)\n\nCreate a new CouchLogin object bound to the couchdb url.\n\nIn addition to these, the `get`, `post`, `put`, and `del` methods all\nproxy to the associated method on [request](https://github.com/mikeal/request).\n\nHowever, as you'll note in the example above, only the pathname portion\nof the url is required. Urls will be appended to the couchdb url passed\ninto the constructor.\n\nIf you have to talk to more than one couchdb, then you'll need more than\none CouchLogin object, for somewhat obvious reasons.\n\nAll callbacks get called with the following arguments, which are exactly\nidentical to the arguments passed to a `request` callback.\n\n* `er` {Error | null} Set if a communication error happens.\n* `resp` {HTTP Response} The response from the request to couchdb\n* `data` {Object} The parsed JSON data from couch\n\nIf the token is the string \"anonymous\", then it will not attempt to log\nin before making requests. If the token is not \"anonymous\", then it\nmust be an object with the appropriate fields.\n\n### couch.token\n\n* {Object}\n\nAn object representing the couchdb session token. (Basically just a\ncookie and a timeout.)\n\nIf the token has already timed out, then setting it will have no effect.\n\n### couch.tokenSet\n\nIf set, this method is called whenever the token is saved.\n\nFor example, you could assign a function to this method to save the\ntoken into a redis session, a cookie, or in some other database.\n\nTakes a callback which should be called when the token is saved.\n\n### couch.tokenGet\n\nIf set, this method is called to look up the token on demand.\n\nThe inverse of couch.tokenSet. Takes a callback which is called with\nthe `cb(er || null, token)`.\n\n### couch.tokenDel\n\nIf set, this method is called to delete the token when it should be\ndiscarded.\n\nRelated to tokenGet and tokenSet. Takes a callback which should be\ncalled when the token is deleted.\n\n### couch.ca\n\n* {String | Array | null}\n\nA certificate authority string, or an array of CA strings. Only\nrelevant for HTTPS couches, of course.\n\nLeave as `null` to use the default ca settings built into node.\n\n### couch.strictSSL\n\n* {Boolean | null}\n\nWhether or not to be strict about SSL connections. If left as null,\nthen use the default setting in node, which is true in node versions\n0.9.x and above, and false prior to 0.8.x.\n\nOnly relevant for HTTPS couches, of course.\n\n### couch.anonymous()\n\nReturn a new CouchLogin object that points at the same couchdb server,\nbut doesn't try to log in before making requests.\n\nThis is handy for situations where the user is not logged in at the\nmoment, but a request needs to be made anyway, and does not require\nauthorization.\n\n### couch.login(auth, callback)\n\n* `auth` {Object} The login details\n * `name` {String}\n * `password` {String}\n* `callback` {Function}\n\nWhen the callback is called, the `couch.token` will already have been\nset (assuming it worked!), so subsequent requests will be done as that\nuser.\n\n### couch.get(path, callback)\n\nGET the supplied path from the couchdb using the credentials on the\ntoken.\n\nFails if the token is invalid or expired.\n\n### couch.del(path, callback)\n\nDELETE the supplied path from the couchdb using the credentials on the\ntoken.\n\nFails if the token is invalid or expired.\n\n### couch.post(path, data, callback)\n\nPOST the data to the supplied path in the couchdb, using the credentials\non the token.\n\nFails if the token is invalid or expired.\n\n### couch.put(path, data, callback)\n\nPUT the data to the supplied path in the couchdb, using the credentials\non the token.\n\nFails if the token is invalid or expired.\n\n### couch.changePass(newAuth, callback)\n\nMust already be logged in. Updates the `_users` document with new salt\nand hash, and re-logs in with the new credentials. Callback is called\nwith the same arguments as login, or the first step of the process that\nfailed.\n\n### couch.signup(userData, callback)\n\nCreate a new user account. The userData must contain at least a `name`\nand `password` field. Any additional data will be copied to the user\nrecord. The `_id`, `name`, `roles`, `type`, `password_sha`, `salt`, and\n`date` fields are generated.\n\nAlso signs in as the newly created user, on successful account creation.\n\n### couch.deleteAccount(name, callback)\n\nDeletes a user account. If not logged in as the user, or a server\nadmin, then the request will fail.\n\nNote that this immediately invalidates any session tokens for the\ndeleted user account. If you are deleting the user's record, then you\nought to follow this with `couch.logout(callback)` so that it won't try\nto re-use the invalid session.\n\n### couch.logout(callback)\n\nDelete the session out of couchdb. This makes the token permanently\ninvalid, and deletes it.\n\n### couch.decorate(req, res)\n\nSet up `req.couch` and `res.couch` as references to this couch login\ninstance.\n\nAdditionall, if `req.session` or `res.session` is set, then it'll call\n`session.get('couch_token', cb)` as the tokenGet method,\n`session.set('couch_token', token, cb)` as the tokenSet method, and\n`session.del('couch_token', cb)` as the tokenDel method.\n\nThis works really nice with\n[RedSess](https://github.com/isaacs/redsess).\n",
+ "_id": "couch-login@0.1.15",
+ "_from": "couch-login@~0.1.15"
}
diff --git a/node_modules/couch-login/test/00-setup.js b/node_modules/npm-registry-client/node_modules/couch-login/test/00-setup.js
index d5dcc190d..d5dcc190d 100644
--- a/node_modules/couch-login/test/00-setup.js
+++ b/node_modules/npm-registry-client/node_modules/couch-login/test/00-setup.js
diff --git a/node_modules/couch-login/test/basic.js b/node_modules/npm-registry-client/node_modules/couch-login/test/basic.js
index 9e222e143..9e222e143 100644
--- a/node_modules/couch-login/test/basic.js
+++ b/node_modules/npm-registry-client/node_modules/couch-login/test/basic.js
diff --git a/node_modules/couch-login/test/fixtures/_replicator.couch b/node_modules/npm-registry-client/node_modules/couch-login/test/fixtures/_replicator.couch
index b8dbbebd0..b8dbbebd0 100644
--- a/node_modules/couch-login/test/fixtures/_replicator.couch
+++ b/node_modules/npm-registry-client/node_modules/couch-login/test/fixtures/_replicator.couch
Binary files differ
diff --git a/node_modules/couch-login/test/fixtures/couch.ini b/node_modules/npm-registry-client/node_modules/couch-login/test/fixtures/couch.ini
index 4579a2f02..4579a2f02 100644
--- a/node_modules/couch-login/test/fixtures/couch.ini
+++ b/node_modules/npm-registry-client/node_modules/couch-login/test/fixtures/couch.ini
diff --git a/node_modules/couch-login/test/fixtures/registry.couch b/node_modules/npm-registry-client/node_modules/couch-login/test/fixtures/registry.couch
index 5806317db..5806317db 100644
--- a/node_modules/couch-login/test/fixtures/registry.couch
+++ b/node_modules/npm-registry-client/node_modules/couch-login/test/fixtures/registry.couch
Binary files differ
diff --git a/node_modules/couch-login/test/registry.js b/node_modules/npm-registry-client/node_modules/couch-login/test/registry.js
index d99d9f4f6..d99d9f4f6 100644
--- a/node_modules/couch-login/test/registry.js
+++ b/node_modules/npm-registry-client/node_modules/couch-login/test/registry.js
diff --git a/node_modules/couch-login/test/reset-then-signup.js b/node_modules/npm-registry-client/node_modules/couch-login/test/reset-then-signup.js
index 77a5ceda9..77a5ceda9 100644
--- a/node_modules/couch-login/test/reset-then-signup.js
+++ b/node_modules/npm-registry-client/node_modules/couch-login/test/reset-then-signup.js
diff --git a/node_modules/couch-login/test/zz-teardown.js b/node_modules/npm-registry-client/node_modules/couch-login/test/zz-teardown.js
index a66e24a10..a66e24a10 100644
--- a/node_modules/couch-login/test/zz-teardown.js
+++ b/node_modules/npm-registry-client/node_modules/couch-login/test/zz-teardown.js
diff --git a/node_modules/npm-registry-client/package.json b/node_modules/npm-registry-client/package.json
index 39d04b519..05c2cb15f 100644
--- a/node_modules/npm-registry-client/package.json
+++ b/node_modules/npm-registry-client/package.json
@@ -6,7 +6,7 @@
},
"name": "npm-registry-client",
"description": "Client for the npm registry",
- "version": "0.2.8",
+ "version": "0.2.9",
"repository": {
"url": "git://github.com/isaacs/npm-registry-client"
},
@@ -23,7 +23,7 @@
"mkdirp": "~0.3.3",
"rimraf": "~2.0.1",
"retry": "0.6.0",
- "couch-login": "~0.1.6",
+ "couch-login": "~0.1.15",
"npmlog": ""
},
"devDependencies": {
@@ -34,6 +34,6 @@
},
"license": "BSD",
"readme": "# npm-registry-client\n\nThe code that npm uses to talk to the registry.\n\nIt handles all the caching and HTTP calls.\n\n## Usage\n\n```javascript\nvar RegClient = require('npm-registry-client')\nvar client = new RegClient(config)\n\nclient.get(\"npm\", \"latest\", 1000, function (er, data, raw, res) {\n // error is an error if there was a problem.\n // data is the parsed data object\n // raw is the json string\n // res is the response from couch\n})\n```\n\n# Configuration\n\nThis program is designed to work with\n[npmconf](https://npmjs.org/package/npmconf), but you can also pass in\na plain-jane object with the appropriate configs, and it'll shim it\nfor you. Any configuration thingie that has get/set/del methods will\nalso be accepted.\n\n* `registry` **Required** {String} URL to the registry\n* `cache` **Required** {String} Path to the cache folder\n* `always-auth` {Boolean} Auth even for GET requests.\n* `auth` {String} A base64-encoded `username:password`\n* `email` {String} User's email address\n* `tag` {String} The default tag to use when publishing new packages.\n Default = `\"latest\"`\n* `ca` {String} Cerficate signing authority certificates to trust.\n* `strict-ssl` {Boolean} Whether or not to be strict with SSL\n certificates. Default = `true`\n* `user-agent` {String} User agent header to send. Default =\n `\"node/{process.version}\"`\n* `log` {Object} The logger to use. Defaults to `require(\"npmlog\")` if\n that works, otherwise logs are disabled.\n* `fetch-retries` {Number} Number of times to retry on GET failures.\n Default=2\n* `fetch-retry-factor` {Number} `factor` setting for `node-retry`. Default=10\n* `fetch-retry-mintimeout` {Number} `minTimeout` setting for `node-retry`.\n Default=10000 (10 seconds)\n* `fetch-retry-maxtimeout` {Number} `maxTimeout` setting for `node-retry`.\n Default=60000 (60 seconds)\n* `proxy` {URL} The url to proxy requests through.\n* `https-proxy` {URL} The url to proxy https requests through.\n Defaults to be the same as `proxy` if unset.\n* `_auth` {String} The base64-encoded authorization header.\n* `username` `_password` {String} Username/password to use to generate\n `_auth` if not supplied.\n* `_token` {Object} A token for use with\n [couch-login](https://npmjs.org/package/couch-login)\n\n# client.request(method, where, [what], [etag], [nofollow], cb)\n\n* `method` {String} HTTP method\n* `where` {String} Path to request on the server\n* `what` {Stream | Buffer | String | Object} The request body. Objects\n that are not Buffers or Streams are encoded as JSON.\n* `etag` {String} The cached ETag\n* `nofollow` {Boolean} Prevent following 302/301 responses\n* `cb` {Function}\n * `error` {Error | null}\n * `data` {Object} the parsed data object\n * `raw` {String} the json\n * `res` {Response Object} response from couch\n\nMake a request to the registry. All the other methods are wrappers\naround this. one.\n\n# client.adduser(username, password, email, cb)\n\n* `username` {String}\n* `password` {String}\n* `email` {String}\n* `cb` {Function}\n\nAdd a user account to the registry, or verify the credentials.\n\n# client.get(url, [timeout], [nofollow], [staleOk], cb)\n\n* `url` {String} The url path to fetch\n* `timeout` {Number} Number of seconds old that a cached copy must be\n before a new request will be made.\n* `nofollow` {Boolean} Do not follow 301/302 responses\n* `staleOk` {Boolean} If there's cached data available, then return that\n to the callback quickly, and update the cache the background.\n\nFetches data from the registry via a GET request, saving it in\nthe cache folder with the ETag.\n\n# client.publish(data, tarball, [readme], cb)\n\n* `data` {Object} Package data\n* `tarball` {String | Stream} Filename or stream of the package tarball\n* `readme` {String} Contents of the README markdown file\n* `cb` {Function}\n\nPublish a package to the registry.\n\nNote that this does not create the tarball from a folder. However, it\ncan accept a gzipped tar stream or a filename to a tarball.\n\n# client.star(package, starred, cb)\n\n* `package` {String} Name of the package to star\n* `starred` {Boolean} True to star the package, false to unstar it.\n* `cb` {Function}\n\nStar or unstar a package.\n\nNote that the user does not have to be the package owner to star or\nunstar a package, though other writes do require that the user be the\npackage owner.\n\n# client.tag(project, version, tag, cb)\n\n* `project` {String} Project name\n* `version` {String} Version to tag\n* `tag` {String} Tag name to apply\n* `cb` {Function}\n\nMark a version in the `dist-tags` hash, so that `pkg@tag`\nwill fetch the specified version.\n\n# client.unpublish(name, [ver], cb)\n\n* `name` {String} package name\n* `ver` {String} version to unpublish. Leave blank to unpublish all\n versions.\n* `cb` {Function}\n\nRemove a version of a package (or all versions) from the registry. When\nthe last version us unpublished, the entire document is removed from the\ndatabase.\n\n# client.upload(where, file, [etag], [nofollow], cb)\n\n* `where` {String} URL path to upload to\n* `file` {String | Stream} Either the filename or a readable stream\n* `etag` {String} Cache ETag\n* `nofollow` {Boolean} Do not follow 301/302 responses\n* `cb` {Function}\n\nUpload an attachment. Mostly used by `client.publish()`.\n",
- "_id": "npm-registry-client@0.2.8",
- "_from": "npm-registry-client@~0.2.6"
+ "_id": "npm-registry-client@0.2.9",
+ "_from": "npm-registry-client@~0.2.9"
}
diff --git a/package.json b/package.json
index 0091db0c9..cf1b08fed 100644
--- a/package.json
+++ b/package.json
@@ -58,7 +58,7 @@
"chownr": "0",
"npmlog": "0",
"ansi": "~0.1.2",
- "npm-registry-client": "~0.2.8",
+ "npm-registry-client": "~0.2.9",
"read-package-json": "~0.1.7",
"read-installed": "0.0.3",
"glob": "~3.1.13",
@@ -66,7 +66,6 @@
"osenv": "0",
"lockfile": ">=0.2",
"retry": "~0.6.0",
- "couch-login": "~0.1.14",
"once": "~1.1.1",
"npmconf": "0",
"opener": "~1.3.0"
@@ -104,7 +103,6 @@
"osenv",
"lockfile",
"retry",
- "couch-login",
"once",
"npmconf",
"opener"