{"_id":"node-fetch-cache","_rev":"4569469","name":"node-fetch-cache","description":"node-fetch with caching.","dist-tags":{"latest":"5.1.0"},"maintainers":[{"name":"rschmidt","email":""}],"time":{"modified":"2026-04-10T15:23:10.000Z","created":"2020-04-17T20:59:43.948Z","5.1.0":"2025-10-10T01:58:24.606Z","5.0.2":"2024-08-18T11:45:44.225Z","5.0.1":"2024-08-17T15:45:21.911Z","5.0.0":"2024-08-17T15:30:00.235Z","4.1.2":"2024-06-29T19:52:55.247Z","4.1.1":"2024-05-10T12:40:05.286Z","4.1.0":"2023-12-27T14:42:54.867Z","4.0.9":"2023-12-26T22:30:50.463Z","4.0.8":"2023-12-25T22:10:45.070Z","4.0.7":"2023-12-25T19:41:59.127Z","4.0.6":"2023-12-25T19:40:35.597Z","4.0.5":"2023-12-25T19:30:17.664Z","4.0.4":"2023-12-25T19:17:51.864Z","4.0.3":"2023-12-25T19:16:34.841Z","4.0.2":"2023-12-25T19:10:51.942Z","4.0.1":"2023-12-25T18:59:25.955Z","4.0.0":"2023-12-25T18:57:33.019Z","3.1.4":"2023-12-23T12:19:11.879Z","3.1.3":"2023-05-20T17:00:14.893Z","3.1.2":"2023-04-07T23:20:48.404Z","3.1.1":"2023-03-14T01:00:29.249Z","3.1.0":"2023-03-14T00:55:59.930Z","3.0.5":"2022-02-21T15:36:46.238Z","3.0.4":"2022-02-19T13:54:47.704Z","3.0.3":"2021-08-19T19:09:01.063Z","3.0.2":"2021-08-07T21:38:52.334Z","3.0.1":"2021-07-11T13:12:25.053Z","3.0.0":"2021-07-11T13:08:05.608Z","2.0.3":"2021-07-05T15:07:01.268Z","2.0.2":"2021-07-05T15:04:05.079Z","2.0.1":"2021-07-03T14:25:33.252Z","2.0.0":"2021-06-12T23:26:16.434Z","1.0.6":"2020-11-28T02:45:05.666Z","1.0.5":"2020-11-28T01:50:04.512Z","1.0.4":"2020-04-17T21:10:28.347Z","1.0.3":"2020-04-17T21:09:33.510Z","1.0.2":"2020-04-17T21:02:43.091Z","1.0.1":"2020-04-17T21:00:36.463Z","1.0.0":"2020-04-17T20:59:43.948Z"},"users":{},"author":{"name":"mistval"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"versions":{"5.1.0":{"name":"node-fetch-cache","version":"5.1.0","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env npm run tsc && npm run buildcjs && NODE_OPTIONS=\"--import tsx\" mocha --spec test/tests.ts --spec plugins/redis/test_redis_cache.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--import tsx\" mocha --inspect --inspect-brk --spec test/tests.ts --spec plugins/redis/test_redis_cache.ts --extensions ts --timeout 10000 --exit","test:core":"cross-env NODE_OPTIONS=\"--import tsx\" mocha --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test --exclude=plugins/redis/test_redis_cache.ts npm test","prepublishOnly":"cross-env rm -rf dist && npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","tsx":"^4.17.0","typescript":"^5.5.4"},"dependencies":{"cacache":"^20.0.1","formdata-node":"^6.0.3","locko":"^1.1.0","node-fetch":"3.3.2"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=18.19.0"},"_id":"node-fetch-cache@5.1.0","gitHead":"ca93e0017fb31a9c4f6b4a7c4501cafd4ff5c080","_nodeVersion":"22.12.0","_npmVersion":"10.9.0","dist":{"shasum":"4ab092d416a2235155fe9150b9c6bc067f317360","size":14320,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-5.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-5.1.0.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/node-fetch-cache_5.1.0_1760061504437_0.3643469136039368"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2025-10-10T01:58:24.606Z","publish_time":1760061504606,"_source_registry_name":"default","_cnpm_publish_time":1760061504606},"5.0.2":{"name":"node-fetch-cache","version":"5.0.2","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--import tsx\" mocha --spec test/tests.ts --spec plugins/redis/test_redis_cache.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--import tsx\" mocha --inspect --inspect-brk --spec test/tests.ts --spec plugins/redis/test_redis_cache.ts --extensions ts --timeout 10000 --exit","test:core":"cross-env NODE_OPTIONS=\"--import tsx\" mocha --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test --exclude=plugins/redis/test_redis_cache.ts npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env rm -rf dist && npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","tsx":"^4.17.0","typescript":"^5.5.4"},"dependencies":{"cacache":"^18.0.4","formdata-node":"^6.0.3","locko":"^1.1.0","node-fetch":"3.3.2"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=18.19.0"},"_id":"node-fetch-cache@5.0.2","gitHead":"7b16cbe1cba9e42c242504b3c92c2bf452ccc702","_nodeVersion":"20.16.0","_npmVersion":"10.8.1","dist":{"shasum":"fb23046c94e3ff7edfbe91bfc07e8c1517a906e2","size":13498,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-5.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-5.0.2.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_5.0.2_1723981544056_0.9255155328023039"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-08-18T11:45:44.225Z","publish_time":1723981544225,"_source_registry_name":"default","_cnpm_publish_time":1723981544225},"5.0.1":{"name":"node-fetch-cache","version":"5.0.1","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--import tsx\" mocha --spec test/tests.ts --spec plugins/redis/test_redis_cache.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--import tsx\" mocha --inspect --inspect-brk --spec test/tests.ts --spec plugins/redis/test_redis_cache.ts --extensions ts --timeout 10000 --exit","test:core":"cross-env NODE_OPTIONS=\"--import tsx\" mocha --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test --exclude=plugins/redis/test_redis_cache.ts npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env rm -rf dist && npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","tsx":"^4.17.0","typescript":"^5.5.4"},"dependencies":{"cacache":"^18.0.4","formdata-node":"^6.0.3","locko":"^1.1.0","node-fetch":"3.3.2"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=18.19.0"},"_id":"node-fetch-cache@5.0.1","gitHead":"26f19a5848b18fb85a69044ea5d2cd0fbdb04775","_nodeVersion":"20.16.0","_npmVersion":"10.8.1","dist":{"shasum":"6a3d54a39665ae19a1aaeba10f805bcaf6a3b1f9","size":13879,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-5.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-5.0.1.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_5.0.1_1723909521692_0.17731530178839394"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-08-17T15:45:21.911Z","publish_time":1723909521911,"_source_registry_name":"default","_cnpm_publish_time":1723909521911},"5.0.0":{"name":"node-fetch-cache","version":"5.0.0","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--import tsx\" mocha --spec test/tests.ts --spec plugins/redis/test_redis_cache.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--import tsx\" mocha --inspect --inspect-brk --spec test/tests.ts --spec plugins/redis/test_redis_cache.ts --extensions ts --timeout 10000 --exit","test:core":"cross-env NODE_OPTIONS=\"--import tsx\" mocha --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test --exclude=plugins/redis/test_redis_cache.ts npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env rm -rf dist && npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","tsx":"^4.17.0","typescript":"^5.5.4"},"dependencies":{"cacache":"^18.0.1","formdata-node":"^6.0.3","locko":"^1.1.0","node-fetch":"3.3.2"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=18.19.0"},"_id":"node-fetch-cache@5.0.0","gitHead":"3e03ba6f5b292606d0289cf2fd7d626305de0322","_nodeVersion":"20.16.0","_npmVersion":"10.8.1","dist":{"shasum":"f5bc13f6d4075a6a77fad8830d8eff15521032e7","size":13081,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-5.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-5.0.0.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_5.0.0_1723908600034_0.38358923984534776"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-08-17T15:30:00.235Z","publish_time":1723908600235,"_source_registry_name":"default","_cnpm_publish_time":1723908600235},"4.1.2":{"name":"node-fetch-cache","version":"4.1.2","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --require ts-node/register --spec test/tests.ts --spec plugins/redis/test_redis_cache.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --inspect --inspect-brk --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit","test:core":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test --exclude=plugins/redis/test_redis_cache.ts npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","ts-node":"^10.9.2","typescript":"^5.3.3"},"dependencies":{"@types/node-fetch":"2.6.11","cacache":"^18.0.1","form-data":"^4.0.0","locko":"^1.1.0","node-fetch":"2.7.0"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=14.14.0"},"_id":"node-fetch-cache@4.1.2","gitHead":"77bc1c36a2975a9680ae1c27ebd9112b704f22c9","_nodeVersion":"20.13.1","_npmVersion":"10.5.2","dist":{"shasum":"4fdbd152c80ec5de76749076a1c4bb16510af8ee","size":14732,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-4.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-4.1.2.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_4.1.2_1719690775091_0.8984013790454959"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-06-29T19:52:55.247Z","publish_time":1719690775247,"_source_registry_name":"default","maintainers":[{"name":"rschmidt","email":""}],"_cnpm_publish_time":1719690775247},"4.1.1":{"name":"node-fetch-cache","version":"4.1.1","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --inspect --inspect-brk --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","ts-node":"^10.9.2","typescript":"^5.3.3","xo":"^0.56.0"},"dependencies":{"@types/node-fetch":"2.6.11","cacache":"^18.0.1","form-data":"^4.0.0","locko":"^1.1.0","node-fetch":"2.7.0"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=14.14.0"},"xo":{"space":true,"ignores":["test/tests.cjs"],"rules":{"unicorn/filename-case":["error",{"case":"snakeCase"}],"@typescript-eslint/naming-convention":["error",{"selector":"typeAlias","format":["PascalCase"]}],"@typescript-eslint/object-curly-spacing":["error","always"],"unicorn/prefer-node-protocol":"off","max-params":["error",7],"unicorn/prefer-export-from":"off","@typescript-eslint/consistent-type-imports":"off","unicorn/new-for-builtins":"off"}},"_id":"node-fetch-cache@4.1.1","gitHead":"c051523c8b056d9d7270033b8c79127572e19177","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"57530c860daf8019ca60b2ece1d7856008a42cad","size":13269,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-4.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-4.1.1.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_4.1.1_1715344805122_0.4586980044567095"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-05-10T12:40:05.286Z","publish_time":1715344805286,"_source_registry_name":"default","_cnpm_publish_time":1715344805286},"4.1.0":{"name":"node-fetch-cache","version":"4.1.0","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --inspect --inspect-brk --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","ts-node":"^10.9.2","typescript":"^5.3.3","xo":"^0.56.0"},"dependencies":{"@types/node-fetch":"^2.6.9","cacache":"^18.0.1","form-data":"^4.0.0","locko":"^1.1.0","node-fetch":"2.7.0"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=14.14.0"},"xo":{"space":true,"ignores":["test/tests.cjs"],"rules":{"unicorn/filename-case":["error",{"case":"snakeCase"}],"@typescript-eslint/naming-convention":["error",{"selector":"typeAlias","format":["PascalCase"]}],"@typescript-eslint/object-curly-spacing":["error","always"],"unicorn/prefer-node-protocol":"off","max-params":["error",7],"unicorn/prefer-export-from":"off","@typescript-eslint/consistent-type-imports":"off","unicorn/new-for-builtins":"off"}},"_id":"node-fetch-cache@4.1.0","gitHead":"2da6544647951b748c0aa5f4c8362bd9f5e06b78","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"eeb4414b67c5deb163e726e09773fc27123aa9df","size":13609,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-4.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-4.1.0.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_4.1.0_1703688174623_0.04663902121695962"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-12-27T14:42:54.867Z","publish_time":1703688174867,"_source_registry_name":"default","_cnpm_publish_time":1703688174867},"4.0.9":{"name":"node-fetch-cache","version":"4.0.9","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --inspect --inspect-brk --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","ts-node":"^10.9.2","typescript":"^5.3.3","xo":"^0.56.0"},"dependencies":{"@types/node-fetch":"^2.6.9","cacache":"^18.0.1","form-data":"^4.0.0","locko":"^1.1.0","node-fetch":"2.7.0"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=14.14.0"},"xo":{"space":true,"ignores":["test/tests.cjs"],"rules":{"unicorn/filename-case":["error",{"case":"snakeCase"}],"@typescript-eslint/naming-convention":["error",{"selector":"typeAlias","format":["PascalCase"]}],"@typescript-eslint/object-curly-spacing":["error","always"],"unicorn/prefer-node-protocol":"off","max-params":["error",7],"unicorn/prefer-export-from":"off","@typescript-eslint/consistent-type-imports":"off"}},"_id":"node-fetch-cache@4.0.9","gitHead":"03b5feed89db3910312e78464416c2c1a290cdf2","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"4946114d4962886eac12e4c152933859cac77274","size":13150,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-4.0.9.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-4.0.9.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_4.0.9_1703629850219_0.7948007165336985"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-12-26T22:30:50.463Z","publish_time":1703629850463,"_source_registry_name":"default","_cnpm_publish_time":1703629850463},"4.0.8":{"name":"node-fetch-cache","version":"4.0.8","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --inspect --inspect-brk --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","ts-node":"^10.9.2","typescript":"^5.3.3","xo":"^0.56.0"},"dependencies":{"@types/node-fetch":"^2.6.9","cacache":"^18.0.1","form-data":"^4.0.0","locko":"^1.1.0","node-fetch":"2.7.0"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=14.14.0"},"xo":{"space":true,"ignores":["test/tests.cjs"],"rules":{"unicorn/filename-case":["error",{"case":"snakeCase"}],"@typescript-eslint/naming-convention":["error",{"selector":"typeAlias","format":["PascalCase"]}],"@typescript-eslint/object-curly-spacing":["error","always"],"unicorn/prefer-node-protocol":"off","max-params":["error",7],"unicorn/prefer-export-from":"off","@typescript-eslint/consistent-type-imports":"off"}},"_id":"node-fetch-cache@4.0.8","gitHead":"8fc91317c66205e39f311d2d386761ec244117ce","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"0376b4111da1a8aaaa3388bf18e43a10b22c18ac","size":13125,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-4.0.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-4.0.8.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_4.0.8_1703542244846_0.37139476097532853"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-12-25T22:10:45.070Z","publish_time":1703542245070,"_source_registry_name":"default","_cnpm_publish_time":1703542245070},"4.0.7":{"name":"node-fetch-cache","version":"4.0.7","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --inspect --inspect-brk --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","ts-node":"^10.9.2","typescript":"^5.3.3","xo":"^0.56.0"},"dependencies":{"@types/node-fetch":"^2.6.9","cacache":"^18.0.1","form-data":"^4.0.0","locko":"^1.1.0","node-fetch":"2.7.0"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=14.14.0"},"xo":{"space":true,"ignores":["test/tests.cjs"],"rules":{"unicorn/filename-case":["error",{"case":"snakeCase"}],"@typescript-eslint/naming-convention":["error",{"selector":"typeAlias","format":["PascalCase"]}],"@typescript-eslint/object-curly-spacing":["error","always"],"unicorn/prefer-node-protocol":"off","max-params":["error",7],"unicorn/prefer-export-from":"off","@typescript-eslint/consistent-type-imports":"off"}},"_id":"node-fetch-cache@4.0.7","gitHead":"237d53a65666d137d728e75b28d4ffecea870975","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"06fa322108f3f88f5afc9eaa795e96e41278021d","size":13188,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-4.0.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-4.0.7.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_4.0.7_1703533318931_0.11309200814480991"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-12-25T19:41:59.127Z","publish_time":1703533319127,"_source_registry_name":"default","_cnpm_publish_time":1703533319127},"4.0.6":{"name":"node-fetch-cache","version":"4.0.6","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --inspect --inspect-brk --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","ts-node":"^10.9.2","typescript":"^5.3.3","xo":"^0.56.0"},"dependencies":{"@types/node-fetch":"^2.6.9","cacache":"^18.0.1","form-data":"^4.0.0","locko":"^1.1.0","node-fetch":"2.7.0"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=14.14.0"},"xo":{"space":true,"ignores":["test/tests.cjs"],"rules":{"unicorn/filename-case":["error",{"case":"snakeCase"}],"@typescript-eslint/naming-convention":["error",{"selector":"typeAlias","format":["PascalCase"]}],"@typescript-eslint/object-curly-spacing":["error","always"],"unicorn/prefer-node-protocol":"off","max-params":["error",7],"unicorn/prefer-export-from":"off","@typescript-eslint/consistent-type-imports":"off"}},"_id":"node-fetch-cache@4.0.6","gitHead":"316e70248298054d50f97477e2233e483b579814","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"847422f833ac9dc8f07c6d1dc660a75e86b07bb9","size":13186,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-4.0.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-4.0.6.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_4.0.6_1703533235355_0.2072404744173273"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-12-25T19:40:35.597Z","publish_time":1703533235597,"_source_registry_name":"default","_cnpm_publish_time":1703533235597},"4.0.5":{"name":"node-fetch-cache","version":"4.0.5","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --inspect --inspect-brk --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","ts-node":"^10.9.2","typescript":"^5.3.3","xo":"^0.56.0"},"dependencies":{"@types/node-fetch":"^2.6.9","cacache":"^18.0.1","form-data":"^4.0.0","locko":"^1.1.0","node-fetch":"2.7.0"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=14.14.0"},"xo":{"space":true,"ignores":["test/tests.cjs"],"rules":{"unicorn/filename-case":["error",{"case":"snakeCase"}],"@typescript-eslint/naming-convention":["error",{"selector":"typeAlias","format":["PascalCase"]}],"@typescript-eslint/object-curly-spacing":["error","always"],"unicorn/prefer-node-protocol":"off","max-params":["error",7],"unicorn/prefer-export-from":"off","@typescript-eslint/consistent-type-imports":"off"}},"_id":"node-fetch-cache@4.0.5","gitHead":"1b0edeed19cf547c62b9721c6615d87baeaf5181","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"0dbf0de8b280bfb08d877f337fa78c2984d469b2","size":13127,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-4.0.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-4.0.5.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_4.0.5_1703532617445_0.7187018152344498"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-12-25T19:30:17.664Z","publish_time":1703532617664,"_source_registry_name":"default","_cnpm_publish_time":1703532617664},"4.0.4":{"name":"node-fetch-cache","version":"4.0.4","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --inspect --inspect-brk --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","ts-node":"^10.9.2","typescript":"^5.3.3","xo":"^0.56.0"},"dependencies":{"@types/node-fetch":"^2.6.9","cacache":"^18.0.1","form-data":"^4.0.0","locko":"^1.1.0","node-fetch":"2.7.0"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=14.14.0"},"xo":{"space":true,"ignores":["test/tests.cjs"],"rules":{"unicorn/filename-case":["error",{"case":"snakeCase"}],"@typescript-eslint/naming-convention":["error",{"selector":"typeAlias","format":["PascalCase"]}],"@typescript-eslint/object-curly-spacing":["error","always"],"unicorn/prefer-node-protocol":"off","max-params":["error",7],"unicorn/prefer-export-from":"off","@typescript-eslint/consistent-type-imports":"off"}},"_id":"node-fetch-cache@4.0.4","gitHead":"1b0edeed19cf547c62b9721c6615d87baeaf5181","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"0c0675a1af75a64a99e58e8e83f61672b96afa4e","size":13129,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-4.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-4.0.4.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_4.0.4_1703531871646_0.4943604401157111"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-12-25T19:17:51.864Z","publish_time":1703531871864,"_source_registry_name":"default","_cnpm_publish_time":1703531871864},"4.0.3":{"name":"node-fetch-cache","version":"4.0.3","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --inspect --inspect-brk --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","ts-node":"^10.9.2","typescript":"^5.3.3","xo":"^0.56.0"},"dependencies":{"@types/node-fetch":"^2.6.9","cacache":"^18.0.1","form-data":"^4.0.0","locko":"^1.1.0","node-fetch":"2.7.0"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=14.14.0"},"xo":{"space":true,"ignores":["test/tests.cjs"],"rules":{"unicorn/filename-case":["error",{"case":"snakeCase"}],"@typescript-eslint/naming-convention":["error",{"selector":"typeAlias","format":["PascalCase"]}],"@typescript-eslint/object-curly-spacing":["error","always"],"unicorn/prefer-node-protocol":"off","max-params":["error",7],"unicorn/prefer-export-from":"off","@typescript-eslint/consistent-type-imports":"off"}},"_id":"node-fetch-cache@4.0.3","gitHead":"1b0edeed19cf547c62b9721c6615d87baeaf5181","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"bc7cdf1c37ee3d06c7d3b6c038bf2658705c85a2","size":13129,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-4.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-4.0.3.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_4.0.3_1703531794646_0.03295490856558736"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-12-25T19:16:34.841Z","publish_time":1703531794841,"_source_registry_name":"default","_cnpm_publish_time":1703531794841},"4.0.2":{"name":"node-fetch-cache","version":"4.0.2","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --inspect --inspect-brk --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","ts-node":"^10.9.2","typescript":"^5.3.3","xo":"^0.56.0"},"dependencies":{"@types/node-fetch":"^2.6.9","cacache":"^18.0.1","form-data":"^4.0.0","locko":"^1.1.0","node-fetch":"2.7.0"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=14.14.0"},"xo":{"space":true,"ignores":["test/tests.cjs"],"rules":{"unicorn/filename-case":["error",{"case":"snakeCase"}],"@typescript-eslint/naming-convention":["error",{"selector":"typeAlias","format":["PascalCase"]}],"@typescript-eslint/object-curly-spacing":["error","always"],"unicorn/prefer-node-protocol":"off","max-params":["error",7],"unicorn/prefer-export-from":"off","@typescript-eslint/consistent-type-imports":"off"}},"_id":"node-fetch-cache@4.0.2","gitHead":"d679d9c3dbabead8f0dbe1ed89cd4bed479362b1","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"3caa7e387053c1d7edd1d56ff078197b9dc08b92","size":13108,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-4.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-4.0.2.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_4.0.2_1703531451761_0.45972717364533766"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-12-25T19:10:51.942Z","publish_time":1703531451942,"_source_registry_name":"default","_cnpm_publish_time":1703531451942},"4.0.1":{"name":"node-fetch-cache","version":"4.0.1","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"types":"./dist/index.d.ts","scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --inspect --inspect-brk --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@types/node-fetch":"^2.6.9","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","ts-node":"^10.9.2","typescript":"^5.3.3","xo":"^0.56.0"},"dependencies":{"cacache":"^18.0.1","form-data":"^4.0.0","locko":"^1.1.0","node-fetch":"2.7.0"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=14.14.0"},"xo":{"space":true,"ignores":["test/tests.cjs"],"rules":{"unicorn/filename-case":["error",{"case":"snakeCase"}],"@typescript-eslint/naming-convention":["error",{"selector":"typeAlias","format":["PascalCase"]}],"@typescript-eslint/object-curly-spacing":["error","always"],"unicorn/prefer-node-protocol":"off","max-params":["error",7],"unicorn/prefer-export-from":"off","@typescript-eslint/consistent-type-imports":"off"}},"_id":"node-fetch-cache@4.0.1","gitHead":"d679d9c3dbabead8f0dbe1ed89cd4bed479362b1","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"12d8e9451feee9cb320e72cc9d0156a4fba0c2d6","size":13110,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-4.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-4.0.1.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_4.0.1_1703530765807_0.7739386446657184"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-12-25T18:59:25.955Z","publish_time":1703530765955,"_source_registry_name":"default","_cnpm_publish_time":1703530765955},"4.0.0":{"name":"node-fetch-cache","version":"4.0.0","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./dist/index.js","require":"./dist/wrapper.cjs"},"scripts":{"tsc":"tsc","buildcjs":"cross-env rollup ./dist/index.js --file ./dist/index.cjs --format cjs && cp ./commonjs/wrapper.cjs ./dist/wrapper.cjs","test":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit && mocha --timeout 10000 --exit test/tests.cjs","test:debug":"cross-env NODE_OPTIONS=\"--loader ts-node/esm\" mocha --inspect --inspect-brk --require ts-node/register --spec test/tests.ts --extensions ts --timeout 10000 --exit","coverage":"c8 --reporter=lcov --reporter=text --reporter=html --exclude=dist --exclude=test npm test","lint":"xo .","lintfix":"xo . --fix","prepublishOnly":"cross-env npm run tsc && npm run buildcjs && npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"@types/cacache":"^17.0.2","@types/mocha":"^10.0.6","@types/node-fetch":"^2.6.9","@typescript-eslint/eslint-plugin":"^6.15.0","@typescript-eslint/parser":"^6.15.0","c8":"^8.0.1","cross-env":"^7.0.3","dotenv":"^16.3.1","encoding":"^0.1.13","husky":"^8.0.3","mocha":"^10.2.0","rimraf":"^5.0.5","rollup":"^4.9.1","ts-node":"^10.9.2","typescript":"^5.3.3","xo":"^0.56.0"},"dependencies":{"cacache":"^18.0.1","form-data":"^4.0.0","locko":"^1.1.0","node-fetch":"2.7.0"},"husky":{"hooks":{"pre-commit":"npm run prepublishOnly"}},"engines":{"node":">=14.14.0"},"xo":{"space":true,"ignores":["test/tests.cjs"],"rules":{"unicorn/filename-case":["error",{"case":"snakeCase"}],"@typescript-eslint/naming-convention":["error",{"selector":"typeAlias","format":["PascalCase"]}],"@typescript-eslint/object-curly-spacing":["error","always"],"unicorn/prefer-node-protocol":"off","max-params":["error",7],"unicorn/prefer-export-from":"off","@typescript-eslint/consistent-type-imports":"off"}},"_id":"node-fetch-cache@4.0.0","gitHead":"d679d9c3dbabead8f0dbe1ed89cd4bed479362b1","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"6923c0e274e473435d06956f2f69140b6fdc24a5","size":13108,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-4.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-4.0.0.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_4.0.0_1703530652836_0.23754234795255313"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-12-25T18:57:33.019Z","publish_time":1703530653019,"_source_registry_name":"default","_cnpm_publish_time":1703530653019},"3.1.4":{"name":"node-fetch-cache","version":"3.1.4","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./src/index.js","require":"./commonjs/wrapper.cjs"},"scripts":{"buildcjs":"rollup src/index.js --file commonjs/index.cjs --format cjs","test":"npm run lintfix && npm run buildcjs && mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix","prepublishOnly":"npm test","prepare":"husky install"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^8.9.0","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.25.4","form-data":"^3.0.0","husky":"^8.0.3","mocha":"^9.2.1","nyc":"^15.1.0","rimraf":"^3.0.2","rollup":"^2.53.0"},"dependencies":{"cacache":"^15.2.0","locko":"^1.0.0","node-fetch":"2.6.11"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"_id":"node-fetch-cache@3.1.4","gitHead":"4954bc7988a01b1578d36f95b6d6b8cd69fe7d48","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"2a0f16638a54e97cac1cebb708f8184249335f59","size":7406,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-3.1.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-3.1.4.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_3.1.4_1703333951648_0.40262932870460344"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-12-23T12:19:11.879Z","publish_time":1703333951879,"_source_registry_name":"default","_cnpm_publish_time":1703333951879},"3.1.3":{"name":"node-fetch-cache","version":"3.1.3","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./src/index.js","require":"./commonjs/wrapper.cjs"},"scripts":{"buildcjs":"rollup src/index.js --file commonjs/index.cjs --format cjs","test":"npm run lintfix && npm run buildcjs && mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix","prepublishOnly":"npm test"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^8.9.0","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.25.4","form-data":"^3.0.0","husky":"^8.0.3","mocha":"^9.2.1","nyc":"^15.1.0","rimraf":"^3.0.2","rollup":"^2.53.0"},"dependencies":{"cacache":"^15.2.0","locko":"^1.0.0","node-fetch":"2.6.11"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"gitHead":"44a0ffb8f36ba6e68715edae7b1b94ff333af01c","_id":"node-fetch-cache@3.1.3","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"shasum":"a02e1b8cdada04f47b408e99bb8d7edeeeea3efa","size":7369,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-3.1.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-3.1.3.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_3.1.3_1684602014730_0.8839141192683431"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-05-20T17:00:14.893Z","publish_time":1684602014893,"_source_registry_name":"default","_cnpm_publish_time":1684602014893},"3.1.2":{"name":"node-fetch-cache","version":"3.1.2","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./src/index.js","require":"./commonjs/wrapper.cjs"},"scripts":{"buildcjs":"rollup src/index.js --file commonjs/index.cjs --format cjs","test":"npm run lintfix && npm run buildcjs && mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix","prepublishOnly":"npm test"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^8.9.0","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.25.4","form-data":"^3.0.0","husky":"^4.3.0","mocha":"^9.2.1","nyc":"^15.1.0","rimraf":"^3.0.2","rollup":"^2.53.0"},"dependencies":{"cacache":"^15.2.0","locko":"^1.0.0","node-fetch":"2.6.7"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"gitHead":"b234de4b6922a0b04e7c1923e93f82742ffe42ff","_id":"node-fetch-cache@3.1.2","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"shasum":"3b6bef170b3107327d343adf9ae198984e978771","size":7368,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-3.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-3.1.2.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_3.1.2_1680909648252_0.02878344345638717"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-04-07T23:20:48.404Z","publish_time":1680909648404,"_cnpm_publish_time":1680909648404},"3.1.1":{"name":"node-fetch-cache","version":"3.1.1","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./src/index.js","require":"./commonjs/wrapper.cjs"},"scripts":{"buildcjs":"rollup src/index.js --file commonjs/index.cjs --format cjs","test":"npm run lintfix && npm run buildcjs && mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix","prepublishOnly":"npm test"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^8.9.0","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.25.4","form-data":"^3.0.0","husky":"^4.3.0","mocha":"^9.2.1","nyc":"^15.1.0","rimraf":"^3.0.2","rollup":"^2.53.0"},"dependencies":{"cacache":"^15.2.0","locko":"0.0.3","node-fetch":"2.6.7"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"gitHead":"44786dfb68c1a82ae99cfac132865fa83c3c8f70","_id":"node-fetch-cache@3.1.1","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"shasum":"51d0f309cc8894b5852d0fd5262c06cafd9f526d","size":7368,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-3.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-3.1.1.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_3.1.1_1678755629079_0.047901026948004244"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-03-14T01:00:29.249Z","publish_time":1678755629249,"_cnpm_publish_time":1678755629249},"3.1.0":{"name":"node-fetch-cache","version":"3.1.0","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./src/index.js","require":"./commonjs/wrapper.cjs"},"scripts":{"buildcjs":"rollup src/index.js --file commonjs/index.cjs --format cjs","test":"npm run buildcjs && mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix","prepublishOnly":"npm test"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^8.9.0","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.25.4","form-data":"^3.0.0","husky":"^4.3.0","mocha":"^9.2.1","nyc":"^15.1.0","rimraf":"^3.0.2","rollup":"^2.53.0"},"dependencies":{"cacache":"^15.2.0","locko":"0.0.3","node-fetch":"2.6.7"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"gitHead":"4f93c9ba1c7f50e626abfd448b8824cc2cf34dd2","_id":"node-fetch-cache@3.1.0","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"shasum":"3139a9011d86c96b83c6c1de1547b07c3c225bdf","size":7362,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-3.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-3.1.0.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_3.1.0_1678755359748_0.5216444523401937"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-03-14T00:55:59.930Z","publish_time":1678755359930,"_cnpm_publish_time":1678755359930},"3.0.5":{"name":"node-fetch-cache","version":"3.0.5","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./src/index.js","require":"./commonjs/wrapper.cjs"},"scripts":{"buildcjs":"rollup src/index.js --file commonjs/index.cjs --format cjs","test":"npm run buildcjs && mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix","prepublishOnly":"npm test"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^8.9.0","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.25.4","form-data":"^3.0.0","husky":"^4.3.0","mocha":"^9.2.1","nyc":"^15.1.0","rimraf":"^3.0.2","rollup":"^2.53.0"},"dependencies":{"cacache":"^15.2.0","locko":"0.0.3","node-fetch":"2.6.7"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"gitHead":"2bc4cd6de0368b78a0674aab1038ddec03b60dd4","_id":"node-fetch-cache@3.0.5","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"shasum":"102f56b525f81a27f566f1573188061d7160cfce","size":6499,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-3.0.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-3.0.5.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_3.0.5_1645457805903_0.9322425354266224"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-02-21T15:36:59.623Z","publish_time":1645457806238,"_cnpm_publish_time":1645457806238},"3.0.4":{"name":"node-fetch-cache","version":"3.0.4","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./src/index.js","require":"./commonjs/wrapper.cjs"},"scripts":{"buildcjs":"rollup src/index.js --file commonjs/index.cjs --format cjs","test":"npm run buildcjs && mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix","prepublishOnly":"npm test"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^8.9.0","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.25.4","form-data":"^3.0.0","husky":"^4.3.0","mocha":"^9.2.1","nyc":"^15.1.0","rimraf":"^3.0.2","rollup":"^2.53.0"},"dependencies":{"cacache":"^15.2.0","locko":"0.0.3","node-fetch":"2.6.7"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"gitHead":"51e5754c3e3a555b58052df131ef303e5ceeea90","_id":"node-fetch-cache@3.0.4","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"shasum":"f2f4c8588cc5bca3e1e3c4fe622f74761bc8a00f","size":6514,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-3.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-3.0.4.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_3.0.4_1645278887580_0.11553096386921635"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-02-19T13:54:51.080Z","publish_time":1645278887704,"_cnpm_publish_time":1645278887704},"3.0.3":{"name":"node-fetch-cache","version":"3.0.3","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./src/index.js","require":"./commonjs/wrapper.cjs"},"scripts":{"buildcjs":"rollup src/index.js --file commonjs/index.cjs --format cjs","test":"npm run buildcjs && mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix","prepublishOnly":"npm test"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2","form-data":"^3.0.0","husky":"^4.3.0","mocha":"^8.2.1","nyc":"^15.1.0","rimraf":"^3.0.2","rollup":"^2.53.0"},"dependencies":{"cacache":"^15.2.0","locko":"0.0.3","node-fetch":"2.6.1"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"gitHead":"b7190b933aaf5b088e5afa5173f0620c9b7a5632","_id":"node-fetch-cache@3.0.3","_nodeVersion":"14.17.4","_npmVersion":"6.14.14","dist":{"shasum":"b301ea9344634310532fbde18b549101176677b5","size":6550,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-3.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-3.0.3.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_3.0.3_1629400140928_0.6037619901111424"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:26.179Z","publish_time":1629400141063,"_cnpm_publish_time":1629400141063},"3.0.2":{"name":"node-fetch-cache","version":"3.0.2","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./src/index.js","require":"./commonjs/wrapper.cjs"},"scripts":{"buildcjs":"rollup src/index.js --file commonjs/index.cjs --format cjs","test":"npm run buildcjs && mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix","prepublishOnly":"npm test"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2","form-data":"^3.0.0","husky":"^4.3.0","mocha":"^8.2.1","nyc":"^15.1.0","rimraf":"^3.0.2","rollup":"^2.53.0"},"dependencies":{"cacache":"^15.2.0","locko":"0.0.3","node-fetch":"2.6.1"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"gitHead":"b7190b933aaf5b088e5afa5173f0620c9b7a5632","_id":"node-fetch-cache@3.0.2","_nodeVersion":"14.17.4","_npmVersion":"6.14.14","dist":{"shasum":"08a7887aed38cad95380e3afa9d90a6a7dd3b19b","size":6550,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-3.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-3.0.2.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_3.0.2_1628372332184_0.5977419799354591"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:25.311Z","publish_time":1628372332334,"_cnpm_publish_time":1628372332334},"3.0.1":{"name":"node-fetch-cache","version":"3.0.1","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./src/index.js","require":"./commonjs/wrapper.cjs"},"scripts":{"buildcjs":"rollup src/index.js --file commonjs/index.cjs --format cjs","test":"npm run buildcjs && mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix","prepublishOnly":"npm test"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2","form-data":"^3.0.0","husky":"^4.3.0","mocha":"^8.2.1","nyc":"^15.1.0","rimraf":"^3.0.2","rollup":"^2.53.0"},"dependencies":{"cacache":"^15.2.0","locko":"0.0.3","node-fetch":"2.6.1"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"gitHead":"0f5f1edb223834071952e2b866f15ea68e9240e6","_id":"node-fetch-cache@3.0.1","_nodeVersion":"14.17.3","_npmVersion":"6.14.13","dist":{"shasum":"d77aac50edabe04f8d9b96fd7a2a2d4459111ee6","size":6519,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-3.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-3.0.1.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_3.0.1_1626009144920_0.4296442418232076"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:24.438Z","publish_time":1626009145053,"_cnpm_publish_time":1626009145053},"3.0.0":{"name":"node-fetch-cache","version":"3.0.0","description":"node-fetch with caching.","main":"src/index.js","type":"module","exports":{"import":"./src/index.js","require":"./commonjs/wrapper.cjs"},"scripts":{"buildcjs":"rollup src/index.js --file commonjs/index.cjs --format cjs","test":"npm run buildcjs && mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix","prepublishOnly":"npm test"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2","form-data":"^3.0.0","husky":"^4.3.0","mocha":"^8.2.1","nyc":"^15.1.0","rimraf":"^3.0.2","rollup":"^2.53.0"},"dependencies":{"cacache":"^15.2.0","locko":"0.0.3","node-fetch":"2.6.1"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"gitHead":"0c8c0d4520b86b8c8257746fff88558f4e01db7c","_id":"node-fetch-cache@3.0.0","_nodeVersion":"14.17.3","_npmVersion":"6.14.13","dist":{"shasum":"d71f49347afba350879a297b086af4ef67a69691","size":6518,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-3.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-3.0.0.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_3.0.0_1626008885457_0.7494849581019571"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:23.582Z","publish_time":1626008885608,"_cnpm_publish_time":1626008885608},"2.0.3":{"name":"node-fetch-cache","version":"2.0.3","description":"node-fetch with a persistent cache.","main":"index.js","scripts":{"test":"mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2","form-data":"^3.0.0","husky":"^4.3.0","mocha":"^8.2.1","nyc":"^15.1.0","rimraf":"^3.0.2"},"dependencies":{"fpersist":"^1.0.5","node-fetch":"*"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"gitHead":"ef5939f571282e1bc4ed6f07c65ab5e1762d0a16","_id":"node-fetch-cache@2.0.3","_nodeVersion":"14.17.1","_npmVersion":"6.14.13","dist":{"shasum":"ddd7f9d57c38e84d45d0ece39efce95124926d18","size":5804,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-2.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-2.0.3.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_2.0.3_1625497621126_0.10674034278650701"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:22.497Z","publish_time":1625497621268,"_cnpm_publish_time":1625497621268},"2.0.2":{"name":"node-fetch-cache","version":"2.0.2","description":"node-fetch with a persistent cache.","main":"index.js","scripts":{"test":"mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2","form-data":"^3.0.0","husky":"^4.3.0","mocha":"^8.2.1","nyc":"^15.1.0","rimraf":"^3.0.2"},"dependencies":{"fpersist":"^1.0.5","node-fetch":"*"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"gitHead":"e356e485b6c6d0fe68a8350a1566e203d97c9c42","_id":"node-fetch-cache@2.0.2","_nodeVersion":"14.17.1","_npmVersion":"6.14.13","dist":{"shasum":"dad7dcde1d01b8364f6fca8e477befb997f5acc6","size":5800,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-2.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-2.0.2.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_2.0.2_1625497444957_0.6810470592537814"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:21.639Z","publish_time":1625497445079,"_cnpm_publish_time":1625497445079},"2.0.1":{"name":"node-fetch-cache","version":"2.0.1","description":"node-fetch with a persistent cache.","main":"index.js","scripts":{"test":"mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2","form-data":"^3.0.0","husky":"^4.3.0","mocha":"^8.2.1","nyc":"^15.1.0","rimraf":"^3.0.2"},"dependencies":{"fpersist":"^1.0.5","node-fetch":"*"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"gitHead":"e356e485b6c6d0fe68a8350a1566e203d97c9c42","_id":"node-fetch-cache@2.0.1","_nodeVersion":"14.17.1","_npmVersion":"6.14.13","dist":{"shasum":"53f235e6c9c2c5deb997f9ccb54a1cddc9daae71","size":5685,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-2.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-2.0.1.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_2.0.1_1625322333134_0.7989752986284819"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:20.774Z","publish_time":1625322333252,"_cnpm_publish_time":1625322333252},"2.0.0":{"name":"node-fetch-cache","version":"2.0.0","description":"node-fetch with a persistent cache.","main":"index.js","scripts":{"test":"mocha --timeout 10000 --exit","coverage":"nyc --reporter=lcov --reporter=text npm test","lint":"eslint .","lintfix":"eslint . --fix"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2","form-data":"^3.0.0","husky":"^4.3.0","mocha":"^8.2.1","nyc":"^15.1.0","rimraf":"^3.0.2"},"dependencies":{"fpersist":"^1.0.5","node-fetch":"*"},"husky":{"hooks":{"pre-commit":"npm run lint && npm test"}},"gitHead":"185b47c8a61ee4d68d840e30f017bebbb8903cea","_id":"node-fetch-cache@2.0.0","_nodeVersion":"14.17.0","_npmVersion":"6.14.13","dist":{"shasum":"912a9f002afe77ebbf901baee83154cd94aa8ffa","size":5633,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-2.0.0.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_2.0.0_1623540376285_0.8861280782596725"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:19.913Z","publish_time":1623540376434,"_cnpm_publish_time":1623540376434},"1.0.6":{"name":"node-fetch-cache","version":"1.0.6","description":"node-fetch with a persistent cache.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","lint":"eslint .","lintfix":"eslint . --fix"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2"},"dependencies":{"node-fetch":"*"},"gitHead":"8507c1be1c5b32b63652ca5ec0d9462667b1aef9","_id":"node-fetch-cache@1.0.6","_nodeVersion":"12.20.0","_npmVersion":"6.14.8","dist":{"shasum":"94f937b16329fc24cb6d883b75f6bdc673d9217b","size":2537,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-1.0.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-1.0.6.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_1.0.6_1606531505517_0.6681739030359943"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:19.026Z","publish_time":1606531505666,"_cnpm_publish_time":1606531505666},"1.0.5":{"name":"node-fetch-cache","version":"1.0.5","description":"node-fetch with a persistent cache.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","lint":"eslint .","lintfix":"eslint . --fix"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2"},"dependencies":{"node-fetch":"*"},"gitHead":"fb1bfd6bf96b99233fcc4af90809d14631c5e262","_id":"node-fetch-cache@1.0.5","_nodeVersion":"12.20.0","_npmVersion":"6.14.8","dist":{"shasum":"df53b2fee7f05bc88846d0b7fa16df7c6afed795","size":2532,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-1.0.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-1.0.5.tgz"},"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"maintainers":[{"name":"rschmidt","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_1.0.5_1606528204270_0.5474825673076047"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:18.157Z","publish_time":1606528204512,"_cnpm_publish_time":1606528204512},"1.0.4":{"name":"node-fetch-cache","version":"1.0.4","description":"node-fetch with a persistent cache.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","lint":"eslint .","lintfix":"eslint . --fix"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2"},"dependencies":{"node-fetch":"*"},"gitHead":"bff8a5c175656d1a6a961c46625903566ca8135d","_id":"node-fetch-cache@1.0.4","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"shasum":"8af3146544065c600136185ef4c20267af53f7df","size":2441,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-1.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-1.0.4.tgz"},"maintainers":[{"name":"rschmidt","email":""}],"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_1.0.4_1587157828172_0.46728605285549274"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:17.291Z","publish_time":1587157828347,"_cnpm_publish_time":1587157828347},"1.0.3":{"name":"node-fetch-cache","version":"1.0.3","description":"node-fetch with a persistent cache.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","lint":"eslint .","lintfix":"eslint . --fix"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2"},"dependencies":{"node-fetch":"*"},"gitHead":"bff8a5c175656d1a6a961c46625903566ca8135d","_id":"node-fetch-cache@1.0.3","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"shasum":"537489c5468eba62e3f979b9f85ee87fc3c2fc38","size":2594,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-1.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-1.0.3.tgz"},"maintainers":[{"name":"rschmidt","email":""}],"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_1.0.3_1587157773053_0.9769626980039268"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:16.436Z","publish_time":1587157773510,"_cnpm_publish_time":1587157773510},"1.0.2":{"name":"node-fetch-cache","version":"1.0.2","description":"node-fetch with a persistent cache.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","lint":"eslint .","lintfix":"eslint . --fix"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2"},"dependencies":{"node-fetch":"*"},"gitHead":"3914d35b82f79bf82d772e1a7306c30213d976af","_id":"node-fetch-cache@1.0.2","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"shasum":"ed90d13c8113b02035f9e9828479c246f7ae89a8","size":2574,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-1.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-1.0.2.tgz"},"maintainers":[{"name":"rschmidt","email":""}],"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_1.0.2_1587157362848_0.9968255576547278"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:15.562Z","publish_time":1587157363091,"_cnpm_publish_time":1587157363091},"1.0.1":{"name":"node-fetch-cache","version":"1.0.1","description":"node-fetch with a persistent cache.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","lint":"eslint .","lintfix":"eslint . --fix"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2"},"dependencies":{"node-fetch":"*"},"gitHead":"6459ef1d335ef85e613aa824c5c9a6334e0e03b1","_id":"node-fetch-cache@1.0.1","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"shasum":"d3f9957f6834cad9e2993df67b55e2c2ddaa873a","size":2569,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-1.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-1.0.1.tgz"},"maintainers":[{"name":"rschmidt","email":""}],"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_1.0.1_1587157236303_0.3544441138239811"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:14.684Z","publish_time":1587157236463,"_cnpm_publish_time":1587157236463},"1.0.0":{"name":"node-fetch-cache","version":"1.0.0","description":"node-fetch with a persistent cache.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","lint":"eslint .","lintfix":"eslint . --fix"},"repository":{"type":"git","url":"git+https://github.com/mistval/node-fetch-cache.git"},"keywords":["node","fetch","node-fetch","cache","cached"],"author":{"name":"mistval"},"license":"MIT","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"homepage":"https://github.com/mistval/node-fetch-cache#readme","devDependencies":{"eslint":"^6.8.0","eslint-config-airbnb-base":"^14.1.0","eslint-plugin-import":"^2.20.2"},"dependencies":{"node-fetch":"*"},"gitHead":"15a87fac5a4babebc4065144c93ddb9868648f65","_id":"node-fetch-cache@1.0.0","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"shasum":"38bbc38fb217e25eeaddd16cb9886526270bbeae","size":8778,"noattachment":false,"key":"/node-fetch-cache/-/node-fetch-cache-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/node-fetch-cache/download/node-fetch-cache-1.0.0.tgz"},"maintainers":[{"name":"rschmidt","email":""}],"_npmUser":{"name":"rschmidt","email":"randallschmidt1@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-fetch-cache_1.0.0_1587157183816_0.6389131562424719"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-24T20:34:13.812Z","publish_time":1587157183948,"_cnpm_publish_time":1587157183948}},"readme":"# node-fetch-cache\n\n[![codecov](https://codecov.io/github/mistval/node-fetch-cache/graph/badge.svg?token=UYA5PDNZ0J)](https://codecov.io/github/mistval/node-fetch-cache) ![workflow status](https://github.com/mistval/node-fetch-cache/actions/workflows/ci.yml/badge.svg)\n\n[node-fetch](https://www.npmjs.com/package/node-fetch) with caching of responses.\n\nThe first fetch with any given arguments will result in an HTTP request and any subsequent fetch with the same arguments will read the response from the cache.\n\nBy default responses are cached in memory, but you can also cache to files on disk, cache in Redis, or implement your own cache.\n\n## Usage\n\nImport it and use it the same way you would use [node-fetch](https://www.npmjs.com/package/node-fetch):\n\n```js\nimport fetch from 'node-fetch-cache';\n\nconst response = await fetch('http://google.com');\nconsole.log(await response.text());\n```\n\nThe next time you `fetch('http://google.com')`, the response will be returned from the cache. No HTTP request will be made.\n\n## Basic API\n\nThis module's API is a superset of `node-fetch`'s. You can consult [the node-fetch documentation](https://www.npmjs.com/package/node-fetch) for its general usage. Only the additional caching features provided by node-fetch-cache are discussed below.\n\n### Control what's cached\n\nBy default node-fetch-cache caches all responses, regardless of the response status or any other response characteristics.\n\nThere are two main ways to customize which responses are cached and which are not.\n\nBy `create()`ing a custom fetch instance:\n\n```js\nimport NodeFetchCache from 'node-fetch-cache';\n\nconst fetch = NodeFetchCache.create({\n  // Only cache responses with a 2xx status code\n  shouldCacheResponse: (response) => response.ok,\n});\n\nconst response = await fetch('http://google.com')\nconsole.log(await response.text());\n```\n\nOr by passing options to `fetch()` when making a request:\n\n```js\nimport fetch from 'node-fetch-cache';\n\nconst response = await fetch(\n  'http://google.com',\n  undefined,\n  {\n    // Only cache responses with a 2xx status code\n    shouldCacheResponse: (response) => response.ok,\n  },\n);\n\nconsole.log(await response.text());\n```\n\nIf you provide options in both ways, then the options are merged together, with those passed to `fetch()` taking precedence.\n\n### Cache to Disk\n\nBy default responses are cached in memory, but you can also cache to files on disk. This allows the cache to survive the process exiting, allows multiple processes to share the same cache, and may reduce memory usage.\n\nUse the `FileSystemCache` class like so:\n\n```js\nimport NodeFetchCache, { FileSystemCache } from 'node-fetch-cache';\n\nconst fetch = NodeFetchCache.create({\n  cache: new FileSystemCache(options),\n});\n```\n\nOptions:\n\n```js\n{\n  // Specify where to keep the cache. If undefined, '.cache' is used by default.\n  // If this directory does not exist, it will be created.\n  cacheDirectory: '/my/cache/directory/path',\n  // Time to live. How long (in ms) responses remain cached before\n  // becoming invalid. If undefined, cached responses never become\n  // invalid.\n  ttl: 1000,\n}\n```\n\nIf you set a TTL, be aware that cache entries are not actively deleted from disk when they become invalid, which can cause disk bloat over time. To clean that up, you can periodically clear the entire cache directory by calling `.clear()` on an instance of `FileSystemCache`.\n\n### Cache with Redis\n\nUse the [@node-fetch-cache/redis](https://www.npmjs.com/package/@node-fetch-cache/redis) package to cache in Redis.\n\n### Cache in Memory with a TTL\n\nIf you would like to cache in memory and automatically eject responses after a certain amount of time (in ms), you can create a custom instance of the `MemoryCache` class and use that:\n\n```js\nimport NodeFetchCache, { MemoryCache } from 'node-fetch-cache';\n\nconst fetch = NodeFetchCache.create({\n  cache: new MemoryCache({ ttl: 1000 })\n});\n```\n\nNote that the default cache is a globally shared instance of `MemoryCache` with no TTL.\n\n### Implement your Own Cache\n\nIf none of the existing caching options meet your needs, you can implement your own cache. You can use any object that implements the following interface:\n\n```ts\ntype INodeFetchCacheCache = {\n  get(key: string): Promise<{\n    bodyStream: NodeJS.ReadableStream;\n    metaData: NFCResponseMetadata;\n  } | undefined>;\n  set(\n    key: string,\n    bodyStream: NodeJS.ReadableStream,\n    metaData: NFCResponseMetadata\n  ): Promise<{\n    bodyStream: NodeJS.ReadableStream;\n    metaData: NFCResponseMetadata;\n  }>;\n  remove(key: string): Promise<void | unknown>;\n};\n```\n\nThe `set()` function must accept a key (which will be a string), a response body stream, and a metadata object (which will be a JSON-serializable JS object). It should store these in such a way that the cache instance can return them later via the `get()` function. The `set()` function should return the same metadata that was passed in and a *new, unread* body stream with the same content as the stream that was passed in.\n\nThe `get()` function should return the cached body and metadata that had been set via the `set()` function, or `undefined` if no cached value is found.\n\nThe `remove()` function should remove the cached value associated with the given key, if any.\n\nYou may bend the rules and implement certain types of custom cache control logic in your custom cache if you'd like to. Specifically:\n1. Your cache may choose to remove values from the cache arbitrarily (for example if you want to implement a TTL option like `MemoryCache` and `FileSystemCache` do).\n2. Your cache may choose not to honor `set()` operations. For example, if you want to implement a cache that only caches responses that have a 2xx status code, your `set()` function could choose to discard responses with other status codes without inserting them into the cache.\n3. It is not strictly necessary for `get()` to return the exact same data that was passed to `set()`. For example `get()` could return a custom header in the metadata with the number of times that the response has been read from the cache.\n\nYou can reference the implementations of [MemoryCache](./src/classes/caching/memory_cache.ts) and [FileSystemCache](./src/classes/caching/file_system_cache.ts) for examples.\n\n### Cache-Control: only-if-cached\n\nThe HTTP standard describes a [Cache-Control request header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control#request_directives) to control aspects of cache behavior. Node-fetch ignores these, but node-fetch-cache respects the `Cache-Control: only-if-cached` directive. When `only-if-cached` is specified, node-fetch-cache will return a `504 Gateway Timeout` response with an `isCacheMiss` property if there is no cached response that can be returned. No HTTP request will be made. For example:\n\n```js\nimport fetch from 'node-fetch-cache';\n\nconst response = await fetch('https://google.com', {\n  headers: { 'Cache-Control': 'only-if-cached' }\n});\n\nif (response.isCacheMiss) {\n  console.log('No response was found in the cache!');\n}\n```\n\n## Advanced API\n\n### Accessing Node-Fetch Exports\n\nIf you need to access `node-fetch` exports (for example you might want to create a Request instance), you can do so by using the `getNodeFetch()` function:\n\n```js\nimport fetch, { getNodeFetch } from 'node-fetch-cache';\n\nconst { Request } = await getNodeFetch();\nconst response = await fetch(new Request('https://google.com'));\n```\n\nYou should not import from `node-fetch` directly since it is important that your code is using exports from the same version of `node-fetch` that is being used by `node-fetch-cache` internally.\n\n### Custom Cache Key Function\n\nYou can provide custom cache key generation logic to node-fetch-cache by passing a `calculateCacheKey` option to `create()`:\n\n```js\nimport NodeFetchCache, { CACHE_VERSION } from 'node-fetch-cache';\n\nconst fetch = NodeFetchCache.create({\n  calculateCacheKey: (url, options) => {\n    return JSON.stringify([url, CACHE_VERSION]);\n  },\n});\n```\n\nIn the above example, all requests to a given URL will hash to the same cache key, so only the very first request with that URL will result in an HTTP request and all subsequent requests will read the response from the cache, even if they have completely different headers, bodies, etc.\n\nIt is wise to include `CACHE_VERSION` as part of the cache key so that when node-fetch-cache has backwards-incomptible changes in storage format, the obsolete cache entries will be automatically abandoned.\n\n### Built-In Cache Key Function\n\nnode-fetch-cache exports a `calculateCacheKey()` function which is the default function used to calculate a cache key string from request parameters. It may be useful for enabling some advanced use cases (especially if you want to call cache functions directly). Call `calculateCacheKey()` exactly like you would call `fetch()`:\n\n```js\nimport NodeFetchCache, {\n  MemoryCache,\n  calculateCacheKey\n} from 'node-fetch-cache';\n\nconst cache = new MemoryCache();\nconst fetch = NodeFetchCache.create({ cache });\nconst rawCacheData = await cache.get(calculateCacheKey('https://google.com'));\n```\n\n### Eject responses from the cache\n\nResponses from node-fetch-cache have an `ejectFromCache()` method that can be used to eject the response from the cache, so that the next request will perform a true HTTP request rather than returning a cached response. This may be useful for more advanced use cases where you want to dynamically remove a response from the cache at some later time:\n\n```js\nimport fetch from 'node-fetch-cache';\n\nconst response = await fetch('http://google.com');\n\n// Your code...\n\nawait response.ejectFromCache();\n```\n\n### Request Synchronization Strategy\n\nYou might wonder if making the same request many times simultaneously might result in many concurrent HTTP requests as they all miss the cache at the same time. For example:\n\n```js\nimport fetch from 'node-fetch-cache';\n\nconst responses = await Promise.all(\n  Array(100).fill().map(() => fetch('https://google.com')),\n);\n\nconst fromCache = responses.filter(r => r.returnedFromCache);\nconsole.log('Number of responses served from the cache:', fromCache.length);\n```\n\nThis depends on the request synchronization strategy used. By default, if you're using `MemoryCache`, or you're using `FileSystemCache` and *not sharing the cache among multiple processes*, then the answer is no. Only one HTTP request will be made and the other 99 requests will read the response from the cache. This is thanks to the default `LockoSynchronizationStrategy` which provides efficient in-process synchronization.\n\nYou can provide your own synchronization strategy and you may wish to do so if you need to synchronize requests among multiple processes (potentially across multiple physical hosts). A custom synchronization strategy should implement the `ISynchronizationStrategy` interface:\n\n```ts\ntype ISynchronizationStrategy = {\n  doWithExclusiveLock<TReturnType>(\n    key: string,\n    action: () => Promise<TReturnType>,\n  ): Promise<TReturnType>;\n};\n```\n\nAnd it should ensure that for any given `key`, `action`s are queued and are not executed in parallel.\n\nYou can provide a custom synchronization strategy the same way you provide other options:\n\n```js\nconst fetch = NodeFetchCache.create({\n  cache: new FileSystemCache(options),\n  synchronizationStrategy: new MySynchronizationStrategy(),\n});\n```\n\n## Misc\n\n### Streams\n\nnode-fetch-cache does not support `Stream` request bodies, except for `fs.ReadStream`. And when using `fs.ReadStream`, the cache key is generated based only on the path of the stream, not its content. That means if you stream `/my/desktop/image.png` twice, you will get a cached response the second time, **even if the content of image.png has changed**.\n\nStreams don't quite play nice with the concept of caching based on request characteristics, because we would have to read the stream to the end to find out what's in it and hash it into a proper cache key.\n\n### CommonJS\n\nnode-fetch-cache supports both ESM and CommonJS. If you are using CommonJS, you can import it like so:\n\n```js\nconst fetch = require('node-fetch-cache');\n```\n\n### Upgrading\n\nUpgrading from an older major version? Check the [upgrade guide](https://github.com/mistval/node-fetch-cache/tree/master/docs/upgrade_guide.md).\n\n### Node.js Support Policy\n\nnode-fetch-cache will support:\n* The current Node.js version\n* All non-EOL LTS Node.js versions\n* In addition, as far back as is technically easy\n\nCurrently the oldest supported Node.js version is v18.19.0.\n\nAutomated tests will be run on the current Node.js version, the oldest supported Node.js version, and the latest release of all even-numbered Node.js versions between those two.\n\n## Bugs / Help / Feature Requests / Contributing\n\nFor feature requests or help, please visit [the discussions page on GitHub](https://github.com/mistval/node-fetch-cache/discussions).\n\nFor bug reports, please file an issue on [the issues page on GitHub](https://github.com/mistval/node-fetch-cache/issues).\n\nContributions welcome! Please open a [pull request on GitHub](https://github.com/mistval/node-fetch-cache/pulls) with your changes. You can run them by me first on [the discussions page](https://github.com/mistval/node-fetch-cache/discussions) if you'd like. Please add tests for any changes.\n\nTo run the tests, first do the following setup:\n\n```sh\ndocker run -p 3000:80 -d kennethreitz/httpbin\ndocker run -p 6379:6379 -d redis\n\nnpm install\nnpm link\ncd plugins/redis\nnpm install\nnpm link node-fetch-cache\ncd ../..\n```\n\nThen `npm test`.\n","_attachments":{},"homepage":"https://github.com/mistval/node-fetch-cache#readme","bugs":{"url":"https://github.com/mistval/node-fetch-cache/issues"},"license":"MIT"}