npm @zip.js/zip.js 2.24.0

3 hours ago

What's Changed in v2.24.0

New features

  • The uncompressedSize option of ZipWriter#add() is now read for a ReadableStream or any reader without a size, as the size the stream is expected to have: the entry is then laid out like one read from a reader of that size, i.e. without Zip64 structures below 4 GB and, with bufferedWrite, without a data descriptor. The sizes written remain the measured ones. The option is validated on every path and throws the new ERR_INVALID_UNCOMPRESSED_SIZE_OPTION error when it is not a non-negative integer

Improvements

  • Skip the data descriptor by default when the local header can carry the CRC-32 and the sizes: a passThrough entry read from a reader of known size with crc32 provided (or AES-encrypted, which stores no CRC-32), which also keeps the direct write path instead of a temporary stream, and a reader of unknown size written with bufferedWrite or dataDescriptor: false. ZipCrypto entries, entries copied with the entry option and explicit dataDescriptor: true keep their descriptor
  • Split the Node.js and Deno CI job into three lanes

Documentation

  • State that the duplicates policy of the filesystem imports applies to the entries kept by the filter option only

Full Changelog: v2.23.0...v2.24.0

Co-Authored-By: Claude Fable 5.1 noreply@anthropic.com

Don't miss a new zip.js release

NewReleases is sending notifications on new releases.