- Read/Write support for in-memory archives
- Fixed a memory safety issue during (de)compression
- Fixed dangling pointer warnings when serializing ZIP internal structs to
Data
- Fixed missing Swift 5 language version when integrating via CocoaPods
- Fixed inconsistent usage of the optional
preferredEncoding
parameter during entry addition - Improved documentation for compression settings
- Optional
skipCRC32
parameter to speed up entry reading
- Fixed a race condition during archive creation or extraction
- Fixed an error when trying to add broken symlinks to an archive
- Fixed an App Store submission issue by updating the product identifier to use reverse DNS notation
- Improved CRC32 calculation performance
- Improved entry replacement performance on separate volumes
- Improved documentation for closure-based writing
- Swift 5.0 support
- Optional
preferredEncoding
parameter to explicitly configure an encoding for filepaths
- Fixed a library load error related to dylib versioning
- Fixed a hang during read when decoding small,
.deflate
compressed entries - Improved Linux support
- Improved test suite on non-Darwin platforms
- Disabled symlink resolution during path traversal checking
- App extension support
- Optional
compressionMethod
parameter forzipItem:
- Fixed a path traversal attack vulnerability
- Fixed a crash due to wrong error handling after failed
fopen
calls
- Temporarily removed the currently unsupported
.modificationDate
attribute on non-Darwin platforms
- Swift 4.1 support
- Fixed default directory permissions
- Fixed a compile issue when targeting Linux
- Progress tracking support
- Operation cancellation support
- Improved performance of CRC32 calculations
- Improved Linux support
- Fixed wrong behaviour when using the
shouldKeepParent
flag - Fixed a linker error during archive builds when integrating via Carthage
- Fixed a wrong setting for
FRAMEWORK_SEARCH_PATHS
that interfered with code signing - Added a proper value for
CURRENT_PROJECT_VERSION
to make the framework App Store compliant when using Carthage
- Carthage support
- Improved error handling
- Made consistent use of Swift's
CocoaError
instead ofNSError
- Changed default POSIX permissions when file attributes are missing
- Improved docs
- Fixed a compiler warning when compiling with the latest Xcode 9 beta
- Optional parameter to skip CRC32 checksum calculation
- Tweaked POSIX buffer sizes to improve IO and comrpression performance
- Improved source readability
- Refined documentation
- Optional parameter skip decompression during entry retrieval
- Initial release of ZIP Foundation.