Skip to content

Bump zip_kit from 6.3.4 to 6.4.1 - #3180

Merged
flavorjones merged 2 commits into
mainfrom
dependabot/bundler/zip_kit-6.3.6
Oct 15, 2026
Merged

flavorjones merged 2 commits into
mainfrom
dependabot/bundler/zip_kit-6.3.6

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 9, 2026 •

Copy link
Copy Markdown
Contributor

Bumps zip_kit from 6.3.4 to 6.4.1.

Changelog

Sourced from zip_kit's changelog.

6.4.1

  • Use lowercase names for the HTTP headers ZipKit produces, since Rack 3 requires them (Rack::Lint rejects uppercase header names). OutputEnumerator.streaming_http_headers now returns "content-type", "last-modified", "content-encoding" and "x-accel-buffering". This is a breaking change if you look those headers up or override them in the returned Hash using the capitalised names: headers["Content-Type"] is now nil, and headers["Content-Type"] = "application/epub+zip" adds a second content type instead of replacing ours. Use the lowercase names instead. zip_kit_stream in Rails is not affected: it now merges our headers into the response regardless of case, so headers Rails sets itself (like the content type) still take precedence and do not get sent twice.

6.4.0

  • Add Streamer.new(io, ocf: true) for writing EPUB (OCF) and OpenDocument containers. The first entry must then be a stored mimetype file with its sizes in the local header, and Streamer::OCFViolation is raised otherwise. That entry is written without the extended timestamp extra field, which those formats forbid - before, they could not be produced with ZipKit at all. File names get checked against the OCF rules as well: valid UTF-8, no forbidden characters, segments of at most 255 bytes not ending with a ., and no two names in a directory which only differ by case or Unicode normalization.
  • Add Streamer#write_mimetype_file and SizeEstimator#add_mimetype_entry
  • Add the extended_timestamp: keyword argument to ZipWriter#write_local_file_header and ZipWriter#write_central_directory_file_header

6.3.6

  • Fix the end of central directory record counting entries discarded by rollback!, which made archives with a rolled back entry unreadable for readers which check the entry count (including ZipKit::FileReader).
  • Make ZipKit usable from within Ractors: freeze the computed String constants in ZipWriter, BlockDeflate and RackChunkedBody, and stop defining the raising BlockWrite methods with define_method. Ractor tests run on Ruby 4.0 in CI.

6.3.5

  • Make WriteBuffer#<< much faster for lots of tiny writes, like the XML fragments written by libraries such as caxlsx. Strings are no longer copied with String#b before being appended: on Ruby 3.4+ String#append_as_bytes is used, on older Rubies the string is converted only if Ruby refuses to append it. Mixing binary strings and non-ASCII strings still works, and the writable still always receives binary strings.
  • WriteBuffer now flushes before a write would make the buffer exceed its size (instead of after), so that it never outputs chunks larger than the buffer size, and writes which are larger than the buffer size are still passed through without getting copied.
  • WriteBuffer no longer preallocates (and immediately discards) a zero-filled String of twice its buffer size, which makes writing ZIPs with lots of small files faster.
  • Require stringio in ZipWriter, which uses it. Previously writing a ZIP could fail with a NameError if nothing else in the process had loaded stringio.
  • Add bench/write_buffer_bench.rb
Commits

Copilot AI balanced review requested due to automatic review settings October 9, 2026 20:56
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file ruby Pull requests that update Ruby code labels Oct 9, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot wasn't able to review any files in this pull request. Check if the Files changed in this pull request are included in default exclusions.

flavorjones added a commit that referenced this pull request Oct 15, 2026
The sync job pushed with `GITHUB_TOKEN`, which doesn't trigger push
workflows, so the head commit of Dependabot bundler PRs never ran the
app tests.

Dispatch `CI (SaaS)` on the branch after the sync commit is pushed.

ref: #3180
@flavorjones

Copy link
Copy Markdown
Member

@dependabot recreate

Bumps [zip_kit](https://github.com/julik/zip_kit) from 6.3.4 to 6.4.1.
- [Changelog](https://github.com/julik/zip_kit/blob/main/CHANGELOG.md)
- [Commits](julik/zip_kit@v6.3.4...v6.4.1)

---
updated-dependencies:
- dependency-name: zip_kit
  dependency-version: 6.3.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot changed the title Bump zip_kit from 6.3.4 to 6.3.6 Bump zip_kit from 6.3.4 to 6.4.1 Oct 15, 2026
@dependabot
dependabot Bot force-pushed the dependabot/bundler/zip_kit-6.3.6 branch from aa21274 to 084907f Compare October 15, 2026 15:49
@flavorjones
flavorjones merged commit 14bc2d0 into main Oct 15, 2026
13 checks passed
@flavorjones
flavorjones deleted the dependabot/bundler/zip_kit-6.3.6 branch October 15, 2026 15:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file ruby Pull requests that update Ruby code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants