{ "name": "rimraf", "version": "2.1.4", "main": "rimraf.js", "description": "A deep deletion module for node (like `rm -rf`)", "author": { "name": "Isaac Z. Schlueter", "email": "i@izs.me", "url": "http://blog.izs.me/" }, "license": { "type": "MIT", "url": "https://github.com/isaacs/rimraf/raw/master/LICENSE" }, "optionalDependencies": { "graceful-fs": "~1" }, "repository": { "type": "git", "url": "git://github.com/isaacs/rimraf.git" }, "scripts": { "test": "cd test && bash run.sh" }, "contributors": [ { "name": "Isaac Z. Schlueter", "email": "i@izs.me", "url": "http://blog.izs.me" }, { "name": "Wayne Larsen", "email": "wayne@larsen.st", "url": "http://github.com/wvl" }, { "name": "ritch", "email": "skawful@gmail.com" }, { "name": "Marcel Laverdet" }, { "name": "Yosef Dinerstein", "email": "yosefd@microsoft.com" } ], "readme": "A `rm -rf` for node.\n\nInstall with `npm install rimraf`, or just drop rimraf.js somewhere.\n\n## API\n\n`rimraf(f, callback)`\n\nThe callback will be called with an error if there is one. Certain\nerrors are handled for you:\n\n* `EBUSY` - rimraf will back off a maximum of opts.maxBusyTries times\n before giving up.\n* `EMFILE` - If too many file descriptors get opened, rimraf will\n patiently wait until more become available.\n\n\n## rimraf.sync\n\nIt can remove stuff synchronously, too. But that's not so good. Use\nthe async API. It's better.\n", "readmeFilename": "README.md", "_id": "rimraf@2.1.4", "dependencies": { "graceful-fs": "~1" }, "_from": "rimraf@2" }