text: # graceful-fs
  
  graceful-fs functions as a drop-in replacement for the fs module,
  making various improvements.
  
  The improvements are meant to normalize behavior across different
  platforms and environments, and to make filesystem access more
  resilient to errors.
  
  ## Improvements over [fs module](http://api.nodejs.org/fs.html)
  
  graceful-fs:
  
  * Queues up `open` and `readdir` calls, and retries them once
    something closes if there is an EMFILE error from too many file
    descriptors.
  * fixes `lchmod` for Node versions prior to 0.6.2.
  * implements `fs.lutimes` if possible. Otherwise it becomes a noop.
  * ignores `EINVAL` and `EPERM` errors in `chown`, `fchown` or
    `lchown` if the user isn't root.
  * makes `lchmod` and `lchown` become noops, if not available.
  * retries reading a file if `read` results in EAGAIN error.
  
  On Windows, it retries renaming a file for up to one second if `EACCESS`
  or `EPERM` error occurs, likely because antivirus software has locked
  the directory.
  
  ## USAGE
  
  ```javascript
  // use just like fs
  var fs = require('graceful-fs')
  
  // now go and do stuff with it...
  fs.readFileSync('some-file-or-whatever')
  ```
  