{"_id":"cache-storage","_rev":"34-21e3c90f5b68b2fa1ae86e3d30212c06","name":"cache-storage","description":"[ABANDONED] Advanced cache storage for node js","dist-tags":{"latest":"2.0.1"},"versions":{"1.0.0":{"name":"cache-storage","description":"Cache storage for node js","version":"1.0.0","author":{"name":"David Kudera","email":"sakren@gmail.com"},"keywords":["cache","caching","storage"],"repository":{"type":"git","url":"git@github.com:sakren/cache-storage.git"},"engines":{"node":"*"},"main":"./lib/Cache.js","dependencies":{"moment":"2.1.0"},"bugs":{"url":"https://github.com/sakren/cache-storage/issues"},"_id":"cache-storage@1.0.0","dist":{"shasum":"075aa93dae2675d5ea40d9fdd98f57504339bc69","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-1.0.0.tgz","integrity":"sha512-H7OTsr0Fgo9VpF3szLiSCfDXf3+OcrHD2I4Bxi71AgC5zxkYhq6b8xc0eXs7m0dFxwqjnXzX7X/aIev3MMtRjQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFFQdxQIqd611KA0IqNA4OFT/9turf2rO2bFjCJ2ef0dAiEAszVasBwneg2f5Tz5Sb3icAc8TaYyTQ/EKI5VvRbiiRo="}]},"_from":".","_npmVersion":"1.2.32","_npmUser":{"name":"sakren","email":"sakren@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"directories":{}},"1.0.2":{"name":"cache-storage","description":"Cache storage for node js","version":"1.0.2","author":{"name":"David Kudera","email":"sakren@gmail.com"},"keywords":["cache","caching","storage"],"repository":{"type":"git","url":"git@github.com:sakren/cache-storage.git"},"engines":{"node":"*"},"main":"./lib/Cache.js","dependencies":{"moment":"2.1.0"},"bugs":{"url":"https://github.com/sakren/cache-storage/issues"},"_id":"cache-storage@1.0.2","dist":{"shasum":"91091457868135ef7fd46c4857f6fa5a2d86ec0e","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-1.0.2.tgz","integrity":"sha512-nN9bv0NnbKcPjfBMlALjYyHKCG8WCevM31IJJIXMupTT8cdQvDdMOyXkfIBKx4BKbELKjoXmMxjVqK6odYZxog==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCk+DQvB/2JjU11ZBiRCb5MqnaWnphGfwaddOu+0YQmQwIhALOH8jk92LzhM5aV46XTSM3adsV9SeGZh5NOCoRlsCNX"}]},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"sakren","email":"sakren@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"directories":{}},"1.1.0":{"name":"cache-storage","description":"Cache storage for node js","version":"1.1.0","author":{"name":"David Kudera","email":"sakren@gmail.com"},"keywords":["cache","caching","storage"],"repository":{"type":"git","url":"git@github.com:sakren/cache-storage.git"},"engines":{"node":"*"},"main":"./lib/Cache.js","dependencies":{"moment":"2.1.0"},"bugs":{"url":"https://github.com/sakren/cache-storage/issues"},"_id":"cache-storage@1.1.0","dist":{"shasum":"68fe0fb21c3b1f9fbc1091102c29049c15cf1d55","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-1.1.0.tgz","integrity":"sha512-pd39QaN2c9u6jfKWLaAEIcQUeF07v0ZxIoEf7oYyLpgclHs8f149PztoRJeBqq8XRz3MY4HSYF/Yn/p4PWhTvg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNUElw8zdVvyVvR/W0f/gpWh2p886O0CUgn0IMsKaQdgIgSfa5xv2tI4wZBqLjaBdtugQshAisc7QgNoh2E/H58t0="}]},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"sakren","email":"sakren@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"directories":{}},"1.1.1":{"name":"cache-storage","description":"Cache storage for node js","version":"1.1.1","author":{"name":"David Kudera","email":"sakren@gmail.com"},"keywords":["cache","caching","storage"],"repository":{"type":"git","url":"git@github.com:sakren/node-cache-storage.git"},"engines":{"node":"*"},"main":"./lib/Cache.js","dependencies":{"moment":"2.1.0"},"bugs":{"url":"https://github.com/sakren/node-cache-storage/issues"},"_id":"cache-storage@1.1.1","dist":{"shasum":"8343303a15d3a2446ecb747ac5b76c533e75f2dc","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-1.1.1.tgz","integrity":"sha512-dhlRsxcxIiv9Q/gFN4JIY0DEyT1Z/vwL1hKXYVKqhSCfUdXUp59+NkWubXfv/Iwsl8Ybtvckp4PQ5c56h/ld3g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID1UlfvFWNQ57jWhzoY/5Y0b1f+u7bXYJ59ms/o+8DpSAiEAj/w9SyANuwFe1JqS+mCguCvjNOi2xo4bBalnWv0qcLQ="}]},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"sakren","email":"sakren@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"directories":{}},"1.1.2":{"name":"cache-storage","description":"Cache storage for node js","version":"1.1.2","author":{"name":"David Kudera","email":"sakren@gmail.com"},"keywords":["cache","caching","storage"],"repository":{"type":"git","url":"git@github.com:sakren/node-cache-storage.git"},"license":"MIT","engines":{"node":"*"},"main":"./lib/Cache.js","dependencies":{"moment":"2.1.0"},"bugs":{"url":"https://github.com/sakren/node-cache-storage/issues"},"_id":"cache-storage@1.1.2","dist":{"shasum":"0fab00cf775ca4039e2f4fbe73511e246306220e","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-1.1.2.tgz","integrity":"sha512-B40W0pbUaTWnJZr4sGCrEZ4KTZCIXdisfgJQzT355g5GP8GKYl8BlQRoBSbuoHaUv2iE0OcuNNxS+EQ7/IJBfg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE3fuaHm+oDgmZ51t8RmR/2XNx/2iiIVsqE7QhhY7hTBAiEAgtZqfMfEJ7aSrHcJNN5nnOQnaFxVHfESrGY8rNytglI="}]},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"sakren","email":"sakren@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"directories":{}},"1.2.0":{"name":"cache-storage","description":"Cache storage for node js","version":"1.2.0","author":{"name":"David Kudera","email":"sakren@gmail.com"},"keywords":["cache","caching","storage"],"repository":{"type":"git","url":"git@github.com:sakren/node-cache-storage.git"},"license":"MIT","engines":{"node":"*"},"main":"./lib/Cache.js","dependencies":{"moment":"2.1.0"},"devDependencies":{"should":"1.2.2"},"scripts":{"test":"cd ./test; mocha ./index.js --reporter spec;"},"bugs":{"url":"https://github.com/sakren/node-cache-storage/issues"},"_id":"cache-storage@1.2.0","dist":{"shasum":"82a8d6bafaef58cfe7ff314181eb5333e57add98","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-1.2.0.tgz","integrity":"sha512-zGM0dxbegleYrqLgSQq1Ac44QLzF+7KUmYzznhn736M6zeBisI+ASqOTRf9xEOTbGnFV0/KFLBL+AEpzRGc6BQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF3Eamb4ehLhnV/uX04hLKXOEnfT1NTesIkaCD6keeS+AiEAqXgHu08ddcnofq79IfVSlEnqLp8RJk36+dUI1Soyl3s="}]},"_from":".","_npmVersion":"1.3.5","_npmUser":{"name":"sakren","email":"sakren@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"directories":{}},"1.2.1":{"name":"cache-storage","description":"Cache storage for node js","version":"1.2.1","author":{"name":"David Kudera","email":"sakren@gmail.com"},"keywords":["cache","caching","storage"],"repository":{"type":"git","url":"git@github.com:sakren/node-cache-storage.git"},"license":"MIT","engines":{"node":"*"},"main":"./lib/Cache.js","dependencies":{"moment":"2.1.0"},"devDependencies":{"should":"1.2.2"},"scripts":{"test":"cd ./test; mocha ./index.js --reporter spec;"},"bugs":{"url":"https://github.com/sakren/node-cache-storage/issues"},"_id":"cache-storage@1.2.1","dist":{"shasum":"c7fff34020b860d334c1a8b2895f7acf9041424b","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-1.2.1.tgz","integrity":"sha512-2bNFkWvUg1LEgd5fwpgTKeHzcpK9nWBXTd9vR5VA2blYsUnoZfyF8DSFlbqsSxySCBvi8CRGVqWVmaWOFYUswQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDqWtSpxcYye5WfXLZ/60HaIy96gbhD4XvGyCb1YsOqIAIhALb5fguEEmAZ6PYUGPcMB2nY6Q6Gqf9TT0oIJ1iqTING"}]},"_from":".","_npmVersion":"1.3.5","_npmUser":{"name":"sakren","email":"sakren@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"directories":{}},"1.2.2":{"name":"cache-storage","description":"Cache storage for node js","version":"1.2.2","author":{"name":"David Kudera","email":"sakren@gmail.com"},"keywords":["cache","caching","storage"],"repository":{"type":"git","url":"git@github.com:sakren/node-cache-storage.git"},"license":"MIT","engines":{"node":"*"},"main":"./lib/Cache.js","dependencies":{"moment":"2.1.0"},"devDependencies":{"should":"1.2.2"},"scripts":{"test":"cd ./test; mocha ./index.js --reporter spec;"},"bugs":{"url":"https://github.com/sakren/node-cache-storage/issues"},"_id":"cache-storage@1.2.2","dist":{"shasum":"099a78e8c09a0ffb35e120946149142ce7cf1181","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-1.2.2.tgz","integrity":"sha512-em8BYtJchGXjjKQ+3h+G0H3/Ql1GJbmEeF6CXJjv8q7ukHdc0+GGPoq7bgeWl7ibGuRaAOjqUwmNrcafrPtpXA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDrRXqYbPEFQUNauTpFxEeQAiEOnDsAWCZKTpPlWBnFEgIgE6X1Auy48NyoY66zIFjLOO7XTTWEgR5XMdK3XPrBbcA="}]},"_from":".","_npmVersion":"1.3.5","_npmUser":{"name":"sakren","email":"sakren@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"directories":{}},"1.2.3":{"name":"cache-storage","description":"Cache storage for node js","version":"1.2.3","author":{"name":"David Kudera","email":"sakren@gmail.com"},"keywords":["cache","caching","storage"],"repository":{"type":"git","url":"git@github.com:sakren/node-cache-storage.git"},"license":"MIT","engines":{"node":"*"},"main":"./lib/Cache.js","dependencies":{"moment":"2.1.0"},"devDependencies":{"should":"1.2.2"},"scripts":{"test":"cd ./test; mocha ./index.js --reporter spec;"},"bugs":{"url":"https://github.com/sakren/node-cache-storage/issues"},"_id":"cache-storage@1.2.3","dist":{"shasum":"13bfc732a6c8f6d403d975474aa69ec6d1f773a0","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-1.2.3.tgz","integrity":"sha512-XLMmsB1ZtHr/IoGjU7ZIt5Fl/Ab44dL622Q1zglJw/w0SZbZ34FAidY/O/2kbiay6S+JDKcgUtj8upzLyEtx1w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCMoAlMJZglO/DA4Zkg93bGS89Igl3SY92HgLgISkjGvAIhAOqjqUhmY6k3kMGlhQ5KQ3qCrbySbQFdt0gFcTPvwOlE"}]},"_from":".","_npmVersion":"1.3.8","_npmUser":{"name":"sakren","email":"sakren@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"directories":{}},"1.2.4":{"name":"cache-storage","description":"Cache storage for node js","version":"1.2.4","author":{"name":"David Kudera","email":"sakren@gmail.com"},"keywords":["cache","caching","storage"],"repository":{"type":"git","url":"git@github.com:sakren/node-cache-storage.git"},"license":"MIT","engines":{"node":"*"},"main":"./lib/Cache.js","dependencies":{"moment":"latest"},"devDependencies":{"mocha":"latest","chai":"latest"},"scripts":{"test":"cd ./test; echo \"Testing in node:\"; mocha ./node/index.js --reporter spec; echo \"Testing in browser:\"; mocha-phantomjs ./browser/index.html;"},"bugs":{"url":"https://github.com/sakren/node-cache-storage/issues"},"_id":"cache-storage@1.2.4","dist":{"shasum":"641593e47cbb05ef204037b8843abcdb6468decf","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-1.2.4.tgz","integrity":"sha512-7cvXhFXCZvBkQVEN2dlryfVV7nAzHpefeb1Z6SKO632wRLvC3Tsr1jBtY/hxhDjHQ/p704rAWslMxqA62ERt6w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBvyE4heSOmKDXau1vxM3UhNr4u+pZLjGB+nqGTIMfwBAiEA1tiPmbsO6DjjdsKku2foKPgJtKKIDVVtvETFJQLMgog="}]},"_from":".","_npmVersion":"1.3.8","_npmUser":{"name":"sakren","email":"sakren@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"directories":{}},"1.3.0":{"name":"cache-storage","description":"Advanced cache storage for node js","version":"1.3.0","author":{"name":"David Kudera","email":"sakren@gmail.com"},"keywords":["cache","caching","storage","memory"],"repository":{"type":"git","url":"git@github.com:sakren/node-cache-storage.git"},"license":"MIT","engines":{"node":"*"},"main":"./lib/Cache.js","dependencies":{"moment":"latest"},"devDependencies":{"mocha":"latest","chai":"latest"},"scripts":{"test":"cd ./test; echo \"Testing in node:\"; mocha ./node/index.js --reporter spec; echo \"Testing in browser:\"; mocha-phantomjs ./browser/index.html;"},"bugs":{"url":"https://github.com/sakren/node-cache-storage/issues"},"_id":"cache-storage@1.3.0","dist":{"shasum":"0608f1e64f38b45318978e64e85006b45466022a","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-1.3.0.tgz","integrity":"sha512-ySFXh8581vq6pYBzApW0WXGwEGGEa/nzATH5Yrpk2TaWrBnvxkNLIC0DhNzPHFDrKk1VX+sqHk9fHEj3t+Eyxw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC2giJQIl2iUXxS3ylV2MP7jCPmOo1ub9wyHA6WcsgxSgIhANklPIO+mDguuC5c6JEaxi2egtIv3VIAY/TB8ADDdwlC"}]},"_from":".","_npmVersion":"1.3.8","_npmUser":{"name":"sakren","email":"sakren@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"directories":{}},"1.4.0":{"name":"cache-storage","description":"Advanced cache storage for node js","version":"1.4.0","author":{"name":"David Kudera","email":"sakren@gmail.com"},"keywords":["cache","caching","storage","memory"],"repository":{"type":"git","url":"git@github.com:sakren/node-cache-storage.git"},"license":"MIT","engines":{"node":"*"},"main":"./lib/Cache.js","dependencies":{"moment":"latest"},"devDependencies":{"mocha":"latest","chai":"latest"},"scripts":{"test":"cd ./test; echo \"Testing in node:\"; mocha ./node/index.js --reporter spec; cd ./browser; echo \"Testing in browser:\"; mocha-phantomjs ./index.html;"},"bugs":{"url":"https://github.com/sakren/node-cache-storage/issues"},"_id":"cache-storage@1.4.0","dist":{"shasum":"6b422f5ecfc510ee3b73312bf15a9c074f2a61c7","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-1.4.0.tgz","integrity":"sha512-GN1cTuQYfbvrKpviTJyycSEE+dJ9rkPiwDzGOiaC0VhDI7L+fojjsiUQfF9yOKrpD0NgKbmyq1tGaSw7Jz0udA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCXSSeRUBw8BXI5VWwmo9Km+RJpdiR/K3R1/e18KcouBQIhAItbHrXKgXysluCaOzPbcu4QvDLv8Y+ibtwAWXBlet61"}]},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"sakren","email":"sakren@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"directories":{}},"1.4.1":{"name":"cache-storage","description":"Advanced cache storage for node js","version":"1.4.1","author":{"name":"David Kudera","email":"sakren@gmail.com"},"keywords":["cache","caching","storage","memory"],"repository":{"type":"git","url":"git@github.com:sakren/node-cache-storage.git"},"license":"MIT","engines":{"node":"*"},"main":"./lib/Cache.js","dependencies":{"moment":"latest"},"devDependencies":{"mocha":"latest","chai":"latest"},"scripts":{"test":"cd ./test; echo \"Testing in node:\"; mocha ./node/index.js --reporter spec; cd ./browser; echo \"Testing in browser:\"; mocha-phantomjs ./index.html;"},"bugs":{"url":"https://github.com/sakren/node-cache-storage/issues"},"homepage":"https://github.com/sakren/node-cache-storage","_id":"cache-storage@1.4.1","dist":{"shasum":"fec891881a699a79d577a78e3260d841a8d8df83","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-1.4.1.tgz","integrity":"sha512-7xNjaTB4f0AJ37tQrMqYve8TsDD10Zp6eBMPKiUJTRbQ5QbY2Hp10rQzYPGYZu+97lH+JAEExmz1XediX1S5IA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/8uJJpQaRrzNReEsnuMsPKUteuaiuxZrA316SQwCUUgIhAMfZprO9/bzu3rYXFHnJanN3I+qkCAltcqSc3l4Kc2Q0"}]},"_from":".","_npmVersion":"1.3.14","_npmUser":{"name":"sakren","email":"sakren@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"directories":{}},"2.0.0":{"name":"cache-storage","description":"Advanced cache storage for node js","version":"2.0.0","author":{"name":"David Kudera","email":"sakren@gmail.com"},"keywords":["cache","caching","storage","memory"],"repository":{"type":"git","url":"git@github.com:sakren/node-cache-storage.git"},"license":"MIT","engines":{"node":">=0.9"},"main":"./lib/Cache.js","dependencies":{"moment":"~2.5.0","async":"~0.2.9","redis":"~0.10.0"},"devDependencies":{"chai":"~1.8.1","mocha":"~1.17.0","mocha-phantomjs":"~3.3.1","phantomjs":"~1.9.2-6","fs-mock":"~1.0.1"},"scripts":{"test":"npm run test-node && npm run test-browser","build-and-test":"npm run build-tests && npm run test","build-tests":"coffee -co ./test/node/lib ./test/node/src; cd ./test/browser; simq build;","test-node":"mocha ./test/node/index.js --reporter spec","test-browser":"mocha-phantomjs ./test/browser/index.html"},"bugs":{"url":"https://github.com/sakren/node-cache-storage/issues"},"homepage":"https://github.com/sakren/node-cache-storage","_id":"cache-storage@2.0.0","dist":{"shasum":"81ff4dc2af757ceef7ff99c5ff4b636d0a7259fb","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-2.0.0.tgz","integrity":"sha512-qDbv7BVkps2kIyhFYDsZ5S62UdNW1dwmqzBGa9lPo+7ZiI9uM7dSx5yq7VzpfeNoiy9ONkR4uNh8+sny7rQm8w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDOixIgK6h2tkhGJt8r7sr3KyrdHgMSW641IeWbWw/whwIhANJ8IYedtijFwwkPBXnwO/HgK8/sD1BF8fqvi+5aTfsu"}]},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"sakren","email":"sakren@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}]},"2.0.1":{"name":"cache-storage","description":"[ABANDONED] Advanced cache storage for node js","version":"2.0.1","author":{"name":"David Kudera","email":"kudera.d@gmail.com"},"keywords":["cache","caching","storage","memory"],"repository":{"type":"git","url":"git@github.com:Carrooi/Node-CacheStorage.git"},"license":"MIT","engines":{"node":">=0.9"},"main":"./lib/Cache.js","dependencies":{"moment":"~2.5.0","async":"~0.2.9","redis":"~0.10.0"},"devDependencies":{"chai":"~1.8.1","mocha":"~1.17.0","mocha-phantomjs":"~3.3.1","phantomjs":"~1.9.2-6","fs-mock":"~1.0.1"},"scripts":{"test":"npm run test-node && npm run test-browser","build-and-test":"npm run build-tests && npm run test","build-tests":"coffee -co ./test/node/lib ./test/node/src; cd ./test/browser; simq build;","test-node":"mocha ./test/node/index.js --reporter spec","test-browser":"mocha-phantomjs ./test/browser/index.html"},"gitHead":"4a7cf436463c5cbeacd5169bce0abe61d39f919e","bugs":{"url":"https://github.com/Carrooi/Node-CacheStorage/issues"},"homepage":"https://github.com/Carrooi/Node-CacheStorage","_id":"cache-storage@2.0.1","_shasum":"e5eb570c307e61e2a31119f5c326275b1fd22ce7","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"sakren","email":"kudera.d@gmail.com"},"maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"dist":{"shasum":"e5eb570c307e61e2a31119f5c326275b1fd22ce7","tarball":"https://registry.npmjs.org/cache-storage/-/cache-storage-2.0.1.tgz","integrity":"sha512-tkNBY5fyRjPOkriZ4qM2Z8qbFMr1W4oeXX0beo1dPhJStqJMnXkJDH/IJxUWMAkDyAc+uVx88jg/iSSu84JiyA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDx7YCbKMiS+H24xTDncHQGQzXzgDRS9OlQWcsyh/W1WgIhAN0CXzxFDqRpkU5iVB5q7oR17WIUOthlzC9upTmeDZzv"}]}}},"readme":"[![NPM version](https://img.shields.io/npm/v/cache-storage.svg?style=flat-square)](http://badge.fury.io/js/cache-storage)\n[![Dependency Status](https://img.shields.io/gemnasium/Carrooi/Node-CacheStorage.svg?style=flat-square)](https://gemnasium.com/Carrooi/Node-CacheStorage)\n[![Build Status](https://img.shields.io/travis/Carrooi/Node-CacheStorage.svg?style=flat-square)](https://travis-ci.org/Carrooi/Node-CacheStorage)\n\n# cache-storage\n\nAdvanced cache storage inspired by cache in [Nette framework](http://doc.nette.org/en/caching).\n\nCan be also used in browser for example with [simq](https://npmjs.org/package/simq).\n\n## Help\n\nUnfortunately I don't have any more time to maintain this repository :-( \n\nDon't you want to save me and this project by taking over it?\n\n![sad cat](https://raw.githubusercontent.com/sakren/sakren.github.io/master/images/sad-kitten.jpg)\n\n## Installing\n\n```\n$ npm install cache-storage\n```\n\nRequired node version: >= 0.9\n\n## Creating cache\n\n```\nvar Cache = require('cache-storage');\nvar FileStorage = require('cache-storage/Storage/FileSyncStorage');\n\nvar cache = new Cache(new FileStorage('./temp'), 'namespace');\n```\n\nYou have to set storage which you want to use (their list below) and namespace for cache, because you can use\nmore than one independent caches.\n\n## Available storages\n\n### Synchronous storages\n\n* `cache-storage/Storage/FileSyncStorage`: saving data into json files\n* `cache-storage/Storage/BrowserLocalSyncStorage`: saving data into HTML5 local storage\n* `cache-storage/Storage/DevNullSyncStorage`: does not save anything and load always null\n* `cache-storage/Storage/MemorySyncStorage`: saving data just into storage's class properties\n\n### Asynchronouse storages\n\n* `cache-storage/Storage/FileAsyncStorage`\n* `cache-storage/Storage/DevNullAsyncStorage`\n* `cache-storage/Storage/MemoryAsyncStorage`\n* `cache-storage/Storage/RedisAsyncStorage`: uses [redis](https://github.com/mranney/node_redis) package\n\nMore storages will be added in future.\n\n### Only node storages\n\n* `cache-storage/Storage/FileSyncStorage`\n* `cache-storage/Storage/FileAsyncStorage`\n* `cache-storage/Storage/RedisAsyncStorage`\n\n### Only browser storages\n\n* `cache-storage/Storage/BrowserLocalSyncStorage`\n\n### Redis storage\n\nThis storage exposes some variables from original package ([redis](https://github.com/mranney/node_redis)).\n\n```\ncache.storage.selectDatabase(3, function(err) {\n\tconsole.log('changed database');\n});\ncache.storage.client;\t\t// original client object from redis module\n```\n\n## Loading & saving\n\n### Synchronous\n\n```\nvar data = cache.load('some_data');\n\nif (data === null) {\n\t// let's save data to cache\n\tdata = cache.save('some_data', 'some value of some_data');\n}\n\nconsole.log(data);\t\t// output: some value of some_data\n```\n\nThere is also other more simple way to save data to cache if they are not in cache already.\n\n```\nvar data = cache.load('some_data', function() {\n\treturn 'some value of some_data';\n});\n```\n\nWhen no data were found, then fallback anonymous function is called and data from return statement are used.\nCache.save function always return given data.\n\n### Asynchronous\n\n```\ncache.load('some_data', function(err, data) {\n\tif (data === null) {\n\t\tcache.save('some_data', 'some value of some_data', function(err, savedData) {\n\t\t\tconsole.log(savedData);\t\t\t// output: some value of some_data\n\t\t});\n\t}\n});\n```\n\nor with fallback:\n```\ncache.load('some_data', function() {\n\treturn 'some value of some_data';\n}, function(data) {\n\tconsole.log(data);\t\t// output: some value of some_data\n});\n```\n\n## Removing\n\n### Synchronous\n\n```\ncache.remove('some_data');\n```\n\nor:\n```\ncache.save('some_data', null);\n```\n\n### Asynchronous\n\n```\ncache.remove('some_data', function(err) {\n\tconsole.log('removed some_data');\n});\n```\n\n## Expiration\n\nYou can set some conditions and information for every data which will be used for auto expiration or for your manual\nexpiration.\n\n```\ncache.save('some_data', 'some value of some_data', {\n\tfiles: ['./images.txt', './info.txt'],\t\t// expiration by files\n\ttags: ['image', 'article'],\t\t\t\t\t// tags for manual expiration\n\texpire: '2015-12-24 18:00',\t\t\t\t\t// expire data in given date (other examples below)\n\titems: ['some_other_data'],\t\t\t\t\t// expire if other data in cache expires\n\tpriority: 50\t\t\t\t\t\t\t\t// example below\n});\n```\n\n### Expiration by files\n\nIf you set files to save function, then that item will expire when some of given files is changed.\n\nThis type of expiration can be used also in browser, but only with [simq](https://npmjs.org/package/simq) and with allowed\noption `filesStats`. See at documentation of [simq](https://npmjs.org/package/simq).\n\n**Second argument in `clean` method is callback with possible error, this is used just for asynchronous storages.**\n\n### Expiration by tags\n\n```\ncache.clean({\n\ttags: ['image']\n});\n```\n\nNow every item in cache with tag image will be removed.\n\n### Expiration by date\n\nThere are two ways to expire data by date. First way is to set exact date in YYYY-MM-DD HH:mm format. Second way is to\nset literal object with information about adding date to actual date.\n\n```\ncache.save('some_data', 'some value of some_data', {\n\texpire: {days: 1}\n});\n```\n\nNow some_data will expire tomorrow. You can see full documentation in moment.js [documentation](http://momentjs.com/docs/#/manipulating/add/).\n\n### Items expiration\n\nEvery cache item can also depend on other cached items. If some of these other items is invalidated, then also this main\nis invalidated.\n\n### Expiration by priority\n\n```\ncache.clean({\n\tpriority: 100\n});\n```\n\nAll items with priority 100 or below will expire.\n\n## Removing all in namespace\n\n```\ncache.clean(Cache.ALL);\t\t// or cache.clean('all');\n```\n\n## Tests\n\n```\n$ npm test\n```\n\n## Changelog\n\n* 2.0.1\n\t+ Move under Carrooi organization\n\t+ Abandon package\n\n* 2.0.0\n\t+ Support for asynchronous storages\n\t+ Appended `Sync` to old storages' names (original names are deprecated)\n\t+ Added RedisAsyncStorage, FileAsyncStorage, MemoryAsyncStorage and DevNullAsyncStorage\n\t+ Many optimizations\n\t+ Added many tests\n\t+ Using [fs-mock](https://github.com/sakren/node-fs-mock) for file system\n\t+ Updated dependencies\n\t+ Better documentation\n\n* 1.4.1\n\t+ Can not use some js reserved words\n\n* 1.4.0\n\t+ Bug with tests\n\t+ Added support for invalidating cache in browser by files (only with [simq](https://npmjs.org/package/simq))\n\n* 1.3.0\n\t+ Added DevNullStorage\n\t+ Added MemoryStorage\n\t+ FileStorage throws an error on browser\n\t+ Refactoring storages\n\n* 1.2.4\n\t+ Rewritten tests\n\t+ Added tests for browser\n\t+ Refactoring storages\n\t+ Bad encoding in FileStorage\n\n* 1.2.3\n\t+ Shortcut for base Storage class\n\n* 1.2.2\n\t+ Cache throw error if storage is not instance of Storage class\n\n* 1.2.1\n\t+ FileStorage throw error if path does not exists or if it is a directory\n\n+ 1.2.0\n\t+ Bugs in dependencies parser\n\t+ Written some mocha tests\n\t+ Added changelog\n\n+ 1.1.2\n\t+ Added MIT license\n\n* 1.1.1\n\t+ Renamed repository (cache-storage => node-cache-storage)\n\n* 1.1.0\n\t+ Added support for HTML5 local storage\n\n* 1.0.2\n\t+ Removed dependency on crypto\n\n* 1.0.1\n\t+ Removed hard dependencies on fs and path\n\t+ Trying other hash methods usable in browser\n\n\n* 1.0.0\n\t+ Initial version\n","maintainers":[{"name":"sakren","email":"sakren@gmail.com"}],"time":{"modified":"2022-06-13T05:23:29.378Z","created":"2013-07-13T17:57:28.435Z","1.0.0":"2013-07-13T17:57:32.654Z","1.0.2":"2013-07-20T14:53:46.265Z","1.1.0":"2013-07-20T15:15:20.994Z","1.1.1":"2013-07-22T20:59:00.404Z","1.1.2":"2013-07-22T21:25:00.572Z","1.2.0":"2013-08-09T21:20:46.398Z","1.2.1":"2013-08-10T07:04:19.853Z","1.2.2":"2013-08-10T07:19:08.989Z","1.2.3":"2013-09-18T11:36:08.329Z","1.2.4":"2013-09-19T08:05:53.378Z","1.3.0":"2013-09-19T18:54:16.567Z","1.4.0":"2013-11-09T19:40:50.145Z","1.4.1":"2013-11-26T08:36:49.262Z","2.0.0":"2014-01-15T18:24:47.285Z","2.0.1":"2015-07-17T20:00:54.688Z"},"author":{"name":"David Kudera","email":"kudera.d@gmail.com"},"repository":{"type":"git","url":"git@github.com:Carrooi/Node-CacheStorage.git"},"readmeFilename":"README.md","users":{"tinyhill":true,"kankungyip":true},"homepage":"https://github.com/Carrooi/Node-CacheStorage","keywords":["cache","caching","storage","memory"],"bugs":{"url":"https://github.com/Carrooi/Node-CacheStorage/issues"},"license":"MIT"}