19.0.0 / 2020-03-19
2------------------
3
4### Breaking changes
5
6- Requires Node.js version 10 or greater ([#725](https://github.com/jprichardson/node-fs-extra/issues/725), [#751](https://github.com/jprichardson/node-fs-extra/pull/751))
7- Switched `ensureDir*` to use a fork of https://github.com/sindresorhus/make-dir to make use of native recursive `fs.mkdir` where possible ([#619](https://github.com/jprichardson/node-fs-extra/issues/619), [#756](https://github.com/jprichardson/node-fs-extra/pull/756))
8- Properly preserve `atime` for `copy*` with `preserveTimestamps` option ([#633](https://github.com/jprichardson/node-fs-extra/pull/633))
9
10**The following changes, allthough technically breaking, will not affect the vast majority of users:**
11
12- `outputJson` now outputs objects as they were when the function was called, even if they are mutated later ([#702](https://github.com/jprichardson/node-fs-extra/issues/702), [#768](https://github.com/jprichardson/node-fs-extra/pull/768))
13- Cannot pass `null` as an options parameter to `*Json*` methods ([#745](https://github.com/jprichardson/node-fs-extra/issues/745), [#768](https://github.com/jprichardson/node-fs-extra/pull/768))
14
15### Improvements
16
17- Add promise shims for `fs.writev` & `fs.opendir` ([#747](https://github.com/jprichardson/node-fs-extra/pull/747))
18- Better errors for `ensureFile` ([#696](https://github.com/jprichardson/node-fs-extra/issues/696), [#744](https://github.com/jprichardson/node-fs-extra/pull/744))
19- Better file comparison for older Node versions ([#694](https://github.com/jprichardson/node-fs-extra/pull/694))
20
21### Miscellaneous changes
22- Peformance optimizations ([#762](https://github.com/jprichardson/node-fs-extra/issues/762), [#764](https://github.com/jprichardson/node-fs-extra/pull/764))
23- Add missing documentation for aliases ([#758](https://github.com/jprichardson/node-fs-extra/issues/758), [#766](https://github.com/jprichardson/node-fs-extra/pull/766))
24- Update `universalify` dependency ([#767](https://github.com/jprichardson/node-fs-extra/pull/767))
25
268.1.0 / 2019-06-28
27------------------
28
29- Add support for promisified `fs.realpath.native` in Node v9.2+ ([#650](https://github.com/jprichardson/node-fs-extra/issues/650), [#682](https://github.com/jprichardson/node-fs-extra/pull/682))
30- Update `graceful-fs` dependency ([#700](https://github.com/jprichardson/node-fs-extra/pull/700))
31- Use `graceful-fs` everywhere ([#700](https://github.com/jprichardson/node-fs-extra/pull/700))
32
338.0.1 / 2019-05-13
34------------------
35
36- Fix bug `Maximum call stack size exceeded` error in `util/stat` ([#679](https://github.com/jprichardson/node-fs-extra/pull/679))
37
388.0.0 / 2019-05-11
39------------------
40
41**NOTE:** Node.js v6 support is deprecated, and will be dropped in the next major release.
42
43- Use `renameSync()` under the hood in `moveSync()`
44- Fix bug with bind-mounted directories in `copy*()` ([#613](https://github.com/jprichardson/node-fs-extra/issues/613), [#618](https://github.com/jprichardson/node-fs-extra/pull/618))
45- Fix bug in `move()` with case-insensitive file systems
46- Use `fs.stat()`'s `bigint` option in `copy*()` & `move*()` where possible ([#657](https://github.com/jprichardson/node-fs-extra/issues/657))
47
487.0.1 / 2018-11-07
49------------------
50
51- Fix `removeSync()` on Windows, in some cases, it would error out with `ENOTEMPTY` ([#646](https://github.com/jprichardson/node-fs-extra/pull/646))
52- Document `mode` option for `ensureDir*()` ([#587](https://github.com/jprichardson/node-fs-extra/pull/587))
53- Don't include documentation files in npm package tarball ([#642](https://github.com/jprichardson/node-fs-extra/issues/642), [#643](https://github.com/jprichardson/node-fs-extra/pull/643))
54
557.0.0 / 2018-07-16
56------------------
57
58- **BREAKING:** Refine `copy*()` handling of symlinks to properly detect symlinks that point to the same file. ([#582](https://github.com/jprichardson/node-fs-extra/pull/582))
59- Fix bug with copying write-protected directories ([#600](https://github.com/jprichardson/node-fs-extra/pull/600))
60- Universalify `fs.lchmod()` ([#596](https://github.com/jprichardson/node-fs-extra/pull/596))
61- Add `engines` field to `package.json` ([#580](https://github.com/jprichardson/node-fs-extra/pull/580))
62
636.0.1 / 2018-05-09
64------------------
65
66- Fix `fs.promises` `ExperimentalWarning` on Node v10.1.0 ([#578](https://github.com/jprichardson/node-fs-extra/pull/578))
67
686.0.0 / 2018-05-01
69------------------
70
71- Drop support for Node.js versions 4, 5, & 7 ([#564](https://github.com/jprichardson/node-fs-extra/pull/564))
72- Rewrite `move` to use `fs.rename` where possible ([#549](https://github.com/jprichardson/node-fs-extra/pull/549))
73- Don't convert relative paths to absolute paths for `filter` ([#554](https://github.com/jprichardson/node-fs-extra/pull/554))
74- `copy*`'s behavior when `preserveTimestamps` is `false` has been OS-dependent since 5.0.0, but that's now explicitly noted in the docs ([#563](https://github.com/jprichardson/node-fs-extra/pull/563))
75- Fix subdirectory detection for `copy*` & `move*` ([#541](https://github.com/jprichardson/node-fs-extra/pull/541))
76- Handle case-insensitive paths correctly in `copy*` ([#568](https://github.com/jprichardson/node-fs-extra/pull/568))
77
785.0.0 / 2017-12-11
79------------------
80
81Significant refactor of `copy()` & `copySync()`, including breaking changes. No changes to other functions in this release.
82
83Huge thanks to **[@manidlou](https://github.com/manidlou)** for doing most of the work on this release.
84
85- The `filter` option can no longer be a RegExp (must be a function). This was deprecated since fs-extra v1.0.0. [#512](https://github.com/jprichardson/node-fs-extra/pull/512)
86- `copy()`'s `filter` option can now be a function that returns a Promise. [#518](https://github.com/jprichardson/node-fs-extra/pull/518)
87- `copy()` & `copySync()` now use `fs.copyFile()`/`fs.copyFileSync()` in environments that support it (currently Node 8.5.0+). Older Node versions still get the old implementation. [#505](https://github.com/jprichardson/node-fs-extra/pull/505)
88- Don't allow copying a directory into itself. [#83](https://github.com/jprichardson/node-fs-extra/issues/83)
89- Handle copying between identical files. [#198](https://github.com/jprichardson/node-fs-extra/issues/198)
90- Error out when copying an empty folder to a path that already exists. [#464](https://github.com/jprichardson/node-fs-extra/issues/464)
91- Don't create `dest`'s parent if the `filter` function aborts the `copy()` operation. [#517](https://github.com/jprichardson/node-fs-extra/pull/517)
92- Fix `writeStream` not being closed if there was an error in `copy()`. [#516](https://github.com/jprichardson/node-fs-extra/pull/516)
93
944.0.3 / 2017-12-05
95------------------
96
97- Fix wrong `chmod` values in `fs.remove()` [#501](https://github.com/jprichardson/node-fs-extra/pull/501)
98- Fix `TypeError` on systems that don't have some `fs` operations like `lchown` [#520](https://github.com/jprichardson/node-fs-extra/pull/520)
99
1004.0.2 / 2017-09-12
101------------------
102
103- Added `EOL` option to `writeJson*` & `outputJson*` (via upgrade to jsonfile v4)
104- Added promise support to [`fs.copyFile()`](https://nodejs.org/api/fs.html#fs_fs_copyfile_src_dest_flags_callback) in Node 8.5+
105- Added `.js` extension to `main` field in `package.json` for better tooling compatibility. [#485](https://github.com/jprichardson/node-fs-extra/pull/485)
106
1074.0.1 / 2017-07-31
108------------------
109
110### Fixed
111
112- Previously, `ensureFile()` & `ensureFileSync()` would do nothing if the path was a directory. Now, they error out for consistency with `ensureDir()`. [#465](https://github.com/jprichardson/node-fs-extra/issues/465), [#466](https://github.com/jprichardson/node-fs-extra/pull/466), [#470](https://github.com/jprichardson/node-fs-extra/issues/470)
113
1144.0.0 / 2017-07-14
115------------------
116
117### Changed
118
119- **BREAKING:** The promisified versions of `fs.read()` & `fs.write()` now return objects. See [the docs](docs/fs-read-write.md) for details. [#436](https://github.com/jprichardson/node-fs-extra/issues/436), [#449](https://github.com/jprichardson/node-fs-extra/pull/449)
120- `fs.move()` now errors out when destination is a subdirectory of source. [#458](https://github.com/jprichardson/node-fs-extra/pull/458)
121- Applied upstream fixes from `rimraf` to `fs.remove()` & `fs.removeSync()`. [#459](https://github.com/jprichardson/node-fs-extra/pull/459)
122
123### Fixed
124
125- Got `fs.outputJSONSync()` working again; it was broken due to refactoring. [#428](https://github.com/jprichardson/node-fs-extra/pull/428)
126
127Also clarified the docs in a few places.
128
1293.0.1 / 2017-05-04
130------------------
131
132- Fix bug in `move()` & `moveSync()` when source and destination are the same, and source does not exist. [#415](https://github.com/jprichardson/node-fs-extra/pull/415)
133
1343.0.0 / 2017-04-27
135------------------
136
137### Added
138
139- **BREAKING:** Added Promise support. All asynchronous native fs methods and fs-extra methods now return a promise if the callback is not passed. [#403](https://github.com/jprichardson/node-fs-extra/pull/403)
140- `pathExists()`, a replacement for the deprecated `fs.exists`. `pathExists` has a normal error-first callback signature. Also added `pathExistsSync`, an alias to `fs.existsSync`, for completeness. [#406](https://github.com/jprichardson/node-fs-extra/pull/406)
141
142### Removed
143
144- **BREAKING:** Removed support for setting the default spaces for `writeJson()`, `writeJsonSync()`, `outputJson()`, & `outputJsonSync()`. This was undocumented. [#402](https://github.com/jprichardson/node-fs-extra/pull/402)
145
146### Changed
147
148- Upgraded jsonfile dependency to v3.0.0:
149  - **BREAKING:** Changed behavior of `throws` option for `readJsonSync()`; now does not throw filesystem errors when `throws` is `false`.
150- **BREAKING:** `writeJson()`, `writeJsonSync()`, `outputJson()`, & `outputJsonSync()` now output minified JSON by default for consistency with `JSON.stringify()`; set the `spaces` option to `2` to override this new behavior. [#402](https://github.com/jprichardson/node-fs-extra/pull/402)
151- Use `Buffer.allocUnsafe()` instead of `new Buffer()` in environments that support it. [#394](https://github.com/jprichardson/node-fs-extra/pull/394)
152
153### Fixed
154
155- `removeSync()` silently failed on Windows in some cases. Now throws an `EBUSY` error. [#408](https://github.com/jprichardson/node-fs-extra/pull/408)
156
1572.1.2 / 2017-03-16
158------------------
159
160### Fixed
161
162- Weird windows bug that resulted in `ensureDir()`'s callback being called twice in some cases. This bug may have also affected `remove()`. See [#392](https://github.com/jprichardson/node-fs-extra/issues/392), [#393](https://github.com/jprichardson/node-fs-extra/pull/393)
163
1642.1.1 / 2017-03-15
165------------------
166
167### Fixed
168
169- Reverted [`5597bd`](https://github.com/jprichardson/node-fs-extra/commit/5597bd5b67f7d060f5f5bf26e9635be48330f5d7), this broke compatibility with Node.js versions v4+ but less than `v4.5.0`.
170- Remove `Buffer.alloc()` usage in `moveSync()`.
171
1722.1.0 / 2017-03-15
173------------------
174
175Thanks to [Mani Maghsoudlou (@manidlou)](https://github.com/manidlou) & [Jan Peer Stöcklmair (@JPeer264)](https://github.com/JPeer264) for their extraordinary help with this release!
176
177### Added
178- `moveSync()` See [#309], [#381](https://github.com/jprichardson/node-fs-extra/pull/381). ([@manidlou](https://github.com/manidlou))
179- `copy()` and `copySync()`'s `filter` option now gets the destination path passed as the second parameter. [#366](https://github.com/jprichardson/node-fs-extra/pull/366) ([@manidlou](https://github.com/manidlou))
180
181### Changed
182- Use `Buffer.alloc()` instead of deprecated `new Buffer()` in `copySync()`. [#380](https://github.com/jprichardson/node-fs-extra/pull/380) ([@manidlou](https://github.com/manidlou))
183- Refactored entire codebase to use ES6 features supported by Node.js v4+ [#355](https://github.com/jprichardson/node-fs-extra/issues/355). [(@JPeer264)](https://github.com/JPeer264)
184- Refactored docs. ([@manidlou](https://github.com/manidlou))
185
186### Fixed
187
188- `move()` shouldn't error out when source and dest are the same. [#377](https://github.com/jprichardson/node-fs-extra/issues/377), [#378](https://github.com/jprichardson/node-fs-extra/pull/378) ([@jdalton](https://github.com/jdalton))
189
1902.0.0 / 2017-01-16
191------------------
192
193### Removed
194- **BREAKING:** Removed support for Node `v0.12`. The Node foundation stopped officially supporting it
195on Jan 1st, 2017.
196- **BREAKING:** Remove `walk()` and `walkSync()`. `walkSync()` was only part of `fs-extra` for a little
197over two months. Use [klaw](https://github.com/jprichardson/node-klaw) instead of `walk()`, in fact, `walk()` was just
198an alias to klaw. For `walkSync()` use [klaw-sync](https://github.com/mawni/node-klaw-sync). See: [#338], [#339]
199
200### Changed
201- **BREAKING:** Renamed `clobber` to `overwrite`. This affects `copy()`, `copySync()`, and `move()`. [#330], [#333]
202- Moved docs, to `docs/`. [#340]
203
204### Fixed
205- Apply filters to directories in `copySync()` like in `copy()`. [#324]
206- A specific condition when disk is under heavy use, `copy()` can fail. [#326]
207
208
2091.0.0 / 2016-11-01
210------------------
211
212After five years of development, we finally have reach the 1.0.0 milestone! Big thanks goes
213to [Ryan Zim](https://github.com/RyanZim) for leading the charge on this release!
214
215### Added
216- `walkSync()`
217
218### Changed
219- **BREAKING**: dropped Node v0.10 support.
220- disabled `rimaf` globbing, wasn't used. [#280]
221- deprecate `copy()/copySync()` option `filter` if it's a `RegExp`. `filter` should now be a function.
222- inline `rimraf`. This is temporary and was done because `rimraf` depended upon the beefy `glob` which `fs-extra` does not use. [#300]
223
224### Fixed
225- bug fix proper closing of file handle on `utimesMillis()` [#271]
226- proper escaping of files with dollar signs [#291]
227- `copySync()` failed if user didn't own file. [#199], [#301]
228
229
2300.30.0 / 2016-04-28
231-------------------
232- Brought back Node v0.10 support. I didn't realize there was still demand. Official support will end **2016-10-01**.
233
2340.29.0 / 2016-04-27
235-------------------
236- **BREAKING**: removed support for Node v0.10. If you still want to use Node v0.10, everything should work except for `ensureLink()/ensureSymlink()`. Node v0.12 is still supported but will be dropped in the near future as well.
237
2380.28.0 / 2016-04-17
239-------------------
240- **BREAKING**: removed `createOutputStream()`. Use https://www.npmjs.com/package/create-output-stream. See: [#192][#192]
241- `mkdirs()/mkdirsSync()` check for invalid win32 path chars. See: [#209][#209], [#237][#237]
242- `mkdirs()/mkdirsSync()` if drive not mounted, error. See: [#93][#93]
243
2440.27.0 / 2016-04-15
245-------------------
246- add `dereference` option to `copySync()`. [#235][#235]
247
2480.26.7 / 2016-03-16
249-------------------
250- fixed `copy()` if source and dest are the same. [#230][#230]
251
2520.26.6 / 2016-03-15
253-------------------
254- fixed if `emptyDir()` does not have a callback: [#229][#229]
255
2560.26.5 / 2016-01-27
257-------------------
258- `copy()` with two arguments (w/o callback) was broken. See: [#215][#215]
259
2600.26.4 / 2016-01-05
261-------------------
262- `copySync()` made `preserveTimestamps` default consistent with `copy()` which is `false`. See: [#208][#208]
263
2640.26.3 / 2015-12-17
265-------------------
266- fixed `copy()` hangup in copying blockDevice / characterDevice / `/dev/null`. See: [#193][#193]
267
2680.26.2 / 2015-11-02
269-------------------
270- fixed `outputJson{Sync}()` spacing adherence to `fs.spaces`
271
2720.26.1 / 2015-11-02
273-------------------
274- fixed `copySync()` when `clogger=true` and the destination is read only. See: [#190][#190]
275
2760.26.0 / 2015-10-25
277-------------------
278- extracted the `walk()` function into its own module [`klaw`](https://github.com/jprichardson/node-klaw).
279
2800.25.0 / 2015-10-24
281-------------------
282- now has a file walker `walk()`
283
2840.24.0 / 2015-08-28
285-------------------
286- removed alias `delete()` and `deleteSync()`. See: [#171][#171]
287
2880.23.1 / 2015-08-07
289-------------------
290- Better handling of errors for `move()` when moving across devices. [#170][#170]
291- `ensureSymlink()` and `ensureLink()` should not throw errors if link exists. [#169][#169]
292
2930.23.0 / 2015-08-06
294-------------------
295- added `ensureLink{Sync}()` and `ensureSymlink{Sync}()`. See: [#165][#165]
296
2970.22.1 / 2015-07-09
298-------------------
299- Prevent calling `hasMillisResSync()` on module load. See: [#149][#149].
300Fixes regression that was introduced in `0.21.0`.
301
3020.22.0 / 2015-07-09
303-------------------
304- preserve permissions / ownership in `copy()`. See: [#54][#54]
305
3060.21.0 / 2015-07-04
307-------------------
308- add option to preserve timestamps in `copy()` and `copySync()`. See: [#141][#141]
309- updated `graceful-fs@3.x` to `4.x`. This brings in features from `amazing-graceful-fs` (much cleaner code / less hacks)
310
3110.20.1 / 2015-06-23
312-------------------
313- fixed regression caused by latest jsonfile update: See: https://github.com/jprichardson/node-jsonfile/issues/26
314
3150.20.0 / 2015-06-19
316-------------------
317- removed `jsonfile` aliases with `File` in the name, they weren't documented and probably weren't in use e.g.
318this package had both `fs.readJsonFile` and `fs.readJson` that were aliases to each other, now use `fs.readJson`.
319- preliminary walker created. Intentionally not documented. If you use it, it will almost certainly change and break your code.
320- started moving tests inline
321- upgraded to `jsonfile@2.1.0`, can now pass JSON revivers/replacers to `readJson()`, `writeJson()`, `outputJson()`
322
3230.19.0 / 2015-06-08
324-------------------
325- `fs.copy()` had support for Node v0.8, dropped support
326
3270.18.4 / 2015-05-22
328-------------------
329- fixed license field according to this: [#136][#136] and https://github.com/npm/npm/releases/tag/v2.10.0
330
3310.18.3 / 2015-05-08
332-------------------
333- bugfix: handle `EEXIST` when clobbering on some Linux systems. [#134][#134]
334
3350.18.2 / 2015-04-17
336-------------------
337- bugfix: allow `F_OK` ([#120][#120])
338
3390.18.1 / 2015-04-15
340-------------------
341- improved windows support for `move()` a bit. https://github.com/jprichardson/node-fs-extra/commit/92838980f25dc2ee4ec46b43ee14d3c4a1d30c1b
342- fixed a lot of tests for Windows (appveyor)
343
3440.18.0 / 2015-03-31
345-------------------
346- added `emptyDir()` and `emptyDirSync()`
347
3480.17.0 / 2015-03-28
349-------------------
350- `copySync` added `clobber` option (before always would clobber, now if `clobber` is `false` it throws an error if the destination exists).
351**Only works with files at the moment.**
352- `createOutputStream()` added. See: [#118][#118]
353
3540.16.5 / 2015-03-08
355-------------------
356- fixed `fs.move` when `clobber` is `true` and destination is a directory, it should clobber. [#114][#114]
357
3580.16.4 / 2015-03-01
359-------------------
360- `fs.mkdirs` fix infinite loop on Windows. See: See https://github.com/substack/node-mkdirp/pull/74 and https://github.com/substack/node-mkdirp/issues/66
361
3620.16.3 / 2015-01-28
363-------------------
364- reverted https://github.com/jprichardson/node-fs-extra/commit/1ee77c8a805eba5b99382a2591ff99667847c9c9
365
366
3670.16.2 / 2015-01-28
368-------------------
369- fixed `fs.copy` for Node v0.8 (support is temporary and will be removed in the near future)
370
3710.16.1 / 2015-01-28
372-------------------
373- if `setImmediate` is not available, fall back to `process.nextTick`
374
3750.16.0 / 2015-01-28
376-------------------
377- bugfix `fs.move()` into itself. Closes [#104]
378- bugfix `fs.move()` moving directory across device. Closes [#108]
379- added coveralls support
380- bugfix: nasty multiple callback `fs.copy()` bug. Closes [#98]
381- misc fs.copy code cleanups
382
3830.15.0 / 2015-01-21
384-------------------
385- dropped `ncp`, imported code in
386- because of previous, now supports `io.js`
387- `graceful-fs` is now a dependency
388
3890.14.0 / 2015-01-05
390-------------------
391- changed `copy`/`copySync` from `fs.copy(src, dest, [filters], callback)` to `fs.copy(src, dest, [options], callback)` [#100][#100]
392- removed mockfs tests for mkdirp (this may be temporary, but was getting in the way of other tests)
393
3940.13.0 / 2014-12-10
395-------------------
396- removed `touch` and `touchSync` methods (they didn't handle permissions like UNIX touch)
397- updated `"ncp": "^0.6.0"` to `"ncp": "^1.0.1"`
398- imported `mkdirp` => `minimist` and `mkdirp` are no longer dependences, should now appease people who wanted `mkdirp` to be `--use_strict` safe. See [#59]([#59][#59])
399
4000.12.0 / 2014-09-22
401-------------------
402- copy symlinks in `copySync()` [#85][#85]
403
4040.11.1 / 2014-09-02
405-------------------
406- bugfix `copySync()` preserve file permissions [#80][#80]
407
4080.11.0 / 2014-08-11
409-------------------
410- upgraded `"ncp": "^0.5.1"` to `"ncp": "^0.6.0"`
411- upgrade `jsonfile": "^1.2.0"` to `jsonfile": "^2.0.0"` => on write, json files now have `\n` at end. Also adds `options.throws` to `readJsonSync()`
412see https://github.com/jprichardson/node-jsonfile#readfilesyncfilename-options for more details.
413
4140.10.0 / 2014-06-29
415------------------
416* bugfix: upgaded `"jsonfile": "~1.1.0"` to `"jsonfile": "^1.2.0"`, bumped minor because of `jsonfile` dep change
417from `~` to `^`. [#67]
418
4190.9.1 / 2014-05-22
420------------------
421* removed Node.js `0.8.x` support, `0.9.0` was published moments ago and should have been done there
422
4230.9.0 / 2014-05-22
424------------------
425* upgraded `ncp` from `~0.4.2` to `^0.5.1`, [#58]
426* upgraded `rimraf` from `~2.2.6` to `^2.2.8`
427* upgraded `mkdirp` from `0.3.x` to `^0.5.0`
428* added methods `ensureFile()`, `ensureFileSync()`
429* added methods `ensureDir()`, `ensureDirSync()` [#31]
430* added `move()` method. From: https://github.com/andrewrk/node-mv
431
432
4330.8.1 / 2013-10-24
434------------------
435* copy failed to return an error to the callback if a file doesn't exist (ulikoehler [#38], [#39])
436
4370.8.0 / 2013-10-14
438------------------
439* `filter` implemented on `copy()` and `copySync()`. (Srirangan / [#36])
440
4410.7.1 / 2013-10-12
442------------------
443* `copySync()` implemented (Srirangan / [#33])
444* updated to the latest `jsonfile` version `1.1.0` which gives `options` params for the JSON methods. Closes [#32]
445
4460.7.0 / 2013-10-07
447------------------
448* update readme conventions
449* `copy()` now works if destination directory does not exist. Closes [#29]
450
4510.6.4 / 2013-09-05
452------------------
453* changed `homepage` field in package.json to remove NPM warning
454
4550.6.3 / 2013-06-28
456------------------
457* changed JSON spacing default from `4` to `2` to follow Node conventions
458* updated `jsonfile` dep
459* updated `rimraf` dep
460
4610.6.2 / 2013-06-28
462------------------
463* added .npmignore, [#25]
464
4650.6.1 / 2013-05-14
466------------------
467* modified for `strict` mode, closes [#24]
468* added `outputJson()/outputJsonSync()`, closes [#23]
469
4700.6.0 / 2013-03-18
471------------------
472* removed node 0.6 support
473* added node 0.10 support
474* upgraded to latest `ncp` and `rimraf`.
475* optional `graceful-fs` support. Closes [#17]
476
477
4780.5.0 / 2013-02-03
479------------------
480* Removed `readTextFile`.
481* Renamed `readJSONFile` to `readJSON` and `readJson`, same with write.
482* Restructured documentation a bit. Added roadmap.
483
4840.4.0 / 2013-01-28
485------------------
486* Set default spaces in `jsonfile` from 4 to 2.
487* Updated `testutil` deps for tests.
488* Renamed `touch()` to `createFile()`
489* Added `outputFile()` and `outputFileSync()`
490* Changed creation of testing diretories so the /tmp dir is not littered.
491* Added `readTextFile()` and `readTextFileSync()`.
492
4930.3.2 / 2012-11-01
494------------------
495* Added `touch()` and `touchSync()` methods.
496
4970.3.1 / 2012-10-11
498------------------
499* Fixed some stray globals.
500
5010.3.0 / 2012-10-09
502------------------
503* Removed all CoffeeScript from tests.
504* Renamed `mkdir` to `mkdirs`/`mkdirp`.
505
5060.2.1 / 2012-09-11
507------------------
508* Updated `rimraf` dep.
509
5100.2.0 / 2012-09-10
511------------------
512* Rewrote module into JavaScript. (Must still rewrite tests into JavaScript)
513* Added all methods of [jsonfile](https://github.com/jprichardson/node-jsonfile)
514* Added Travis-CI.
515
5160.1.3 / 2012-08-13
517------------------
518* Added method `readJSONFile`.
519
5200.1.2 / 2012-06-15
521------------------
522* Bug fix: `deleteSync()` didn't exist.
523* Verified Node v0.8 compatibility.
524
5250.1.1 / 2012-06-15
526------------------
527* Fixed bug in `remove()`/`delete()` that wouldn't execute the function if a callback wasn't passed.
528
5290.1.0 / 2012-05-31
530------------------
531* Renamed `copyFile()` to `copy()`. `copy()` can now copy directories (recursively) too.
532* Renamed `rmrf()` to `remove()`.
533* `remove()` aliased with `delete()`.
534* Added `mkdirp` capabilities. Named: `mkdir()`. Hides Node.js native `mkdir()`.
535* Instead of exporting the native `fs` module with new functions, I now copy over the native methods to a new object and export that instead.
536
5370.0.4 / 2012-03-14
538------------------
539* Removed CoffeeScript dependency
540
5410.0.3 / 2012-01-11
542------------------
543* Added methods rmrf and rmrfSync
544* Moved tests from Jasmine to Mocha
545
546
547[#344]: https://github.com/jprichardson/node-fs-extra/issues/344    "Licence Year"
548[#343]: https://github.com/jprichardson/node-fs-extra/pull/343      "Add klaw-sync link to readme"
549[#342]: https://github.com/jprichardson/node-fs-extra/pull/342      "allow preserveTimestamps when use move"
550[#341]: https://github.com/jprichardson/node-fs-extra/issues/341    "mkdirp(path.dirname(dest) in move() logic needs cleaning up [question]"
551[#340]: https://github.com/jprichardson/node-fs-extra/pull/340      "Move docs to seperate docs folder [documentation]"
552[#339]: https://github.com/jprichardson/node-fs-extra/pull/339      "Remove walk() & walkSync() [feature-walk]"
553[#338]: https://github.com/jprichardson/node-fs-extra/issues/338    "Remove walk() and walkSync() [feature-walk]"
554[#337]: https://github.com/jprichardson/node-fs-extra/issues/337    "copy doesn't return a yieldable value"
555[#336]: https://github.com/jprichardson/node-fs-extra/pull/336      "Docs enhanced walk sync [documentation, feature-walk]"
556[#335]: https://github.com/jprichardson/node-fs-extra/pull/335      "Refactor move() tests [feature-move]"
557[#334]: https://github.com/jprichardson/node-fs-extra/pull/334      "Cleanup lib/move/index.js [feature-move]"
558[#333]: https://github.com/jprichardson/node-fs-extra/pull/333      "Rename clobber to overwrite [feature-copy, feature-move]"
559[#332]: https://github.com/jprichardson/node-fs-extra/pull/332      "BREAKING: Drop Node v0.12 & io.js support"
560[#331]: https://github.com/jprichardson/node-fs-extra/issues/331    "Add support for chmodr [enhancement, future]"
561[#330]: https://github.com/jprichardson/node-fs-extra/pull/330      "BREAKING: Do not error when copy destination exists & clobber: false [feature-copy]"
562[#329]: https://github.com/jprichardson/node-fs-extra/issues/329    "Does .walk() scale to large directories? [question]"
563[#328]: https://github.com/jprichardson/node-fs-extra/issues/328    "Copying files corrupts [feature-copy, needs-confirmed]"
564[#327]: https://github.com/jprichardson/node-fs-extra/pull/327      "Use writeStream 'finish' event instead of 'close' [bug, feature-copy]"
565[#326]: https://github.com/jprichardson/node-fs-extra/issues/326    "fs.copy fails with chmod error when disk under heavy use [bug, feature-copy]"
566[#325]: https://github.com/jprichardson/node-fs-extra/issues/325    "ensureDir is difficult to promisify [enhancement]"
567[#324]: https://github.com/jprichardson/node-fs-extra/pull/324      "copySync() should apply filter to directories like copy() [bug, feature-copy]"
568[#323]: https://github.com/jprichardson/node-fs-extra/issues/323    "Support for `dest` being a directory when using `copy*()`?"
569[#322]: https://github.com/jprichardson/node-fs-extra/pull/322      "Add fs-promise as fs-extra-promise alternative"
570[#321]: https://github.com/jprichardson/node-fs-extra/issues/321    "fs.copy() with clobber set to false return EEXIST error [feature-copy]"
571[#320]: https://github.com/jprichardson/node-fs-extra/issues/320    "fs.copySync: Error: EPERM: operation not permitted, unlink "
572[#319]: https://github.com/jprichardson/node-fs-extra/issues/319    "Create directory if not exists"
573[#318]: https://github.com/jprichardson/node-fs-extra/issues/318    "Support glob patterns [enhancement, future]"
574[#317]: https://github.com/jprichardson/node-fs-extra/pull/317      "Adding copy sync test for src file without write perms"
575[#316]: https://github.com/jprichardson/node-fs-extra/pull/316      "Remove move()'s broken limit option [feature-move]"
576[#315]: https://github.com/jprichardson/node-fs-extra/pull/315      "Fix move clobber tests to work around graceful-fs bug."
577[#314]: https://github.com/jprichardson/node-fs-extra/issues/314    "move() limit option [documentation, enhancement, feature-move]"
578[#313]: https://github.com/jprichardson/node-fs-extra/pull/313      "Test that remove() ignores glob characters."
579[#312]: https://github.com/jprichardson/node-fs-extra/pull/312      "Enhance walkSync() to return items with path and stats [feature-walk]"
580[#311]: https://github.com/jprichardson/node-fs-extra/issues/311    "move() not work when dest name not provided [feature-move]"
581[#310]: https://github.com/jprichardson/node-fs-extra/issues/310    "Edit walkSync to return items like what walk emits [documentation, enhancement, feature-walk]"
582[#309]: https://github.com/jprichardson/node-fs-extra/issues/309    "moveSync support [enhancement, feature-move]"
583[#308]: https://github.com/jprichardson/node-fs-extra/pull/308      "Fix incorrect anchor link"
584[#307]: https://github.com/jprichardson/node-fs-extra/pull/307      "Fix coverage"
585[#306]: https://github.com/jprichardson/node-fs-extra/pull/306      "Update devDeps, fix lint error"
586[#305]: https://github.com/jprichardson/node-fs-extra/pull/305      "Re-add Coveralls"
587[#304]: https://github.com/jprichardson/node-fs-extra/pull/304      "Remove path-is-absolute [enhancement]"
588[#303]: https://github.com/jprichardson/node-fs-extra/pull/303      "Document copySync filter inconsistency [documentation, feature-copy]"
589[#302]: https://github.com/jprichardson/node-fs-extra/pull/302      "fix(console): depreciated -> deprecated"
590[#301]: https://github.com/jprichardson/node-fs-extra/pull/301      "Remove chmod call from copySync [feature-copy]"
591[#300]: https://github.com/jprichardson/node-fs-extra/pull/300      "Inline Rimraf [enhancement, feature-move, feature-remove]"
592[#299]: https://github.com/jprichardson/node-fs-extra/pull/299      "Warn when filter is a RegExp [feature-copy]"
593[#298]: https://github.com/jprichardson/node-fs-extra/issues/298    "API Docs [documentation]"
594[#297]: https://github.com/jprichardson/node-fs-extra/pull/297      "Warn about using preserveTimestamps on 32-bit node"
595[#296]: https://github.com/jprichardson/node-fs-extra/pull/296      "Improve EEXIST error message for copySync [enhancement]"
596[#295]: https://github.com/jprichardson/node-fs-extra/pull/295      "Depreciate using regular expressions for copy's filter option [documentation]"
597[#294]: https://github.com/jprichardson/node-fs-extra/pull/294      "BREAKING: Refactor lib/copy/ncp.js [feature-copy]"
598[#293]: https://github.com/jprichardson/node-fs-extra/pull/293      "Update CI configs"
599[#292]: https://github.com/jprichardson/node-fs-extra/issues/292    "Rewrite lib/copy/ncp.js [enhancement, feature-copy]"
600[#291]: https://github.com/jprichardson/node-fs-extra/pull/291      "Escape '$' in replacement string for async file copying"
601[#290]: https://github.com/jprichardson/node-fs-extra/issues/290    "Exclude files pattern while copying using copy.config.js [question]"
602[#289]: https://github.com/jprichardson/node-fs-extra/pull/289      "(Closes #271) lib/util/utimes: properly close file descriptors in the event of an error"
603[#288]: https://github.com/jprichardson/node-fs-extra/pull/288      "(Closes #271) lib/util/utimes: properly close file descriptors in the event of an error"
604[#287]: https://github.com/jprichardson/node-fs-extra/issues/287    "emptyDir() callback arguments are inconsistent [enhancement, feature-remove]"
605[#286]: https://github.com/jprichardson/node-fs-extra/pull/286      "Added walkSync function"
606[#285]: https://github.com/jprichardson/node-fs-extra/issues/285    "CITGM test failing on s390"
607[#284]: https://github.com/jprichardson/node-fs-extra/issues/284    "outputFile method is missing a check to determine if existing item is a folder or not"
608[#283]: https://github.com/jprichardson/node-fs-extra/pull/283      "Apply filter also on directories and symlinks for copySync()"
609[#282]: https://github.com/jprichardson/node-fs-extra/pull/282      "Apply filter also on directories and symlinks for copySync()"
610[#281]: https://github.com/jprichardson/node-fs-extra/issues/281    "remove function executes 'successfully' but doesn't do anything?"
611[#280]: https://github.com/jprichardson/node-fs-extra/pull/280      "Disable rimraf globbing"
612[#279]: https://github.com/jprichardson/node-fs-extra/issues/279    "Some code is vendored instead of included [awaiting-reply]"
613[#278]: https://github.com/jprichardson/node-fs-extra/issues/278    "copy() does not preserve file/directory ownership"
614[#277]: https://github.com/jprichardson/node-fs-extra/pull/277      "Mention defaults for clobber and dereference options"
615[#276]: https://github.com/jprichardson/node-fs-extra/issues/276    "Cannot connect to Shared Folder [awaiting-reply]"
616[#275]: https://github.com/jprichardson/node-fs-extra/issues/275    "EMFILE, too many open files on Mac OS with JSON API"
617[#274]: https://github.com/jprichardson/node-fs-extra/issues/274    "Use with memory-fs? [enhancement, future]"
618[#273]: https://github.com/jprichardson/node-fs-extra/pull/273      "tests: rename `remote.test.js` to `remove.test.js`"
619[#272]: https://github.com/jprichardson/node-fs-extra/issues/272    "Copy clobber flag never err even when true [bug, feature-copy]"
620[#271]: https://github.com/jprichardson/node-fs-extra/issues/271    "Unclosed file handle on futimes error"
621[#270]: https://github.com/jprichardson/node-fs-extra/issues/270    "copy not working as desired on Windows [feature-copy, platform-windows]"
622[#269]: https://github.com/jprichardson/node-fs-extra/issues/269    "Copying with preserveTimeStamps: true is inaccurate using 32bit node [feature-copy]"
623[#268]: https://github.com/jprichardson/node-fs-extra/pull/268      "port fix for mkdirp issue #111"
624[#267]: https://github.com/jprichardson/node-fs-extra/issues/267    "WARN deprecated wrench@1.5.9: wrench.js is deprecated!"
625[#266]: https://github.com/jprichardson/node-fs-extra/issues/266    "fs-extra"
626[#265]: https://github.com/jprichardson/node-fs-extra/issues/265    "Link the `fs.stat fs.exists` etc. methods for replace the `fs` module forever?"
627[#264]: https://github.com/jprichardson/node-fs-extra/issues/264    "Renaming a file using move fails when a file inside is open (at least on windows) [wont-fix]"
628[#263]: https://github.com/jprichardson/node-fs-extra/issues/263    "ENOSYS: function not implemented, link [needs-confirmed]"
629[#262]: https://github.com/jprichardson/node-fs-extra/issues/262    "Add .exists() and .existsSync()"
630[#261]: https://github.com/jprichardson/node-fs-extra/issues/261    "Cannot read property 'prototype' of undefined"
631[#260]: https://github.com/jprichardson/node-fs-extra/pull/260      "use more specific path for method require"
632[#259]: https://github.com/jprichardson/node-fs-extra/issues/259    "Feature Request: isEmpty"
633[#258]: https://github.com/jprichardson/node-fs-extra/issues/258    "copy files does not preserve file timestamp"
634[#257]: https://github.com/jprichardson/node-fs-extra/issues/257    "Copying a file on windows fails"
635[#256]: https://github.com/jprichardson/node-fs-extra/pull/256      "Updated Readme "
636[#255]: https://github.com/jprichardson/node-fs-extra/issues/255    "Update rimraf required version"
637[#254]: https://github.com/jprichardson/node-fs-extra/issues/254    "request for readTree, readTreeSync, walkSync method"
638[#253]: https://github.com/jprichardson/node-fs-extra/issues/253    "outputFile does not touch mtime when file exists"
639[#252]: https://github.com/jprichardson/node-fs-extra/pull/252      "Fixing problem when copying file with no write permission"
640[#251]: https://github.com/jprichardson/node-fs-extra/issues/251    "Just wanted to say thank you"
641[#250]: https://github.com/jprichardson/node-fs-extra/issues/250    "`fs.remove()` not removing files (works with `rm -rf`)"
642[#249]: https://github.com/jprichardson/node-fs-extra/issues/249    "Just a Question ... Remove Servers"
643[#248]: https://github.com/jprichardson/node-fs-extra/issues/248    "Allow option to not preserve permissions for copy"
644[#247]: https://github.com/jprichardson/node-fs-extra/issues/247    "Add TypeScript typing directly in the fs-extra package"
645[#246]: https://github.com/jprichardson/node-fs-extra/issues/246    "fse.remove() && fse.removeSync() don't throw error on ENOENT file"
646[#245]: https://github.com/jprichardson/node-fs-extra/issues/245    "filter for empty dir [enhancement]"
647[#244]: https://github.com/jprichardson/node-fs-extra/issues/244    "copySync doesn't apply the filter to directories"
648[#243]: https://github.com/jprichardson/node-fs-extra/issues/243    "Can I request fs.walk() to be synchronous?"
649[#242]: https://github.com/jprichardson/node-fs-extra/issues/242    "Accidentally truncates file names ending with $$ [bug, feature-copy]"
650[#241]: https://github.com/jprichardson/node-fs-extra/pull/241      "Remove link to createOutputStream"
651[#240]: https://github.com/jprichardson/node-fs-extra/issues/240    "walkSync request"
652[#239]: https://github.com/jprichardson/node-fs-extra/issues/239    "Depreciate regular expressions for copy's filter [documentation, feature-copy]"
653[#238]: https://github.com/jprichardson/node-fs-extra/issues/238    "Can't write to files while in a worker thread."
654[#237]: https://github.com/jprichardson/node-fs-extra/issues/237    ".ensureDir(..) fails silently when passed an invalid path..."
655[#236]: https://github.com/jprichardson/node-fs-extra/issues/236    "[Removed] Filed under wrong repo"
656[#235]: https://github.com/jprichardson/node-fs-extra/pull/235      "Adds symlink dereference option to `fse.copySync` (#191)"
657[#234]: https://github.com/jprichardson/node-fs-extra/issues/234    "ensureDirSync fails silent when EACCES: permission denied on travis-ci"
658[#233]: https://github.com/jprichardson/node-fs-extra/issues/233    "please make sure the first argument in callback is error object [feature-copy]"
659[#232]: https://github.com/jprichardson/node-fs-extra/issues/232    "Copy a folder content  to its child folder.  "
660[#231]: https://github.com/jprichardson/node-fs-extra/issues/231    "Adding read/write/output functions for YAML"
661[#230]: https://github.com/jprichardson/node-fs-extra/pull/230      "throw error if src and dest are the same to avoid zeroing out + test"
662[#229]: https://github.com/jprichardson/node-fs-extra/pull/229      "fix 'TypeError: callback is not a function' in emptyDir"
663[#228]: https://github.com/jprichardson/node-fs-extra/pull/228      "Throw error when target is empty so file is not accidentally zeroed out"
664[#227]: https://github.com/jprichardson/node-fs-extra/issues/227    "Uncatchable errors when there are invalid arguments [feature-move]"
665[#226]: https://github.com/jprichardson/node-fs-extra/issues/226    "Moving to the current directory"
666[#225]: https://github.com/jprichardson/node-fs-extra/issues/225    "EBUSY: resource busy or locked, unlink"
667[#224]: https://github.com/jprichardson/node-fs-extra/issues/224    "fse.copy ENOENT error"
668[#223]: https://github.com/jprichardson/node-fs-extra/issues/223    "Suspicious behavior of fs.existsSync"
669[#222]: https://github.com/jprichardson/node-fs-extra/pull/222      "A clearer description of emtpyDir function"
670[#221]: https://github.com/jprichardson/node-fs-extra/pull/221      "Update README.md"
671[#220]: https://github.com/jprichardson/node-fs-extra/pull/220      "Non-breaking feature: add option 'passStats' to copy methods."
672[#219]: https://github.com/jprichardson/node-fs-extra/pull/219      "Add closing parenthesis in copySync example"
673[#218]: https://github.com/jprichardson/node-fs-extra/pull/218      "fix #187 #70 options.filter bug"
674[#217]: https://github.com/jprichardson/node-fs-extra/pull/217      "fix #187 #70 options.filter bug"
675[#216]: https://github.com/jprichardson/node-fs-extra/pull/216      "fix #187 #70 options.filter bug"
676[#215]: https://github.com/jprichardson/node-fs-extra/pull/215      "fse.copy throws error when only src and dest provided [bug, documentation, feature-copy]"
677[#214]: https://github.com/jprichardson/node-fs-extra/pull/214      "Fixing copySync anchor tag"
678[#213]: https://github.com/jprichardson/node-fs-extra/issues/213    "Merge extfs with this repo"
679[#212]: https://github.com/jprichardson/node-fs-extra/pull/212      "Update year to 2016 in README.md and LICENSE"
680[#211]: https://github.com/jprichardson/node-fs-extra/issues/211    "Not copying all files"
681[#210]: https://github.com/jprichardson/node-fs-extra/issues/210    "copy/copySync behave differently when copying a symbolic file [bug, documentation, feature-copy]"
682[#209]: https://github.com/jprichardson/node-fs-extra/issues/209    "In Windows invalid directory name causes infinite loop in ensureDir(). [bug]"
683[#208]: https://github.com/jprichardson/node-fs-extra/pull/208      "fix options.preserveTimestamps to false in copy-sync by default [feature-copy]"
684[#207]: https://github.com/jprichardson/node-fs-extra/issues/207    "Add `compare` suite of functions"
685[#206]: https://github.com/jprichardson/node-fs-extra/issues/206    "outputFileSync"
686[#205]: https://github.com/jprichardson/node-fs-extra/issues/205    "fix documents about copy/copySync [documentation, feature-copy]"
687[#204]: https://github.com/jprichardson/node-fs-extra/pull/204      "allow copy of block and character device files"
688[#203]: https://github.com/jprichardson/node-fs-extra/issues/203    "copy method's argument options couldn't be undefined [bug, feature-copy]"
689[#202]: https://github.com/jprichardson/node-fs-extra/issues/202    "why there is not a walkSync method?"
690[#201]: https://github.com/jprichardson/node-fs-extra/issues/201    "clobber for directories [feature-copy, future]"
691[#200]: https://github.com/jprichardson/node-fs-extra/issues/200    "'copySync' doesn't work in sync"
692[#199]: https://github.com/jprichardson/node-fs-extra/issues/199    "fs.copySync fails if user does not own file [bug, feature-copy]"
693[#198]: https://github.com/jprichardson/node-fs-extra/issues/198    "handle copying between identical files [feature-copy]"
694[#197]: https://github.com/jprichardson/node-fs-extra/issues/197    "Missing documentation for `outputFile` `options` 3rd parameter [documentation]"
695[#196]: https://github.com/jprichardson/node-fs-extra/issues/196    "copy filter: async function and/or function called with `fs.stat` result [future]"
696[#195]: https://github.com/jprichardson/node-fs-extra/issues/195    "How to override with outputFile?"
697[#194]: https://github.com/jprichardson/node-fs-extra/pull/194      "allow ensureFile(Sync) to provide data to be written to created file"
698[#193]: https://github.com/jprichardson/node-fs-extra/issues/193    "`fs.copy` fails silently if source file is /dev/null [bug, feature-copy]"
699[#192]: https://github.com/jprichardson/node-fs-extra/issues/192    "Remove fs.createOutputStream()"
700[#191]: https://github.com/jprichardson/node-fs-extra/issues/191    "How to copy symlinks to target as normal folders [feature-copy]"
701[#190]: https://github.com/jprichardson/node-fs-extra/pull/190      "copySync to overwrite destination file if readonly and clobber true"
702[#189]: https://github.com/jprichardson/node-fs-extra/pull/189      "move.test fix to support CRLF on Windows"
703[#188]: https://github.com/jprichardson/node-fs-extra/issues/188    "move.test failing on windows platform"
704[#187]: https://github.com/jprichardson/node-fs-extra/issues/187    "Not filter each file, stops on first false [feature-copy]"
705[#186]: https://github.com/jprichardson/node-fs-extra/issues/186    "Do you need a .size() function in this module? [future]"
706[#185]: https://github.com/jprichardson/node-fs-extra/issues/185    "Doesn't work on NodeJS v4.x"
707[#184]: https://github.com/jprichardson/node-fs-extra/issues/184    "CLI equivalent for fs-extra"
708[#183]: https://github.com/jprichardson/node-fs-extra/issues/183    "with clobber true, copy and copySync behave differently if destination file is read only [bug, feature-copy]"
709[#182]: https://github.com/jprichardson/node-fs-extra/issues/182    "ensureDir(dir, callback) second callback parameter not specified"
710[#181]: https://github.com/jprichardson/node-fs-extra/issues/181    "Add ability to remove file securely [enhancement, wont-fix]"
711[#180]: https://github.com/jprichardson/node-fs-extra/issues/180    "Filter option doesn't work the same way in copy and copySync [bug, feature-copy]"
712[#179]: https://github.com/jprichardson/node-fs-extra/issues/179    "Include opendir"
713[#178]: https://github.com/jprichardson/node-fs-extra/issues/178    "ENOTEMPTY is thrown on removeSync "
714[#177]: https://github.com/jprichardson/node-fs-extra/issues/177    "fix `remove()` wildcards (introduced by rimraf) [feature-remove]"
715[#176]: https://github.com/jprichardson/node-fs-extra/issues/176    "createOutputStream doesn't emit 'end' event"
716[#175]: https://github.com/jprichardson/node-fs-extra/issues/175    "[Feature Request].moveSync support [feature-move, future]"
717[#174]: https://github.com/jprichardson/node-fs-extra/pull/174      "Fix copy formatting and document options.filter"
718[#173]: https://github.com/jprichardson/node-fs-extra/issues/173    "Feature Request: writeJson should mkdirs"
719[#172]: https://github.com/jprichardson/node-fs-extra/issues/172    "rename `clobber` flags to `overwrite`"
720[#171]: https://github.com/jprichardson/node-fs-extra/issues/171    "remove unnecessary aliases"
721[#170]: https://github.com/jprichardson/node-fs-extra/pull/170      "More robust handling of errors moving across virtual drives"
722[#169]: https://github.com/jprichardson/node-fs-extra/pull/169      "suppress ensureLink & ensureSymlink dest exists error"
723[#168]: https://github.com/jprichardson/node-fs-extra/pull/168      "suppress ensurelink dest exists error"
724[#167]: https://github.com/jprichardson/node-fs-extra/pull/167      "Adds basic (string, buffer) support for ensureFile content [future]"
725[#166]: https://github.com/jprichardson/node-fs-extra/pull/166      "Adds basic (string, buffer) support for ensureFile content"
726[#165]: https://github.com/jprichardson/node-fs-extra/pull/165      "ensure for link & symlink"
727[#164]: https://github.com/jprichardson/node-fs-extra/issues/164    "Feature Request: ensureFile to take optional argument for file content"
728[#163]: https://github.com/jprichardson/node-fs-extra/issues/163    "ouputJson not formatted out of the box [bug]"
729[#162]: https://github.com/jprichardson/node-fs-extra/pull/162      "ensure symlink & link"
730[#161]: https://github.com/jprichardson/node-fs-extra/pull/161      "ensure symlink & link"
731[#160]: https://github.com/jprichardson/node-fs-extra/pull/160      "ensure symlink & link"
732[#159]: https://github.com/jprichardson/node-fs-extra/pull/159      "ensure symlink & link"
733[#158]: https://github.com/jprichardson/node-fs-extra/issues/158    "Feature Request: ensureLink and ensureSymlink methods"
734[#157]: https://github.com/jprichardson/node-fs-extra/issues/157    "writeJson isn't formatted"
735[#156]: https://github.com/jprichardson/node-fs-extra/issues/156    "Promise.promisifyAll doesn't work for some methods"
736[#155]: https://github.com/jprichardson/node-fs-extra/issues/155    "Readme"
737[#154]: https://github.com/jprichardson/node-fs-extra/issues/154    "/tmp/millis-test-sync"
738[#153]: https://github.com/jprichardson/node-fs-extra/pull/153      "Make preserveTimes also work on read-only files. Closes #152"
739[#152]: https://github.com/jprichardson/node-fs-extra/issues/152    "fs.copy fails for read-only files with preserveTimestamp=true [feature-copy]"
740[#151]: https://github.com/jprichardson/node-fs-extra/issues/151    "TOC does not work correctly on npm [documentation]"
741[#150]: https://github.com/jprichardson/node-fs-extra/issues/150    "Remove test file fixtures, create with code."
742[#149]: https://github.com/jprichardson/node-fs-extra/issues/149    "/tmp/millis-test-sync"
743[#148]: https://github.com/jprichardson/node-fs-extra/issues/148    "split out `Sync` methods in documentation"
744[#147]: https://github.com/jprichardson/node-fs-extra/issues/147    "Adding rmdirIfEmpty"
745[#146]: https://github.com/jprichardson/node-fs-extra/pull/146      "ensure test.js works"
746[#145]: https://github.com/jprichardson/node-fs-extra/issues/145    "Add `fs.exists` and `fs.existsSync` if it doesn't exist."
747[#144]: https://github.com/jprichardson/node-fs-extra/issues/144    "tests failing"
748[#143]: https://github.com/jprichardson/node-fs-extra/issues/143    "update graceful-fs"
749[#142]: https://github.com/jprichardson/node-fs-extra/issues/142    "PrependFile Feature"
750[#141]: https://github.com/jprichardson/node-fs-extra/pull/141      "Add option to preserve timestamps"
751[#140]: https://github.com/jprichardson/node-fs-extra/issues/140    "Json file reading fails with 'utf8'"
752[#139]: https://github.com/jprichardson/node-fs-extra/pull/139      "Preserve file timestamp on copy. Closes #138"
753[#138]: https://github.com/jprichardson/node-fs-extra/issues/138    "Preserve timestamps on copying files"
754[#137]: https://github.com/jprichardson/node-fs-extra/issues/137    "outputFile/outputJson: Unexpected end of input"
755[#136]: https://github.com/jprichardson/node-fs-extra/pull/136      "Update license attribute"
756[#135]: https://github.com/jprichardson/node-fs-extra/issues/135    "emptyDir throws Error if no callback is provided"
757[#134]: https://github.com/jprichardson/node-fs-extra/pull/134      "Handle EEXIST error when clobbering dir"
758[#133]: https://github.com/jprichardson/node-fs-extra/pull/133      "Travis runs with `sudo: false`"
759[#132]: https://github.com/jprichardson/node-fs-extra/pull/132      "isDirectory method"
760[#131]: https://github.com/jprichardson/node-fs-extra/issues/131    "copySync is not working iojs 1.8.4 on linux [feature-copy]"
761[#130]: https://github.com/jprichardson/node-fs-extra/pull/130      "Please review additional features."
762[#129]: https://github.com/jprichardson/node-fs-extra/pull/129      "can you review this feature?"
763[#128]: https://github.com/jprichardson/node-fs-extra/issues/128    "fsExtra.move(filepath, newPath) broken;"
764[#127]: https://github.com/jprichardson/node-fs-extra/issues/127    "consider using fs.access to remove deprecated warnings for fs.exists"
765[#126]: https://github.com/jprichardson/node-fs-extra/issues/126    " TypeError: Object #<Object> has no method 'access'"
766[#125]: https://github.com/jprichardson/node-fs-extra/issues/125    "Question: What do the *Sync function do different from non-sync"
767[#124]: https://github.com/jprichardson/node-fs-extra/issues/124    "move with clobber option 'ENOTEMPTY'"
768[#123]: https://github.com/jprichardson/node-fs-extra/issues/123    "Only copy the content of a directory"
769[#122]: https://github.com/jprichardson/node-fs-extra/pull/122      "Update section links in README to match current section ids."
770[#121]: https://github.com/jprichardson/node-fs-extra/issues/121    "emptyDir is undefined"
771[#120]: https://github.com/jprichardson/node-fs-extra/issues/120    "usage bug caused by shallow cloning methods of 'graceful-fs'"
772[#119]: https://github.com/jprichardson/node-fs-extra/issues/119    "mkdirs and ensureDir never invoke callback and consume CPU indefinitely if provided a path with invalid characters on Windows"
773[#118]: https://github.com/jprichardson/node-fs-extra/pull/118      "createOutputStream"
774[#117]: https://github.com/jprichardson/node-fs-extra/pull/117      "Fixed issue with slash separated paths on windows"
775[#116]: https://github.com/jprichardson/node-fs-extra/issues/116    "copySync can only copy directories not files [documentation, feature-copy]"
776[#115]: https://github.com/jprichardson/node-fs-extra/issues/115    ".Copy & .CopySync [feature-copy]"
777[#114]: https://github.com/jprichardson/node-fs-extra/issues/114    "Fails to move (rename) directory to non-empty directory even with clobber: true"
778[#113]: https://github.com/jprichardson/node-fs-extra/issues/113    "fs.copy seems to callback early if the destination file already exists"
779[#112]: https://github.com/jprichardson/node-fs-extra/pull/112      "Copying a file into an existing directory"
780[#111]: https://github.com/jprichardson/node-fs-extra/pull/111      "Moving a file into an existing directory "
781[#110]: https://github.com/jprichardson/node-fs-extra/pull/110      "Moving a file into an existing directory"
782[#109]: https://github.com/jprichardson/node-fs-extra/issues/109    "fs.move across windows drives fails"
783[#108]: https://github.com/jprichardson/node-fs-extra/issues/108    "fse.move directories across multiple devices doesn't work"
784[#107]: https://github.com/jprichardson/node-fs-extra/pull/107      "Check if dest path is an existing dir and copy or move source in it"
785[#106]: https://github.com/jprichardson/node-fs-extra/issues/106    "fse.copySync crashes while copying across devices D: [feature-copy]"
786[#105]: https://github.com/jprichardson/node-fs-extra/issues/105    "fs.copy hangs on iojs"
787[#104]: https://github.com/jprichardson/node-fs-extra/issues/104    "fse.move deletes folders [bug]"
788[#103]: https://github.com/jprichardson/node-fs-extra/issues/103    "Error: EMFILE with copy"
789[#102]: https://github.com/jprichardson/node-fs-extra/issues/102    "touch / touchSync was removed ?"
790[#101]: https://github.com/jprichardson/node-fs-extra/issues/101    "fs-extra promisified"
791[#100]: https://github.com/jprichardson/node-fs-extra/pull/100      "copy: options object or filter to pass to ncp"
792[#99]: https://github.com/jprichardson/node-fs-extra/issues/99      "ensureDir() modes [future]"
793[#98]: https://github.com/jprichardson/node-fs-extra/issues/98      "fs.copy() incorrect async behavior [bug]"
794[#97]: https://github.com/jprichardson/node-fs-extra/pull/97        "use path.join; fix copySync bug"
795[#96]: https://github.com/jprichardson/node-fs-extra/issues/96      "destFolderExists in copySync is always undefined."
796[#95]: https://github.com/jprichardson/node-fs-extra/pull/95        "Using graceful-ncp instead of ncp"
797[#94]: https://github.com/jprichardson/node-fs-extra/issues/94      "Error: EEXIST, file already exists '../mkdirp/bin/cmd.js' on fs.copySync() [enhancement, feature-copy]"
798[#93]: https://github.com/jprichardson/node-fs-extra/issues/93      "Confusing error if drive not mounted [enhancement]"
799[#92]: https://github.com/jprichardson/node-fs-extra/issues/92      "Problems with Bluebird"
800[#91]: https://github.com/jprichardson/node-fs-extra/issues/91      "fs.copySync('/test', '/haha') is different with 'cp -r /test /haha' [enhancement]"
801[#90]: https://github.com/jprichardson/node-fs-extra/issues/90      "Folder creation and file copy is Happening in 64 bit machine but not in 32 bit machine"
802[#89]: https://github.com/jprichardson/node-fs-extra/issues/89      "Error: EEXIST using fs-extra's fs.copy to copy a directory on Windows"
803[#88]: https://github.com/jprichardson/node-fs-extra/issues/88      "Stacking those libraries"
804[#87]: https://github.com/jprichardson/node-fs-extra/issues/87      "createWriteStream + outputFile = ?"
805[#86]: https://github.com/jprichardson/node-fs-extra/issues/86      "no moveSync?"
806[#85]: https://github.com/jprichardson/node-fs-extra/pull/85        "Copy symlinks in copySync"
807[#84]: https://github.com/jprichardson/node-fs-extra/issues/84      "Push latest version to npm ?"
808[#83]: https://github.com/jprichardson/node-fs-extra/issues/83      "Prevent copying a directory into itself [feature-copy]"
809[#82]: https://github.com/jprichardson/node-fs-extra/pull/82        "README updates for move"
810[#81]: https://github.com/jprichardson/node-fs-extra/issues/81      "fd leak after fs.move"
811[#80]: https://github.com/jprichardson/node-fs-extra/pull/80        "Preserve file mode in copySync"
812[#79]: https://github.com/jprichardson/node-fs-extra/issues/79      "fs.copy only .html file empty"
813[#78]: https://github.com/jprichardson/node-fs-extra/pull/78        "copySync was not applying filters to directories"
814[#77]: https://github.com/jprichardson/node-fs-extra/issues/77      "Create README reference to bluebird"
815[#76]: https://github.com/jprichardson/node-fs-extra/issues/76      "Create README reference to typescript"
816[#75]: https://github.com/jprichardson/node-fs-extra/issues/75      "add glob as a dep? [question]"
817[#74]: https://github.com/jprichardson/node-fs-extra/pull/74        "including new emptydir module"
818[#73]: https://github.com/jprichardson/node-fs-extra/pull/73        "add dependency status in readme"
819[#72]: https://github.com/jprichardson/node-fs-extra/pull/72        "Use svg instead of png to get better image quality"
820[#71]: https://github.com/jprichardson/node-fs-extra/issues/71      "fse.copy not working on Windows 7 x64 OS, but, copySync does work"
821[#70]: https://github.com/jprichardson/node-fs-extra/issues/70      "Not filter each file, stops on first false [bug]"
822[#69]: https://github.com/jprichardson/node-fs-extra/issues/69      "How to check if folder exist and read the folder name"
823[#68]: https://github.com/jprichardson/node-fs-extra/issues/68      "consider flag to readJsonSync (throw false) [enhancement]"
824[#67]: https://github.com/jprichardson/node-fs-extra/issues/67      "docs for readJson incorrectly states that is accepts options"
825[#66]: https://github.com/jprichardson/node-fs-extra/issues/66      "ENAMETOOLONG"
826[#65]: https://github.com/jprichardson/node-fs-extra/issues/65      "exclude filter in fs.copy"
827[#64]: https://github.com/jprichardson/node-fs-extra/issues/64      "Announce: mfs - monitor your fs-extra calls"
828[#63]: https://github.com/jprichardson/node-fs-extra/issues/63      "Walk"
829[#62]: https://github.com/jprichardson/node-fs-extra/issues/62      "npm install fs-extra doesn't work"
830[#61]: https://github.com/jprichardson/node-fs-extra/issues/61      "No longer supports node 0.8 due to use of `^` in package.json dependencies"
831[#60]: https://github.com/jprichardson/node-fs-extra/issues/60      "chmod & chown for mkdirs"
832[#59]: https://github.com/jprichardson/node-fs-extra/issues/59      "Consider including mkdirp and making fs-extra '--use_strict' safe [question]"
833[#58]: https://github.com/jprichardson/node-fs-extra/issues/58      "Stack trace not included in fs.copy error"
834[#57]: https://github.com/jprichardson/node-fs-extra/issues/57      "Possible to include wildcards in delete?"
835[#56]: https://github.com/jprichardson/node-fs-extra/issues/56      "Crash when have no access to write to destination file in copy "
836[#55]: https://github.com/jprichardson/node-fs-extra/issues/55      "Is it possible to have any console output similar to Grunt copy module?"
837[#54]: https://github.com/jprichardson/node-fs-extra/issues/54      "`copy` does not preserve file ownership and permissons"
838[#53]: https://github.com/jprichardson/node-fs-extra/issues/53      "outputFile() - ability to write data in appending mode"
839[#52]: https://github.com/jprichardson/node-fs-extra/pull/52        "This fixes (what I think) is a bug in copySync"
840[#51]: https://github.com/jprichardson/node-fs-extra/pull/51        "Add a Bitdeli Badge to README"
841[#50]: https://github.com/jprichardson/node-fs-extra/issues/50      "Replace mechanism in createFile"
842[#49]: https://github.com/jprichardson/node-fs-extra/pull/49        "update rimraf to v2.2.6"
843[#48]: https://github.com/jprichardson/node-fs-extra/issues/48      "fs.copy issue [bug]"
844[#47]: https://github.com/jprichardson/node-fs-extra/issues/47      "Bug in copy - callback called on readStream 'close' - Fixed in ncp 0.5.0"
845[#46]: https://github.com/jprichardson/node-fs-extra/pull/46        "update copyright year"
846[#45]: https://github.com/jprichardson/node-fs-extra/pull/45        "Added note about fse.outputFile() being the one that overwrites"
847[#44]: https://github.com/jprichardson/node-fs-extra/pull/44        "Proposal: Stream support"
848[#43]: https://github.com/jprichardson/node-fs-extra/issues/43      "Better error reporting "
849[#42]: https://github.com/jprichardson/node-fs-extra/issues/42      "Performance issue?"
850[#41]: https://github.com/jprichardson/node-fs-extra/pull/41        "There does seem to be a synchronous version now"
851[#40]: https://github.com/jprichardson/node-fs-extra/issues/40      "fs.copy throw unexplained error ENOENT, utime "
852[#39]: https://github.com/jprichardson/node-fs-extra/pull/39        "Added regression test for copy() return callback on error"
853[#38]: https://github.com/jprichardson/node-fs-extra/pull/38        "Return err in copy() fstat cb, because stat could be undefined or null"
854[#37]: https://github.com/jprichardson/node-fs-extra/issues/37      "Maybe include a line reader? [enhancement, question]"
855[#36]: https://github.com/jprichardson/node-fs-extra/pull/36        "`filter` parameter `fs.copy` and `fs.copySync`"
856[#35]: https://github.com/jprichardson/node-fs-extra/pull/35        "`filter` parameter `fs.copy` and `fs.copySync` "
857[#34]: https://github.com/jprichardson/node-fs-extra/issues/34      "update docs to include options for JSON methods [enhancement]"
858[#33]: https://github.com/jprichardson/node-fs-extra/pull/33        "fs_extra.copySync"
859[#32]: https://github.com/jprichardson/node-fs-extra/issues/32      "update to latest jsonfile [enhancement]"
860[#31]: https://github.com/jprichardson/node-fs-extra/issues/31      "Add ensure methods [enhancement]"
861[#30]: https://github.com/jprichardson/node-fs-extra/issues/30      "update package.json optional dep `graceful-fs`"
862[#29]: https://github.com/jprichardson/node-fs-extra/issues/29      "Copy failing if dest directory doesn't exist. Is this intended?"
863[#28]: https://github.com/jprichardson/node-fs-extra/issues/28      "homepage field must be a string url. Deleted."
864[#27]: https://github.com/jprichardson/node-fs-extra/issues/27      "Update Readme"
865[#26]: https://github.com/jprichardson/node-fs-extra/issues/26      "Add readdir recursive method. [enhancement]"
866[#25]: https://github.com/jprichardson/node-fs-extra/pull/25        "adding an `.npmignore` file"
867[#24]: https://github.com/jprichardson/node-fs-extra/issues/24      "[bug] cannot run in strict mode [bug]"
868[#23]: https://github.com/jprichardson/node-fs-extra/issues/23      "`writeJSON()` should create parent directories"
869[#22]: https://github.com/jprichardson/node-fs-extra/pull/22        "Add a limit option to mkdirs()"
870[#21]: https://github.com/jprichardson/node-fs-extra/issues/21      "touch() in 0.10.0"
871[#20]: https://github.com/jprichardson/node-fs-extra/issues/20      "fs.remove yields callback before directory is really deleted"
872[#19]: https://github.com/jprichardson/node-fs-extra/issues/19      "fs.copy err is empty array"
873[#18]: https://github.com/jprichardson/node-fs-extra/pull/18        "Exposed copyFile Function"
874[#17]: https://github.com/jprichardson/node-fs-extra/issues/17      "Use `require('graceful-fs')` if found instead of `require('fs')`"
875[#16]: https://github.com/jprichardson/node-fs-extra/pull/16        "Update README.md"
876[#15]: https://github.com/jprichardson/node-fs-extra/issues/15      "Implement cp -r but sync aka copySync. [enhancement]"
877[#14]: https://github.com/jprichardson/node-fs-extra/issues/14      "fs.mkdirSync is broken in 0.3.1"
878[#13]: https://github.com/jprichardson/node-fs-extra/issues/13      "Thoughts on including a directory tree / file watcher? [enhancement, question]"
879[#12]: https://github.com/jprichardson/node-fs-extra/issues/12      "copyFile & copyFileSync are global"
880[#11]: https://github.com/jprichardson/node-fs-extra/issues/11      "Thoughts on including a file walker? [enhancement, question]"
881[#10]: https://github.com/jprichardson/node-fs-extra/issues/10      "move / moveFile API [enhancement]"
882[#9]: https://github.com/jprichardson/node-fs-extra/issues/9        "don't import normal fs stuff into fs-extra"
883[#8]: https://github.com/jprichardson/node-fs-extra/pull/8          "Update rimraf to latest version"
884[#6]: https://github.com/jprichardson/node-fs-extra/issues/6        "Remove CoffeeScript development dependency"
885[#5]: https://github.com/jprichardson/node-fs-extra/issues/5        "comments on naming"
886[#4]: https://github.com/jprichardson/node-fs-extra/issues/4        "version bump to 0.2"
887[#3]: https://github.com/jprichardson/node-fs-extra/pull/3          "Hi! I fixed some code for you!"
888[#2]: https://github.com/jprichardson/node-fs-extra/issues/2        "Merge with fs.extra and mkdirp"
889[#1]: https://github.com/jprichardson/node-fs-extra/issues/1        "file-extra npm !exist"
890