./archivers/ruby-zip, Ruby module for reading and writing zip files

[ Image CVSweb ] [ Image Homepage ] [ Image RSS ] [ Image Required by ] [ Image Add to tracker ]


Branch: CURRENT, Version: 3.2.2, Package name: ruby32-zip-3.2.2, Maintainer: minskim

rubyzip is a ruby module for reading and writing zip files.


Required to run:
[lang/ruby26-base]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 55.5 KB

Version history: (Expand)


CVS history: (Expand)


   2026-02-03 15:40:28 by Takahiro Kambe | Files touched by this commit (3) | Package updated
Log message:
archivers/ruby-zip: update to 3.2.2

3.0.0 (2025-07-28)
* Fix de facto regression for input streams.
* Fix File#write_buffer to always return the given io.
* Add Entry#absolute_time? and DOSTime#absolute_time? methods.
* Use explicit named parameters for File methods.
* Ensure that entries can be extracted safely without path traversal. #540
* Enable Zip64 by default.
* Rename GPFBit3Error to StreamingError.
* Ensure that Entry.ftype is correct via InputStream. #533
* Add Entry#zip64? as a better way detect Zip64 entries.
* Implement Zip::FileSystem::ZipFsFile#symlink?.
* Remove File::add_buffer from the API.
* Fix OutputStream#put_next_entry to preserve StreamableStreams. #503
* Ensure File.open_buffer doesn't rewrite unchanged data.
* Add CentralDirectory#count_entries and File::count_entries.
* Fix reading unknown extra fields. #505
* Fix reading zip files with max length file comment. #508
* Fix reading zip64 files with max length file comment. #509
* Don't silently alter zip files opened with Zip::sort_entries. #329
* Use named parameters for optional arguments in the public API.
* Raise an error if entry names exceed 65,535 characters. #247
* Remove the ZipXError v1 legacy classes.
* Raise an error on reading a split archive with InputStream. #349
* Ensure InputStream raises GPFBit3Error for OSX Archive files. #493
* Improve documentation and error messages for InputStream. #196
* Fix zip file-level comment is not read from zip64 files. #492
* Fix Zip::OutputStream.write_buffer doesn't work with Tempfiles. #265
* Reinstate normalising pathname separators to /. #487
* Fix restore options consistency. #486
* View and/or preserve original date created, date modified? (Windows). #336
* Fix frozen string literal error. #475
* Set the default Entry time to the file's mtime on Windows. #465
* Ensure that Entry#time= sets times as DOSTime objects. #481
* Replace and deprecate Zip::DOSTime#dos_equals. #464
* Fix loading extra fields. #459
* Set compression level on a per-zipfile basis. #448
* Fix input stream partial read error. #462
* Fix zlib deflate buffer growth. #447

Tooling/internal: (Ommited)

3.0.1 (2025-08-08)
* Restore Zip::File's Enumerable status. #641
* Escape filename pattern when matching in Entry#name_safe?. #639
* Eagerly require gem version. #637
* Fix direct require of Entry by requiring constants. #636

3.0.2 (2025-08-21)
* Fix InputStream#sysread to handle frozen string literals. #643
* Ensure that we don't flush too often when deflating. #322
* Stop print causing Zlib errors. #642
* Ensure that print and printf return nil.

3.1.0 (2025-09-06)
* Support AES decryption. #579 and #645

Tooling/internal:

* Add various useful zip specification documents to the repo for ease of
  finding them in the future. These are not included in the gem release.

3.1.1 (2025-09-26)
* Improve the IO pipeline when decompressing. #649 (which also fixes #647)

Tooling/internal:
* Improve the DecryptedIo class with various updates and optimizations.
* Remove the NullDecrypter class.
* Properly convert the test suite to use minitest.
* Move all test helper code into separate files.
* Updates to the Actions CI, including new OS versions.
* Update rubocop versions and fix resultant cop failures. #646

3.2.0 (2025-10-14)
* Add option to suppress extra fields. #653 (fixes #34, #398 and #648)

Tooling/internal:

* Entry: clean up reading and writing the Central Directory headers.
* Improve Zip64 tests for OutputStream.
* Extra fields: use symbols as indices as opposed to strings.
* Ensure that Unknown extra field has a superclass.

3.2.1 (2025-10-24)
* Fix Entry#gather_fileinfo_from_srcpath error messages. #654

Tooling/internal:

* Add some simple benchmarks for reading the cdir.

3.2.2 (2025-11-02)
* Fix reading EOCDs when header signatures are in an Entry payload. #656

Tooling/internal:

* Stop using macos-13 runners in GitHub Actions.
* Update YJIT GitHub Actions runners.
   2025-05-21 16:15:20 by Takahiro Kambe | Files touched by this commit (1) | Package updated
Log message:
archivers/ruby-zip: update HOMEPAGE
   2021-10-26 11:57:20 by Nia Alarie | Files touched by this commit (140)
Log message:
archivers: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and SHA512
hashes.
   2021-10-07 15:06:15 by Nia Alarie | Files touched by this commit (140)
