{"_id":"p-retry","_rev":"4647311","name":"p-retry","description":"Retry a promise-returning or async function","dist-tags":{"latest":"8.0.0","version4":"4.6.2","version7-pre":"7.0.0-0"},"maintainers":[{"name":"sindresorhus","email":""}],"time":{"modified":"2026-04-10T20:22:00.000Z","created":"2016-10-21T07:50:24.250Z","8.0.0":"2026-03-26T16:08:04.940Z","7.1.1":"2025-12-09T21:15:14.365Z","7.1.0":"2025-10-09T02:57:12.182Z","7.0.0":"2025-08-21T10:22:48.657Z","7.0.0-0":"2025-05-06T14:50:33.852Z","6.2.1":"2024-11-15T05:48:16.734Z","6.2.0":"2023-12-20T20:39:27.636Z","6.1.0":"2023-09-26T14:18:31.643Z","6.0.0":"2023-08-24T16:58:15.128Z","5.1.2":"2022-11-23T13:59:34.031Z","4.6.2":"2022-04-27T05:24:15.822Z","5.1.1":"2022-04-27T03:23:46.577Z","5.1.0":"2022-03-19T14:21:22.001Z","5.0.0":"2021-11-03T19:13:12.990Z","4.6.1":"2021-07-13T23:00:56.004Z","4.6.0":"2021-06-24T11:33:04.703Z","4.5.0":"2021-03-29T07:11:21.760Z","4.4.0":"2021-02-15T13:07:17.810Z","4.3.0":"2021-01-23T09:01:40.901Z","4.2.0":"2019-10-31T11:26:30.643Z","4.1.0":"2019-03-31T11:56:41.924Z","4.0.0":"2019-03-11T04:52:00.041Z","3.0.1":"2019-01-14T13:57:37.382Z","3.0.0":"2018-12-12T15:13:25.041Z","2.0.0":"2018-04-26T19:51:21.523Z","1.0.0":"2016-10-21T07:50:24.250Z"},"users":{"rocket0191":true,"johnloy":true,"ash":true},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"versions":{"8.0.0":{"name":"p-retry","version":"8.0.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":{"types":"./index.d.ts","default":"./index.js"},"sideEffects":false,"engines":{"node":">=22"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"is-network-error":"^1.3.0"},"devDependencies":{"ava":"^6.4.1","delay":"^7.0.0","execa":"^9.6.1","tsd":"^0.33.0","xo":"^1.2.3"},"xo":{"rules":{"no-await-in-loop":"off"}},"gitHead":"35681f6c70f8ca2bdcb9542281147679184269fa","types":"./index.d.ts","_id":"p-retry@8.0.0","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_nodeVersion":"25.8.0","_npmVersion":"11.12.0","dist":{"shasum":"1505faf14942326e18d4091f5d605bae65634e7b","size":6848,"noattachment":false,"key":"/p-retry/-/p-retry-8.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-8.0.0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/p-retry_8.0.0_1774541284712_0.3519969753634078"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2026-03-26T16:08:04.940Z","publish_time":1774541284940,"_source_registry_name":"default","_cnpm_publish_time":1774541284940},"7.1.1":{"name":"p-retry","version":"7.1.1","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":{"types":"./index.d.ts","default":"./index.js"},"sideEffects":false,"engines":{"node":">=20"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"is-network-error":"^1.1.0"},"devDependencies":{"ava":"^6.3.0","delay":"^6.0.0","tsd":"^0.32.0","xo":"^0.60.0"},"xo":{"rules":{"no-await-in-loop":"off"}},"gitHead":"0b1e29877422c40b59cad4a4c938dcf44fe512ce","types":"./index.d.ts","_id":"p-retry@7.1.1","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_nodeVersion":"20.19.5","_npmVersion":"11.6.1","dist":{"shasum":"7470fdecb1152ba50f1334e48378c9e401330e24","size":6395,"noattachment":false,"key":"/p-retry/-/p-retry-7.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-7.1.1.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/p-retry_7.1.1_1765314914232_0.593841067273128"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2025-12-09T21:15:14.365Z","publish_time":1765314914365,"_source_registry_name":"default","_cnpm_publish_time":1765314914365},"7.1.0":{"name":"p-retry","version":"7.1.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":{"types":"./index.d.ts","default":"./index.js"},"sideEffects":false,"engines":{"node":">=20"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"is-network-error":"^1.1.0"},"devDependencies":{"ava":"^6.3.0","delay":"^6.0.0","tsd":"^0.32.0","xo":"^0.60.0"},"xo":{"rules":{"no-await-in-loop":"off"}},"gitHead":"043395ab00c4c902ee5e0305ce2d738a9cc87a3a","types":"./index.d.ts","_id":"p-retry@7.1.0","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_nodeVersion":"20.19.5","_npmVersion":"11.6.1","dist":{"shasum":"bddc957f94e8483f3c046a4318e1513fd0e784b4","size":6385,"noattachment":false,"key":"/p-retry/-/p-retry-7.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-7.1.0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/p-retry_7.1.0_1759978632003_0.2730011267718757"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2025-10-09T02:57:12.182Z","publish_time":1759978632182,"_source_registry_name":"default","_cnpm_publish_time":1759978632182},"7.0.0":{"name":"p-retry","version":"7.0.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":{"types":"./index.d.ts","default":"./index.js"},"sideEffects":false,"engines":{"node":">=20"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"is-network-error":"^1.1.0"},"devDependencies":{"ava":"^6.3.0","delay":"^6.0.0","tsd":"^0.32.0","xo":"^0.60.0"},"xo":{"rules":{"no-await-in-loop":"off"}},"_id":"p-retry@7.0.0","gitHead":"e11ca9c9c4a8032182403871593a67a49e948568","types":"./index.d.ts","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_nodeVersion":"20.19.1","_npmVersion":"10.9.2","dist":{"shasum":"38dbee20149d94680fe0a022405839d995f95e7b","size":5940,"noattachment":false,"key":"/p-retry/-/p-retry-7.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-7.0.0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/p-retry_7.0.0_1755771768473_0.22617152850354372"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2025-08-21T10:22:48.657Z","publish_time":1755771768657,"_source_registry_name":"default","_cnpm_publish_time":1755771768657},"7.0.0-0":{"name":"p-retry","version":"7.0.0-0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":{"types":"./index.d.ts","default":"./index.js"},"sideEffects":false,"engines":{"node":">=20"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"is-network-error":"^1.1.0"},"devDependencies":{"ava":"^6.3.0","delay":"^6.0.0","tsd":"^0.32.0","xo":"^0.60.0"},"xo":{"rules":{"no-await-in-loop":"off"}},"_id":"p-retry@7.0.0-0","readmeFilename":"readme.md","gitHead":"157d06eabbcae7066e8cbf430ad0da759a4ca9a1","types":"./index.d.ts","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_nodeVersion":"23.6.1","_npmVersion":"10.9.2","dist":{"shasum":"7c486f9514a50e10e3823a88da176c698a9da8df","size":5451,"noattachment":false,"key":"/p-retry/-/p-retry-7.0.0-0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-7.0.0-0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/p-retry_7.0.0-0_1746543033650_0.9980878891815661"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2025-05-06T14:50:33.852Z","publish_time":1746543033852,"_source_registry_name":"default","_cnpm_publish_time":1746543033852},"6.2.1":{"name":"p-retry","version":"6.2.1","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":"./index.js","types":"./index.d.ts","sideEffects":false,"engines":{"node":">=16.17"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"0.12.2","is-network-error":"^1.0.0","retry":"^0.13.1"},"devDependencies":{"ava":"^5.3.1","delay":"^6.0.0","tsd":"^0.28.1","xo":"^0.56.0"},"_id":"p-retry@6.2.1","gitHead":"0a288cc203d657eb20e317163ae21834b86ba1bb","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_nodeVersion":"18.20.4","_npmVersion":"10.6.0","dist":{"shasum":"81828f8dc61c6ef5a800585491572cc9892703af","size":4192,"noattachment":false,"key":"/p-retry/-/p-retry-6.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-6.2.1.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_6.2.1_1731649696530_0.384855595106552"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-11-15T05:48:16.734Z","publish_time":1731649696734,"_source_registry_name":"default","_cnpm_publish_time":1731649696734},"6.2.0":{"name":"p-retry","version":"6.2.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":"./index.js","types":"./index.d.ts","sideEffects":false,"engines":{"node":">=16.17"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"0.12.2","is-network-error":"^1.0.0","retry":"^0.13.1"},"devDependencies":{"ava":"^5.3.1","delay":"^6.0.0","tsd":"^0.28.1","xo":"^0.56.0"},"gitHead":"21a22dd094a54e0c364ddd4bcb91c2f88e2dd03c","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@6.2.0","_nodeVersion":"18.19.0","_npmVersion":"9.2.0","dist":{"shasum":"8d6df01af298750009691ce2f9b3ad2d5968f3bd","size":4195,"noattachment":false,"key":"/p-retry/-/p-retry-6.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-6.2.0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_6.2.0_1703104767415_0.3028044073802467"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-12-20T20:39:27.636Z","publish_time":1703104767636,"_source_registry_name":"default","_cnpm_publish_time":1703104767636},"6.1.0":{"name":"p-retry","version":"6.1.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":"./index.js","engines":{"node":">=16.17"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"0.12.2","is-network-error":"^1.0.0","retry":"^0.13.1"},"devDependencies":{"ava":"^5.3.1","delay":"^6.0.0","tsd":"^0.28.1","xo":"^0.56.0"},"types":"./index.d.ts","gitHead":"4f5ec690b52bb4e7c0732d76a97e6bfd1f4e6d03","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@6.1.0","_nodeVersion":"16.20.0","_npmVersion":"9.2.0","dist":{"shasum":"ea5c188f9f818a5bfa89a27bdf043c74fa9be472","size":3933,"noattachment":false,"key":"/p-retry/-/p-retry-6.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-6.1.0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_6.1.0_1695737911459_0.10778739606254062"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-09-26T14:18:31.643Z","publish_time":1695737911643,"_source_registry_name":"default","_cnpm_publish_time":1695737911643},"6.0.0":{"name":"p-retry","version":"6.0.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":"./index.js","engines":{"node":">=16.17"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"0.12.2","retry":"^0.13.1"},"devDependencies":{"ava":"^5.3.1","delay":"^6.0.0","tsd":"^0.28.1","xo":"^0.56.0"},"types":"./index.d.ts","gitHead":"79c5fc7cf9e881f6fa60ea19bf1d4a7aabad55a3","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@6.0.0","_nodeVersion":"16.20.0","_npmVersion":"9.2.0","dist":{"shasum":"059de483a8ff588a7a28fad5801868267c2494ef","size":4062,"noattachment":false,"key":"/p-retry/-/p-retry-6.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-6.0.0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_6.0.0_1692896294868_0.41779461319187217"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-08-24T16:58:15.128Z","publish_time":1692896295128,"_source_registry_name":"default","_cnpm_publish_time":1692896295128},"5.1.2":{"name":"p-retry","version":"5.1.2","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":"./index.js","engines":{"node":"^12.20.0 || ^14.13.1 || >=16.0.0"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"0.12.1","retry":"^0.13.1"},"devDependencies":{"ava":"^4.1.0","delay":"^5.0.0","tsd":"^0.19.1","xo":"^0.48.0"},"types":"./index.d.ts","gitHead":"285fdc3f890a6f3d199b3d4abb0bad7c172c2233","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@5.1.2","_nodeVersion":"14.19.3","_npmVersion":"8.19.2","dist":{"shasum":"c16eaee4f2016f9161d12da40d3b8b0f2e3c1b76","size":4230,"noattachment":false,"key":"/p-retry/-/p-retry-5.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-5.1.2.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_5.1.2_1669211973886_0.4490468513074459"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-11-23T14:18:36.822Z","publish_time":1669211974031,"_cnpm_publish_time":1669211974031},"4.6.2":{"name":"p-retry","version":"4.6.2","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"0.12.0","retry":"^0.13.1"},"devDependencies":{"ava":"^2.4.0","delay":"^4.1.0","tsd":"^0.10.0","xo":"^0.25.3"},"types":"./index.d.ts","readmeFilename":"readme.md","gitHead":"dd984170eb777a8dffe41946fed2e87cd732763f","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@4.6.2","_nodeVersion":"14.19.1","_npmVersion":"8.3.2","dist":{"shasum":"9baae7184057edd4e17231cee04264106e092a16","size":3897,"noattachment":false,"key":"/p-retry/-/p-retry-4.6.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-4.6.2.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_4.6.2_1651037055673_0.3673650530684487"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-04-27T05:24:51.291Z","publish_time":1651037055822,"_cnpm_publish_time":1651037055822},"5.1.1":{"name":"p-retry","version":"5.1.1","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":"./index.js","engines":{"node":"^12.20.0 || ^14.13.1 || >=16.0.0"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"0.12.1","retry":"^0.13.1"},"devDependencies":{"ava":"^4.1.0","delay":"^5.0.0","tsd":"^0.19.1","xo":"^0.48.0"},"types":"./index.d.ts","gitHead":"710b635eb77c379e287a5a0fedaf6ffd65355d2e","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@5.1.1","_nodeVersion":"14.19.1","_npmVersion":"8.3.2","dist":{"shasum":"1950b9be441474a67f852811c1d4ec955885d2c8","size":4209,"noattachment":false,"key":"/p-retry/-/p-retry-5.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-5.1.1.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_5.1.1_1651029826379_0.21667335692152667"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-04-27T03:26:05.932Z","publish_time":1651029826577,"_cnpm_publish_time":1651029826577},"5.1.0":{"name":"p-retry","version":"5.1.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":"./index.js","engines":{"node":"^12.20.0 || ^14.13.1 || >=16.0.0"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"^0.12.1","retry":"^0.13.1"},"devDependencies":{"ava":"^4.1.0","delay":"^5.0.0","tsd":"^0.19.1","xo":"^0.48.0"},"types":"./index.d.ts","gitHead":"caad100535b6e4c4ed0d6ea8ab6f2980daafc37a","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@5.1.0","_nodeVersion":"12.22.1","_npmVersion":"8.3.2","dist":{"shasum":"a436926f54a15d833e3c39bbee9a73036716cfd4","size":4205,"noattachment":false,"key":"/p-retry/-/p-retry-5.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-5.1.0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_5.1.0_1647699681856_0.47543537846730666"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-03-19T14:21:24.700Z","publish_time":1647699682001,"_cnpm_publish_time":1647699682001},"5.0.0":{"name":"p-retry","version":"5.0.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":"./index.js","engines":{"node":"^12.20.0 || ^14.13.1 || >=16.0.0"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"^0.12.1","retry":"^0.13.1"},"devDependencies":{"ava":"^3.15.0","delay":"^5.0.0","tsd":"^0.18.0","xo":"^0.46.4"},"types":"./index.d.ts","gitHead":"fa888edf338749ce98e66cc4b40bf5d728194fe5","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@5.0.0","_nodeVersion":"12.22.1","_npmVersion":"8.1.0","dist":{"shasum":"012d6e2d4a8774d151d15ac7ecdd98b63d65bbef","size":3725,"noattachment":false,"key":"/p-retry/-/p-retry-5.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-5.0.0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_5.0.0_1635966792840_0.7483635451898136"},"_hasShrinkwrap":false,"publish_time":1635966792990,"_cnpm_publish_time":1635966792990},"4.6.1":{"name":"p-retry","version":"4.6.1","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"^0.12.0","retry":"^0.13.1"},"devDependencies":{"ava":"^2.4.0","delay":"^4.1.0","tsd":"^0.10.0","xo":"^0.25.3"},"gitHead":"e7f9f613a1523deeb67c85239f0836e61fe686f2","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@4.6.1","_nodeVersion":"14.16.1","_npmVersion":"7.10.0","dist":{"shasum":"8fcddd5cdf7a67a0911a9cf2ef0e5df7f602316c","size":3895,"noattachment":false,"key":"/p-retry/-/p-retry-4.6.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-4.6.1.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_4.6.1_1626217255827_0.663587625468226"},"_hasShrinkwrap":false,"publish_time":1626217256004,"_cnpm_publish_time":1626217256004},"4.6.0":{"name":"p-retry","version":"4.6.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"^0.12.0","retry":"^0.13.1"},"devDependencies":{"ava":"^2.4.0","delay":"^4.1.0","tsd":"^0.10.0","xo":"^0.25.3"},"gitHead":"7aad42d37e78297d28088a51f7a5ce4c53b8d88a","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@4.6.0","_nodeVersion":"14.16.1","_npmVersion":"7.10.0","dist":{"shasum":"9de15ae696278cffe86fce2d8f73b7f894f8bc9e","size":3891,"noattachment":false,"key":"/p-retry/-/p-retry-4.6.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-4.6.0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_4.6.0_1624534384585_0.23140953315878265"},"_hasShrinkwrap":false,"publish_time":1624534384703,"_cnpm_publish_time":1624534384703},"4.5.0":{"name":"p-retry","version":"4.5.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"^0.12.0","retry":"^0.12.0"},"devDependencies":{"ava":"^2.4.0","delay":"^4.1.0","tsd":"^0.10.0","xo":"^0.25.3"},"gitHead":"1cd4f840a78361d7430df51d2098450190b2a4ec","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@4.5.0","_nodeVersion":"12.20.1","_npmVersion":"6.14.10","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"6685336b3672f9ee8174d3769a660cb5e488521d","size":3914,"noattachment":false,"key":"/p-retry/-/p-retry-4.5.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-4.5.0.tgz"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_4.5.0_1617001881601_0.9412214038587641"},"_hasShrinkwrap":false,"publish_time":1617001881760,"_cnpm_publish_time":1617001881760},"4.4.0":{"name":"p-retry","version":"4.4.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"^0.12.0","retry":"^0.12.0"},"devDependencies":{"ava":"^2.4.0","delay":"^4.1.0","tsd":"^0.10.0","xo":"^0.25.3"},"gitHead":"43744e42e7196cdd75f897006605507b18e590f2","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@4.4.0","_nodeVersion":"14.15.1","_npmVersion":"6.14.10","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"fefc2abe883ca7c91ca0dd25060180438b61ebd4","size":3892,"noattachment":false,"key":"/p-retry/-/p-retry-4.4.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-4.4.0.tgz"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_4.4.0_1613394437701_0.6487311930733055"},"_hasShrinkwrap":false,"publish_time":1613394437810,"_cnpm_publish_time":1613394437810},"4.3.0":{"name":"p-retry","version":"4.3.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"^0.12.0","retry":"^0.12.0"},"devDependencies":{"ava":"^2.4.0","delay":"^4.1.0","tsd":"^0.10.0","xo":"^0.25.3"},"gitHead":"a998e75f933476f011990a8fa3005419aabf7112","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@4.3.0","_nodeVersion":"12.20.1","_npmVersion":"6.14.10","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"a31679a66b0261a51fa6c43b19b6f4471a54021e","size":3865,"noattachment":false,"key":"/p-retry/-/p-retry-4.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-4.3.0.tgz"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_4.3.0_1611392500784_0.6728959685804936"},"_hasShrinkwrap":false,"publish_time":1611392500901,"_cnpm_publish_time":1611392500901},"4.2.0":{"name":"p-retry","version":"4.2.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"^0.12.0","retry":"^0.12.0"},"devDependencies":{"ava":"^2.4.0","delay":"^4.1.0","tsd":"^0.10.0","xo":"^0.25.3"},"gitHead":"7cf46fe6037cd4f8303f06b7ce4bda29cc6f4010","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@4.2.0","_nodeVersion":"10.16.3","_npmVersion":"6.12.1","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"ea9066c6b44f23cab4cd42f6147cdbbc6604da5d","size":3595,"noattachment":false,"key":"/p-retry/-/p-retry-4.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-4.2.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_4.2.0_1572521190506_0.46832001284144087"},"_hasShrinkwrap":false,"publish_time":1572521190643,"_cnpm_publish_time":1572521190643},"4.1.0":{"name":"p-retry","version":"4.1.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"^0.12.0","retry":"^0.12.0"},"devDependencies":{"ava":"^1.4.1","delay":"^4.1.0","tsd":"^0.7.1","xo":"^0.24.0"},"gitHead":"9e2c0169f5e52ce2b9f08aa1ea024ed99e6c8f20","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@4.1.0","_nodeVersion":"8.15.0","_npmVersion":"6.9.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"9ce7cef2069e84bf590df3b8ec18d740109338d6","size":3364,"noattachment":false,"key":"/p-retry/-/p-retry-4.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-4.1.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_4.1.0_1554033401809_0.38545075931703976"},"_hasShrinkwrap":false,"publish_time":1554033401924,"_cnpm_publish_time":1554033401924},"4.0.0":{"name":"p-retry","version":"4.0.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd-check"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"@types/retry":"^0.12.0","retry":"^0.12.0"},"devDependencies":{"ava":"^1.3.1","delay":"^4.1.0","tsd-check":"^0.3.0","xo":"^0.24.0"},"gitHead":"0e71c46bc994114b2fa56aa38c79e667f22f46de","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@4.0.0","_nodeVersion":"8.15.0","_npmVersion":"6.9.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"56633299ac2fc9f6ecda749398330fdff632607a","size":3194,"noattachment":false,"key":"/p-retry/-/p-retry-4.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-4.0.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_4.0.0_1552279919864_0.31116028535357"},"_hasShrinkwrap":false,"publish_time":1552279920041,"_cnpm_publish_time":1552279920041},"3.0.1":{"name":"p-retry","version":"3.0.1","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=6"},"scripts":{"test":"xo && ava"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"retry":"^0.12.0"},"devDependencies":{"ava":"^1.1.0","delay":"^4.1.0","xo":"^0.24.0"},"gitHead":"2187e87bca3d06795b34d5422c940bd99d3dd3d1","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@3.0.1","_npmVersion":"6.5.0","_nodeVersion":"10.13.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"316b4c8893e2c8dc1cfa891f406c4b422bebf328","size":2781,"noattachment":false,"key":"/p-retry/-/p-retry-3.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-3.0.1.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_3.0.1_1547474257271_0.5381000574836654"},"_hasShrinkwrap":false,"publish_time":1547474257382,"_cnpm_publish_time":1547474257382},"3.0.0":{"name":"p-retry","version":"3.0.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=6"},"scripts":{"test":"xo && ava"},"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"retry":"^0.12.0"},"devDependencies":{"ava":"^0.25.0","delay":"^4.1.0","xo":"^0.23.0"},"gitHead":"a9b5fc1e71ebc1fd5bd5926d2b1eff57512c124f","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@3.0.0","_npmVersion":"6.5.0","_nodeVersion":"10.13.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"f1a09233417dd40b42a7a4a3ed0f4780f23b90d8","size":2677,"noattachment":false,"key":"/p-retry/-/p-retry-3.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-3.0.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_3.0.0_1544627604837_0.13288153733032493"},"_hasShrinkwrap":false,"publish_time":1544627605041,"_cnpm_publish_time":1544627605041},"2.0.0":{"name":"p-retry","version":"2.0.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=6"},"scripts":{"test":"xo && ava"},"files":["index.js"],"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"retry":"^0.12.0"},"devDependencies":{"ava":"*","delay":"^2.0.0","xo":"*"},"gitHead":"8fa0decbb30cf97a74f242c9ab70bd069cd3e446","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@2.0.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"b97f1f4d6d81a3c065b2b40107b811e995c1bfba","size":2598,"noattachment":false,"key":"/p-retry/-/p-retry-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-2.0.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-retry_2.0.0_1524772281457_0.13741405149716912"},"_hasShrinkwrap":false,"publish_time":1524772281523,"_cnpm_publish_time":1524772281523},"1.0.0":{"name":"p-retry","version":"1.0.0","description":"Retry a promise-returning or async function","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-retry.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=4"},"scripts":{"test":"xo && ava"},"files":["index.js"],"keywords":["promise","retry","retries","operation","failed","rejected","try","exponential","backoff","attempt","async","await","promises","concurrently","concurrency","parallel","bluebird"],"dependencies":{"retry":"^0.10.0"},"devDependencies":{"ava":"*","delay":"^1.3.1","xo":"*"},"xo":{"esnext":true},"gitHead":"7d9ea993a59e23ca8d19cd651efa39a1651e6357","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"homepage":"https://github.com/sindresorhus/p-retry#readme","_id":"p-retry@1.0.0","_shasum":"3927332a4b7d70269b535515117fc547da1a6968","_from":".","_npmVersion":"2.15.9","_nodeVersion":"4.6.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"3927332a4b7d70269b535515117fc547da1a6968","size":2282,"noattachment":false,"key":"/p-retry/-/p-retry-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/p-retry/download/p-retry-1.0.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/p-retry-1.0.0.tgz_1477036222168_0.5073128861840814"},"directories":{},"publish_time":1477036224250,"_cnpm_publish_time":1477036224250,"_hasShrinkwrap":false}},"readme":"# p-retry\n\n> Retry a promise-returning or async function\n\nIt does exponential backoff and supports custom retry strategies for failed operations.\n\n## Install\n\n```sh\nnpm install p-retry\n```\n\n## Usage\n\n```js\nimport pRetry, {AbortError} from 'p-retry';\n\nconst run = async () => {\n\tconst response = await fetch('https://sindresorhus.com/unicorn');\n\n\t// Abort retrying if the resource doesn't exist\n\tif (response.status === 404) {\n\t\tthrow new AbortError(response.statusText);\n\t}\n\n\treturn response.blob();\n};\n\nconsole.log(await pRetry(run, {retries: 5}));\n```\n\n## API\n\n### pRetry(input, options?)\n\nReturns a `Promise` that is fulfilled when calling `input` returns a fulfilled promise. If calling `input` returns a rejected promise, `input` is called again until the max retries are reached, it then rejects with the last rejection reason.\n\nDoes not retry on most `TypeErrors`, with the exception of network errors. This is done on a best case basis as different browsers have different [messages](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch#Checking_that_the_fetch_was_successful) to indicate this. See [whatwg/fetch#526 (comment)](https://github.com/whatwg/fetch/issues/526#issuecomment-554604080)\n\nNon-network `TypeError`s always abort retries, even if `shouldConsumeRetry` or `shouldRetry` would otherwise allow another attempt.\n\n#### input\n\nType: `Function`\n\nReceives the number of attempts as the first argument and is expected to return a `Promise` or any value.\n\n#### options\n\nType: `object`\n\n##### onFailedAttempt(context)\n\nType: `Function`\n\nCallback invoked on each failure. Receives a context object containing the error and retry state information.\n\nThe function is called _after_ `shouldConsumeRetry` and _before_ `shouldRetry`, for all errors _except_ `AbortError`.\n\nIf the function throws, all retries will be aborted and the original promise will reject with the thrown error.\n\n```js\nimport pRetry from 'p-retry';\n\nconst run = async () => {\n\tconst response = await fetch('https://sindresorhus.com/unicorn');\n\n\tif (!response.ok) {\n\t\tthrow new Error(response.statusText);\n\t}\n\n\treturn response.json();\n};\n\nconst result = await pRetry(run, {\n\tonFailedAttempt: ({error, attemptNumber, retriesLeft, retriesConsumed, retryDelay}) => {\n\t\tconsole.log(`Attempt ${attemptNumber} failed. Retrying in ${retryDelay}ms. ${retriesLeft} retries left.`);\n\t\t// 1st request => Attempt 1 failed. Retrying in 1000ms. 5 retries left.\n\t\t// 2nd request => Attempt 2 failed. Retrying in 2000ms. 4 retries left.\n\t\t// …\n\t},\n\tretries: 5\n});\n\nconsole.log(result);\n```\n\nThe `context` object contains:\n- `error` - The error that was thrown\n- `attemptNumber` - The attempt number (starts at 1)\n- `retriesLeft` - Number of retries remaining\n- `retriesConsumed` - Number of retries consumed so far\n- `retryDelay` - The delay in milliseconds before the next retry (based on `minTimeout`, `factor`, `maxTimeout`, and `randomize`). This is `0` when the retry is skipped or when no retry will occur based on the checks completed before the current callback runs.\n\nThe `onFailedAttempt` function can return a promise. For example, to add a [delay](https://github.com/sindresorhus/delay):\n\n```js\nimport pRetry from 'p-retry';\nimport delay from 'delay';\n\nconst run = async () => { … };\n\nconst result = await pRetry(run, {\n\tonFailedAttempt: async () => {\n\t\tconsole.log('Waiting for 1 second before retrying');\n\t\tawait delay(1000);\n\t}\n});\n```\n\n##### shouldRetry(context)\n\nType: `Function`\n\nDecide if a retry should occur based on context. Returning `true` triggers a retry, `false` aborts with the error.\n\nThe function is called _after_ `onFailedAttempt` and `shouldConsumeRetry`.\n\nThe function is _not_ called on `AbortError`, `TypeError` (except network errors), or if `retries` or `maxRetryTime` are exhausted.\n\nIf the function throws, all retries will be aborted and the original promise will reject with the thrown error.\n\n```js\nimport pRetry from 'p-retry';\n\nconst run = async () => { … };\n\nconst result = await pRetry(run, {\n\tshouldRetry: ({error, attemptNumber, retriesLeft}) => !(error instanceof CustomError)\n});\n```\n\nIn the example above, the operation will be retried unless the error is an instance of `CustomError`.\n\n##### shouldConsumeRetry(context)\n\nType: `Function`\n\nDecide if this failure should consume a retry from the `retries` budget.\n\nWhen `false` is returned, the failure will not consume a retry or increment backoff values, but is still subject to `maxRetryTime`.\n\nThe function is called _before_ `onFailedAttempt` and `shouldRetry`.\n\nThe function is _not_ called on `AbortError`.\n\nIf the function throws, all retries will be aborted and the original promise will reject with the thrown error.\n\n```js\nimport pRetry from 'p-retry';\n\nconst run = async () => { … };\n\nconst result = await pRetry(run, {\n\tretries: 2,\n\tshouldConsumeRetry: ({error, retriesLeft}) => !(error instanceof RateLimitError),\n});\n```\n\nIn the example above, `RateLimitError`s will not decrement the available `retries`.\n\n##### retries\n\nType: `number`\\\nDefault: `10`\n\nThe maximum amount of times to retry the operation.\n\n##### factor\n\nType: `number`\\\nDefault: `2`\n\nThe exponential factor to use.\n\n##### minTimeout\n\nType: `number`\\\nDefault: `1000`\n\nThe number of milliseconds before starting the first retry.\n\nSet this to `0` to retry immediately with no delay.\n\n##### maxTimeout\n\nType: `number`\\\nDefault: `Infinity`\n\nThe maximum number of milliseconds between two retries.\n\n##### randomize\n\nType: `boolean`\\\nDefault: `false`\n\nRandomizes the timeouts by multiplying with a factor between 1 and 2.\n\n##### maxRetryTime\n\nType: `number`\\\nDefault: `Infinity`\n\nThe maximum time (in milliseconds) that the retried operation is allowed to run.\n\nMeasured with a monotonic clock (`performance.now()`) so system clock adjustments do not affect the limit.\n\n##### signal\n\nType: [`AbortSignal`](https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal)\n\nYou can abort retrying using [`AbortController`](https://developer.mozilla.org/en-US/docs/Web/API/AbortController).\n\n```js\nimport pRetry from 'p-retry';\n\nconst run = async () => { … };\nconst controller = new AbortController();\n\ncancelButton.addEventListener('click', () => {\n\tcontroller.abort(new Error('User clicked cancel button'));\n});\n\ntry {\n\tawait pRetry(run, {signal: controller.signal});\n} catch (error) {\n\tconsole.log(error.message);\n\t//=> 'User clicked cancel button'\n}\n```\n\n##### unref\n\nType: `boolean`\\\nDefault: `false`\n\nPrevents retry timeouts from keeping the process alive.\n\nOnly affects platforms with a `.unref()` method on timeouts, such as Node.js.\n\n### makeRetriable(function, options?)\n\nWrap a function so that each call is automatically retried on failure.\n\n```js\nimport {makeRetriable} from 'p-retry';\n\nconst fetchWithRetry = makeRetriable(fetch, {retries: 5});\n\nconst response = await fetchWithRetry('https://sindresorhus.com/unicorn');\n```\n\n### AbortError(message)\n### AbortError(error)\n\nAbort retrying and reject the promise. No callback functions will be called.\n\n### message\n\nType: `string`\n\nAn error message.\n\n### error\n\nType: `Error`\n\nA custom error.\n\n## Tip\n\nYou can pass arguments to the function being retried by wrapping it in an inline arrow function:\n\n```js\nimport pRetry from 'p-retry';\n\nconst run = async emoji => {\n\t// …\n};\n\n// Without arguments\nawait pRetry(run, {retries: 5});\n\n// With arguments\nawait pRetry(() => run('????'), {retries: 5});\n```\n\n## FAQ\n\n### How do I mock timers when testing with this package?\n\nThe package uses `setTimeout` and `clearTimeout` from the global scope, so you can use the [Node.js test timer mocking](https://nodejs.org/api/test.html#class-mocktimers) or a package like [`sinon`](https://github.com/sinonjs/sinon).\n\n### How do I stop retries when the process receives SIGINT (Ctrl+C)?\n\nUse an [`AbortController`](https://developer.mozilla.org/en-US/docs/Web/API/AbortController) to signal cancellation on SIGINT, and pass its `signal` to `pRetry`:\n\n```js\nimport pRetry from 'p-retry';\n\nconst controller = new AbortController();\n\nprocess.once('SIGINT', () => {\n\tcontroller.abort(new Error('SIGINT received'));\n});\n\ntry {\n\tawait pRetry(run, {signal: controller.signal});\n} catch (error) {\n\tconsole.log('Retry stopped due to:', error.message);\n}\n```\n\nThe package does not handle process signals itself to avoid global side effects.\n\n## Related\n\n- [p-timeout](https://github.com/sindresorhus/p-timeout) - Timeout a promise after a specified amount of time\n- [More…](https://github.com/sindresorhus/promise-fun)\n","_attachments":{},"homepage":"https://github.com/sindresorhus/p-retry#readme","bugs":{"url":"https://github.com/sindresorhus/p-retry/issues"},"license":"MIT"}