Update Rust crate zip to v2.1.4 #277

Merged
pierre merged 1 commits from renovate/zip-2.x-lockfile into master 2024-07-20 00:22:25 +00:00
Owner

This PR contains the following updates:

Package Type Update Change
zip dependencies patch 2.1.3 -> 2.1.4

Release Notes

zip-rs/zip2 (zip)

v2.1.4

Compare Source

🐛 Bug Fixes
  • fix(#​215): Upgrade to deflate64 0.1.9
  • Panic when reading a file truncated in the middle of an XZ block header
  • Some archives with over u16::MAX files were handled incorrectly or slowly (#​189)
  • Check number of files when deciding whether a CDE is the real one
  • Could still select a fake CDE over a real one in some cases
  • May have to consider multiple CDEs before filtering for validity
  • We now keep searching for a real CDE header after read an invalid one from the file comment
  • Always search for data start when opening an archive for append, and reject the header if data appears to start after central directory
  • deep_copy_file no longer allows overwriting an existing file, to match the behavior of shallow_copy_file
  • File start position was wrong when extra data was present
  • Abort file if central extra data is too large
  • Overflow panic when central directory extra data is too large
  • ZIP64 header was being written twice when copying a file
  • ZIP64 header was being written to central header twice
  • Start position was incorrect when file had no extra data
  • Allow all reserved headers we can create
  • Fix a bug where alignment padding interacts with other extra-data fields
  • Fix bugs involving alignment padding and Unicode extra fields
  • Incorrect header when adding AES-encrypted files
  • Parse the extra field and reject it if invalid
  • Incorrect behavior following a rare combination of merge_archive, abort_file and deep_copy_file. As well, we now return an error when a file is being copied to itself.
  • path_to_string now properly handles the case of an empty path
  • Implement Debug for ZipWriter even when it's not implemented for the inner writer's type
  • Fix an issue where the central directory could be incorrectly detected
  • finish_into_readable() would corrupt the archive if the central directory had moved
🚜 Refactor
  • Verify with debug assertions that no FixedSizeBlock expects a multi-byte alignment (#​198)
  • Use new do_or_abort_file method
Performance
  • Speed up CRC when encrypting small files
  • Limit the number of extra fields
  • Refactor extra-data validation
  • Store extra data in plain vectors until after validation
  • Only build one IndexMap after choosing among the possible valid headers
  • Simplify validation of empty extra-data fields
  • Validate automatic extra-data fields only once, even if several are present
  • Remove redundant validate_extra_data() call
  • Skip searching for the ZIP32 header if a valid ZIP64 header is present (#​189)
⚙️ Miscellaneous Tasks
  • Fix a bug introduced by c934c82
  • Fix a failing unit test
  • Fix build errors on older Rust versions
  • Fix build
  • Fix another fuzz failure
  • Switch to ok_or_abort_file, and inline when that fails borrow checker
  • Switch to ok_or_abort_file, and inline when that fails borrow checker
  • Fix a build error
  • Fix boxed_local warning (can borrow instead)
  • Partial debug
  • Fix more errors when parsing multiple extra fields
  • Fix an error when decoding AES header
  • Fix an error caused by not allowing 0xa11e field
  • Bug fix: crypto_header was being counted toward extra_data_end
  • Bug fix: revert a change where crypto_header was incorrectly treated as an extra field
  • Fix a bug where a modulo of 0 was used
  • Fix a bug when ZipCrypto, alignment and a custom header are used
  • Fix a bug when both ZipCrypto and alignment are used
  • Fix another bug: header_end vs extra_data_end
  • Fix use of a stale value in a debug_assert_eq!
  • Fix: may still get an incorrect size if opening an invalid file for append
  • Fix: may need the absolute start as tiebreaker to ensure deterministic behavior

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [zip](https://github.com/zip-rs/zip2) | dependencies | patch | `2.1.3` -> `2.1.4` | --- ### Release Notes <details> <summary>zip-rs/zip2 (zip)</summary> ### [`v2.1.4`](https://github.com/zip-rs/zip2/blob/HEAD/CHANGELOG.md#214---2024-07-18) [Compare Source](https://github.com/zip-rs/zip2/compare/v2.1.3...v2.1.4) ##### <!-- 1 -->🐛 Bug Fixes - fix([#&#8203;215](https://github.com/zip-rs/zip2/pull/215)): Upgrade to deflate64 0.1.9 - Panic when reading a file truncated in the middle of an XZ block header - Some archives with over u16::MAX files were handled incorrectly or slowly ([#&#8203;189](https://github.com/zip-rs/zip2/pull/189)) - Check number of files when deciding whether a CDE is the real one - Could still select a fake CDE over a real one in some cases - May have to consider multiple CDEs before filtering for validity - We now keep searching for a real CDE header after read an invalid one from the file comment - Always search for data start when opening an archive for append, and reject the header if data appears to start after central directory - `deep_copy_file` no longer allows overwriting an existing file, to match the behavior of `shallow_copy_file` - File start position was wrong when extra data was present - Abort file if central extra data is too large - Overflow panic when central directory extra data is too large - ZIP64 header was being written twice when copying a file - ZIP64 header was being written to central header twice - Start position was incorrect when file had no extra data - Allow all reserved headers we can create - Fix a bug where alignment padding interacts with other extra-data fields - Fix bugs involving alignment padding and Unicode extra fields - Incorrect header when adding AES-encrypted files - Parse the extra field and reject it if invalid - Incorrect behavior following a rare combination of `merge_archive`, `abort_file` and `deep_copy_file`. As well, we now return an error when a file is being copied to itself. - path_to_string now properly handles the case of an empty path - Implement `Debug` for `ZipWriter` even when it's not implemented for the inner writer's type - Fix an issue where the central directory could be incorrectly detected - `finish_into_readable()` would corrupt the archive if the central directory had moved ##### <!-- 2 -->🚜 Refactor - Verify with debug assertions that no FixedSizeBlock expects a multi-byte alignment ([#&#8203;198](https://github.com/zip-rs/zip2/pull/198)) - Use new do_or_abort_file method ##### <!-- 4 -->⚡ Performance - Speed up CRC when encrypting small files - Limit the number of extra fields - Refactor extra-data validation - Store extra data in plain vectors until after validation - Only build one IndexMap after choosing among the possible valid headers - Simplify validation of empty extra-data fields - Validate automatic extra-data fields only once, even if several are present - Remove redundant `validate_extra_data()` call - Skip searching for the ZIP32 header if a valid ZIP64 header is present ([#&#8203;189](https://github.com/zip-rs/zip2/pull/189)) ##### <!-- 7 -->⚙️ Miscellaneous Tasks - Fix a bug introduced by [`c934c82`](https://github.com/zip-rs/zip2/commit/c934c824) - Fix a failing unit test - Fix build errors on older Rust versions - Fix build - Fix another fuzz failure - Switch to `ok_or_abort_file`, and inline when that fails borrow checker - Switch to `ok_or_abort_file`, and inline when that fails borrow checker - Fix a build error - Fix boxed_local warning (can borrow instead) - Partial debug - Fix more errors when parsing multiple extra fields - Fix an error when decoding AES header - Fix an error caused by not allowing 0xa11e field - Bug fix: crypto_header was being counted toward extra_data_end - Bug fix: revert a change where crypto_header was incorrectly treated as an extra field - Fix a bug where a modulo of 0 was used - Fix a bug when ZipCrypto, alignment *and* a custom header are used - Fix a bug when both ZipCrypto and alignment are used - Fix another bug: header_end vs extra_data_end - Fix use of a stale value in a `debug_assert_eq!` - Fix: may still get an incorrect size if opening an invalid file for append - Fix: may need the absolute start as tiebreaker to ensure deterministic behavior </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MzQuMiIsInVwZGF0ZWRJblZlciI6IjM3LjQzNC4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbXX0=-->
pierre added 1 commit 2024-07-20 00:08:22 +00:00
Update Rust crate zip to v2.1.4
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
e1f6efda03
pierre scheduled this pull request to auto merge when all checks succeed 2024-07-20 00:08:23 +00:00
pierre merged commit e1f6efda03 into master 2024-07-20 00:22:25 +00:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: pierre/GeneIT#277
No description provided.