Sparkle 2.1.0-beta.2
Pre-release- New Binary Delta format (version 3)
- Features a custom and more efficient container format, migrating away from the deprecated xar format (Zorg) (#2051)
- Adds delta compression options for lzma, bzip2, zlib, lzfse, lz4, and no compression (Zorg) (#2051)
- Changes default delta format compression from bzip2 (in version 2) to lzma (in version 3) resulting in smaller deltas (Zorg) (#2051)
- Preserve file system (HFS+/apfs) level compression when applying delta updates (Zorg) (#2084)
- Tracks renames and binary diffs for files that have moved around to new locations using intelligent heuristics (Zorg) (#2051, #2053)
- Added more unit tests, UI tests, and generate_appcast/BinaryDelta tools support for the new format (Zorg) (#2052, #2054)
- Major upgrade improvements (#2070)
- Fix progress bar and button alignment for checking updates (Zorg) (#2066)
- Fix unsteady progress when installing updates (Zorg) (#2072)
- Check http statusCode in didFinishDownloadingToURL (Eric Shapiro, Zorg) (#2049, #2073)
- Fix version compare not treating '2.1.0' and '2.1' as being equal (Zorg) (#2065)
- Add verify and account options for signing updates (Zorg) (#2074)
- Add delta patch and Apple code signing verification in generate_appcast (Zorg) (#2076, #2077)
- Use more modern NSSecureCoding APIs when available (Zorg) (#2058)
- Use more modern FileManager APIs for copying files (Zorg) (#2059)
- Fix make release failing when customizing XPC_SERVICE_BUNDLE_ID_PREFIX (Zorg) (#2060)
- Preserve the Entitlements directory in podspec (digitalMoksha) (#2062)
- Add hidden option to generate_appcast to set max CDATA threshold (Zorg) (#2075)
Changes since beta 1:
- Major upgrade improvements (#2070)
- Preserve file system (HFS+/apfs) level compression when applying delta updates (Zorg) (#2084)
This update introduces a new major format (version 3) for delta updates, which migrates away from a deprecated archive API (xar) and creates smaller patches. Do note for compatibility you will still need to use the older version 2 format in production until you have older applications shipping with delta 3 support (and until delta support is finalized). However, we currently advise testing new version 3 delta patches using the BinaryDelta tool to see how the resulting patches will work out for your apps in the future, so we can address feedback sooner. You can also pass --version=2
to BinaryDelta create
to compare against older version 2 patches (the new default is now --version=3
). Check out BinaryDelta --help
and delta updates documentation for more information.