56 KiB
56 KiB
4.0.1 / 2017-07-31
Fixed
- Previously,
ensureFile()
&ensureFileSync()
would do nothing if the path was a directory. Now, they error out for consistency withensureDir()
. #465, #466, #470
4.0.0 / 2017-07-14
Changed
- BREAKING: The promisified versions of
fs.read()
&fs.write()
now return objects. See the docs for details. #436, #449 fs.move()
now errors out when destination is a subdirectory of source. #458- Applied upstream fixes from
rimraf
tofs.remove()
&fs.removeSync()
. #459
Fixed
- Got
fs.outputJSONSync()
working again; it was broken due to refactoring. #428
Also clarified the docs in a few places.
3.0.1 / 2017-05-04
- Fix bug in
move()
&moveSync()
when source and destination are the same, and source does not exist. #415
3.0.0 / 2017-04-27
Added
- BREAKING: Added Promise support. All asynchronous native fs methods and fs-extra methods now return a promise if the callback is not passed. #403
pathExists()
, a replacement for the deprecatedfs.exists
.pathExists
has a normal error-first callback signature. Also addedpathExistsSync
, an alias tofs.existsSync
, for completeness. #406
Removed
- BREAKING: Removed support for setting the default spaces for
writeJson()
,writeJsonSync()
,outputJson()
, &outputJsonSync()
. This was undocumented. #402
Changed
- Upgraded jsonfile dependency to v3.0.0:
- BREAKING: Changed behavior of
throws
option forreadJsonSync()
; now does not throw filesystem errors whenthrows
isfalse
.
- BREAKING: Changed behavior of
- BREAKING:
writeJson()
,writeJsonSync()
,outputJson()
, &outputJsonSync()
now output minified JSON by default for consistency withJSON.stringify()
; set thespaces
option to2
to override this new behavior. #402 - Use
Buffer.allocUnsafe()
instead ofnew Buffer()
in environments that support it. #394
Fixed
removeSync()
silently failed on Windows in some cases. Now throws anEBUSY
error. #408
2.1.2 / 2017-03-16
Fixed
- Weird windows bug that resulted in
ensureDir()
's callback being called twice in some cases. This bug may have also affectedremove()
. See #392, #393
2.1.1 / 2017-03-15
Fixed
- Reverted
5597bd
, this broke compatibility with Node.js versions v4+ but less thanv4.5.0
. - Remove
Buffer.alloc()
usage inmoveSync()
.
2.1.0 / 2017-03-15
Thanks to Mani Maghsoudlou (@manidlou) & Jan Peer Stöcklmair (@JPeer264) for their extraordinary help with this release!
Added
moveSync()
See #309, #381. (@manidlou)copy()
andcopySync()
'sfilter
option now gets the destination path passed as the second parameter. #366 (@manidlou)
Changed
- Use
Buffer.alloc()
instead of deprecatednew Buffer()
incopySync()
. #380 (@manidlou) - Refactored entire codebase to use ES6 features supported by Node.js v4+ #355. (@JPeer264)
- Refactored docs. (@manidlou)
Fixed
2.0.0 / 2017-01-16
Removed
- BREAKING: Removed support for Node
v0.12
. The Node foundation stopped officially supporting it on Jan 1st, 2017. - BREAKING: Remove
walk()
andwalkSync()
.walkSync()
was only part offs-extra
for a little over two months. Use klaw instead ofwalk()
, in fact,walk()
was just an alias to klaw. ForwalkSync()
use klaw-sync. See: #338, #339
Changed
- BREAKING: Renamed
clobber
tooverwrite
. This affectscopy()
,copySync()
, andmove()
. #330, #333 - Moved docs, to
docs/
. #340
Fixed
- Apply filters to directories in
copySync()
like incopy()
. #324 - A specific condition when disk is under heavy use,
copy()
can fail. #326
1.0.0 / 2016-11-01
After five years of development, we finally have reach the 1.0.0 milestone! Big thanks goes to Ryan Zim for leading the charge on this release!
Added
walkSync()
Changed
- BREAKING: dropped Node v0.10 support.
- disabled
rimaf
globbing, wasn't used. #280 - deprecate
copy()/copySync()
optionfilter
if it's aRegExp
.filter
should now be a function. - inline
rimraf
. This is temporary and was done becauserimraf
depended upon the beefyglob
whichfs-extra
does not use. #300
Fixed
- bug fix proper closing of file handle on
utimesMillis()
#271 - proper escaping of files with dollar signs #291
copySync()
failed if user didn't own file. #199, #301
0.30.0 / 2016-04-28
- Brought back Node v0.10 support. I didn't realize there was still demand. Official support will end 2016-10-01.
0.29.0 / 2016-04-27
- 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.
0.28.0 / 2016-04-17
- BREAKING: removed
createOutputStream()
. Use https://www.npmjs.com/package/create-output-stream. See: #192 mkdirs()/mkdirsSync()
check for invalid win32 path chars. See: #209, #237mkdirs()/mkdirsSync()
if drive not mounted, error. See: #93
0.27.0 / 2016-04-15
- add
dereference
option tocopySync()
. #235
0.26.7 / 2016-03-16
- fixed
copy()
if source and dest are the same. #230
0.26.6 / 2016-03-15
- fixed if
emptyDir()
does not have a callback: #229
0.26.5 / 2016-01-27
copy()
with two arguments (w/o callback) was broken. See: #215
0.26.4 / 2016-01-05
copySync()
madepreserveTimestamps
default consistent withcopy()
which isfalse
. See: #208
0.26.3 / 2015-12-17
- fixed
copy()
hangup in copying blockDevice / characterDevice //dev/null
. See: #193
0.26.2 / 2015-11-02
- fixed
outputJson{Sync}()
spacing adherence tofs.spaces
0.26.1 / 2015-11-02
- fixed
copySync()
whenclogger=true
and the destination is read only. See: #190
0.26.0 / 2015-10-25
- extracted the
walk()
function into its own moduleklaw
.
0.25.0 / 2015-10-24
- now has a file walker
walk()
0.24.0 / 2015-08-28
- removed alias
delete()
anddeleteSync()
. See: #171
0.23.1 / 2015-08-07
- Better handling of errors for
move()
when moving across devices. #170 ensureSymlink()
andensureLink()
should not throw errors if link exists. #169
0.23.0 / 2015-08-06
- added
ensureLink{Sync}()
andensureSymlink{Sync}()
. See: #165
0.22.1 / 2015-07-09
- Prevent calling
hasMillisResSync()
on module load. See: #149. Fixes regression that was introduced in0.21.0
.
0.22.0 / 2015-07-09
- preserve permissions / ownership in
copy()
. See: #54
0.21.0 / 2015-07-04
- add option to preserve timestamps in
copy()
andcopySync()
. See: #141 - updated
graceful-fs@3.x
to4.x
. This brings in features fromamazing-graceful-fs
(much cleaner code / less hacks)
0.20.1 / 2015-06-23
- fixed regression caused by latest jsonfile update: See: https://github.com/jprichardson/node-jsonfile/issues/26
0.20.0 / 2015-06-19
- removed
jsonfile
aliases withFile
in the name, they weren't documented and probably weren't in use e.g. this package had bothfs.readJsonFile
andfs.readJson
that were aliases to each other, now usefs.readJson
. - preliminary walker created. Intentionally not documented. If you use it, it will almost certainly change and break your code.
- started moving tests inline
- upgraded to
jsonfile@2.1.0
, can now pass JSON revivers/replacers toreadJson()
,writeJson()
,outputJson()
0.19.0 / 2015-06-08
fs.copy()
had support for Node v0.8, dropped support
0.18.4 / 2015-05-22
- fixed license field according to this: #136 and https://github.com/npm/npm/releases/tag/v2.10.0
0.18.3 / 2015-05-08
- bugfix: handle
EEXIST
when clobbering on some Linux systems. #134
0.18.2 / 2015-04-17
- bugfix: allow
F_OK
(#120)
0.18.1 / 2015-04-15
- improved windows support for
move()
a bit.92838980f2
- fixed a lot of tests for Windows (appveyor)
0.18.0 / 2015-03-31
- added
emptyDir()
andemptyDirSync()
0.17.0 / 2015-03-28
copySync
addedclobber
option (before always would clobber, now ifclobber
isfalse
it throws an error if the destination exists). Only works with files at the moment.createOutputStream()
added. See: #118
0.16.5 / 2015-03-08
- fixed
fs.move
whenclobber
istrue
and destination is a directory, it should clobber. #114
0.16.4 / 2015-03-01
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
0.16.3 / 2015-01-28
- reverted
1ee77c8a80
0.16.2 / 2015-01-28
- fixed
fs.copy
for Node v0.8 (support is temporary and will be removed in the near future)
0.16.1 / 2015-01-28
- if
setImmediate
is not available, fall back toprocess.nextTick
0.16.0 / 2015-01-28
- bugfix
fs.move()
into itself. Closes #104 - bugfix
fs.move()
moving directory across device. Closes #108 - added coveralls support
- bugfix: nasty multiple callback
fs.copy()
bug. Closes #98 - misc fs.copy code cleanups
0.15.0 / 2015-01-21
- dropped
ncp
, imported code in - because of previous, now supports
io.js
graceful-fs
is now a dependency
0.14.0 / 2015-01-05
- changed
copy
/copySync
fromfs.copy(src, dest, [filters], callback)
tofs.copy(src, dest, [options], callback)
#100 - removed mockfs tests for mkdirp (this may be temporary, but was getting in the way of other tests)
0.13.0 / 2014-12-10
- removed
touch
andtouchSync
methods (they didn't handle permissions like UNIX touch) - updated
"ncp": "^0.6.0"
to"ncp": "^1.0.1"
- imported
mkdirp
=>minimist
andmkdirp
are no longer dependences, should now appease people who wantedmkdirp
to be--use_strict
safe. See #59
0.12.0 / 2014-09-22
- copy symlinks in
copySync()
#85
0.11.1 / 2014-09-02
- bugfix
copySync()
preserve file permissions #80
0.11.0 / 2014-08-11
- upgraded
"ncp": "^0.5.1"
to"ncp": "^0.6.0"
- upgrade
jsonfile": "^1.2.0"
tojsonfile": "^2.0.0"
=> on write, json files now have\n
at end. Also addsoptions.throws
toreadJsonSync()
see https://github.com/jprichardson/node-jsonfile#readfilesyncfilename-options for more details.
0.10.0 / 2014-06-29
- bugfix: upgaded
"jsonfile": "~1.1.0"
to"jsonfile": "^1.2.0"
, bumped minor because ofjsonfile
dep change from~
to^
. #67
0.9.1 / 2014-05-22
- removed Node.js
0.8.x
support,0.9.0
was published moments ago and should have been done there
0.9.0 / 2014-05-22
- upgraded
ncp
from~0.4.2
to^0.5.1
, #58 - upgraded
rimraf
from~2.2.6
to^2.2.8
- upgraded
mkdirp
from0.3.x
to^0.5.0
- added methods
ensureFile()
,ensureFileSync()
- added methods
ensureDir()
,ensureDirSync()
#31 - added
move()
method. From: https://github.com/andrewrk/node-mv
0.8.1 / 2013-10-24
0.8.0 / 2013-10-14
filter
implemented oncopy()
andcopySync()
. (Srirangan / #36)
0.7.1 / 2013-10-12
copySync()
implemented (Srirangan / #33)- updated to the latest
jsonfile
version1.1.0
which givesoptions
params for the JSON methods. Closes #32
0.7.0 / 2013-10-07
- update readme conventions
copy()
now works if destination directory does not exist. Closes #29
0.6.4 / 2013-09-05
- changed
homepage
field in package.json to remove NPM warning
0.6.3 / 2013-06-28
- changed JSON spacing default from
4
to2
to follow Node conventions - updated
jsonfile
dep - updated
rimraf
dep
0.6.2 / 2013-06-28
- added .npmignore, #25
0.6.1 / 2013-05-14
0.6.0 / 2013-03-18
- removed node 0.6 support
- added node 0.10 support
- upgraded to latest
ncp
andrimraf
. - optional
graceful-fs
support. Closes #17
0.5.0 / 2013-02-03
- Removed
readTextFile
. - Renamed
readJSONFile
toreadJSON
andreadJson
, same with write. - Restructured documentation a bit. Added roadmap.
0.4.0 / 2013-01-28
- Set default spaces in
jsonfile
from 4 to 2. - Updated
testutil
deps for tests. - Renamed
touch()
tocreateFile()
- Added
outputFile()
andoutputFileSync()
- Changed creation of testing diretories so the /tmp dir is not littered.
- Added
readTextFile()
andreadTextFileSync()
.
0.3.2 / 2012-11-01
- Added
touch()
andtouchSync()
methods.
0.3.1 / 2012-10-11
- Fixed some stray globals.
0.3.0 / 2012-10-09
- Removed all CoffeeScript from tests.
- Renamed
mkdir
tomkdirs
/mkdirp
.
0.2.1 / 2012-09-11
- Updated
rimraf
dep.
0.2.0 / 2012-09-10
- Rewrote module into JavaScript. (Must still rewrite tests into JavaScript)
- Added all methods of jsonfile
- Added Travis-CI.
0.1.3 / 2012-08-13
- Added method
readJSONFile
.
0.1.2 / 2012-06-15
- Bug fix:
deleteSync()
didn't exist. - Verified Node v0.8 compatibility.
0.1.1 / 2012-06-15
- Fixed bug in
remove()
/delete()
that wouldn't execute the function if a callback wasn't passed.
0.1.0 / 2012-05-31
- Renamed
copyFile()
tocopy()
.copy()
can now copy directories (recursively) too. - Renamed
rmrf()
toremove()
. remove()
aliased withdelete()
.- Added
mkdirp
capabilities. Named:mkdir()
. Hides Node.js nativemkdir()
. - 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.
0.0.4 / 2012-03-14
- Removed CoffeeScript dependency
0.0.3 / 2012-01-11
- Added methods rmrf and rmrfSync
- Moved tests from Jasmine to Mocha