Atomic installs
This version significantly improves handling of interrupted installations, incorrect permissions, and quarantined files.
Sparkle is compatible with all OS X versions since 10.7 Lion, including 10.11 El Capitan (if you comply with App Transport Security).
- Rewritten file operations for updating an app (Zorg)
- Ensuring atomic move operations, robust error handling.
- Faster.
- Using modern APIs where possible (no FSPathMakeRef, FSGetCatalogInfo, FSFindFolder, etc.)
- Strong documentation, easier to read code.
- Automatic updates won't be installed if the system is about to shut off (Zorg)
- Deprecated serving over HTTP without DSA (Zorg)
- Note that Apple has deprecated insecure HTTP in OS X 10.11
- Improved Autoupdate application (Zorg)
- Do all the installation work after the runloop is set up
- TerminationListener only does termination listening now
- Handle cases where host path is not installation path and host path is not desired executable path
- Don't show Autoupdate dock icon if we shouldn't show UI
- Update modification & access time for new update
- Added installUpdatesIfAvailable (Ian Langworth)
- Removed extensions from shell scripts (Jake Petroules)
- Rewritten test app so it works again, and from a local web server (Zorg)
- Replaced use of Python with built-in web server (Kevin Wojniak)
- Set LD_RUNPATH_SEARCH_PATHS in Podspec (Jake Petroules)
- Don't install automatic updates if the system might shut off (Zorg)
- Don't show Autoupdate dock icon if we shouldn't show UI (Zorg)
- Updated layout constraints when removing release notes (Zorg)
- Improved BinaryDelta error handling & logging (Zorg)
- Refactored quarantine removal (Zorg)
- Fixed German localization (1024jp)
- Updated zh_CN translation (LIU Dongyuan / 柳东原)
- Updated Mac models list until July 2015 (Gabriel Ulici)
- Updated Polish translation (Kornel Lesiński)
- Updated Xcode project languages for which we have translations (Jake Petroules)
- Updated XIB files (Kornel Lesiński)
- Use NSByteCountFormatter if available (Jake Petroules)
- Declared protocols on SUUpdateAlert for the 10.11 SDK (Daniel Jalkut)
- Silenced warning about casting away const-ness and -Wassign-enum (Daniel Jalkut)
- Added script to generate a report comparing the Sparkle.strings files (Kevin Wojniak)
- Check for empty strings (as well as nil) in SUHost's -name method (Karl Moskowski)
- Don't follow symlinks for checking file existence (Zorg)
- Unit tests in Swift (Zorg, Jake Petroules)
- Fixed framework imports (Felix Schulze)
- Fixed issues with copying files from different mounted drives (Zorg)
- Disallowed automatic updates when user can't write to the bundle (Zorg)
- Set the task working directories instead of changing the process working directory (Kevin Wojniak)
OS X 10.7 or later required
Make sure you add <sparkle:minimumSystemVersion>10.7</sparkle:minimumSystemVersion>
tag to <item>
s in your appcast. Sparkle will crash on Snow Leopard.
HTTPS or ATS exception required
OS X 10.11 deprecated HTTP and blocks updates unless you use HTTPS or disable App Transport Security.