Skip to content

Instantly share code, notes, and snippets.

@indutny

indutny/1.json Secret

Created July 26, 2013 14:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save indutny/15ef4e5403cee22366b2 to your computer and use it in GitHub Desktop.
Save indutny/15ef4e5403cee22366b2 to your computer and use it in GitHub Desktop.
{"_id":"graceful-fs","_rev":"60-91d28e468b6dfd59087a1f4cd0460535","name":"graceful-fs","description":"A drop-in replacement for fs, making various improvements.","dist-tags":{"latest":"2.0.0"},"versions":{"1.0.0":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs with incremental backoff on EMFILE","version":"1.0.0","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":"0.4 || 0.5"},"dependencies":{},"devDependencies":{},"_npmJsonOpts":{"file":"/Users/isaacs/.npm/graceful-fs/1.0.0/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"graceful-fs@1.0.0","_engineSupported":true,"_npmVersion":"1.0.18","_nodeVersion":"v0.4.10-pre","_defaultsLoaded":true,"dist":{"shasum":"ba8e39479ec46658d59eb305f878f8b0820fa8e5","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.0.0.tgz"},"scripts":{},"directories":{}},"1.0.1":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs with incremental backoff on EMFILE","version":"1.0.1","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":"0.4 || 0.5"},"dependencies":{},"devDependencies":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"graceful-fs@1.0.1","_engineSupported":true,"_npmVersion":"1.0.30","_nodeVersion":"v0.5.8-pre","_defaultsLoaded":true,"dist":{"shasum":"63647ef7ca9bf0abc561cdb72d2a58704a11cc2f","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.0.1.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.2":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs with incremental backoff on EMFILE","version":"1.0.2","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":"0.4 || 0.5 || 0.6"},"dependencies":{},"devDependencies":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"graceful-fs@1.0.2","_engineSupported":true,"_npmVersion":"1.0.106","_nodeVersion":"v0.6.2-pre","_defaultsLoaded":true,"dist":{"shasum":"79ac9f685c97c391d88a95e4cde5a1313c3807de","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.0.2.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.1.0":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.0","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":"0.4 || 0.5 || 0.6"},"dependencies":{"fast-list":"1"},"devDependencies":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"graceful-fs@1.1.0","_engineSupported":true,"_npmVersion":"1.1.0-alpha-2","_nodeVersion":"v0.6.2-pre","_defaultsLoaded":true,"dist":{"shasum":"c36f1d3b31d71b4cef3da303b784074f6d578037","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.0.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.1.1":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.1","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":"0.4 || 0.5 || 0.6"},"dependencies":{"fast-list":"1"},"devDependencies":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"graceful-fs@1.1.1","_engineSupported":true,"_npmVersion":"1.1.0-alpha-2","_nodeVersion":"v0.6.4-pre","_defaultsLoaded":true,"dist":{"shasum":"2f10989f7e9addfcea6592d95f52bb0c2d7e5bd2","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.1.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.1.2":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.2","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":"0.4 || 0.5 || 0.6"},"dependencies":{"fast-list":"1"},"devDependencies":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"graceful-fs@1.1.2","_engineSupported":true,"_npmVersion":"1.1.0-alpha-6","_nodeVersion":"v0.6.4","_defaultsLoaded":true,"dist":{"shasum":"e82181f54de6620c67034e736fbc0d8fee8c1ffa","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.2.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.1.3":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.3","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"dependencies":{"fast-list":"1"},"devDependencies":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"graceful-fs@1.1.3","optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.0-2","_nodeVersion":"v0.6.8-pre","_defaultsLoaded":true,"dist":{"shasum":"7c5264a5fd5888cf02545898e402502ff01150ae","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.3.tgz"},"readme":"Just like node's `fs` module, but it does an incremental back-off when\nEMFILE is encountered.\n\nUseful in asynchronous situations where one needs to try to open lots\nand lots of files.\n","maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.1.4":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.4","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"dependencies":{"fast-list":"1"},"devDependencies":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"graceful-fs@1.1.4","optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.0-2","_nodeVersion":"v0.6.8-pre","_defaultsLoaded":true,"dist":{"shasum":"d53940783394758e59b24e10d355cbcf8c225103","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.4.tgz"},"readme":"Just like node's `fs` module, but it does an incremental back-off when\nEMFILE is encountered.\n\nUseful in asynchronous situations where one needs to try to open lots\nand lots of files.\n","maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.1.5":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.5","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"dependencies":{"fast-list":"1"},"devDependencies":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"graceful-fs@1.1.5","optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.0-2","_nodeVersion":"v0.6.9-pre","_defaultsLoaded":true,"dist":{"shasum":"0e4692e2240d3951c135587ff7dc8c557186d037","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.5.tgz"},"readme":"Just like node's `fs` module, but it does an incremental back-off when\nEMFILE is encountered.\n\nUseful in asynchronous situations where one needs to try to open lots\nand lots of files.\n","maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.1.6":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.6","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"devDependencies":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"graceful-fs@1.1.6","dependencies":{},"optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.10","_nodeVersion":"v0.7.7-pre","_defaultsLoaded":true,"dist":{"shasum":"cb87fa245e5669fb7b1da44ceef5920054052e24","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.6.tgz"},"readme":"Just like node's `fs` module, but it does an incremental back-off when\nEMFILE is encountered.\n\nUseful in asynchronous situations where one needs to try to open lots\nand lots of files.\n","maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.1.7":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.7","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"devDependencies":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"graceful-fs@1.1.7","dependencies":{},"optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.10","_nodeVersion":"v0.7.7-pre","_defaultsLoaded":true,"dist":{"shasum":"e5cfd7904de546273c1c461ddd053e44e84bc0d7","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.7.tgz"},"readme":"Just like node's `fs` module, but it does an incremental back-off when\nEMFILE is encountered.\n\nUseful in asynchronous situations where one needs to try to open lots\nand lots of files.\n","maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.1.8":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.8","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"devDependencies":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"graceful-fs@1.1.8","dependencies":{},"optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.10","_nodeVersion":"v0.7.7-pre","_defaultsLoaded":true,"dist":{"shasum":"7c9b7cd96f16b83230f61d522156306500914888","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.8.tgz"},"readme":"Just like node's `fs` module, but it does an incremental back-off when\nEMFILE is encountered.\n\nUseful in asynchronous situations where one needs to try to open lots\nand lots of files.\n","maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.1.9":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.9","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"devDependencies":{},"readme":"Just like node's `fs` module, but it does an incremental back-off when\nEMFILE is encountered.\n\nUseful in asynchronous situations where one needs to try to open lots\nand lots of files.\n","_id":"graceful-fs@1.1.9","dist":{"shasum":"2d8916e828b906a921d7e7de8fc2ba148f03b18a","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.9.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.1.10":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.10","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"devDependencies":{},"directories":{"test":"test"},"dependencies":{},"scripts":{"test":"tap test/*.js"},"keywords":["fs","EMFILE","error","handling","monkeypatch"],"license":"BSD","readme":"Just like node's `fs` module, but it does an incremental back-off when\nEMFILE is encountered.\n\nUseful in asynchronous situations where one needs to try to open lots\nand lots of files.\n","_id":"graceful-fs@1.1.10","dist":{"shasum":"388a63917e823bc695afd57c76d7f3ee3db54ad3","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.10.tgz"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}]},"1.1.11":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.11","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"devDependencies":{},"directories":{"test":"test"},"dependencies":{},"scripts":{"test":"tap test/*.js"},"keywords":["fs","EMFILE","error","handling","monkeypatch"],"license":"BSD","readme":"Just like node's `fs` module, but it does an incremental back-off when\nEMFILE is encountered.\n\nUseful in asynchronous situations where one needs to try to open lots\nand lots of files.\n","_id":"graceful-fs@1.1.11","dist":{"shasum":"3a3de260cc4cc80ae13debf31b71f73c2c5eb5e5","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.11.tgz"},"_npmVersion":"1.1.61","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}]},"1.1.12":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.12","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"devDependencies":{},"directories":{"test":"test"},"dependencies":{"mkdirp":"~0.3.4"},"scripts":{"test":"tap test/*.js"},"keywords":["fs","EMFILE","error","handling","monkeypatch"],"license":"BSD","readme":"Just like node's `fs` module, but it does an incremental back-off when\nEMFILE is encountered.\n\nUseful in asynchronous situations where one needs to try to open lots\nand lots of files.\n","_id":"graceful-fs@1.1.12","dist":{"shasum":"baff9d5d87b722ecef6615ea301a5cb9e2860038","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.12.tgz"},"_npmVersion":"1.1.61","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}]},"1.1.13":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.13","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"directories":{"test":"test"},"scripts":{"test":"tap test/*.js"},"keywords":["fs","EMFILE","error","handling","monkeypatch"],"license":"BSD","readme":"Just like node's `fs` module, but it does an incremental back-off when\nEMFILE is encountered.\n\nUseful in asynchronous situations where one needs to try to open lots\nand lots of files.\n","_id":"graceful-fs@1.1.13","dist":{"shasum":"a91e1d8231dc083bdaa227983fbdf5010944ca14","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.13.tgz"},"_npmVersion":"1.1.61","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}]},"1.1.14":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.1.14","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"directories":{"test":"test"},"scripts":{"test":"tap test/*.js"},"keywords":["fs","EMFILE","error","handling","monkeypatch"],"license":"BSD","readme":"Just like node's `fs` module, but it does an incremental back-off when\nEMFILE is encountered.\n\nUseful in asynchronous situations where one needs to try to open lots\nand lots of files.\n","_id":"graceful-fs@1.1.14","dist":{"shasum":"07078db5f6377f6321fceaaedf497de124dc9465","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.1.14.tgz"},"_npmVersion":"1.1.61","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}]},"1.2.0":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"fs monkey-patching to avoid EMFILE and other problems","version":"1.2.0","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"directories":{"test":"test"},"scripts":{"test":"tap test/*.js"},"keywords":["fs","EMFILE","error","handling","monkeypatch"],"license":"BSD","readme":"Just like node's `fs` module, but it does an incremental back-off when\nEMFILE is encountered.\n\nUseful in asynchronous situations where one needs to try to open lots\nand lots of files.\n","readmeFilename":"README.md","_id":"graceful-fs@1.2.0","dist":{"shasum":"fe2d82a295e30de4e1d1c04ec159e10061140704","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.2.0.tgz"},"_from":".","_npmVersion":"1.2.4","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}]},"1.2.1":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"A drop-in replacement for fs, making various improvements.","version":"1.2.1","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"directories":{"test":"test"},"scripts":{"test":"tap test/*.js"},"keywords":["fs","module","reading","retry","retries","queue","error","errors","handling","EMFILE","EAGAIN","EINVAL","EPERM","EACCESS"],"license":"BSD","readme":"# graceful-fs\n\ngraceful-fs functions as a drop-in replacement for the fs module,\nmaking various improvements.\n\nThe improvements are meant to normalize behavior across different\nplatforms and environments, and to make filesystem access more\nresilient to errors.\n\n## Improvements over fs module\n\ngraceful-fs:\n\n* keeps track of how many file descriptors are open, and by default\n limits this to 1024. Any further requests to open a file are put in a\n queue until new slots become available. If 1024 turns out to be too\n much, it decreases the limit further.\n* fixes `lchmod` for Node versions prior to 0.6.2.\n* implements `fs.lutimes` if possible. Otherwise it becomes a noop.\n* ignores `EINVAL` and `EPERM` errors in `chown`, `fchown` or\n `lchown` if the user isn't root.\n* makes `lchmod` and `lchown` become noops, if not available.\n* retries reading a file if `read` results in EAGAIN error.\n\nOn Windows, it retries renaming a file for up to one second if `EACCESS`\nor `EPERM` error occurs, likely because antivirus software has locked\nthe directory.\n\n## Configuration\n\nThe maximum number of open file descriptors that graceful-fs manages may\nbe adjusted by setting `fs.MAX_OPEN` to a different number. The default\nis 1024.\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/isaacs/node-graceful-fs/issues"},"_id":"graceful-fs@1.2.1","dist":{"shasum":"b35cc6e623576fc2a278cba12c00dda6a1758d2d","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.2.1.tgz"},"_from":".","_npmVersion":"1.2.19","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}]},"1.2.2":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"A drop-in replacement for fs, making various improvements.","version":"1.2.2","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"directories":{"test":"test"},"scripts":{"test":"tap test/*.js"},"keywords":["fs","module","reading","retry","retries","queue","error","errors","handling","EMFILE","EAGAIN","EINVAL","EPERM","EACCESS"],"license":"BSD","readme":"# graceful-fs\n\ngraceful-fs functions as a drop-in replacement for the fs module,\nmaking various improvements.\n\nThe improvements are meant to normalize behavior across different\nplatforms and environments, and to make filesystem access more\nresilient to errors.\n\n## Improvements over fs module\n\ngraceful-fs:\n\n* keeps track of how many file descriptors are open, and by default\n limits this to 1024. Any further requests to open a file are put in a\n queue until new slots become available. If 1024 turns out to be too\n much, it decreases the limit further.\n* fixes `lchmod` for Node versions prior to 0.6.2.\n* implements `fs.lutimes` if possible. Otherwise it becomes a noop.\n* ignores `EINVAL` and `EPERM` errors in `chown`, `fchown` or\n `lchown` if the user isn't root.\n* makes `lchmod` and `lchown` become noops, if not available.\n* retries reading a file if `read` results in EAGAIN error.\n\nOn Windows, it retries renaming a file for up to one second if `EACCESS`\nor `EPERM` error occurs, likely because antivirus software has locked\nthe directory.\n\n## Configuration\n\nThe maximum number of open file descriptors that graceful-fs manages may\nbe adjusted by setting `fs.MAX_OPEN` to a different number. The default\nis 1024.\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/isaacs/node-graceful-fs/issues"},"_id":"graceful-fs@1.2.2","dist":{"shasum":"2643e33eaed1c7277decd37377ff9fb394689cf5","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.2.2.tgz"},"_from":".","_npmVersion":"1.2.28","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}]},"1.2.3":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"A drop-in replacement for fs, making various improvements.","version":"1.2.3","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"directories":{"test":"test"},"scripts":{"test":"tap test/*.js"},"keywords":["fs","module","reading","retry","retries","queue","error","errors","handling","EMFILE","EAGAIN","EINVAL","EPERM","EACCESS"],"license":"BSD","readme":"# graceful-fs\n\ngraceful-fs functions as a drop-in replacement for the fs module,\nmaking various improvements.\n\nThe improvements are meant to normalize behavior across different\nplatforms and environments, and to make filesystem access more\nresilient to errors.\n\n## Improvements over fs module\n\ngraceful-fs:\n\n* keeps track of how many file descriptors are open, and by default\n limits this to 1024. Any further requests to open a file are put in a\n queue until new slots become available. If 1024 turns out to be too\n much, it decreases the limit further.\n* fixes `lchmod` for Node versions prior to 0.6.2.\n* implements `fs.lutimes` if possible. Otherwise it becomes a noop.\n* ignores `EINVAL` and `EPERM` errors in `chown`, `fchown` or\n `lchown` if the user isn't root.\n* makes `lchmod` and `lchown` become noops, if not available.\n* retries reading a file if `read` results in EAGAIN error.\n\nOn Windows, it retries renaming a file for up to one second if `EACCESS`\nor `EPERM` error occurs, likely because antivirus software has locked\nthe directory.\n\n## Configuration\n\nThe maximum number of open file descriptors that graceful-fs manages may\nbe adjusted by setting `fs.MAX_OPEN` to a different number. The default\nis 1024.\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/isaacs/node-graceful-fs/issues"},"_id":"graceful-fs@1.2.3","dist":{"shasum":"15a4806a57547cb2d2dbf27f42e89a8c3451b364","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-1.2.3.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}]},"2.0.0":{"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"name":"graceful-fs","description":"A drop-in replacement for fs, making various improvements.","version":"2.0.0","repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"main":"graceful-fs.js","engines":{"node":">=0.4.0"},"directories":{"test":"test"},"scripts":{"test":"tap test/*.js"},"keywords":["fs","module","reading","retry","retries","queue","error","errors","handling","EMFILE","EAGAIN","EINVAL","EPERM","EACCESS"],"license":"BSD","readme":"# graceful-fs\n\ngraceful-fs functions as a drop-in replacement for the fs module,\nmaking various improvements.\n\nThe improvements are meant to normalize behavior across different\nplatforms and environments, and to make filesystem access more\nresilient to errors.\n\n## Improvements over fs module\n\ngraceful-fs:\n\n* keeps track of how many file descriptors are open, and by default\n limits this to 1024. Any further requests to open a file are put in a\n queue until new slots become available. If 1024 turns out to be too\n much, it decreases the limit further.\n* fixes `lchmod` for Node versions prior to 0.6.2.\n* implements `fs.lutimes` if possible. Otherwise it becomes a noop.\n* ignores `EINVAL` and `EPERM` errors in `chown`, `fchown` or\n `lchown` if the user isn't root.\n* makes `lchmod` and `lchown` become noops, if not available.\n* retries reading a file if `read` results in EAGAIN error.\n\nOn Windows, it retries renaming a file for up to one second if `EACCESS`\nor `EPERM` error occurs, likely because antivirus software has locked\nthe directory.\n\n## Configuration\n\nThe maximum number of open file descriptors that graceful-fs manages may\nbe adjusted by setting `fs.MAX_OPEN` to a different number. The default\nis 1024.\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/isaacs/node-graceful-fs/issues"},"_id":"graceful-fs@2.0.0","dist":{"shasum":"c9a206f6f5f4b94e1046dfaaccfe9e12d0ab8cef","tarball":"http://npm.yandex-team.ru:5984/graceful-fs/-/graceful-fs-2.0.0.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}]}},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"time":{"1.0.0":"2011-07-20T08:49:38.481Z","1.0.1":"2011-09-25T00:33:29.942Z","1.0.2":"2011-11-18T21:15:46.607Z","1.1.0":"2011-11-23T00:45:14.407Z","1.1.1":"2011-11-28T23:32:21.075Z","1.1.2":"2011-12-03T02:27:37.810Z","1.1.3":"2012-01-19T01:10:19.961Z","1.1.4":"2012-01-19T18:09:15.746Z","1.1.5":"2012-01-23T22:27:39.609Z","1.1.6":"2012-03-20T01:26:15.355Z","1.1.7":"2012-03-21T21:06:58.684Z","1.1.8":"2012-03-22T23:20:47.942Z","1.1.9":"2012-07-11T23:10:33.354Z","1.1.10":"2012-07-28T17:24:47.924Z","1.1.11":"2012-09-18T22:15:39.397Z","1.1.12":"2012-09-18T23:12:22.368Z","1.1.13":"2012-09-18T23:16:11.936Z","1.1.14":"2012-09-20T18:15:05.948Z","1.2.0":"2013-02-06T00:01:39.344Z","1.2.1":"2013-04-30T17:07:10.366Z","1.2.2":"2013-06-12T17:30:47.695Z","1.2.3":"2013-07-10T07:46:03.989Z","2.0.0":"2013-07-11T07:10:06.790Z"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"repository":{"type":"git","url":"git://github.com/isaacs/node-graceful-fs.git"},"users":{"fgribreau":true,"pid":true},"_attachments":{"graceful-fs-2.0.0.tgz":{"content_type":"application/octet-stream","revpos":59,"digest":"md5-AlRW1WPukZhKtf6BPBUtVg==","length":4950,"stub":true},"graceful-fs-1.2.3.tgz":{"content_type":"application/octet-stream","revpos":57,"digest":"md5-fcHGx0GpmgIbI8115OMHww==","length":5939,"stub":true},"graceful-fs-1.2.2.tgz":{"content_type":"application/octet-stream","revpos":51,"digest":"md5-YRU38T0DIaXYjvbHCTLjSA==","length":5707,"stub":true},"graceful-fs-1.2.1.tgz":{"content_type":"application/octet-stream","revpos":48,"digest":"md5-iObUkUZeiMMrGOsakHBGrw==","length":4563,"stub":true},"graceful-fs-1.2.0.tgz":{"content_type":"application/octet-stream","revpos":47,"digest":"md5-IQjig/HQgTMCyFNkGIA+9g==","length":4094,"stub":true},"graceful-fs-1.1.14.tgz":{"content_type":"application/octet-stream","revpos":45,"digest":"md5-+0bIIKBjpma+BLLEFtUbKQ==","length":4025,"stub":true},"graceful-fs-1.1.13.tgz":{"content_type":"application/octet-stream","revpos":43,"digest":"md5-PCpSzT89Pm9lrpANTa5nFw==","length":4013,"stub":true},"graceful-fs-1.1.12.tgz":{"content_type":"application/octet-stream","revpos":41,"digest":"md5-2FH9xqExctqFPtvCu8HMHw==","length":4058,"stub":true},"graceful-fs-1.1.11.tgz":{"content_type":"application/octet-stream","revpos":39,"digest":"md5-SAng1dP3X6fYb+zeykLLpA==","length":4045,"stub":true},"graceful-fs-1.1.10.tgz":{"content_type":"application/octet-stream","revpos":33,"digest":"md5-L+IkZ00tVPskSmHqtMkMtg==","length":3842,"stub":true},"graceful-fs-1.1.9.tgz":{"content_type":"application/octet-stream","revpos":31,"digest":"md5-hq0EdQYHiecuJMLmd49DqA==","length":3475,"stub":true},"graceful-fs-1.1.8.tgz":{"content_type":"application/octet-stream","revpos":25,"digest":"md5-xPOAq4lo3GW0Llv7m2BUKQ==","length":3529,"stub":true},"graceful-fs-1.1.7.tgz":{"content_type":"application/octet-stream","revpos":23,"digest":"md5-sgEGf2ryFJ8VH4G3Y13eVg==","length":3526,"stub":true},"graceful-fs-1.1.6.tgz":{"content_type":"application/octet-stream","revpos":21,"digest":"md5-EH8TxDzIhU23azRZEn1AGg==","length":3333,"stub":true},"graceful-fs-1.1.5.tgz":{"content_type":"application/octet-stream","revpos":19,"digest":"md5-UzsIcXtgLuRg46hMd6nfEQ==","length":3360,"stub":true},"graceful-fs-1.1.4.tgz":{"content_type":"application/octet-stream","revpos":17,"digest":"md5-IYF4AMPPVbeMcQBjgh/l1g==","length":3352,"stub":true},"graceful-fs-1.1.3.tgz":{"content_type":"application/octet-stream","revpos":15,"digest":"md5-jMYoivjEfgTB2lmUXLZJxw==","length":3353,"stub":true},"graceful-fs-1.1.2.tgz":{"content_type":"application/octet-stream","revpos":13,"digest":"md5-mFHJzVsGc/K2+Wlvhove3g==","length":2941,"stub":true},"graceful-fs-1.1.1.tgz":{"content_type":"application/octet-stream","revpos":11,"digest":"md5-BNvrLlGc3GOYSb3nlkYbdA==","length":2875,"stub":true},"graceful-fs-1.1.0.tgz":{"content_type":"application/octet-stream","revpos":9,"digest":"md5-4+Gr5PAPG1DccnhG3ppACg==","length":2537,"stub":true},"graceful-fs-1.0.2.tgz":{"content_type":"application/octet-stream","revpos":7,"digest":"md5-HwZEjb06b/S2Zmq8S/6VPQ==","length":10240,"stub":true},"graceful-fs-1.0.1.tgz":{"content_type":"application/octet-stream","revpos":5,"digest":"md5-t2GBLwSQvXYI8f3yJkMHyQ==","length":1761,"stub":true},"graceful-fs-1.0.0.tgz":{"content_type":"application/octet-stream","revpos":3,"digest":"md5-xOci5UL0dxkxv21fEjKKTg==","length":1040,"stub":true}}}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment