{"_id":"memoizerific","_rev":"458406","name":"memoizerific","description":"Fast, small, efficient JavaScript memoization lib to memoize JS functions","dist-tags":{"latest":"1.11.3"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"time":{"modified":"2021-08-05T07:32:21.000Z","created":"2016-02-01T07:54:23.281Z","1.11.3":"2018-03-23T02:05:11.992Z","1.11.2":"2017-03-14T22:29:46.005Z","1.11.1":"2017-03-14T22:11:19.609Z","1.11.0":"2017-03-14T22:07:31.742Z","1.10.0":"2017-01-20T09:35:24.341Z","1.9.0":"2017-01-20T08:49:08.437Z","1.8.6":"2016-12-09T13:42:15.741Z","1.8.4":"2016-06-16T08:47:42.947Z","1.8.3":"2016-05-19T09:38:53.936Z","1.8.2":"2016-05-19T09:36:15.289Z","1.8.1":"2016-05-19T09:34:29.548Z","1.7.5":"2016-05-19T09:33:25.671Z","1.7.2":"2016-05-19T09:15:32.898Z","1.7.1":"2016-05-19T09:12:34.734Z","1.7.0":"2016-05-19T08:39:59.950Z","1.6.0":"2016-05-19T08:36:23.029Z","1.5.6":"2016-04-24T09:28:42.019Z","1.5.2":"2016-02-07T10:17:21.467Z","1.5.1":"2016-02-03T23:22:22.964Z","1.5.0":"2016-02-03T23:06:31.372Z","1.4.0":"2016-02-03T08:13:23.222Z","1.3.0":"2016-02-03T07:48:21.549Z","1.2.2":"2016-02-02T08:14:40.754Z","1.2.1":"2016-02-02T08:11:50.189Z","1.2.0":"2016-02-02T08:02:37.161Z","1.1.1":"2016-02-02T07:20:49.899Z","1.0.6":"2016-02-02T06:33:08.772Z","1.0.5":"2016-02-02T06:26:38.948Z","1.0.4":"2016-02-01T20:21:40.986Z","1.0.3":"2016-02-01T11:34:48.873Z","1.0.2":"2016-02-01T11:30:16.857Z","1.0.0":"2016-02-01T07:54:23.281Z"},"users":{"thinkloop":true},"author":{"name":"Baz","email":"baz@thinkloop.com"},"repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"versions":{"1.11.3":{"name":"memoizerific","version":"1.11.3","description":"Fast, small, efficient JavaScript memoization lib to memoize JS functions","author":{"name":"Baz","email":"baz@thinkloop.com"},"license":"MIT","keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"./src/memoizerific.js","browser":"./memoizerific.js","scripts":{"test":"echo '****************'`date +%r`'********************' && npm run -s test:map && npm run -s test:similar","build":"npm run -s build:all","publish_to_npm":"npm version patch && git push && git push --tags && npm publish","_":"","test:map":"FORCE_SIMILAR_INSTEAD_OF_MAP=false JASMINE_CONFIG_PATH=./jasmine.json jasmine","test:similar":"FORCE_SIMILAR_INSTEAD_OF_MAP=true JASMINE_CONFIG_PATH=./jasmine.json jasmine","__":"","build:all":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js -t [envify purge] --node --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c"},"dependencies":{"map-or-similar":"^1.5.0"},"devDependencies":{"browserify":"13.3.0","derequire":"2.0.6","envify":"4.0.0","jasmine":"2.5.3","uglify-js":"2.7.5","watch":"1.0.1"},"gitHead":"68e1d329435fe3db208940ea0ebd6c4d5a8888d9","_id":"memoizerific@1.11.3","_shasum":"7c87a4646444c32d75438570905f2dbd1b1a805a","_from":".","_npmVersion":"3.10.10","_nodeVersion":"7.2.1","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"7c87a4646444c32d75438570905f2dbd1b1a805a","size":12732,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.11.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.11.3.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/memoizerific_1.11.3_1521770711867_0.4998531847785752"},"_hasShrinkwrap":false,"publish_time":1521770711992,"_cnpm_publish_time":1521770711992},"1.11.2":{"name":"memoizerific","version":"1.11.2","description":"Fast, small, efficient JavaScript memoization lib to memoize JS functions","author":{"name":"Baz","email":"baz@thinkloop.com"},"license":"MIT","keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"./src/memoizerific.js","browser":"./memoizerific.js","scripts":{"test":"echo '****************'`date +%r`'********************' && npm run -s test:map && npm run -s test:similar","build":"npm run -s build:all","publish_to_npm":"npm version patch && git push && git push --tags && npm publish","_":"","test:map":"FORCE_SIMILAR_INSTEAD_OF_MAP=false JASMINE_CONFIG_PATH=./jasmine.json jasmine","test:similar":"FORCE_SIMILAR_INSTEAD_OF_MAP=true JASMINE_CONFIG_PATH=./jasmine.json jasmine","__":"","build:all":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js -t [envify purge] --node --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c"},"dependencies":{"map-or-similar":"^1.5.0"},"devDependencies":{"browserify":"13.3.0","derequire":"2.0.6","envify":"4.0.0","jasmine":"2.5.3","uglify-js":"2.7.5","watch":"1.0.1"},"gitHead":"271c3a08e70c829f5f79053ae75c13a867782c7c","_id":"memoizerific@1.11.2","_shasum":"4e0ecb9c863fb3dba1eb167c85ce98d2d7694058","_from":".","_npmVersion":"3.10.10","_nodeVersion":"7.2.1","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"4e0ecb9c863fb3dba1eb167c85ce98d2d7694058","size":12801,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.11.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.11.2.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/memoizerific-1.11.2.tgz_1489530585311_0.10871229250915349"},"directories":{},"publish_time":1489530586005,"_cnpm_publish_time":1489530586005,"_hasShrinkwrap":false},"1.11.1":{"name":"memoizerific","version":"1.11.1","description":"Fast, small, efficient JavaScript memoization lib to memoize JS functions","author":{"name":"Baz","email":"baz@thinkloop.com"},"license":"MIT","keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"./src/memoizerific.js","browser":"./memoizerific.js","scripts":{"test":"echo '****************'`date +%r`'********************' && npm run -s test:map && npm run -s test:similar","build":"npm run -s build:all","publish_to_npm":"npm version patch && git push && git push --tags && npm publish","_":"","test:map":"FORCE_SIMILAR_INSTEAD_OF_MAP=false JASMINE_CONFIG_PATH=./jasmine.json jasmine","test:similar":"FORCE_SIMILAR_INSTEAD_OF_MAP=true JASMINE_CONFIG_PATH=./jasmine.json jasmine","__":"","build:all":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js -t [envify purge] --node --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c"},"dependencies":{"map-or-similar":"^1.5.0"},"devDependencies":{"browserify":"13.3.0","derequire":"2.0.6","envify":"4.0.0","jasmine":"2.5.3","uglify-js":"2.7.5","watch":"1.0.1"},"gitHead":"6857a3aa4ea85bd878a92e967262d5efe9a2ba37","_id":"memoizerific@1.11.1","_shasum":"a4cacee0e376d9d8a999e4ad855c2c9cf70d855f","_from":".","_npmVersion":"3.10.10","_nodeVersion":"7.2.1","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"a4cacee0e376d9d8a999e4ad855c2c9cf70d855f","size":12815,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.11.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.11.1.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.11.1.tgz_1489529477620_0.13609095592983067"},"directories":{},"publish_time":1489529479609,"_cnpm_publish_time":1489529479609,"_hasShrinkwrap":false},"1.11.0":{"name":"memoizerific","version":"1.11.0","description":"Fast, small, efficient JavaScript memoization lib to memoize JS functions","author":{"name":"Baz","email":"baz@thinkloop.com"},"license":"MIT","keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"./src/memoizerific.js","browser":"./memoizerific.js","scripts":{"test":"echo '****************'`date +%r`'********************' && npm run -s test:map && npm run -s test:similar","build":"npm run -s build:all","publish_to_npm":"npm version minor && git push && git push --tags && npm publish","_":"","test:map":"FORCE_SIMILAR_INSTEAD_OF_MAP=false JASMINE_CONFIG_PATH=./jasmine.json jasmine","test:similar":"FORCE_SIMILAR_INSTEAD_OF_MAP=true JASMINE_CONFIG_PATH=./jasmine.json jasmine","__":"","build:all":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js -t [envify purge] --node --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c"},"dependencies":{"map-or-similar":"^1.5.0"},"devDependencies":{"browserify":"13.3.0","derequire":"2.0.6","envify":"4.0.0","jasmine":"2.5.3","uglify-js":"2.7.5","watch":"1.0.1"},"gitHead":"5d0ead8a64cd224e471052fa14d786c3dd810ce4","_id":"memoizerific@1.11.0","_shasum":"a3ebed365c78259b2d4f579323f17d652f5d5208","_from":".","_npmVersion":"3.10.10","_nodeVersion":"7.2.1","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"a3ebed365c78259b2d4f579323f17d652f5d5208","size":12816,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.11.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.11.0.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.11.0.tgz_1489529249833_0.65084458142519"},"directories":{},"publish_time":1489529251742,"_cnpm_publish_time":1489529251742,"_hasShrinkwrap":false},"1.10.0":{"name":"memoizerific","version":"1.10.0","description":"Fast, small, efficient JavaScript memoization lib to memoize JS functions","author":{"name":"Baz","email":"baz@thinkloop.com"},"license":"MIT","keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"./src/memoizerific.js","browser":"./memoizerific.js","scripts":{"test":"echo '****************'`date +%r`'********************' && npm run -s test:map && npm run -s test:similar","build":"npm run -s build:all","publish_to_npm":"npm version minor && git push && git push --tags && npm publish","_":"","test:map":"FORCE_SIMILAR_INSTEAD_OF_MAP=false JASMINE_CONFIG_PATH=./jasmine.json jasmine","test:similar":"FORCE_SIMILAR_INSTEAD_OF_MAP=true JASMINE_CONFIG_PATH=./jasmine.json jasmine","__":"","build:all":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js -t [envify purge] --node --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c"},"dependencies":{"map-or-similar":"^1.5.0"},"devDependencies":{"browserify":"13.3.0","derequire":"2.0.6","envify":"4.0.0","jasmine":"2.5.3","uglify-js":"2.7.5","watch":"1.0.1"},"gitHead":"ff9b65888b1b71af9989ec4ec455d90ff663fb4a","_id":"memoizerific@1.10.0","_shasum":"55b921baa9e1789aef10c1e2f7e92492c8a27da8","_from":".","_npmVersion":"3.10.10","_nodeVersion":"7.2.1","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"55b921baa9e1789aef10c1e2f7e92492c8a27da8","size":12415,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.10.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.10.0.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.10.0.tgz_1484904922525_0.5620627049356699"},"directories":{},"publish_time":1484904924341,"_cnpm_publish_time":1484904924341,"_hasShrinkwrap":false},"1.9.0":{"name":"memoizerific","version":"1.9.0","description":"Fast, small, efficient JavaScript memoization lib to memoize JS functions","author":{"name":"Baz","email":"baz@thinkloop.com"},"license":"MIT","keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"./src/memoizerific.js","scripts":{"test":"echo '****************'`date +%r`'********************' && npm run -s test:map && npm run -s test:similar","build":"npm run -s build:all","publish_to_npm":"npm version minor && git push && git push --tags && npm publish","_":"","test:map":"FORCE_SIMILAR_INSTEAD_OF_MAP=false JASMINE_CONFIG_PATH=./jasmine.json jasmine","test:similar":"FORCE_SIMILAR_INSTEAD_OF_MAP=true JASMINE_CONFIG_PATH=./jasmine.json jasmine","__":"","build:all":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js -t [envify purge] --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c"},"dependencies":{"map-or-similar":"^1.4.0"},"devDependencies":{"browserify":"13.3.0","derequire":"2.0.6","envify":"4.0.0","jasmine":"2.5.3","uglify-js":"2.7.5","watch":"1.0.1"},"gitHead":"784ad513e49c2ba7d05f7bfa278883b4b10796f2","_id":"memoizerific@1.9.0","_shasum":"675befc83f218586795d2de71e7ef9bb58b2ad84","_from":".","_npmVersion":"3.10.10","_nodeVersion":"7.2.1","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"675befc83f218586795d2de71e7ef9bb58b2ad84","size":12401,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.9.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.9.0.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/memoizerific-1.9.0.tgz_1484902147818_0.8713632461149246"},"directories":{},"publish_time":1484902148437,"_cnpm_publish_time":1484902148437,"_hasShrinkwrap":false},"1.8.6":{"name":"memoizerific","version":"1.8.6","description":"Fast, small, efficient JavaScript memoization lib to memoize JS functions","author":{"name":"Baz","email":"baz@thinkloop.com"},"license":"MIT","keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"./memoizerific","scripts":{"test":"echo '****************'`date +%r`'********************' && npm run -s test:map && npm run -s test:similar","build":"npm run -s build:all","publish_to_npm":"npm run -s build:all && git add --all && git commit -m \"build for publish\" && npm version patch && git push && git push --tags && npm publish","_":"","test:map":"FORCE_SIMILAR_INSTEAD_OF_MAP=false JASMINE_CONFIG_PATH=./jasmine.json jasmine","test:similar":"FORCE_SIMILAR_INSTEAD_OF_MAP=true JASMINE_CONFIG_PATH=./jasmine.json jasmine","__":"","build:all":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js -t [envify purge] --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c"},"dependencies":{"map-or-similar":"^1.3.0"},"devDependencies":{"browserify":"13.1.1","derequire":"2.0.3","envify":"4.0.0","jasmine":"2.5.2","uglify-js":"2.7.5","watch":"1.0.1"},"gitHead":"16b90f3f00ade7536c3190abd08ba34d90407ffb","_id":"memoizerific@1.8.6","_shasum":"28d90eb35f92310dd47b5f56602e168eebb0c4cf","_from":".","_npmVersion":"3.10.10","_nodeVersion":"7.2.1","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"28d90eb35f92310dd47b5f56602e168eebb0c4cf","size":12552,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.8.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.8.6.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/memoizerific-1.8.6.tgz_1481290934995_0.7112549226731062"},"directories":{},"publish_time":1481290935741,"_cnpm_publish_time":1481290935741,"_hasShrinkwrap":false},"1.8.4":{"name":"memoizerific","version":"1.8.4","description":"Fast, small, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"npm run -s test:map && npm run -s test:similar","publish_to_npm":"npm run -s build:all && git add --all && git commit -m \"build for publish\" && npm version patch && git push && git push --tags && npm publish","_":"","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=./jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=./jasmine.json jasmine","__":"","prebuild:all":"npm run -s test","build:all":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"dependencies":{"map-or-similar":"^1.2.3"},"devDependencies":{"browserify":"^13.0.1","derequire":"^2.0.3","jasmine":"^2.4.1","npm-check-updates":"^2.6.7","uglify-js":"^2.6.2","watch":"^0.18.0"},"gitHead":"c7094c09c00a55eff5364b0b18c6b02163e57e2e","_id":"memoizerific@1.8.4","_shasum":"cf46db25bb427724a1393479cbadfaf71e284a99","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"cf46db25bb427724a1393479cbadfaf71e284a99","size":11928,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.8.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.8.4.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.8.4.tgz_1466066860636_0.4225126984529197"},"directories":{},"publish_time":1466066862947,"_cnpm_publish_time":1466066862947,"_hasShrinkwrap":false},"1.8.3":{"name":"memoizerific","version":"1.8.3","description":"Fast, small, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"npm run -s test:map && npm run -s test:similar","build":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","publish_to_npm":"npm run build && git add --all && git commit -m \"build for publish\" && npm version patch && git push && git push --tags && npm publish","_":"","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=jasmine.json jasmine","__":"","prebuild":"npm run -s test","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"dependencies":{"map-or-similar":"^1.2.3"},"devDependencies":{"browserify":"^13.0.1","derequire":"^2.0.3","jasmine":"^2.4.1","npm-check-updates":"^2.6.5","uglify-js":"^2.6.2","watch":"^0.18.0"},"gitHead":"2ba1541ec2abec02f5822bcc53d7ae5fa0f00e2f","_id":"memoizerific@1.8.3","_shasum":"48d3edfc8395a3ee7a56f30505df8b29368105bd","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"48d3edfc8395a3ee7a56f30505df8b29368105bd","size":11324,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.8.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.8.3.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.8.3.tgz_1463650731691_0.1773817865177989"},"directories":{},"publish_time":1463650733936,"_cnpm_publish_time":1463650733936,"_hasShrinkwrap":false},"1.8.2":{"name":"memoizerific","version":"1.8.2","description":"Fast, small, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"npm run -s test:map && npm run -s test:similar","build":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","dist":"npm run build && git add --all && git commit -m \"build for publish\" && npm version patch && git push && git push --tags && npm publish","_":"","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=jasmine.json jasmine","__":"","prebuild":"npm run -s test","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"dependencies":{"map-or-similar":"^1.2.1"},"devDependencies":{"browserify":"^13.0.1","derequire":"^2.0.3","jasmine":"^2.4.1","npm-check-updates":"^2.6.5","uglify-js":"^2.6.2","watch":"^0.18.0"},"gitHead":"b11b739cb9e17b95170807aa37051c249e6db3e9","_id":"memoizerific@1.8.2","_shasum":"4bc931ff9cb03a1657c5537a9fbc75522ab35473","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"4bc931ff9cb03a1657c5537a9fbc75522ab35473","size":11318,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.8.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.8.2.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.8.2.tgz_1463650572949_0.3089945614337921"},"directories":{},"publish_time":1463650575289,"_cnpm_publish_time":1463650575289,"_hasShrinkwrap":false},"1.8.1":{"name":"memoizerific","version":"1.8.1","description":"Fast, small, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"npm run -s test:map && npm run -s test:similar","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=jasmine.json jasmine","prebuild":"npm run -s test","build":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c","dist":"npm run build && git add --all && git commit -m \"build for publish\" && npm version patch && git push && git push --tags"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"dependencies":{"map-or-similar":"^1.2.1"},"devDependencies":{"browserify":"^13.0.1","derequire":"^2.0.3","jasmine":"^2.4.1","npm-check-updates":"^2.6.5","uglify-js":"^2.6.2","watch":"^0.18.0"},"gitHead":"51ffda69dd5900cab8888fd7db9c0f9dd3ddbaaa","_id":"memoizerific@1.8.1","_shasum":"69491d84c1d54dc15a5c5bd033e05a5cf399a51f","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"69491d84c1d54dc15a5c5bd033e05a5cf399a51f","size":11304,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.8.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.8.1.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/memoizerific-1.8.1.tgz_1463650466610_0.19873666274361312"},"directories":{},"publish_time":1463650469548,"_cnpm_publish_time":1463650469548,"_hasShrinkwrap":false},"1.7.5":{"name":"memoizerific","version":"1.7.5","description":"Fast, small, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"npm run -s test:map && npm run -s test:similar","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=jasmine.json jasmine","prebuild":"npm run -s test","build":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c","prepublish":"npm run build && git add --all && git commit -m \"build for publish\" && npm version minor && git push && git push --tags"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"dependencies":{"map-or-similar":"^1.2.1"},"devDependencies":{"browserify":"^13.0.1","derequire":"^2.0.3","jasmine":"^2.4.1","npm-check-updates":"^2.6.5","uglify-js":"^2.6.2","watch":"^0.18.0"},"gitHead":"72d2187766e2f864967d3536f3c66fb88b5047df","_id":"memoizerific@1.7.5","_shasum":"6784f01ae6e2010aca8f35314b123b07c9b34ae0","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"6784f01ae6e2010aca8f35314b123b07c9b34ae0","size":11302,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.7.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.7.5.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.7.5.tgz_1463650402363_0.5191321193706244"},"directories":{},"publish_time":1463650405671,"_cnpm_publish_time":1463650405671,"_hasShrinkwrap":false},"1.7.2":{"name":"memoizerific","version":"1.7.2","description":"Fast, small, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"npm run -s test:map && npm run -s test:similar","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=jasmine.json jasmine","prebuild":"npm run -s test","build":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c","prepublish":"npm version patch && npm run build && git add --all && git commit -m \"build & publish $npm_package_version\" && git push && git push --tags"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"dependencies":{"map-or-similar":"^1.2.1"},"devDependencies":{"browserify":"^13.0.1","derequire":"^2.0.3","jasmine":"^2.4.1","npm-check-updates":"^2.6.5","uglify-js":"^2.6.2","watch":"^0.18.0"},"gitHead":"08590d74e1ac285c678a90c08b337980dfd9d649","_id":"memoizerific@1.7.2","_shasum":"d4096c4fd00c5874355f01eae68df3ea29b2a5bb","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"d4096c4fd00c5874355f01eae68df3ea29b2a5bb","size":11311,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.7.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.7.2.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.7.2.tgz_1463649330651_0.893627067329362"},"directories":{},"publish_time":1463649332898,"_cnpm_publish_time":1463649332898,"_hasShrinkwrap":false},"1.7.1":{"name":"memoizerific","version":"1.7.1","description":"Fast, small, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"npm run -s test:map && npm run -s test:similar","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=jasmine.json jasmine","prebuild":"npm run -s test","build":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c","prepublish":"npm version patch --no-git-tag-version && npm run build && git add --all && git commit -m \"build & publish $npm_package_version\" && git push && git push --tags"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"dependencies":{"map-or-similar":"^1.2.1"},"devDependencies":{"browserify":"^13.0.1","derequire":"^2.0.3","jasmine":"^2.4.1","npm-check-updates":"^2.6.5","uglify-js":"^2.6.2","watch":"^0.18.0"},"gitHead":"14882d504dce2bd9103a05da9dca703a727c647c","_id":"memoizerific@1.7.1","_shasum":"6ef12db97379464b81b1a4da09e6172f6b683003","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"6ef12db97379464b81b1a4da09e6172f6b683003","size":11321,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.7.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.7.1.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/memoizerific-1.7.1.tgz_1463649151705_0.6431597326882184"},"directories":{},"publish_time":1463649154734,"_cnpm_publish_time":1463649154734,"_hasShrinkwrap":false},"1.7.0":{"name":"memoizerific","version":"1.7.0","description":"Fast, small, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"npm run -s test:map && npm run -s test:similar","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=jasmine.json jasmine","prebuild":"npm run -s test","build":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c","prepublish":"npm run build && git add --all && git commit -m 'build & publish $npm_package_version' && npm version patch && git push && git push --tags"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"dependencies":{"map-or-similar":"^1.2.1"},"devDependencies":{"browserify":"^13.0.1","derequire":"^2.0.3","jasmine":"^2.4.1","npm-check-updates":"^2.6.5","uglify-js":"^2.6.2","watch":"^0.18.0"},"gitHead":"24cf4593c39e26eb82ed57067cd48b275e8c2cb9","_id":"memoizerific@1.7.0","_shasum":"28816db29a6bb4d380fdba10ae2c9f6ae66ca33a","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"28816db29a6bb4d380fdba10ae2c9f6ae66ca33a","size":11310,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.7.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.7.0.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.7.0.tgz_1463647197787_0.7612395251635462"},"directories":{},"publish_time":1463647199950,"_cnpm_publish_time":1463647199950,"_hasShrinkwrap":false},"1.6.0":{"name":"memoizerific","version":"1.6.0","description":"Fastest, smallest, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"npm run -s test:map && npm run -s test:similar","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=jasmine.json jasmine","prebuild":"npm run -s test","build":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c","prepublish":"npm run build && git add --all && git commit -m 'build & publish' && npm version minor && git push && git push --tags"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"dependencies":{"map-or-similar":"^1.2.1"},"devDependencies":{"browserify":"^13.0.1","derequire":"^2.0.3","jasmine":"^2.4.1","npm-check-updates":"^2.6.5","uglify-js":"^2.6.2","watch":"^0.18.0"},"gitHead":"e5ba2bbedbc04d03f4757f0ca07fb379afe74831","_id":"memoizerific@1.6.0","_shasum":"a9f59d29c43fea7c8c1042a11033971242c314fd","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"a9f59d29c43fea7c8c1042a11033971242c314fd","size":11293,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.6.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.6.0.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/memoizerific-1.6.0.tgz_1463646980118_0.5168128316290677"},"directories":{},"publish_time":1463646983029,"_cnpm_publish_time":1463646983029,"_hasShrinkwrap":false},"1.5.6":{"name":"memoizerific","version":"1.5.6","description":"Fastest, smallest, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"npm run -s test:map && npm run -s test:similar","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=jasmine.json jasmine","prebuild":"npm run -s test","build":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c","dist":"npm run build && git add --all && git commit -m 'build & publish' && npm version patch && git push && git push --tags && npm publish"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"dependencies":{"map-or-similar":"^1.1.3"},"devDependencies":{"browserify":"^13.0.0","derequire":"^2.0.3","jasmine":"^2.4.1","npm-check-updates":"^2.6.3","uglify-js":"^2.6.2","watch":"^0.17.1"},"gitHead":"8f2c2a3fd26d2861d89c76724e2a5064124a21b4","_id":"memoizerific@1.5.6","_shasum":"ff16654dff54d3752204f992249091919a1384c9","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"ff16654dff54d3752204f992249091919a1384c9","size":11119,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.5.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.5.6.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/memoizerific-1.5.6.tgz_1461490120114_0.9502376506570727"},"directories":{},"publish_time":1461490122019,"_cnpm_publish_time":1461490122019,"_hasShrinkwrap":false},"1.5.2":{"name":"memoizerific","version":"1.5.2","description":"Fastest, smallest, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"npm run -s test:map && npm run -s test:similar","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=jasmine.json jasmine","prebuild":"npm run -s test","build":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c","prepublish":"npm run build && git add --all && git commit -m 'build & publish' && npm version patch && git push && git push --tags"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"dependencies":{"map-or-similar":"^1.1.3"},"devDependencies":{"browserify":"^13.0.0","derequire":"^2.0.3","jasmine":"^2.4.1","uglify-js":"^2.6.1"},"gitHead":"9695d1e14f31f77751f83b48b33522e1cc78f851","_id":"memoizerific@1.5.2","_shasum":"6fd6dc6bf3895ee6803d06ab4138115a2084390f","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"6fd6dc6bf3895ee6803d06ab4138115a2084390f","size":10844,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.5.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.5.2.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-9-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.5.2.tgz_1454840238197_0.047598851611837745"},"directories":{},"publish_time":1454840241467,"_cnpm_publish_time":1454840241467,"_hasShrinkwrap":false},"1.5.1":{"name":"memoizerific","version":"1.5.1","description":"Fastest, smallest, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"npm run -s test:map && npm run -s test:similar","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=jasmine.json jasmine","prebuild":"npm run -s test","build":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c","prepublish":"npm run build && git add --all && git commit -m 'build & publish' && npm version patch && git push && git push --tags"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"dependencies":{"map-or-similar":"^1.1.3"},"devDependencies":{"browserify":"^13.0.0","derequire":"^2.0.3","jasmine":"^2.4.1","uglify-js":"^2.6.1"},"gitHead":"4aee404d11dfcc93a3fccbac9ff2dfe6884b755b","_id":"memoizerific@1.5.1","_shasum":"e0c4766985702405b02dca5bcfc745a84e5304c0","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"e0c4766985702405b02dca5bcfc745a84e5304c0","size":10591,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.5.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.5.1.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-9-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.5.1.tgz_1454541739932_0.3644531141035259"},"directories":{},"publish_time":1454541742964,"_cnpm_publish_time":1454541742964,"_hasShrinkwrap":false},"1.5.0":{"name":"memoizerific","version":"1.5.0","description":"Fastest, smallest, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"npm run -s test:map && npm run -s test:similar","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=jasmine.json jasmine","prebuild":"npm run -s test","build":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c","prepublish":"npm run build && git add --all && git commit -m 'build & publish' && npm version patch && git push && git push --tags"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache","fast"],"dependencies":{"map-or-similar":"^1.0.6"},"devDependencies":{"browserify":"^13.0.0","derequire":"^2.0.3","jasmine":"^2.4.1","uglify-js":"^2.6.1"},"gitHead":"b16ee3a0626d57a015412447356712bb78049825","_id":"memoizerific@1.5.0","_shasum":"7c5f7cf10920059ded5222741fee6b5142f94888","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"7c5f7cf10920059ded5222741fee6b5142f94888","size":10465,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.5.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.5.0.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.5.0.tgz_1454540788595_0.5729412485379726"},"directories":{},"publish_time":1454540791372,"_cnpm_publish_time":1454540791372,"_hasShrinkwrap":false},"1.4.0":{"name":"memoizerific","version":"1.4.0","description":"Fastest, smallest, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"prebuild":"npm run test","build":"npm run -s build:browserify | tee memoizerific.js | npm run -s build:minify | tee memoizerific.min.js | npm run -s build:gzip > memoizerific.min.gzip.js","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire","build:minify":"uglifyjs --compress drop_console,unused=false --mangle --screw-ie8","build:gzip":"gzip --best -v -c","test":"npm run test:map && npm run test:similar","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=jasmine.json jasmine"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache"],"dependencies":{"map-or-similar":"^1.0.6"},"devDependencies":{"browserify":"^13.0.0","derequire":"^2.0.3","jasmine":"^2.4.1","uglify-js":"^2.6.1"},"gitHead":"dd4fdd03f79df2d83771e70dfac841d9764d09c7","_id":"memoizerific@1.4.0","_shasum":"22fdffdfbb3ff19fc6799e34130af0b51b10f391","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"22fdffdfbb3ff19fc6799e34130af0b51b10f391","size":9598,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.4.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.4.0.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.4.0.tgz_1454487200808_0.4255677736364305"},"directories":{},"publish_time":1454487203222,"_cnpm_publish_time":1454487203222,"_hasShrinkwrap":false},"1.3.0":{"name":"memoizerific","version":"1.3.0","description":"Fastest, smallest, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"prebuild":"npm run test","build":"npm run build:browserify && npm run build:minify && npm run build:gzip","build:browserify":"browserify src/memoizerific.js --detectGlobals false --standalone memoizerific | derequire > memoizerific.js","build:minify":"uglifyjs memoizerific.js --compress drop_console,unused=false --mangle --screw-ie8 > memoizerific.min.js","build:gzip":"gzip --best -v -c memoizerific.min.js > memoizerific.min.gzip.js","build:stream":"browserify src/memoizerific.js --standalone memoizerific | derequire | tee dist/memoizerific.js | uglifyjs --compress drop_console,unused=false --mangle --screw-ie8 | tee dist/memoizerific.min.js | gzip --best -v -c > dist/memoizerific.min.gzip.js","test":"npm run test:map && npm run test:similar","test:map":"TEST_MAPORSIMILAR=false JASMINE_CONFIG_PATH=jasmine.json jasmine","test:similar":"TEST_MAPORSIMILAR=true JASMINE_CONFIG_PATH=jasmine.json jasmine"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache"],"dependencies":{"map-or-similar":"^1.0.6"},"devDependencies":{"browserify":"^13.0.0","derequire":"^2.0.3","jasmine":"^2.4.1","uglify-js":"^2.6.1"},"gitHead":"746db13ae155f05149b83d3fc119b6b903d0bfa3","_id":"memoizerific@1.3.0","_shasum":"e4b5ccaed96e0a461b46995918f05a20693736f3","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"e4b5ccaed96e0a461b46995918f05a20693736f3","size":9664,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.3.0.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-9-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.3.0.tgz_1454485699065_0.8547410087194294"},"directories":{},"publish_time":1454485701549,"_cnpm_publish_time":1454485701549,"_hasShrinkwrap":false},"1.2.2":{"name":"memoizerific","version":"1.2.2","description":"Fastest, smallest, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"memoizerific.min","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache"],"dependencies":{},"devDependencies":{"browserify":"^13.0.0","gulp":"^3.9.0","gulp-derequire":"^2.1.0","gulp-gzip":"^1.2.0","gulp-rename":"^1.2.2","gulp-streamify":"^1.0.2","gulp-uglify":"^1.5.1","gulp-util":"^3.0.7","run-sequence":"^1.1.5","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.1.0"},"gitHead":"323bac93c205118cb6dc5070a3ab15eec6001044","_id":"memoizerific@1.2.2","_shasum":"65e53a601335f125f224df66b41169c6da898509","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"65e53a601335f125f224df66b41169c6da898509","size":8389,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.2.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.2.2.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.2.2.tgz_1454400878298_0.2119013036135584"},"directories":{},"publish_time":1454400880754,"_cnpm_publish_time":1454400880754,"_hasShrinkwrap":false},"1.2.1":{"name":"memoizerific","version":"1.2.1","description":"Fastest, smallest, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"memoizerific.min","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache"],"dependencies":{},"devDependencies":{"browserify":"^13.0.0","gulp":"^3.9.0","gulp-derequire":"^2.1.0","gulp-gzip":"^1.2.0","gulp-rename":"^1.2.2","gulp-streamify":"^1.0.2","gulp-uglify":"^1.5.1","gulp-util":"^3.0.7","run-sequence":"^1.1.5","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.1.0"},"gitHead":"749535c917aa10c0ad5a66f0139a11b334c5115b","_id":"memoizerific@1.2.1","_shasum":"a7e2e4da656cd79cecfc09ab48820cb40fac7d1c","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"a7e2e4da656cd79cecfc09ab48820cb40fac7d1c","size":8885,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.2.1.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/memoizerific-1.2.1.tgz_1454400709050_0.9030110503081232"},"directories":{},"publish_time":1454400710189,"_cnpm_publish_time":1454400710189,"_hasShrinkwrap":false},"1.2.0":{"name":"memoizerific","version":"1.2.0","description":"Fastest, smallest, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"memoizerific.min","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache"],"dependencies":{},"devDependencies":{"babel-preset-es2015":"^6.3.13","babelify":"^7.2.0","browserify":"^13.0.0","gulp":"^3.9.0","gulp-derequire":"^2.1.0","gulp-gzip":"^1.2.0","gulp-rename":"^1.2.2","gulp-streamify":"^1.0.2","gulp-uglify":"^1.5.1","gulp-util":"^3.0.7","run-sequence":"^1.1.5","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.1.0"},"gitHead":"ac36d96e94b1ece5ee392a55b47cb6984b447814","_id":"memoizerific@1.2.0","_shasum":"52d07cc9d9b3950b3141c01e5ce40a39b536f404","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"52d07cc9d9b3950b3141c01e5ce40a39b536f404","size":61033,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.2.0.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-9-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.2.0.tgz_1454400152144_0.5726419524289668"},"directories":{},"publish_time":1454400157161,"_cnpm_publish_time":1454400157161,"_hasShrinkwrap":false},"1.1.1":{"name":"memoizerific","version":"1.1.1","description":"Fastest, smallest, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache"],"dependencies":{},"devDependencies":{"babel-preset-es2015":"^6.3.13","babelify":"^7.2.0","browserify":"^13.0.0","gulp":"^3.9.0","gulp-streamify":"^1.0.2","gulp-uglify":"^1.5.1","gulp-util":"^3.0.7","run-sequence":"^1.1.5","umdify":"^0.1.0","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.1.0"},"gitHead":"490c8e4db6123b02867d1fbd656500a57766713e","_id":"memoizerific@1.1.1","_shasum":"65e051a1fce3dd5012f8eb9a65e7eb1df614bbc0","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"65e051a1fce3dd5012f8eb9a65e7eb1df614bbc0","size":59100,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.1.1.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-8-eu.internal.npmjs.com","tmp":"tmp/memoizerific-1.1.1.tgz_1454397646909_0.43722088006325066"},"directories":{},"publish_time":1454397649899,"_cnpm_publish_time":1454397649899,"_hasShrinkwrap":false},"1.0.6":{"name":"memoizerific","version":"1.0.6","description":"Fastest, smallest, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache"],"dependencies":{},"devDependencies":{"babel-preset-es2015":"^6.3.13","babelify":"^7.2.0","browserify":"^13.0.0","gulp":"^3.9.0","gulp-streamify":"^1.0.2","gulp-uglify":"^1.5.1","gulp-util":"^3.0.7","run-sequence":"^1.1.5","umdify":"^0.1.0","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.1.0"},"gitHead":"eaa544585fccd24164af1257f197cde1bc4cbee9","_id":"memoizerific@1.0.6","_shasum":"b5f45a81f181030d9d66b544742b9d9600e9d64c","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"b5f45a81f181030d9d66b544742b9d9600e9d64c","size":61363,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.0.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.0.6.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.0.6.tgz_1454394786087_0.7543889628723264"},"directories":{},"publish_time":1454394788772,"_cnpm_publish_time":1454394788772,"_hasShrinkwrap":false},"1.0.5":{"name":"memoizerific","version":"1.0.5","description":"Fastest, smallest, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache"],"dependencies":{},"devDependencies":{"babel-preset-es2015":"^6.3.13","babelify":"^7.2.0","browserify":"^13.0.0","gulp":"^3.9.0","gulp-streamify":"^1.0.2","gulp-uglify":"^1.5.1","gulp-util":"^3.0.7","run-sequence":"^1.1.5","umdify":"^0.1.0","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.1.0"},"gitHead":"7d282f78d742c81c9628df34f0686ffadddb6f1f","_id":"memoizerific@1.0.5","_shasum":"c7eabc73dca9bf6eae68807f6263ef68ce9ee49e","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"c7eabc73dca9bf6eae68807f6263ef68ce9ee49e","size":61468,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.0.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.0.5.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-8-eu.internal.npmjs.com","tmp":"tmp/memoizerific-1.0.5.tgz_1454394395904_0.7242186737712473"},"directories":{},"publish_time":1454394398948,"_cnpm_publish_time":1454394398948,"_hasShrinkwrap":false},"1.0.4":{"name":"memoizerific","version":"1.0.4","description":"Fastest, smallest, most-efficient JavaScript memoization lib to memoize JS functions","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache"],"dependencies":{},"devDependencies":{"babel-preset-es2015":"^6.3.13","babelify":"^7.2.0","browserify":"^13.0.0","gulp":"^3.9.0","gulp-streamify":"^1.0.2","gulp-uglify":"^1.5.1","gulp-util":"^3.0.7","run-sequence":"^1.1.5","umdify":"^0.1.0","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.1.0"},"gitHead":"b2240f188d55790f9720141eb26c55f4e7d9b538","_id":"memoizerific@1.0.4","_shasum":"de0275d6af4ec6a29256cd763dcbc7b9bcb2589e","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"de0275d6af4ec6a29256cd763dcbc7b9bcb2589e","size":61842,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.0.4.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"_npmOperationalInternal":{"host":"packages-9-west.internal.npmjs.com","tmp":"tmp/memoizerific-1.0.4.tgz_1454358098389_0.6757745402865112"},"directories":{},"publish_time":1454358100986,"_cnpm_publish_time":1454358100986,"_hasShrinkwrap":false},"1.0.3":{"name":"memoizerific","version":"1.0.3","description":"Fastest, smallest, most-efficient JavaScript (JS) memoization lib","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache"],"dependencies":{},"devDependencies":{"babel-preset-es2015":"^6.3.13","babelify":"^7.2.0","browserify":"^13.0.0","gulp":"^3.9.0","gulp-streamify":"^1.0.2","gulp-uglify":"^1.5.1","gulp-util":"^3.0.7","run-sequence":"^1.1.5","umdify":"^0.1.0","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.1.0"},"gitHead":"573dfa3bb275871e65e3f52006378d6a30e11f90","_id":"memoizerific@1.0.3","_shasum":"a1ccbd5cc5baa9490fa8d0a7346cee7d5ebe5066","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"a1ccbd5cc5baa9490fa8d0a7346cee7d5ebe5066","size":60863,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.0.3.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"directories":{},"publish_time":1454326488873,"_cnpm_publish_time":1454326488873,"_hasShrinkwrap":false},"1.0.2":{"name":"memoizerific","version":"1.0.2","description":"Fastest, smallest, most-efficient JavaScript (JS) memoization lib","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"src/memoizerific","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["memoize","memoizer","memoization","memoized","javascript","js","lru","cache"],"dependencies":{},"devDependencies":{"babel-preset-es2015":"^6.3.13","babelify":"^7.2.0","browserify":"^13.0.0","gulp":"^3.9.0","gulp-streamify":"^1.0.2","gulp-uglify":"^1.5.1","gulp-util":"^3.0.7","run-sequence":"^1.1.5","umdify":"^0.1.0","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.1.0"},"gitHead":"486d510fe2d28160f314e335f48d8a19e2d5c350","_id":"memoizerific@1.0.2","_shasum":"49251a0e0a18fef01c28ea27da0cb2351afc12af","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"49251a0e0a18fef01c28ea27da0cb2351afc12af","size":60848,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.0.2.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"directories":{},"publish_time":1454326216857,"_cnpm_publish_time":1454326216857,"_hasShrinkwrap":false},"1.0.0":{"name":"memoizerific","version":"1.0.0","description":"Fastest, smallest, most-efficient JavaScript (JS) memoization lib","author":{"name":"@thinkloop"},"license":"MIT","homepage":"https://github.com/thinkloop/memoizerific#readme","repository":{"type":"git","url":"git+https://github.com/thinkloop/memoizerific.git"},"bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"main":"memoizerific.min","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["memoize","memoizer","memoization","javascript","js","lru","cache"],"dependencies":{},"devDependencies":{"babel-preset-es2015":"^6.3.13","babelify":"^7.2.0","browserify":"^13.0.0","gulp":"^3.9.0","gulp-streamify":"^1.0.2","gulp-uglify":"^1.5.1","gulp-util":"^3.0.7","run-sequence":"^1.1.5","umdify":"^0.1.0","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.1.0"},"gitHead":"5f6393e57705cf0c74aafc78be40504826a61f71","_id":"memoizerific@1.0.0","_shasum":"d524c6cd5f108e9e35ed5fa8775eac05536807a5","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"thinkloop","email":"bk@thinkloop.com"},"dist":{"shasum":"d524c6cd5f108e9e35ed5fa8775eac05536807a5","size":56178,"noattachment":false,"key":"/memoizerific/-/memoizerific-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/memoizerific/download/memoizerific-1.0.0.tgz"},"maintainers":[{"name":"thinkloop","email":"bk@thinkloop.com"}],"directories":{},"publish_time":1454313263281,"_cnpm_publish_time":1454313263281,"_hasShrinkwrap":false}},"readme":"# Memoizerific.js\n[![Build Status](https://travis-ci.org/thinkloop/memoizerific.svg?branch=master)](https://travis-ci.org/thinkloop/memoizerific)\n\nFast (see benchmarks), small (1k min/gzip), efficient, JavaScript memoization lib to memoize JS functions.\n\nUses JavaScript's [Map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) object for instant lookups, or a [performant polyfill](https://github.com/thinkloop/map-or-similar) if Map is not available - does not do expensive serialization or string manipulation.\n\nSupports multiple complex arguments.\nIncludes least-recently-used (LRU) caching to maintain only the most recent specified number of results.\n\nCompatible with the browser and nodejs.\n\nMemoization is the process of caching function results so that they may be returned cheaply\nwithout re-execution if the function is called again using the same arguments.\nThis is especially useful with the rise of [redux] (https://github.com/rackt/redux),\nand the push to calculate all derived data on the fly instead of maintaining it in state.\n\n## Install\nNPM:\n\n```\nnpm install memoizerific --save\n```\n\nOr use one of the compiled distributions compatible in any environment (UMD):\n\n- [memoizerific.js](https://raw.githubusercontent.com/thinkloop/memoizerific/master/memoizerific.js)\n- [memoizerific.min.js](https://raw.githubusercontent.com/thinkloop/memoizerific/master/memoizerific.min.js) (minified)\n- [memoizerific.min.gzip.js](https://github.com/thinkloop/memoizerific/raw/master/memoizerific.min.gzip.js) (minified + gzipped)\n\n\n## Quick Start\n```javascript\nconst memoizerific = require('memoizerific');\n\n// memoize the 50 most recent argument combinations of our function\nconst memoized = memoizerific(50)(function(arg1, arg2, arg3) {\n    // many long expensive calls here\n});\n\nmemoized(1, 2, 3); // that took long to process\nmemoized(1, 2, 3); // this one was instant!\n\nmemoized(2, 3, 4); // expensive again :(\nmemoized(2, 3, 4); // this one was cheap!\n```\n\nOr with complex arguments:\n```javascript\nconst \n    complexArg1 = { a: { b: { c: 99 }}}, // hairy nested object\n    complexArg2 = [{ z: 1}, { q: [{ x: 3 }]}], // objects within arrays within arrays\n    complexArg3 = new Set(); // new Set object\n\nmemoized(complexArg1, complexArg2, complexArg3); // slow\nmemoized(complexArg1, complexArg2, complexArg3); // instant!\n```\n\n## Arguments\nThere are two required arguments:\n\n`limit (required):` the max number of items to cache before the least recently used items are removed.\n\n`fn (required):` the function to memoize.\n\nThe arguments are specified like this:\n\n```javascript\nmemoizerific(limit)(fn);\n```\n\nExamples:\n\n```javascript\n// memoize 1 argument combination\nmemoizerific(1)(function(arg1, arg2){});\n\n// memoize the last 10,000 unique argument combinations\nmemoizerific(10000)(function(arg1, arg2){}); \n\n// memoize infinity results (not recommended)\nmemoizerific(0)(function(arg1){}); \n```\n\nThe cache works using LRU logic, purging the least recently used results when the limit is reached.\nFor example:\n\n```javascript\n// memoize 1 result\nconst myMemoized = memoizerific(1)(function(arg1) {});\n\nmyMemoized('a'); // function runs, result is cached\nmyMemoized('a'); // cached result is returned\nmyMemoized('b'); // function runs again, new result is cached, old cached result is purged\nmyMemoized('b'); // cached result is returned\nmyMemoized('a'); // function runs again\n```\n\n## Equality\nArguments are compared using strict equality, while taking into account small edge cases like NaN !== NaN (NaN is a valid argument type).\nA complex object will only trigger a cache hit if it refers to the exact same object in memory,\nnot just another object that has similar properties.\nFor example, the following code will not produce a cache hit even though the objects look the same:\n\n```javascript\nconst myMemoized = memoizerific(1)(function(arg1) {});\n\nmyMemoized({ a: true });\nmyMemoized({ a: true }); // not cached, the two objects are different instances even though they look the same\n\n```\n\nThis is because a new object is being created on each invocation, rather than the same object being passed in.\n\nA common scenario where this may appear is when providing options to functions, such as: `do(opts)`,  where `opts` is an object.\n\nTypically this would be called with an inline object like this: `do({prop1: 10000, prop2: 'abc'})`.\n\nIf that function were memoized, it would not hit the cache because the `opts` object would be newly created each time.\n\nThere are several ways around this:\n\n#### Store Arguments\nStore constant arguments separately for use later on:\n\n```javascript\nconst do = memoizerific(1)(function(opts) {\n    // function body\n});\n\n// store the argument object\nconst opts = { prop1: 10000, prop2: 'abc' };\n\ndo(opts);\ndo(opts); // cache hit\n\n```\n\n#### Destructure \nDestructure the object and memoize its simple properties (strings, numbers, etc) using a wrapper function:\n\n```javascript\n// it doesn't matter that a new object is being created internally because the simple values in the wrapping function are memoized\nconst callDo = memoizerific(1)(function(prop1, prop2) {\n  return do({prop1, prop2 });\n});\n\ncallDo(1000, 'abc');\ncallDo(1000, 'abc'); // cache hit\n```\n\n## Internals\nMeta properties are available for introspection for debugging and informational purposes. \nThey should not be manipulated directly, only read.\nThe following properties are available:\n\n```Slim\nmemoizedFn.limit       : The cache limit that was passed in. This will never change.\nmemoizedFn.wasMemoized : Returns true if the last invocation was a cache hit, otherwise false.\nmemoizedFn.cache       : The cache object that stores all the memoized results.\nmemoizedFn.lru         : The lru object that stores the most recent arguments called.\n\n```\n\nFor example:\n\n```\nconst callDo = memoizerific(1)(function(prop1, prop2) {\n  return do({prop1, prop2 });\n});\n\ncallDo(1000, 'abc');\nconsole.log(callDo.wasMemoized); // false\ncallDo(1000, 'abc');\nconsole.log(callDo.wasMemoized); // true\n```\n\n## Principles\nThere are many memoization libs available for JavaScript. Some of them have specialized use-cases, such as memoizing file-system access, or server async requests.\nWhile others, such as this one, tackle the more general case of memoizing standard synchronous functions.\nSome criteria to look for:\n\n- **Support for multiple arguments**\n- **Support for complex arguments**: Including large arrays, complex objects, arrays-within-objects, objects-within-arrays, and any object structure, not just primitives like strings or numbers.\n- **Controlled cache**: A cache that grows unimpeded will quickly become a memory leak and source of bugs.\n- **Consistent performance profile**: Performance should degrade linearly and predictably as parameters becomes less favorable.\n\nTwo libs with traction that meet the criteria are:\n\n:heavy_check_mark: [Memoizee](https://github.com/medikoo/memoizee) (@medikoo)\n\n:heavy_check_mark: [LRU-Memoize](https://github.com/erikras/lru-memoize) (@erikras)\n\n\n## Benchmarks\n\nBenchmarks were performed with complex data. Example arguments look like:\n```javascript\nmyMemoized(\n    { a: 1, b: [{ c: 2, d: { e: 3 }}] }, // 1st argument\n    [{ x: 'x', q: 'q', }, { b: 8, c: 9 }, { b: 2, c: [{x: 5, y: 3}, {x: 2, y: 7}] }, { b: 8, c: 9 }, { b: 8, c: 9 }], // 2nd argument\n    { z: 'z' }, // 3rd argument\n    ... // 4th, 5th... argument\n);\n\n```\nTesting involves calling the memoized functions thousands times using varying numbers of arguments (between 2-8) and with varying amounts of data repetition (more repetion means more cache hits and vice versa).\n\n##### Measurements\nFollowing are measurements from 5000 iterations of each combination of number of arguments and variance on firefox 44:\n\n| Cache Size | Num Args | Approx. Cache Hits (variance) | LRU-Memoize | Memoizee | Memoizerific | % Faster |\n| :--------: | :------: | :---------------------------: | :---------: | :------: | :----------: | :------: |\n| 10         | 2        | 99%                           | 19ms        | 31ms     | **10ms**     | _90%_    |\n| 10         | 2        | 62%                           | 212ms       | 319ms    | **172ms**    | _23%_    |\n| 10         | 2        | 7%                            | 579ms       | 617ms    | **518ms**    | _12%_    |\n|            |          |                               |             |          |              |          |\n| 100        | 2        | 99%                           | 137ms       | 37ms     | **20ms**     | _85%_    |\n| 100        | 2        | 69%                           | 696ms       | 245ms    | **161ms**    | _52%_    |\n| 100        | 2        | 10%                           | 1,057ms     | 649ms    | **527ms**    | _23%_    |\n|            |          |                               |             |          |              |          |\n| 500        | 4        | 95%                           | 476ms       | 67ms     | **62ms**     | _8%_     |\n| 500        | 4        | 36%                           | 2,642ms     | 703ms    | **594ms**    | _18%_    |\n| 500        | 4        | 11%                           | 3,619ms     | 880ms    | **725ms**    | _21%_    |\n|            |          |                               |             |          |              |          |\n| 1000       | 8        | 95%                           | 1,009ms     | **52ms** | 65ms         | _25%_    |\n| 1000       | 8        | 14%                           | 10,477ms    | 659ms    | **635ms**    | _4%_     |\n| 1000       | 8        | 1%                            | 6,943ms     | 1,501ms  | **1,466ms**  | _2%_     |\n\n```\nCache Size                    : The maximum number of results to cache.\nNum Args                      : The number of arguments the memoized function accepts, ex. fn(arg1, arg2, arg3) is 3.\nApprox. Cache Hits (variance) : How varied the passed in arguments are. If the exact same arguments are always used, the cache would be hit 100% of the time. If the same arguments are never used, the cache would be hit 0% of the time.\n% Faster                      : How much faster the 1st best performer was from the 2nd best performer (not against the worst performer).\n```\n\n##### Results\n\nLRU-Memoize performed well with few arguments and lots of cache hits, but degraded quickly as the parameters became less favorable. At 4+ arguments it was up to 20x slower, enough to cause material concern.\n\nMemoizee performed reliably with good speed.\n\nMemoizerific was fastest by about 30% with predictable decreases in performance as tests became more challenging. It is built for real-world production use.\n\n## License\n\nReleased under an MIT license.\n\n## Related\n\n- [Map or Similar](https://github.com/thinkloop/map-or-similar): A JavaScript (JS) Map or Similar object polyfill if Map is not available.\n- [Multi Key Cache](https://github.com/thinkloop/multi-key-cache): A JavaScript (JS) cache that can have multiple complex values as keys.\n\n## Other\n- [todo-app](https://github.com/thinkloop/todo-app/): Example todo app of extreme decoupling of react, redux and selectors\n- [link-react](https://github.com/thinkloop/link-react/): A generalized link <a> component that allows client-side navigation while taking into account exceptions\n\nLike it, star it.\n","_attachments":{},"homepage":"https://github.com/thinkloop/memoizerific#readme","bugs":{"url":"https://github.com/thinkloop/memoizerific/issues"},"license":"MIT"}