Releases: cberner/fuser
Releases · cberner/fuser
0.17.0
Major changes:
- Change many integer-based public API parameters to strongly-typed newtypes and bitflags.
This breaking changes affects many of the methods onFilesystem - Change
Filesystemtrait methods to use&self, and require mounted filesystems to beSend + Sync + 'static - Improve typed error handling across request/reply APIs
- Replace
Vec<MountOption>mount APIs with a structuredConfigAPI, including ACL option handling - Feature flags
abi-7-xxare now ignored and will be removed in 0.18, with compatibility checks moved to runtime behavior - Remove the old ABI-specific feature-flag surface (
abi-7-9throughabi-7-19, plus tooling/docs/examples references) - Add support for multiple event loops per session, which can be enabled via
Config::n_threads - Add experimental async API (
AsyncFilesystem)
Minor changes:
- Rename
BackgroundSession::jointoumount_and_join, returningio::Result<()>instead of panicking - Add
FUSE_DEV_IOC_CLONEsupport and improve passthrough descriptor handling (ReplyCreate,ReplyOpen,BackingId) - Improve passthrough descriptor handling (
ReplyCreate,ReplyOpen,BackingId) - Add
FileTypeconversion from stdFileType - Add option to explicitly choose
libfuse2orlibfuse3, preferlibfuse3by default - Support building without libfuse on BSD
- Remove remaining
osxfusesupport and improvemacfusecompatibility - The path to the
fusermountbinary can be specified with theFUSERMOUNT_PATHenvironment variable allow_rootorallow_othermust be enabled when usingauto_unmount- Remove deprecated
mountandspawn_mount-- usemount2andspawn_mount2instead - Update and expand documentation
Internal changes:
- Improve Linux/BSD/macOS test coverage by migrating mount tests to
fuser-testsand expanding CI - Rework session lifecycle internals (handshake/session startup, destroy ordering, and unmount error propagation)
0.16.0
- Add support for passthrough file descriptors
- Change
KernelConfigcapabilities flags parameters tou64 - Remove feature flags
abi-7-9throughabi-7-18 - Remove
libfusefeature flag from defaults. Linking with libfuse can be enabled with thelibfusefeature flag - Improve macfuse compatibility (note that macfuse remains untested)
- Fix unsound behavior when linking with libfuse3
- Performance optimizations
- Update documentation