Skip to content

Latest commit

 

History

History
153 lines (86 loc) · 6.27 KB

CHANGELOG.md

File metadata and controls

153 lines (86 loc) · 6.27 KB

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 for more details (Issue #47)
  • Added support for archiving and restoring files' POSIX permissions (PRs #84, #86, #87 - Thanks, @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, @monobono, and @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