QuietUnrar/Carthage/Checkouts/UnzipKit/CHANGELOG.md

154 lines
6.3 KiB
Markdown
Raw Normal View History

# UnzipKit CHANGELOG
## 1.9
* Added support for `NSProgress` and `NSProgressReporting` in all extraction and iteration methods (Issue #32)
* Added detailed logging using new unified logging framework. See [the readme](README.md) for more details (Issue #47)
* Added support for archiving and restoring files' POSIX permissions (PRs #84, #86, #87 - Thanks, [@MartinLau7](https://github.com/MartinLau7)!)
* Added methods to check data integrity of an individual archived file, or the entire archive (Issue #63)
* Fixed a crasher in `extractBufferedDataFromFile:error:action:`, which also manifested in other methods that use it, like `validatePassword` (Issue #51 - Thanks, [@amosavian](https://github.com/amosavian), [@monobono](https://github.com/monobono), and [@segunlee](https://github.com/segunlee)!)
* Upgraded project to Xcode 9 and to the macOS 10.13 and iOS 11 SDKs (Issue #61)
* Consolidated targets so they're shared between iOS and macOS (Issue #62)
* Added a CocoaPods test spec (Issue #59)
* Improved the way warnings are ignored to be more consistent, and so they're only ignored in `minizip`, and not the UnzipKit sources (Issue #68)
## 1.8.5
* Fixed issues with localization (again, again) (Issue #42). Thanks, @stevenp!
## 1.8.4
* Updated to Xcode 8 (Issue #50)
* Fixed issues with localization (again) (Issue #42). Thanks, @ConfusedVorlon and @tomjpsun!
## 1.8.3
* Fixed bug in iOS framework target causing a framework bundle not to be produced (Issue #48 Thanks, @amosavian!)
* Added CI automation to release tagged successful builds to CocoaPods from Travis (Issue #49)
## 1.8.2
Fixed issues with localization, that could affect submission through iTunes Connect (Issue #42)
## 1.8.1
* Added checking whether a file is compressed with the Deflate64 method, and returning a specific error code for that unsupported format (Issue #37)
* Fixed internationalization, laying the groundwork for non-US-English localization in the future. If you use UnzipKit from Carthage or CocoaPods, and run your app using the "Show non-localized strings" option, UnzipKit's strings should no longer display as all-cap (Issue #38)
## 1.8
Fixed a bug causing delete operations (including writing updated data with the `overwrite` flag set to true) to fail when the archive resides on an external volume (Issue #36)
## 1.7.2
Fixed the nullability attributes of the 'password' argument in the UZKArchive intitializers (Issue #34 - Thanks, Mohammad!)
## 1.7.1
Fixed a bug causing the UZKErrorDomain constant not to be visible from client projects using Swift 2.2 (Xcode 7.3) or greater (Issue #33)
## 1.7
* Reduced memory footprint while using `extractFilesTo:overwrite:progress:error` to extract an archive. This method now uses a buffer to read and write the archived file, rather than reading it into memory up front (Issue #27, PR #28). Thanks, @brendand!
* Added `nullable` attribute to the return types of the `extractData...` methods, so they play more nicely with Swift's error handling (PR #29). Thanks, @amosavian!
* Fixed a compiler warning that started showing up in Xcode 7.3 (Issue #26). Thanks again, @brendand!
## 1.6.2
Fixed some issues when extracting files from an archive:
* Extracting the first file past the 4 GB mark in an archive would fail, due to a bug in the Zip64 implementation (Issue #25)
* Memory would grow as each file was extracted, potentially consuming multiple gigabytes for large archives
* Improved error messages when there's an error extracting a file (the underlying error is no longer hidden)
Thanks @brendand!
## 1.6.1
Fixed issue that can cause a crash when writing to Zip files across multiple threads (Issue #23). Thanks again, @iblacksun!
## 1.6
Added support for using UnzipKit from a Swift dynamic framework target (Issue #21, PR #22). Thanks @iblacksun!
## 1.5
* Added full support for Carthage (Issue #11)
* Added annotations for nullability, improving compatibility with Xcode 7 and Swift
## 1.4.2
Fixed a bug causing global comments not to get written to disk (Issue #19)
## 1.4.1
* Added the ability to password protect a file over the streaming API (`-writeInfoBuffer:...`), if the CRC of the file is known up front (Issue #16)
* Fixed a memory consumption bug, causing a crash on iOS when creating an archive with many files when `overwrite =- YES` (Issue #18)
* Quieted the warning logged every time a `UZKArchive` is created for an as-yet uncreated file (Issue #17)
Fixed a bug causing file-specific passwords never to be written to an archive (Issue #15)
## 1.4
* Fixed file encryption (Issue #12)
_Due to Zip format requirements (the CRC needs to be known before a file write begins), passwords can no longer be used with the block-based file writing methods (`-writeIntobuffer...`). This is checked with an assertion, since the `password` property could be set already before starting the buffered write_
* Updated the implementation of `isPasswordProtected` to check all files, not just the first (Issue #13)
## 1.3.2
Fixed a bug causing file-specific passwords never to be written to an archive (Issue #15)
## 1.3.1
Fixed a bug, in which `password` was passed through as `nil` for the overload of `-writeData...` that doesn't take the `overwrite` argument (Issue #14)
## 1.3
Improved buffered writing API, no longer requiring a CRC, and allowing for error handling in the action block (Issue #9)
## 1.2.2
Silenced some 32-bit iOS warnings (Thanks, Clint!)
## 1.2.1
Added iOS 7 compatibility (Issue #8), and an iOS (Swift!) demo project
## 1.2
Added methods to easily detect whether a file is a Zip archive or not (Issue #7)
## 1.1.3
Fixed a bug introduced in the last version that would cause errors when writing a file for whom the comment had not first been read or written
## 1.1.2
Exposed a "comment" property on UZKArchive for reading and writing an archive's global comment (Issue #6)
## 1.1.1
Fixed a file handle leak that could lead to random file access errors (Issue #5)
## 1.1
Improved error handling, providing more detail in the NSSError objects returned (Issue #3)
## 1.0.3
Added synchronization, so accessing the same archive across threads doesn't cause errors (Issue #4)
## 1.0.2
Fixed bug causing file extraction to fail when an archive contains directories (Issue #2)
## 1.0.1
Fixed bug causing the library not to build for the 10.9 target SDK
## 1.0
Initial release