Announcing macFUSE 5.3.1 Posted on 13 Jun 2026
Release Notes
General
-
Add initial support for macOS 27
-
Add initial support for Xcode 27
FSModule (FSKit Backend)
-
Use the node identifier and generation as the authoritative handle for file system items instead of the inode number. Perform
FUSE_LOOKUPto get authoritative handle of directory entries returned byFUSE_READDIRPrevious releases assumed that the node identifier and inode number were identical, as is the case when using the high level libfuse API without
use_ino. This change removes that shortcut and resolves macfuse/macfuse#1166 and macfuse/macfuse#1167. -
Improve stability by fixing a bug in open file handle management
-
Improve performance when preparing messages sent to the file system server
-
Improve performance when enumerating directories by using
FUSE_BATCH_FORGET
Kernel Extension (Kernel Backend)
-
Update the kernel extension version to 5.3.1
-
Remove the file system item from the name cache when handling
FUSE_NOTIFY_INVAL_ENTRYThis ensures that the next lookup triggers a
FUSE_LOOKUPrequest and resolves macfuse/macfuse#1160. -
Address an incompatibility with the macOS 27 SDK included in Xcode 27 beta 1
MFMount.framework
-
Turn
MFChannelCreateWithDeviceFileDescriptor()into a weak importThis function will be removed once
MFMount()supports mounting volumes using the kernel backend. Check that the symbol is available before calling it. -
Please note that parts of the
MFMount.frameworkAPI may still change in future releases.
libfuse
- Fix a path deadlock in the high level API when using
VNOP_MONITOR. This adds the missingfree_path()call infuse_lib_monitor()and resolves macfuse/macfuse#1168.
libfuse3
- Fix a path deadlock in the high level API when using
VNOP_MONITOR. This adds the missingfree_path()call infuse_lib_monitor()and resolves macfuse/macfuse#1168.
Sponsors
- If you would like to help sustain future development, please consider sponsoring the project through GitHub Sponsors


