- Don't throw on
fs.CreateDirectory("/")
(#61) - Fix AggregateFileSystem not following fallbacks (#64)
- Fix PhysicalFileSystem on .NET Framework 4
- Breaking change: Add new
IFileSystem.EnumerateItems
to optimize scanning by fetching important attributes along the scan (e.g length, file or directory...etc.). - Breaking change: For performance reasons,
MountFileSystem
/AggregateFileSystem
are no longer thread safe when modifying their mounts/filesystems. - Breaking change:
MountFileSystem
/AggregateFileSystem
when enumerating files are no longer discarding files with different case sensitive names. Previouslya.txt
andA.txt
would be considered as a same file.
- Add overload methods to
FileSystemExtensions
to not copy attributes from source filesystem.
- Improve performance of AggregateFileSystem single file resolution
- Add AggregateFileSystem.FindFirstFileSystemEntry
- Fix AggregateFileSystem.Watch to watch only existing folders from sources.
- Add FileSystem.Name for debugging purpose.
- Add DebuggerDisplay/DebuggerTypeProxy to all FileSystem
- Breaking change: Renaming of protected
ComposeFileSystem.NextFileSystem
toComposeFileSystem.Fallback
- Breaking Change:
FileSystem.CopyFileCross
destination IFileSystem moved to 3rd parameter instead of 2nd.
- Add extension method to copy filesystem or folder to another filesystem subfolder.
- Fix issue with SubFileSystem not throwing an exception when mounting a windows filesystem with an incorrect uppercase drive letter (e.g
/mnt/C
)
- Fix assembly to use Portable debug info.
- Make UPath struct readonly.
- Don't throw if Dispose is being called multiple times on a FileSystem via (PR #38).
- Add SourceLink support.
- Add MountFS.TryGetMount and MountFS.TryGetMountName via (PR #36)
- Properly show mount paths when enumerating MountFS (fixes #28) (PR #29)
- Don't throw when enumerating root on empty MountFS (PR #31)
- Fix IFileSystemWatcher instances not being removed from AggregateFSWs (PR #32)
- Fix dispose not removing the watchers from aggregate and mount FS (PR #34)
- Fix MountFS watchers having incorrect paths when created in Mount() (PR #26)
- Add CanWatch impls to physical and composite FS (PR #24)
- Use dispose for all aggregate file systems. Add support for owned FS (PR #22)
- Fix SearchPattern special case for Windows. Via (PR #23)
- Correct MountFS watch behavior for arbitrary mounts. Via (PR #17)
- Add IFileSystem.CanWatch. Via (PR #18)
- Add support for netstandard2.0 to avoid pulling dependencies there. Via (PR #21)
- Add support for mount points at any path for
MountFileSystem
. Courtesy of Rohan Singh via PR #11
- Propagate the originating IFileSystem to the IFileSystemWatcher events
- Add support for
IFileSystemWatcher
, courtesy of Rohan Singh via PR #9
- Try to fix a sporadic Unauthorized access when using CopyFileCross with a PhysicalFileSystem as a destination
- Add FileEntry.CopyTo across filesystems
- Fix FileSystemEntry.Parent (FileEntry.Directory). Should return a DirectoryEntry even if it does not exist instead of throwing an exception
- Add extension method IFileSystem.GetOrCreateSubFileSystem
- Fix issue when combining a root path
/
with an empty path (#7) - Add == operator to FileSystemEntrty
- Add IEquatable<FileSystemEntry> to FileSystemEntry
- Add AggregateFileSystem.ClearFileSystems and AggregateFileSystem.FindFileSystemEntries
- Add FileEntry.ReadAllText/WriteAllText/AppendAllText/ReadAllBytes/WriteAllBytes
- Fix directory/file locking issue in MemoryFileSystem
- Initial version