{"_id":"ratelimiter","_rev":"60-276f7e1e25c2ba89bdfd25d5664ae835","name":"ratelimiter","description":"abstract rate limiter backed by redis","dist-tags":{"latest":"3.4.1"},"versions":{"1.0.0":{"name":"ratelimiter","version":"1.0.0","repository":{"type":"git","url":"git://github.com/visionmedia/node-ratelimiter"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"dependencies":{},"devDependencies":{"mocha":"*","should":"*","redis":"~0.9.0"},"license":"MIT","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter","_id":"ratelimiter@1.0.0","dist":{"shasum":"25d0452d069bb22f3243f830af8d9d3a7de505ef","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-1.0.0.tgz","integrity":"sha512-RAGbs3xB4ruz86MV+VeOZ2HFwzqKg4Hb9/bP/Ne7S5Z8Okd9R/dCyILzQQYMH3yG7oqDduTpbIXweMVhbdLPuw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFPkrn/Y1KQ36Don0yA+GabEnZHqfc+QZtCjtKVmwL2fAiBo0PowRVV91pXoocaI4K1byCiaMuci9vdHFPyi4LP0Ig=="}]},"_from":".","_npmVersion":"1.3.13","_npmUser":{"name":"tjholowaychuk","email":"tj@vision-media.ca"},"maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"directories":{}},"1.0.1":{"name":"ratelimiter","version":"1.0.1","repository":{"type":"git","url":"git://github.com/visionmedia/node-ratelimiter"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"dependencies":{},"devDependencies":{"mocha":"*","should":"*","redis":"~0.9.0"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter","_id":"ratelimiter@1.0.1","dist":{"shasum":"9ad69aa4d46782d281eb213d69fa09ef186e795c","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-1.0.1.tgz","integrity":"sha512-qauFtbG45ZOYATJ9iLBtCT2DQj/z+ieQp9b/tQybFHYZhac/JriL3J47aZE6MiliWQUNsi/aPum2miJMLLsBMw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDb7MMEQEgvnRzv6VKME7Q9XAt91akToUf7Ti8TQ1TFagIgJKei1SdsAfkkZtOb0GTytAAMOy6b7O8PtJHmAG+7KL8="}]},"_from":".","_npmVersion":"1.4.4","_npmUser":{"name":"tjholowaychuk","email":"tj@vision-media.ca"},"maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"directories":{}},"1.0.2":{"name":"ratelimiter","version":"1.0.2","repository":{"type":"git","url":"https://github.com/visionmedia/node-ratelimiter"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"dependencies":{},"devDependencies":{"mocha":"*","should":"*","redis":"0.10.2"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"39a9b2eee3c59b0f159dfd5ccd019306f97ff3b6","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter","_id":"ratelimiter@1.0.2","scripts":{},"_shasum":"77345b24a37f7655a45cdbb75fe6fdacf6f2e09e","_from":".","_npmVersion":"1.4.16","_npmUser":{"name":"noamshemesh","email":"noam@bigpanda.io"},"maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"},{"name":"noamshemesh","email":"noamshemesh@gmail.com"}],"dist":{"shasum":"77345b24a37f7655a45cdbb75fe6fdacf6f2e09e","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-1.0.2.tgz","integrity":"sha512-0Il+RMIKZTJFtrzUn+NQeO5mJltkPvwLSjnCEmKn9OY5eYDesUxqnI+o/a5PCVjChmgqg+FB+gDUuLR1k34qrg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICzyxRTI1ArVxKYPPByVJR6virAdjVx4r/dU99Zpz/uyAiAeha6I3nG1eBFNfSBr+zAby1cLyHfjsRtElhi7+JwEgg=="}]},"directories":{}},"1.0.3":{"name":"ratelimiter","version":"1.0.3","repository":{"type":"git","url":"https://github.com/visionmedia/node-ratelimiter"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"dependencies":{},"devDependencies":{"mocha":"*","should":"*","redis":"0.10.2"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"b6cad2f258b86ecc3f4f3fba4bb5fdb0ae37b6ac","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter","_id":"ratelimiter@1.0.3","scripts":{},"_shasum":"39b10ef0b1cbd6970f671e8e5e047c7fcfd3a03b","_from":".","_npmVersion":"1.4.16","_npmUser":{"name":"noamshemesh","email":"noam@bigpanda.io"},"maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"},{"name":"noamshemesh","email":"noamshemesh@gmail.com"}],"dist":{"shasum":"39b10ef0b1cbd6970f671e8e5e047c7fcfd3a03b","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-1.0.3.tgz","integrity":"sha512-N+pgLJi+qED1njNh5yPdDzdWOauB7yTI3c0n3j+LdWaw4tKvxOhiLl8SZWhNceyKNKrl4tTiTHgnR5/Xm8BmCw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCQnSLYeyBDsAhJQg0P+3fVbXF0dyb9l0P7OPtqqBuizwIhAIjX4gNqIzMC5W2p4Q8NC64bcR3bfbH3dyPYGADpUjZa"}]},"directories":{}},"2.0.0":{"name":"ratelimiter","version":"2.0.0","repository":{"type":"git","url":"https://github.com/visionmedia/node-ratelimiter"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"dependencies":{},"devDependencies":{"mocha":"*","should":"*","redis":"0.10.2"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"d8293d11c4659092bcd3b61dbfd59ba1c83f9126","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter","_id":"ratelimiter@2.0.0","scripts":{},"_shasum":"8efa217e6dd88156e85869ceed9eabbb9a89540f","_from":".","_npmVersion":"1.4.23","_npmUser":{"name":"noamshemesh","email":"noam@bigpanda.io"},"maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"},{"name":"noamshemesh","email":"noamshemesh@gmail.com"}],"dist":{"shasum":"8efa217e6dd88156e85869ceed9eabbb9a89540f","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-2.0.0.tgz","integrity":"sha512-eZ8PGahUCFEKxxF4cI6XKmVSl0MnzlTOSJEF9KiR0XZe3G6puDJSGmkOtb6jWQtxmu7QC3vxvlyr8noPkVFWaA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH2KnSg3ZOBS80UnXkKfjoAygSYNkcO0ZMkhq5dTaHiVAiEA0luhZrIlW7+KVi8ulBwDZGEpQkfA6iZFG2xDWdS705s="}]},"directories":{}},"2.0.1":{"name":"ratelimiter","version":"2.0.1","repository":{"type":"git","url":"https://github.com/visionmedia/node-ratelimiter"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"dependencies":{},"devDependencies":{"mocha":"*","should":"*","redis":"0.10.2"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"56dc47bf27d44667c8dbbb332ff9941afc9d46f2","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter","_id":"ratelimiter@2.0.1","scripts":{},"_shasum":"7518d16b7b799280fc0d4c4ba678e2f891e59bb9","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"noamshemesh","email":"noam@bigpanda.io"},"maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"},{"name":"noamshemesh","email":"noamshemesh@gmail.com"}],"dist":{"shasum":"7518d16b7b799280fc0d4c4ba678e2f891e59bb9","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-2.0.1.tgz","integrity":"sha512-CsOkN8Dx9SAbLR88Qz+R5vwmJYXNr4+u3Lj+VIPXNktrV2duKpo+GBLKsSZ68S5u1Eq6KdZ4rXCVizUizbJ4DA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE2sW1asYr5SquIxCc4ROCUArBdfcySZusHalgiycLFiAiA4wR8ZXN0Xwo83odld5uPqAkcvuLcgYDpB/mWAtpMfoA=="}]},"directories":{}},"2.1.0":{"name":"ratelimiter","version":"2.1.0","repository":{"type":"git","url":"git+https://github.com/visionmedia/node-ratelimiter.git"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"dependencies":{},"devDependencies":{"ioredis":"1.9.0","mocha":"*","redis":"0.10.2","should":"*"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"c4611d7a28eaa78a4faf6b9d644ac5cbfa96a2b8","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter#readme","_id":"ratelimiter@2.1.0","scripts":{},"_shasum":"9bc8960cf8726e5788ecef27c55fbc90eda6d154","_from":".","_npmVersion":"3.3.2","_nodeVersion":"0.10.30","_npmUser":{"name":"noamshemesh","email":"noam@bigpanda.io"},"maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"},{"name":"noamshemesh","email":"noamshemesh@gmail.com"}],"dist":{"shasum":"9bc8960cf8726e5788ecef27c55fbc90eda6d154","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-2.1.0.tgz","integrity":"sha512-Z0cuGYmAT/92hOkEUmtgvRHVZpt1hhP4uYBvqxji093ON+KHKHbpc++uP9aMcMfBsWrzFn0qEfl/oijKczwrTw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB4UIQcpNItOyOOyYIkrvRCISfyhRLl9Rp2BAXSxEnqLAiBu8F9j/XVEjFlT2rMUHyuwxsMnZHm8UZ8Uo1kOkN4L/A=="}]},"directories":{}},"2.1.1":{"name":"ratelimiter","version":"2.1.1","repository":{"type":"git","url":"git+https://github.com/visionmedia/node-ratelimiter.git"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"dependencies":{},"devDependencies":{"ioredis":"1.9.0","mocha":"*","redis":"0.10.2","should":"*"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"8f4070af77bc55fbd88d36d26d3f05949834763f","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter#readme","_id":"ratelimiter@2.1.1","scripts":{},"_shasum":"2d32e7313f466927e5a9278e0a44e379ce2c442a","_from":".","_npmVersion":"3.3.8","_nodeVersion":"0.10.40","_npmUser":{"name":"noamshemesh","email":"noam@bigpanda.io"},"maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"},{"name":"noamshemesh","email":"noamshemesh@gmail.com"}],"dist":{"shasum":"2d32e7313f466927e5a9278e0a44e379ce2c442a","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-2.1.1.tgz","integrity":"sha512-otpMjJ+Yfkad1hV3LEG97WgMZMiSJFZ7INhNznvspJy4BBepyTF65R9mK3AQzpwjoEb6zyDXgjyYMxyUOiXc1w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC3gEzenIGoLY6R+WjjVbDoLW8r8KodGWv/4xgZi3QBNAIhAPrdeiiddcCkvbWi9CKFiCn0wrElA3aYtJOQCM3YLWXF"}]},"directories":{}},"2.1.2":{"name":"ratelimiter","version":"2.1.2","repository":{"type":"git","url":"git+https://github.com/visionmedia/node-ratelimiter.git"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"dependencies":{},"devDependencies":{"ioredis":"1.9.0","mocha":"*","redis":"0.10.2","should":"*"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"fc24d4d150922204693f72224a7424f35888237c","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter#readme","_id":"ratelimiter@2.1.2","scripts":{},"_shasum":"904b0a0e25d861ad4030b371ffeaebb96f0a7294","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.3","_npmUser":{"name":"noamshemesh","email":"noam@bigpanda.io"},"maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"},{"name":"noamshemesh","email":"noamshemesh@gmail.com"}],"dist":{"shasum":"904b0a0e25d861ad4030b371ffeaebb96f0a7294","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-2.1.2.tgz","integrity":"sha512-9xvqf9OZlbptKIvn2esAw6N4EeEZKSL+mGTA1i1YToA9wS6qpq37dVr7Pa8JhTFQeAtwkjiDZLMDP80TnJGHKg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGC8l7LXZD7YO+FSKlpgYUGkeCPDURWAHpJzNwZzsztmAiEApG48uWglYOnHhiNf/71oA7XU3MY3x3lw2OIROSXHNh0="}]},"directories":{}},"2.1.3":{"name":"ratelimiter","version":"2.1.3","repository":{"type":"git","url":"git+https://github.com/visionmedia/node-ratelimiter.git"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"dependencies":{},"devDependencies":{"ioredis":"1.15.1","mocha":"*","redis":"2.6.0-1","should":"*"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"af44cd486baad6c6018c072bbb14aaffe2856a7c","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter#readme","_id":"ratelimiter@2.1.3","scripts":{},"_shasum":"c5658e4954fab3451ec4d48752fc59d91230e96a","_from":".","_npmVersion":"2.15.1","_nodeVersion":"4.2.4","_npmUser":{"name":"noamshemesh","email":"noam@bigpanda.io"},"maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"},{"name":"noamshemesh","email":"noamshemesh@gmail.com"}],"dist":{"shasum":"c5658e4954fab3451ec4d48752fc59d91230e96a","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-2.1.3.tgz","integrity":"sha512-F0ClJtJWLOuZRCfiStRw7qEca8NPB/rwJchZ4hk6xqfdSZQn1hx9T0cqUYAXQRc3J8j9L+gW38wQNxwgg8//bQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIECzY1+5tDbfphvDecsTk3gljo+KnuHo7I9CUOj5fWPhAiBDeiX7DiuqFGuzsIQx6O+7STxqQmQSUuYwrX3hrHk9Vw=="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/ratelimiter-2.1.3.tgz_1460374848107_0.7482325122691691"},"directories":{}},"2.2.0":{"name":"ratelimiter","version":"2.2.0","repository":{"type":"git","url":"git+https://github.com/visionmedia/node-ratelimiter.git"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"scripts":{"test":"mocha"},"dependencies":{},"devDependencies":{"async":"2.1.4","ioredis":"1.15.1","mocha":"*","redis":"2.6.0-1","should":"*"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"619d624db1b6c566b0b0dbb24e855efaa9eef579","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter#readme","_id":"ratelimiter@2.2.0","_shasum":"95b74df2302bf58c775be2b502aab6a574e45b96","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"noamshemesh","email":"noam@bigpanda.io"},"maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"},{"name":"noamshemesh","email":"noamshemesh@gmail.com"}],"dist":{"shasum":"95b74df2302bf58c775be2b502aab6a574e45b96","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-2.2.0.tgz","integrity":"sha512-uWpy+jYOtZsadihK9oj+hT/3Zt5pnni4FlVrf6vd4kRX+/uviSqHS9XJPPjzAzOMUODyYpQ55tNq6zWkheUj6w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDnpDabXxvyz1SaZQWrQ7wf19MhVFXA92OBb7joklGmrgIgQfJDWRL0x7Gf7y4AEGXR0HJiGwG/P5JYbrl3ZNaUDc4="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/ratelimiter-2.2.0.tgz_1486807325427_0.7962140266317874"},"directories":{}},"3.0.2":{"name":"ratelimiter","version":"3.0.2","repository":{"type":"git","url":"git+https://github.com/visionmedia/node-ratelimiter.git"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"scripts":{"test":"mocha"},"dependencies":{},"devDependencies":{"async":"2.1.4","ioredis":"1.15.1","mocha":"*","redis":"2.6.0-1","should":"*"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"b9d9fc6fc948f7ea4ce04e0e026d84af11065733","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter#readme","_id":"ratelimiter@3.0.2","_shasum":"714f2bb3a03144edcb1bf9634eaa611b455bc3f3","_from":".","_npmVersion":"4.2.0","_nodeVersion":"6.9.1","_npmUser":{"name":"noamshemesh","email":"noam@bigpanda.io"},"maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"},{"name":"noamshemesh","email":"noamshemesh@gmail.com"}],"dist":{"shasum":"714f2bb3a03144edcb1bf9634eaa611b455bc3f3","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-3.0.2.tgz","integrity":"sha512-0Z/5VuD2S71lOMAXfeJ4JJ+KxrnZjpdiWXTXBw4YYJ02f3oVn+ZxcMtRX00pCfKsT5kYbT0CsAjVMQDomZbDMg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD5jiByrU/xz9iw0ixxJmfsmF+51PTiIGgR+g8fhKqQjwIgAPNialhhaVCRZNvULTSXvbr2t1U830P9v6Y63R35f6o="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/ratelimiter-3.0.2.tgz_1488200861627_0.6624130383133888"},"directories":{}},"3.0.3":{"name":"ratelimiter","version":"3.0.3","repository":{"type":"git","url":"git+https://github.com/visionmedia/node-ratelimiter.git"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"scripts":{"test":"mocha"},"dependencies":{},"devDependencies":{"async":"2.1.4","ioredis":"1.15.1","mocha":"*","redis":"2.6.0-1","should":"*"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"9a0ce10dee614e44e2f3127ce68a65cab9381753","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter#readme","_id":"ratelimiter@3.0.3","_shasum":"6dbca58b05422f2a08e224d4ba3a0cfb86c30966","_from":".","_npmVersion":"4.4.1","_nodeVersion":"6.9.1","_npmUser":{"name":"noamshemesh","email":"noam@bigpanda.io"},"maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"},{"name":"noamshemesh","email":"noamshemesh@gmail.com"}],"dist":{"shasum":"6dbca58b05422f2a08e224d4ba3a0cfb86c30966","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-3.0.3.tgz","integrity":"sha512-GXDeX89c09caKZ4E5GfHYAbXDjvb3YTctnfrSmORmqPWsobMG31ErvnZQVSo/jxW7MbXvELtzuXIlKbh7ff9XQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICDkPu9Tp4docxGA9y7832nUvdhaLsYwsbSleZsXP7ygAiAEfAj9WTRj9sckcEnyYIxG5Pob978oV2FWcABj1L1PYA=="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/ratelimiter-3.0.3.tgz_1490950942310_0.24195352965034544"},"directories":{}},"3.1.0":{"name":"ratelimiter","version":"3.1.0","repository":{"type":"git","url":"git+https://github.com/visionmedia/node-ratelimiter.git"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"scripts":{"test":"mocha"},"dependencies":{},"devDependencies":{"async":"2.1.4","ioredis":"1.15.1","mocha":"*","redis":"2.6.0-1","should":"*"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"4d4fe8634c54d4cc5b89de89bcf3039461eeedfa","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter#readme","_id":"ratelimiter@3.1.0","_npmVersion":"5.5.1","_nodeVersion":"6.9.1","_npmUser":{"name":"noamshemesh","email":"noamshemesh@gmail.com"},"maintainers":[{"name":"noamshemesh","email":"noamshemesh@gmail.com"},{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"dist":{"integrity":"sha512-7744zKsoPbKrypcD5iVHt8oVFiGqnwq+u9Hy5YuuVjxYfW9qPwuoeEROJr0YySBX1x5DdmgAZtKkzFj50dJKRQ==","shasum":"30167d2e3358c38ee5eb21f81717111c93bc7ed8","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-3.1.0.tgz","fileCount":8,"unpackedSize":15213,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbLOAVCRA9TVsSAnZWagAAlHAP+QH3vWvxJcW7cotM9qLv\nCDJzJ57KJqdq0Icy6LoWfeiY6l+nCUjDh7WBK3qZug9t1QkQPmQTOM4slCwr\n/gPF9KmWst1bLqZAv7dn/mOCtBcSV4SDb0Of3FbkPobWLQ/9EbsuZ42uOS7U\nZynQgFZPxhpDn2YGYItYNGhozw6KX36MhLtSqGJ1VrydrwNZ0NH4Y2/Stsj3\nNCSz7Tmkw3GNeiUwM462i0nHHAQoFQRzuhdyNLlEBqN/RMjVA/cQUo0LrX9g\noTAQiX7BiNlhBUhRGX7a//KLKj+NtjwK7nq9LkQS4qGMUn8iURbn8nIJ33SU\nAPu5AuVnNYSOdVpKWa3AG9Oi2Ux/vYre4EowH3KwbPrTV62+Nhh3EavuCTqA\n4OoLrsS1YUig4rNZ1kpBRpg8Geje+0DWiF93vF/CawEtnxZtENw88zOTj6ta\nH9oiGhZOSikKO5oGMh6gJ0PYinOpd7zvaZPi3waV8tAzDldlz9KRssbfMqoz\nQCB1xdNKj2MOd2AxDHrSt6GumA8E9Ct3WgDcMv+HTwvMli4Q0tt5rDf0K7I7\nR3pmIcJHfO0Dz+k+ig9KaWrpyko/MVGo1vFYvPTaA1RnoM9gOqmSaZ8jSmEO\noH3MwD+c/LwXPk5YtdvUDMdc/rFS2Gc+8gOE+2mephIkbk97UVAze7s0IOsG\nSUco\r\n=Dabh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEWIbInGm1ewsExdZvO0j8uUik6evqpR+f+VbFI9vXL1AiEAhwDkqzgPC1EWElJ7QEBRm4ZLJuAtEFdEJOYYLjN3YDM="}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ratelimiter_3.1.0_1529667605479_0.34919553355899446"},"_hasShrinkwrap":false},"3.2.0":{"name":"ratelimiter","version":"3.2.0","repository":{"type":"git","url":"git+https://github.com/visionmedia/node-ratelimiter.git"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"scripts":{"test":"mocha --exit"},"dependencies":{},"devDependencies":{"async":"2.1.4","ioredis":"1.15.1","mocha":"*","redis":"2.6.0-1","should":"*"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"2a4f3a22b9075c343b4cb4e213e58b948d004c2b","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter#readme","_id":"ratelimiter@3.2.0","_npmVersion":"5.5.1","_nodeVersion":"6.9.1","_npmUser":{"name":"noamshemesh","email":"noamshemesh@gmail.com"},"maintainers":[{"name":"noamshemesh","email":"noamshemesh@gmail.com"},{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"dist":{"integrity":"sha512-zMc9X4FNmOk3RBxV95lvp13sZRtf43UJJN1FficbYiusBB09zB6gcJtK2X18dKmH+Gq0C7W6qNCHE+UJx0YwVg==","shasum":"ae74cf9629daae4cc8900ec126ab28d3794070f1","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-3.2.0.tgz","fileCount":8,"unpackedSize":16016,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbUy2ECRA9TVsSAnZWagAAa0oQAJ5XYUc4PDYP2dK4oAfE\nx39S0dls+yROYazI8J1fb1/TKEpDdqAlMUhhyF7Blp2kUoys/w4wdWf5WNes\nUu6BKkFkst4+IpsQWoJm+XWfcmX1x0HFmP5z+jkzUA7wmUKoDYdVGhy4RKWl\nMpz3nulkJCeb4ImU/H4y3OtRUap6bE0X9A9zmexBbMTob/Drm0JT6ExC0E4V\nW2kgLL+dRdsAPXB0OooDUz8G+ouihYO0puUSjaKYTK0G7Fj0ryjIkPvnKUIn\nuxAJAwbWWP/80YM43XTedGLnQ6zKb4O4fAmYCzV3oIFKB/eOyE6t8OHPDcO3\nYp/cvgxFFbWNK3u22lJallvD1lIMew5xlE/G0Pz3JW58mgozWlBxodtTXFic\nwJBjeAX1/bTPtupaev2H3NWMNw/KFn40QHna64GMt0XL0t+lSOT6FCWDS2+U\n1mD+uM2aSC4/Jxe77AWk32qZYDHE8qBWPoKZ4RyF4tQ2fVHrZhBvpgQXGBeQ\nl8lq0vAFgqyKvfRet+DroLkutbD7T0wqxt3o3UOCxHu4TI1hpZVz2QCVI/JI\nAGR/mbyQ3oYBnm6fufWCzVj+7u/YfE8r3jnEWhe2F8k7jS+nqLNZTlde0kDP\noVtr9QBqwGRfncfGJ+EGcVyffNoMej0YApLRYPv/YJSyqCw4/dngqOvBTqu3\nFqsu\r\n=PvUH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDUOlGF1QllP/5/OVXd7U8et/V0/Ej5VRNJlJ4rvufplAiAozMDSgMPouJIQHjwldoMuE3zzE3JV71NhKhwb/YIajw=="}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ratelimiter_3.2.0_1532177796638_0.3850376452598292"},"_hasShrinkwrap":false},"3.3.0":{"name":"ratelimiter","version":"3.3.0","repository":{"type":"git","url":"git+https://github.com/visionmedia/node-ratelimiter.git"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"scripts":{"test":"mocha --exit"},"dependencies":{},"devDependencies":{"async":"2.1.4","ioredis":"1.15.1","mocha":"*","redis":"2.6.0-1","should":"*"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"831ee5054ce3327e328ff3cb8783ba0b4d52e0e5","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter#readme","_id":"ratelimiter@3.3.0","_npmVersion":"5.5.1","_nodeVersion":"6.9.1","_npmUser":{"name":"noamshemesh","email":"noamshemesh@gmail.com"},"maintainers":[{"name":"noamshemesh","email":"noamshemesh@gmail.com"},{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"dist":{"integrity":"sha512-dDax7d0XosqzOrrQyMYEiu87tHDT6Wqm9LtGlxnQVAQJtEG6bmbvgPZ6E2/g1XrIpikJyec9hrOHKZ+DuVWxgQ==","shasum":"bed9882f552e1aff4d7d3281bd1ab380f94cbf74","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-3.3.0.tgz","fileCount":8,"unpackedSize":24845,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJceqQICRA9TVsSAnZWagAABf8QAI1reqB95tbwDafVFBR2\n47St9jIEC4oIaWWnPlOP1mk6Ij70KZirUfUaSH7hspKKRkf6yiCoEuaWOzHx\nSLeoxDNF2CuRh2qHrGiKM0vxQHYCXTCIBr1N4MKn7N4anSkzHzkKsC86hmNc\ndzw3F/RvSkLVpHr8Kk/iz96XZfP1J6BTS6UcczLuYgFkFtzrmnq2HXMeLInx\n67vBLHf0vmDIl4XsVNRHuhsgxl1LtguCMrfpsYWcrEbUD+1lTlIzNL7s+Yri\n0N8Ds5YvY5hNBmvqn3yv7YLRFT1WOSOTnDB43Me1rpN/0XvOQS/OqF0m0Wny\nYWE1rEPMZfFMkcHVVYEIEhdtTiUgskbH1/ppbXij9EWUclx+6gvWLOGWdAeQ\niLENZa7N79PCRi8VHIDl8MD7stClA8XRozQguI2k5x4vPpkaI64o0zpVOVll\nS/cllfvqmm+8zUSD5T8QJzp4HzUdy5JIJvcEmpx0Kc7SOR1DZa1pYOkHqZuW\ny2ViOXlrmkf79sxO3MYb3dgNhBkuiOX3gwwa/D/pEV8klBjT0/8sIkcthqK6\niNMI43H8WduSIUnmDTuDsv+0+xq10pZLnWYm44yU2E/G4SVAYPiC++2gb0z9\nuuSR/DAnEgHnS5bAjpmHR/PVL8arL/kBL4GmBeV1vBiYX/q4UG5IWw7SSNHQ\nobGH\r\n=38qv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBPJmEDuofKMbtMxmYS3hf+77ZjQfaT/Q9vRvBXqos/GAiEA9cLjejnC+CAU0mBewpCYv2rchtIRYllTXmyTrx/vFsU="}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ratelimiter_3.3.0_1551541255861_0.12977284947700296"},"_hasShrinkwrap":false},"3.3.1":{"name":"ratelimiter","version":"3.3.1","repository":{"type":"git","url":"git+https://github.com/visionmedia/node-ratelimiter.git"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"scripts":{"test":"mocha --exit"},"dependencies":{},"devDependencies":{"async":"2.1.4","ioredis":"1.15.1","mocha":"*","redis":"2.6.0-1","should":"*"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"ca24b72960fc4d0cda95b2308356927e4bef1b6a","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter#readme","_id":"ratelimiter@3.3.1","_npmVersion":"5.5.1","_nodeVersion":"6.9.1","_npmUser":{"name":"noamshemesh","email":"noamshemesh@gmail.com"},"maintainers":[{"name":"noamshemesh","email":"noamshemesh@gmail.com"},{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"dist":{"integrity":"sha512-hCXx0iKNtAFvJ5EFc1dbXMARFrK8qy3Rm+sY/2j4CJcUnfuFfXWZ1qhk2Cohvh8dgdxfhV7HZUAochXAyDhprg==","shasum":"51fa8f580ffd6c0316d2a19e4faf57ecc53bf22a","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-3.3.1.tgz","fileCount":8,"unpackedSize":16502,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdVmWnCRA9TVsSAnZWagAA7zwP+gPdtzM7fMatnc3njKZk\nJ94pL6OvzxiA1IhLOQN/z9IRNZB7/xD6/i/aQb04GTFznJQ3sY0AitcUgoel\nE5rishUqiebClGIAQZ2iORGcEEKHMSLNAZj4SzrpSHNl+HbJrJw59vtovPbi\n0sRI0G/ho3H5eZkTBkFaRs8GQ+9LhhQvzFTXhRV4QMJpcN+8dnLI88BaD7LD\ndBoyOTY2nP9DnphyDnpKPZM05Fcc/epYgmaFytyEunI4hS7d67UkixXnqO9Y\nshDZ9nIHoDNjMKvnqWBiZaV6IuCRBmYSr8svdiCc35Ezkl2b9A85u67YavVj\nZCrDfZNB0kZxqk9Eve2SrktMjXu6zGOEc6pml5nJcs5+7yEBXi2Ju/Fj40jq\n7y6+zR212QiJi30EwuAzp4+xhNSl1/8Eki7qCMjm8yR8DG6fDO7XHgI/Rno6\n85lDHyDzzDTy+BlOpk5YOR31Io1ByP4wLygVBTk4/qjGQ98pWmdYz6sZsKUv\nXt6kwRo4i+J+7a1ivaUCfuCVtej53a5/P3/pc414/gBMM+xGfawj0P+mSrYX\nzAxzXQhiyHTUsLrec9OQQo/pHGt7EFpfzcrN10yfjWR46wJvsSinRYqVfx3L\ngvkNSFoUyvqvtuVtvwiU/dPq6PZ/n66UIhsTeEVmbrioSV7OrTVCpCVf27Tm\nf9hm\r\n=DNa/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCQPgohO42Onf1RsLz0Qvj0NKAilidTj3vjf4hNpf1aqwIgAZdSonWa1Niz1cX6EmOOKeke030Py/rEgV5Tm9gO4OM="}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ratelimiter_3.3.1_1565943206278_0.6424781676737483"},"_hasShrinkwrap":false},"3.4.0":{"name":"ratelimiter","version":"3.4.0","repository":{"type":"git","url":"git+https://github.com/visionmedia/node-ratelimiter.git"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"scripts":{"test":"mocha --exit"},"dependencies":{},"devDependencies":{"async":"3.1.0","ioredis":"4.14.1","mocha":"*","redis":"2.8.0","should":"*"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"79077f24fda930c597219294e442e4cd51da3c34","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter#readme","_id":"ratelimiter@3.4.0","_npmVersion":"5.5.1","_nodeVersion":"6.9.1","_npmUser":{"name":"noamshemesh","email":"noamshemesh@gmail.com"},"maintainers":[{"name":"noamshemesh","email":"noamshemesh@gmail.com"},{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"dist":{"integrity":"sha512-/RglHsGcEtKuMRklGuu8mYVqtRfqYhsUMHkYrPERBlJK6NpUHsSub1cgLUALhaLQRN2A3XgC4NZKCR+MX0ETmg==","shasum":"05cd43f64ea1e0d73da85ee0dddbc9426313e762","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-3.4.0.tgz","fileCount":8,"unpackedSize":16500,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdrV5UCRA9TVsSAnZWagAA+IcP+wVKWxhC4SUSUKmGrZ7Z\nuKyx0RSHOiSMwf+bkqK+K9CiowzanhljZbK4FVLI8NgEM/cTCJrktMrJrLk9\nTg/ouP6+qVRyRBJYZqKcK5ISXepCUdypJi8Qp6Nu3pNJTaGE37vG4u+o1PZL\nUieIAghkdSc3TYowcG9UpSVT4EeJ8Qeb659BpdwR0Kx1M9DHjszDa5OpnJlb\nUETfcgL90Ffgn+HebyDvb+CSGFESZIpFXyYWBpFWmK0Kvg8kxaJJkR4uMHgn\nNXqnPkyDovYU5aOwyvHM7C8eCgp8VvLCDiW4iB+8bUn8nWe8DIcf9JAiIHXV\nKAZd9jMVaauUHfla+zWSThAiiG+4wDXERRKgAma7mm1spY1CA3Z/qIKePyjn\neW1U5arUjfUKXHDHfEKOGb7EXuTzHfiUnq8ZqPgy3lWKoJn9cSK7fXgeSI0m\nJtDUIqqc5bEt2UiGUQ9oFu1O34A2iSx1qIyvA8xk3H5HSJTAa0MpU1+4bQ/A\nh5e0jfblqRUGm2kfuPb/+wnM2SBYC1PBMvpMqdmhHLV8Y+FOY5iNu+JBsX18\nCJdjqhqrU9NmbdKE75A+j+L1VXXwdwm4YFBzL4EjC05qdhXWFEFPTvz4GyWI\nh+zm3xF1eDIhemvoCF+CKWbUFf3Zy/ekrlvf6zwslnidM78DdjvwsvPS8F98\nYFq7\r\n=JKIk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAQg0LIpAckEcBjXMhbHikzKt72kVnlB5aRa8DVMMDT+AiEAz+PI0YPocRj5pVsdkBVrsMskbl/htQ6ql8YUlhY34vQ="}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ratelimiter_3.4.0_1571642964132_0.02081825938938664"},"_hasShrinkwrap":false},"3.4.1":{"name":"ratelimiter","version":"3.4.1","repository":{"type":"git","url":"git+https://github.com/visionmedia/node-ratelimiter.git"},"description":"abstract rate limiter backed by redis","keywords":["rate","ratelimit","limiter","limit"],"scripts":{"test":"mocha --exit"},"dependencies":{},"devDependencies":{"async":"3.1.0","ioredis":"4.14.1","mocha":"*","redis":"2.8.0","should":"*"},"license":"MIT","contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"gitHead":"865f8848acd03e34fd3c28bd64933ee65db3d046","bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"homepage":"https://github.com/visionmedia/node-ratelimiter#readme","_id":"ratelimiter@3.4.1","_npmVersion":"5.5.1","_nodeVersion":"6.9.1","_npmUser":{"name":"noamshemesh","email":"noamshemesh@gmail.com"},"maintainers":[{"name":"noamshemesh","email":"noamshemesh@gmail.com"},{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"dist":{"integrity":"sha512-5FJbRW/Jkkdk29ksedAfWFkQkhbUrMx3QJGwMKAypeIiQf4yrLW+gtPKZiaWt4zPrtw1uGufOjGO7UGM6VllsQ==","shasum":"fa69e94937413382a926aaa17aaeaa6263af4659","tarball":"https://registry.npmjs.org/ratelimiter/-/ratelimiter-3.4.1.tgz","fileCount":8,"unpackedSize":16632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeVBhXCRA9TVsSAnZWagAA4UMP/RnXLh7x6JtgPzZICuNc\nnBSm3JDfNXuWNb94bH0SL5ByZCIopLfrnfh/Qwy0ktJglOBJHu72zWNIiejL\n1m/e5X2YVY74ajxdomr5rwy7jtvcfwC/ytqp1iSaOFzRmy4OPkc6vYlavi0f\nZq8twiPwXNl+CeWMscdH8MuYGtk9AgRjyGqSWFXnATVM7i/JVY4BWZbVMoMZ\nO3EnkJz2u8I1OfOkc6ncH1zBoZdWLndz33vr7A3fFSlLD1DcwPX0QnuRKLZ+\nX+2/rZIL6c6TcCDJurNNjnc2WXLoQhTH4zLDue8WesvZXT9mGixjaWARsgdj\nqF93GtD5G4Oc28eYm+LcRQqr3PkJSgHbt3CnXDyiKG89aFdPKdQ6xgMgzJmk\naQK9JtYUSd33g+TY08qLPaG/bnHKKxxHuvD/LE/jVV9ovzKWLXYGiGjDu4Na\n9dEzmMGQ3MAwcDkyUwhZ4UO5CTuU9EOqEk75wJGWA8UvOBdgCccAnoVIRcR6\nqwvmR8QoL0YPfvgwT3fkFNLc1YDnqiTg6qVOSP2eXl+6h809sU8ROdKwrTIv\noFtnRQsqQ0qNMY7KhWm5ByPV5FR/P6XRcrCXLGt3cAAZ+kx+mMNBDbef2oEt\nh8ekWWGM0UsXwC6G8t+vM1R4ZmxHGxRp9s0dKnSfRlFp+CUhCYMiimPqztNT\n/Um+\r\n=0WPO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCaQ8uyUP2XW+pW3g4jmot66q6NvO+vOJR/h70p0dpIoQIhAK0TPkoum5GYfb3dX4d8dAa0uPNVtDOkUlZdoaGx4KN0"}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ratelimiter_3.4.1_1582569559299_0.6060018369098921"},"_hasShrinkwrap":false}},"readme":"# ratelimiter\n\nRate limiter for Node.js backed by Redis.\n  \n> **NOTE**: Promise version available at [async-ratelimiter](https://github.com/microlinkhq/async-ratelimiter).\n\n[![Build Status](https://travis-ci.org/tj/node-ratelimiter.svg)](https://travis-ci.org/tj/node-ratelimiter)\n\n## Release Notes\n[v3.4.1](https://github.com/tj/node-ratelimiter/tree/v3.4.1) - [#55](/../../issues/55) by [@barwin](https://github.com/barwin) - Remove splice operation.\n\n[v3.3.1](https://github.com/tj/node-ratelimiter/tree/v3.3.1) - [#51](/../../issues/51) - Remove tidy option as it's always true.\n\n[v3.3.0](https://github.com/tj/node-ratelimiter/tree/v3.3.0) - [#47](/../../pull/47) by [@penghap](https://github.com/penghap) - Add tidy option to clean old records upon saving new records. Drop support in node 4.\n\n[v3.2.0](https://github.com/tj/node-ratelimiter/tree/v3.2.0) - [#44](/../../pull/44) by [@xdmnl](https://github.com/xdmnl) - Return accurate reset time for each limited call.\n\n[v3.1.0](https://github.com/tj/node-ratelimiter/tree/v3.1.0) - [#40](/../../pull/40) by [@ronjouch](https://github.com/ronjouch) - Add reset milliseconds to the result object.\n\n[v3.0.2](https://github.com/tj/node-ratelimiter/tree/v3.0.0) - [#33](/../../pull/33) by [@promag](https://github.com/promag) - Use sorted set to limit with moving window.\n\n[v2.2.0](https://github.com/tj/node-ratelimiter/tree/v2.2.0) - [#30](/../../pull/30) by [@kp96](https://github.com/kp96) - Race condition when using `async.times`.\n\n[v2.1.3](https://github.com/tj/node-ratelimiter/tree/v2.1.3) - [#22](/../../pull/22) by [@coderhaoxin](https://github.com/coderhaoxin) - Dev dependencies versions bump.\n\n[v2.1.2](https://github.com/tj/node-ratelimiter/tree/v2.1.2) - [#17](/../../pull/17) by [@waleedsamy](https://github.com/waleedsamy) - Add Travis CI support.\n\n[v2.1.1](https://github.com/tj/node-ratelimiter/tree/v2.1.1) - [#13](/../../pull/13) by [@kwizzn](https://github.com/kwizzn) - Fixes out-of-sync TTLs after running decr().\n\n[v2.1.0](https://github.com/tj/node-ratelimiter/tree/v2.1.0) - [#12](/../../pull/12) by [@luin](https://github.com/luin) - Adding support for ioredis.\n\n[v2.0.1](https://github.com/tj/node-ratelimiter/tree/v2.0.1) - [#9](/../../pull/9) by [@ruimarinho](https://github.com/ruimarinho) - Update redis commands to use array notation.\n\n[v2.0.0](https://github.com/tj/node-ratelimiter/tree/v2.0.0) - **API CHANGE** - Change `remaining` to include current call instead of decreasing it. Decreasing caused an off-by-one problem and caller could not distinguish between last legit call and a rejected call.\n\n## Requirements\n\n- Redis 2.6.12+\n- Node 6.0.0+\n\n## Installation\n\n```\n$ npm install ratelimiter\n```\n\n## Example\n\n Example Connect middleware implementation limiting against a `user._id`:\n\n```js\nvar id = req.user._id;\nvar limit = new Limiter({ id: id, db: db });\nlimit.get(function(err, limit){\n  if (err) return next(err);\n\n  res.set('X-RateLimit-Limit', limit.total);\n  res.set('X-RateLimit-Remaining', limit.remaining - 1);\n  res.set('X-RateLimit-Reset', limit.reset);\n\n  // all good\n  debug('remaining %s/%s %s', limit.remaining - 1, limit.total, id);\n  if (limit.remaining) return next();\n\n  // not good\n  var delta = (limit.reset * 1000) - Date.now() | 0;\n  var after = limit.reset - (Date.now() / 1000) | 0;\n  res.set('Retry-After', after);\n  res.send(429, 'Rate limit exceeded, retry in ' + ms(delta, { long: true }));\n});\n```\n\n## Result Object\n - `total` - `max` value\n - `remaining` - number of calls left in current `duration` without decreasing current `get`\n - `reset` - time since epoch in seconds at which the rate limiting period will end (or already ended)\n - `resetMs` - time since epoch in milliseconds at which the rate limiting period will end (or already ended)\n\n## Options\n\n - `id` - the identifier to limit against (typically a user id)\n - `db` - redis connection instance\n - `max` - max requests within `duration` [2500]\n - `duration` - of limit in milliseconds [3600000]\n\n# License\n\n  MIT\n","maintainers":[{"name":"noamshemesh","email":"noamshemesh@gmail.com"},{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"time":{"modified":"2022-06-25T13:05:59.837Z","created":"2013-11-13T21:03:29.031Z","1.0.0":"2013-11-13T21:03:31.072Z","1.0.1":"2014-03-14T16:13:15.227Z","1.0.2":"2014-07-06T07:38:58.506Z","1.0.3":"2014-07-23T06:51:50.792Z","2.0.0":"2014-10-27T14:35:40.596Z","2.0.1":"2015-01-10T13:00:59.220Z","2.1.0":"2015-10-12T08:11:28.250Z","2.1.1":"2015-10-21T17:14:29.009Z","2.1.2":"2015-12-21T07:58:58.461Z","2.1.3":"2016-04-11T11:40:50.392Z","2.2.0":"2017-02-11T10:02:08.085Z","3.0.2":"2017-02-27T13:07:42.220Z","3.0.3":"2017-03-31T09:02:24.222Z","3.1.0":"2018-06-22T11:40:05.550Z","3.2.0":"2018-07-21T12:56:36.717Z","3.3.0":"2019-03-02T15:40:56.023Z","3.3.1":"2019-08-16T08:13:26.551Z","3.4.0":"2019-10-21T07:29:24.230Z","3.4.1":"2020-02-24T18:39:19.487Z"},"repository":{"type":"git","url":"git+https://github.com/visionmedia/node-ratelimiter.git"},"homepage":"https://github.com/visionmedia/node-ratelimiter#readme","keywords":["rate","ratelimit","limiter","limit"],"contributors":[{"name":"Francois-Guillaume Ribreau","email":"npm@fgribreau.com"}],"bugs":{"url":"https://github.com/visionmedia/node-ratelimiter/issues"},"license":"MIT","readmeFilename":"Readme.md","users":{"stretchgz":true,"tarkeshwar":true,"jerrywu":true,"monkeymonk":true,"weiland":true,"hengkiardo":true,"markthethomas":true,"jonatasnona":true,"karlkori":true,"dpjayasekara":true,"vteixeira":true,"kobleistvan":true,"quocnguyen":true,"damianof":true,"wangshijun":true,"jmsherry":true,"boto":true,"lonjoy":true,"guzgarcia":true,"jabedhasan21":true,"paraself":true,"djviolin":true,"mhaidarh":true,"quafoo":true,"ssljivic":true,"chpoon92":true,"superchenney":true,"asawq2006":true,"miloc":true}}