Refactored Overlay (now CopyOnWrite)
- Renamed to
CopyOnWritefor clarity (all of the old names are still available but deprecated) - Rewrote
CopyOnWriteto use a journal - Added a new internal API for journaling
- Fixed
readdirnot tracking deletions correctly - Moved journal initialization logic to
create - Fixed the CoW test setup and enabled CoW tests
- Cleaned up directory tests
- Removed an incorrect directory test for permissions
Fixes to Streams
createReadStreamnow supports thestartandendoptions (#175)createWriteStreamnow supports thestartoption- Removed the problematic
@types/readable-streamdependency- The types for
ReadableandWritableare now pulled from@types/node - You should not install
@types/readable-streamalongside ZenFS!
- The types for
- Added tests for
startandendwithcreateReadStream - Cleaned up the
createWriteStreamandreadableWebStreammethods ofFileHandle - Cleaned up the
createWriteStreamfunction - Cleaned up streams tests
Other changes
- Removed incorrect modification of
AsyncIterableIterator(#158) - Corrected the return type of
fs.promises.watchfromAsyncIterableIteratortoAsyncIteratorObject - Improved error messages test to check for
ENOENTon missing items - Polyfills now log warnings and aren't considered in test coverage
- Fixed
Async#_patchAsynccalling the sync method recursively - Removed trailing period on many log/error messages
- Fixed
Asyncnever updating the sync cache when a sync method is called Async#_patchAsyncnow gets the keys dynamically- Fixed
FileHandle.write's behavior when the encoding wasnull