bfleischer
released this
-
Restore binary compatibility with file systems, that were built using version 3 of the high-level Objective-C framework. This improves compatibility with legacy file systems.
-
Add workaround for loading system extensions on macOS 11. The function
KextManagerLoadKextWithURL()is broken on macOS 11 and might return an error even if the macFUSE system extension has been loaded successfully. We need to double-check if the extension has been loaded. -
Add workaround for unloading system extensions on macOS 11. The function
KextManagerUnloadKextWithIdentifier()is broken on macOS 11, claiming theload_macfuseprocess, that is running as root, does not have sufficient privileges to unload the extension. -
Add Apple Silicon support to installer. The installer now runs natively on Apple Silicon.
-
Improve installer compatibility with macOS 11. On macOS 11 a restart is required before the macFUSE system extension can be loaded. There is no need to try loading the extension more than once in the context of the installer.
-
The license has changed. Starting with the 4.0.0 release, redistributions bundled with commercial software are not allowed without specific prior written permission. This includes the automated download or installation in the context of commercial software. Please contact Benjamin Fleischer.
Assets
6
bfleischer
released this
-
Fix a
renamex_np(2)issue when using the flagRENAME_SWAP. This improves the compatibility with Microsoft Office. -
Add
libosxfuse_i64.2.dylibsymlink for legacy file systems that were build with version 2. -
The license has changed. Starting with the 4.0.0 release, redistributions bundled with commercial software are not allowed without specific prior written permission. This includes the automated download or installation in the context of commercial software. Please contact Benjamin Fleischer.
Assets
6
bfleischer
released this
-
Fix a bug in macFUSE.framework that can result in volumes falsely claiming to support
renamex_np(2)(VOL_CAP_INT_RENAME_SWAPandVOL_CAP_INT_RENAME_EXCL) even though support for the file system feature has not been enabled. File systems that are based on libfuse are not affected by the issue. -
Fix an upstream bug in libfuse 2.9.9, that can result in
readdir(2)returningEIO. See #729 for details. -
The license has changed. Starting with the 4.0.0 release, redistributions bundled with commercial software are not allowed without specific prior written permission. This includes the automated download or installation in the context of commercial software. Please contact Benjamin Fleischer.
Assets
6
bfleischer
released this
-
Fix kernel extension ambiguity on macOS 11. The kernel extension version number now contains the version of the kernel that the particular extension was built for.
-
Remove
KextManagerLoadKextWithURL()workaround, that was introduced in version 3.11.1. The issue has been resolved in macOS 11.0.1. -
The license has changed. Starting with the 4.0.0 release, redistributions bundled with commercial software are not allowed without specific prior written permission. This includes the automated download or installation in the context of commercial software. Please contact Benjamin Fleischer.
Assets
6
bfleischer
released this
-
Force installation of preference pane if a legacy version of the preference pane is currently installed.
-
Enable dark mode support for preference pane on macOS 10.14 and macOS 10.15. See #550 for details.
-
Fix English localization of installer. See #737 for details.
-
Fix a bug that resulted in the
preinstallandpostinstallscripts missing from the installer package. Thepreinstallscript is responsible for removing legacy versions of the package before installing the new release. See #736 for details. -
Fix a bug that resulted in some
Info.plistplaceholders not being resolved at build-time formacfuse.fs. -
Fix bug in the uninstaller (preference pane) that resulted in not all components being removed.
-
The license has changed. Starting with the 4.0.0 release, redistributions bundled with commercial software are not allowed without specific prior written permission. This includes the automated download or installation in the context of commercial software. Please contact Benjamin Fleischer.
Assets
6
bfleischer
released this
-
FUSE for macOS is now macFUSE.
-
Add support for Apple Silicon. The new release supports macOS 10.9 to macOS 11 (Intel and Apple Silicon).
-
Drop binary compatiblity with Google MacFUSE. The Google MacFUSE project was abandoned in 2009. Legacy file systems need to be recompiled for the new macFUSE release.
-
The user space library and framework have been renamed to reflect the name change and can now be found at
/usr/local/lib/libfuse.2.dylib(headers in/usr/local/include/) and/Library/Frameworks/macFUSE.framework. -
Add support for
renamex_np(2)on macOS 10.12 and later (VOL_CAP_INT_RENAME_SWAPandVOL_CAP_INT_RENAME_EXCL).Add new callbacks to libfuse
void renamex(fuse_req_t req, fuse_ino_t parent, const char *name, fuse_ino_t newparent, const char *newname, unsigned int flags); int renamex(const char *from, const char *to, unsigned int flags);Add new callback to macFUSE.framework
typedef NS_OPTIONS(NSUInteger, GMUserFileSystemMoveOption) { GMUserFileSystemMoveOptionSwap = 1 << 0, GMUserFileSystemMoveOptionExclusive = 1 << 1 }; - (BOOL)moveItemAtPath:(NSString *)source toPath:(NSString *)destination options:(GMUserFileSystemMoveOption)options error:(NSError **)error; -
Drop support for
exchangedata(2)on macOS 11 (VOL_CAP_INT_EXCHANGEDATA). -
Add support for renaming mounted volumes (
VOL_CAP_INT_VOL_RENAME).Add new callbacks to libfuse
void setvolname(fuse_req_t req, const char *name); int setvolname(const char *name);Add new callback to macFUSE.framework
- (BOOL)setAttributes:(NSDictionary *)attributes ofFileSystemAtPath:(NSString *)path error:(NSError **)error; -
Clean up libfuse
- Use DiskArbitration for unmounting volumes.
- Remove deprecated non-portable function.
-
Add support for volume UUIDs (
f_uuid). For each volume a UUID is generated at mount-time. -
Drop support for deprecated "old style" mount process. Opening a
/dev/macfusedevice and passing the file descriptor tomount_macfuseis no longer supported ("old style").mount_macfusepasses the file descriptor to the calling library over a socket ("new style", introduced in version 3.3.0). -
Version the
mount_macfusesocket interface used for returning the/dev/macfusefile descriptor to the calling library. When setting the environment variable_FUSE_COMMVERSto2, the mount tool will pass the status of themount(2)call back to the calling library over the_FUSE_COMMFDsocket, before exiting. -
Rename
mount_macfuseenvironment variables_FUSE_CALL_BY_LIB(beforeMOUNT_OSXFUSE_CALL_BY_LIB) and_FUSE_DAEMON_PATH(beforeMOUNT_OSXFUSE_DAEMON_PATH). -
Drop support for legacy ioctls
FUSEDEVIOCGETHANDSHAKECOMPLETE(use_FUSE_COMMVERS=2instead) andFUSEDEVIOCALTERVNODEFORINODE(use notification API instead). -
The license has changed. Starting with the 4.0.0 release, redistributions bundled with commercial software are not allowed without specific prior written permission. This includes the automated download or installation in the context of commercial software. Please contact Benjamin Fleischer.
Assets
6
bfleischer
released this
-
Improve macOS 11 compatibility by adding workaround for displaying user notifications. The function
CFUserNotificationDisplayAlert()returns undocumented, backwards compatibility breaking response flags on macOS 11. -
The license has changed. Starting with the 3.10.0 release, redistributions bundled with commercial software are not allowed without specific prior written permission. Please contact Benjamin Fleischer.
Assets
6
bfleischer
released this
-
Fix an issue on macOS 11, that can result in file system operations not being interruptible.
-
Improve macOS 11 compatibility by adding support for the new macOS version numbering scheme.
-
Improve macOS 11 compatibility by adding workarounds for the new
KextManagerimplementation. The functionKextManagerLoadKextWithURL()returns undocumented, backwards compatibility breaking status codes on macOS 11. -
Improve macOS 11 compatibility by enabling the "Continue" button in the post install plugin, even if the kernel extension has not been loaded. On macOS 11 a restart might be required before the kernel extension can be loaded.
-
The license has changed. Starting with the 3.10.0 release, redistributions bundled with commercial software are not allowed without specific prior written permission. Please contact Benjamin Fleischer.
Assets
6
bfleischer
released this
-
Add experimental support for macOS 11.0 (Intel)
-
Fix an issue with the
voliconmodule, that was introduced in version 3.10.4 and results in the volume icon not being visible. For details see #701. -
The license has changed. Starting with the 3.10.0 release, redistributions bundled with commercial software are not allowed without specific prior written permission. Please contact Benjamin Fleischer.
Assets
6
bfleischer
released this
-
Fix an issue on macOS 10.15 that can result in terminated processes to turn into zombies, that still hold a lock to a file on the FUSE volume. As a result the volume cannot be unmounted.
-
Minor build script optimizations
-
The license has changed. Starting with the 3.10.0 release, redistributions bundled with commercial software are not allowed without specific prior written permission. Please contact Benjamin Fleischer.