- Added
LazyFile- This is not used at the moment by any backends, though it will in a future release
- Added
FileSystem.readandFileSystem.write - Added
StatsCommon.toJSON - Reduce default max byte length to 1 MiB (#168)
- Added
FileReadResulttype that uses built-inArrayBufferView - Removed
PortFile,fileRPC, and RPC scopes - Fixed
StoreFS.loadIndex(+Sync) not committing the transaction - Fixed files trying to call
FileSystem.syncon read-only file systems - Reworked
Porterror passing - Changed the default value of
lengthinFile.readandFile.write(+Sync)- From
this.stats.sizetobuffer.byteLength - offset - This now has the same behavior as the relevant Node.js APIs
- From
- Fixed
PreloadFile's handling of a buffer and stats size mismatch PortFS.syncnow converts metadata to a plain object- Fixed
PortFile.readnot copying to buffer - Changed
utimesto use numbers internally - Tweaked
Fetch.baseUrltrailing slash behavior - Fixed backend options type checking
- Changed
FetchFSto extendStoreFS - Added
StoreFSmethods for working withIndex:loadIndexloadIndexSynctoIndextoIndexSync
- Deprecated
IndexFS- You can use
StoreFSand callloadIndex/loadIndexSyncwith your index
- You can use
- Changed inode and data IDs from
biginttonumber - Rewrote
IndexandIndexFSto be read/write - Added
whilecanaries- This should prevent any infinite locks due to
whileloops
- This should prevent any infinite locks due to
- Fixed
StoreFSnot using creation options - Improved internal
_openoptions - Added directory file type checks
- Added
PureCreationOptions
Testing:
- Updated the
npm testscript - Improved
Fetchtesting StoreFSusingIndexis now run through the full FS test suitePort(includingAsync) is now run through the full FS test suite- Removed
Async-specific common test suite - Simplified temporary coverage directory removal
- Failing tests will now give an exit code of 1
- Reduced tests
waittimes zenfs-tests output is now much prettier. It has colors and fancy formatting and such.- Added
zenfs-testflags:--cleanwill remove cached coverage data--reportwill report any cached coverage data, then remove it--preservewill run tests but will not remove the coverage data or report on it
- Deprecated APIs are no longer considered when calculating coverage
- CI/CD tests now display output about test suites