GT2/GT2-Android/node_modules/retry/package.json

93 lines
10 KiB
JSON
Raw Normal View History

{
"_args": [
[
{
"raw": "retry@^0.10.1",
"scope": null,
"escapedName": "retry",
"name": "retry",
"rawSpec": "^0.10.1",
"spec": ">=0.10.1 <0.11.0",
"type": "range"
},
"/home/jdaugherty/work/GT2/GT2-Android/node_modules/auth0"
]
],
"_from": "retry@>=0.10.1 <0.11.0",
"_id": "retry@0.10.1",
"_inCache": true,
"_location": "/retry",
"_nodeVersion": "4.6.0",
"_npmOperationalInternal": {
"host": "packages-12-west.internal.npmjs.com",
"tmp": "tmp/retry-0.10.1.tgz_1481556523726_0.45345148630440235"
},
"_npmUser": {
"name": "tim-kos",
"email": "tim@debuggable.com"
},
"_npmVersion": "2.15.9",
"_phantomChildren": {},
"_requested": {
"raw": "retry@^0.10.1",
"scope": null,
"escapedName": "retry",
"name": "retry",
"rawSpec": "^0.10.1",
"spec": ">=0.10.1 <0.11.0",
"type": "range"
},
"_requiredBy": [
"/auth0"
],
"_resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz",
"_shasum": "e76388d217992c252750241d3d3956fed98d8ff4",
"_shrinkwrap": null,
"_spec": "retry@^0.10.1",
"_where": "/home/jdaugherty/work/GT2/GT2-Android/node_modules/auth0",
"author": {
"name": "Tim Koschützki",
"email": "tim@debuggable.com",
"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": "e76388d217992c252750241d3d3956fed98d8ff4",
"tarball": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz"
},
"engines": {
"node": "*"
},
"gitHead": "3dbe5189b48786e56d1d1807731adfc53a70eeae",
"homepage": "https://github.com/tim-kos/node-retry",
"license": "MIT",
"main": "index",
"maintainers": [
{
"name": "tim-kos",
"email": "tim@debuggable.com"
}
],
"name": "retry",
"optionalDependencies": {},
"readme": "# retry\n\nAbstraction for exponential and custom retry strategies for failed operations.\n\n## Installation\n\n npm install retry\n\n## Current Status\n\nThis module has been tested and is ready to be used.\n\n## Tutorial\n\nThe example below will retry a potentially failing `dns.resolve` operation\n`10` times using an exponential backoff strategy. With the default settings, this\nmeans the last attempt is made after `17 minutes and 3 seconds`.\n\n``` javascript\nvar dns = require('dns');\nvar retry = require('retry');\n\nfunction faultTolerantResolve(address, cb) {\n var operation = retry.operation();\n\n operation.attempt(function(currentAttempt) {\n dns.resolve(address, function(err, addresses) {\n if (operation.retry(err)) {\n return;\n }\n\n cb(err ? operation.mainError() : null, addresses);\n });\n });\n}\n\nfaultTolerantResolve('nodejs.org', function(err, addresses) {\n console.log(err, addresses);\n});\n```\n\nOf course you can also configure the factors that go into the exponential\nbackoff. See the API documentation below for all available settings.\ncurrentAttempt is an int representing the number of attempts so far.\n\n``` javascript\nvar operation = retry.operation({\n retries: 5,\n factor: 3,\n minTimeout: 1 * 1000,\n maxTimeout: 60 * 1000,\n randomize: true,\n});\n```\n\n## API\n\n### retry.operation([options])\n\nCreates a new `RetryOperation` object. `options` is the same as `retry.timeouts()`'s `options`, with two additions:\n\n* `forever`: Whether to retry forever, defaults to `false`.\n* `unref`: Wether to [unref](https://nodejs.org/api/timers.html#timers_unref) the setTimeout's, defaults to `false`.\n\n### retry.timeouts([options])\n\nReturns an array of timeouts. All time `options` and return values are in\nmilliseconds. If `options` is an array, a copy of that array is returned.\n\n`options` is a JS object that can contain any of the following keys:\n\n* `retries`: The maximum amount of times to retry the operation. Default is `10`.\n* `factor`: The exponential factor to use. Default is `2`.\n* `minTimeout`: The number of milliseconds before starting the first retry. Default is `1000`.\n* `maxTimeout`: The maximum number of milliseconds between two retries. Default is `Infinity`.\n* `randomize`: Randomizes the timeouts by multiplying with a factor between `1` to `2`. Default is `false`.\n\nThe formula used to calculate the individual timeouts is:\n\n```\nMath.min(random * minTimeout * Math.pow(factor, attempt), maxTimeout)\n```\n\nHave a look at [this article][article] for a better explanation of approach.\n\nIf you want to tune your `factor` / `times` settings to attempt the last retry\nafter a certain amount of time, you can use wolfram alpha. For example in order\nto tune for `10` attempts in `5 minutes`, you can use this equation:\n\n![screenshot](https://github.com/tim-kos/node-retry/raw/master/equation.gif)\n\nExplaining the various values from left to right:\n\n* `k = 0 ... 9`: The `retries` value (10)\n* `1000`: The `minTimeout` value in ms (1000)\n* `x^k`: No need to change this, `x` will be your resulting factor\n* `5 * 60 * 1000`: The desired total amount of time for retrying in ms (5 minutes)\n\nTo make this a little easier for you, use wolfram alpha to do the calculations:\n\n<http://www.wolframalpha.com/input/?i=Sum%5B1000*x^k%2C+{k%2C+0%2C+9}%5D+%3D+5+*+60+*+1000>\n\n[article]: http://dthain.blogspot.com/2009/02/exponential-backoff-in-distributed.html\n\n### retry.createTimeout(attempt, opts)\n\nReturns a new `timeout` (integer in milliseconds) based on the given parameters.\n\n`attempt` is an integer representing for which retry the timeout should be calculated. If your retry operation was executed 4 times you had one attempt and 3 retries. If you then want to calculate a new timeout, you should set `attempt` to 4 (attempts are zero-indexed).\n\n`opts` can include `factor`, `minTimeout`, `randomize` (boolean) and `maxTimeout`. They are documented above.\n\n`retry.createTimeout()` is used internally by `retry.timeouts()` and is
"readmeFilename": "README.md",
"repository": {
"type": "git",
"url": "git://github.com/tim-kos/node-retry.git"
},
"scripts": {},
"version": "0.10.1"
}