Log message:
archivers: Remove SHA1 distfiles hashes
   2021-08-12 16:56:36 by Takahiro Kambe | Files touched by this commit (2) | Package updated
Log message:
archivers/ruby-zip: update to 2.3.2

2.3.2 (2021-07-05)

* A "dummy" release to warn about breaking changes coming in version
  3.0. This updated version uses the Gem post_install_message instead of
  printing to STDERR.

* 2.3.1 (2021-07-03) A "dummy" release to warn about breaking changes \ 
coming
  in version 3.0.
   2020-03-15 16:52:07 by Takahiro Kambe | Files touched by this commit (3) | Package updated
Log message:
archivers/ruby-zip: update to 2.3.0

Update ruby-zip to 2.3.0.

pkgsrc change: Add "USE_LANGUAGES=	# none".

2.0.0 (2019-09-25)

Security

* Default the validate_entry_sizes option to true, so that callers can
  trust an entry's reported size when using extract #403

  o This option defaulted to false in 1.3.0 for backward compatibility,
    but it now defaults to true.  If you are using an older version of
    ruby and can't yet upgrade to 2.x, you can still use 1.3.0 and set the
    option to true.

Tooling / Documentation

* Remove test files from the gem to avoid problems with antivirus
  detections on the test files #405 / #384
* Drop support for unsupported ruby versions #406

2.1.0 (2020-01-25)

* Fix (at least partially) the restore_times and restore_permissions
  options to Zip::File.new #413

  o Previously, neither option did anything, regardless of what it was set
    to.  We have therefore defaulted them to false to preserve the current
    behavior, for the time being.  If you have explicitly set either to
    true, it will now have an effect.
  o Fix handling of UniversalTime (mtime, atime, ctime) fields. #421
  o Previously, Zip::File did not pass the options to Zip::Entry in some
    cases.  #423
  o Note that restore_times in this release does nothing on Windows and
    only restores mtime, not atime or ctime.

* Allow Zip::File.open to take an options hash like Zip::File.new #418

* Always print warnings with warn, instead of a mix of puts and warn #416

* Create temporary files in the system temporary directory instead of the
  directory of the zip file #411

* Drop unused tmpdir requirement #411

Tooling

* Move CI to xenial and include jruby on JDK11 #419

2.2.0 (2020-02-01)

* Add support for decompression plugin gems #427

2.3.0 (2020-03-14)

* Fix frozen string literal error #431
* Set OutputStream.write_buffer's buffer to binmode #439
* Upgrade rubocop and fix various linting complaints #437 #440

Tooling:

* Add a bin/console script for development #420
* Update rake requirement (development dependency only) to fix a security
  alert.
   2020-03-09 01:36:23 by Takahiro Kambe | Files touched by this commit (2) | Package updated
Log message:
archivers/ruby-zip: updateo to 1.3.0

Update ruby-zip to 1.3.0, latest 1.x release.

1.3.0 (2019-09-25)

Security

* Add validate_entry_sizes option so that callers can trust an entry's
  reported size when using extract #403

	o This option defaults to false for backward compatibility in this
	  release, but you are strongly encouraged to set it to true. It
	  will default to true in rubyzip 2.0.

New Feature

* Add add_stored method to simplify adding entries without compression #366

Tooling / Documentation

* Add more gem metadata links #402

1.2.4 (2019-09-06)

* Do not rewrite zip files opened with open_buffer that have not changed #360

Tooling / Documentation

* Update example_recursive.rb in README #397
* Hold CI at trusty for now, automatically pick the latest ruby patch
  version, use rbx-4 and hold jruby at 9.1 #399
   2019-06-15 05:05:44 by Takahiro Kambe | Files touched by this commit (3) | Package updated
Log message:
archivers/ruby-zip: update to 1.2.3

Update ruby-zip to 1.2.3, here is release note.

1.2.3 (2019-05-23)

* Allow tilde in zip entry names #391 (fixes regression in 1.2.2 from #376)
* Support frozen string literals in more files #390
* Require pathname explicitly #388 (fixes regression in 1.2.2 from #376)

Tooling / Documentation:

* CI updates #392, #394
  - Bump supported ruby versions and add 2.6
  - JRuby failures are no longer ignored (reverts #375 / part of #371)
* Add changelog entry that was missing for last release #387
* Comment cleanup #385

Since the GitHub release information for 1.2.2 is missing, I will also include
it here:

1.2.2 (2018-09-01)

NB: This release drops support for extracting symlinks, because there was no
clear way to support this securely. See #376 (comment) for details.

* Fix CVE-2018-1000544 #376 / #371
* Fix NoMethodError: undefined method `glob' #363
* Fix handling of stored files (i.e. files not using compression) with general
  purpose bit 3 set #358
* Fix close on StringIO-backed zip file #353
* Add Zip.force_entry_names_encoding option #340
* Update rubocop, apply auto-fixes, and fix regressions caused by said
  auto-fixes #332, #355
* Save temporary files to temporary directory (rather than current directory)
  #325

Tooling / Documentation:

* Turn off all terminal output in all tests #361
* Several CI updates #346, #347, #350, #352
* Several README improvements #345, #326, #321