Zip4j Versions Save

A Java library for zip files and streams

v2.11.5

1 year ago

Improvements:

#476 & #493 Allow overriding empty files even if it is not a zip file

v2.11.4

1 year ago

Bug fixes:

#484 Use getPath instead of toPath to avoid java nio #486 Set symlink as a file even if it points to directory

v2.11.3

1 year ago

Security fixes:

#485 Fix CVE-2023-22899

v2.11.1

1 year ago

Bug fixes:

#396 Use case sensitive comparison for file headers #440 Replace Windows file separator with zip separator #442 Remove file attributes check

v2.11.0

1 year ago

Bug fixes:

#328 Add option to handle passwords with or without utf8 charset #333 Fix issue with reading 7Zip split files with headers not just in first split part #421 Remove clone method #428 Add close method in NumberedSplitRandomAccessFile #432 Fallback to zip standard charset if utf-8 flag is not set #433 Add directories to zip as well when symlink target is a directory #434 Use last modified file time from ZipParameters #435 Add null check when getting and applying Windows file attributes #438 Remove lines to skip reading content if entry is directory

v2.10.0

2 years ago

Improvements:

#403 - Use utf-8 by default when reading zip file names #416 - Add NoCompression deflate compression level

Bug fixes:

#366 - Validate AES extra data record size #368 - Include pos in array copy length calculation #370 - Change IllegalArgumentException to ZipException #371 - Handle unexpected EOF when reading raw stream #372 - Handle unexpected EOF when reading compressed stream #373 - Fill NPE when aesKeyStrength is null #374 - Validate AES extra data record before calculating header size #375 - Throw exception when file name length is 0 #376 - Replace RunTimeException with ZipException #388 - Fix NPE in ZipParameters when file name is either null or empty #400 - Minor improvement to canonical path check #410 - Set entry size in ZipParameters to 0 by default

v2.9.1

2 years ago

Improvements:

  • #341 Add caching to Travis build process
  • #359 Add PasswordCallback for encrypted Input Streams

Bug fixes:

  • #354 Skip checking for directory when reading entries
  • #347 Extract contents of sub-directory even when sub-directory entry does not exist
  • #348 Fix bug in sub-folder extraction when folder name appears at the end of central directory
  • #363 Avoid replacing Windows file name separator
  • #365 Improve file header equals check to include offset of local file header
  • #380 Use exception type WRONG_PASSWORD when password is null or empty for AES

v2.9.0

2 years ago

Improvements:

#324 Support JDK 7 #327 Implement close() on ZipFile

Bug Fixes:

#326 Fix compression method check in AddStreamTask

v2.8.0

2 years ago

New Feature:

  • #287 Close entry on ZipOutputStream if not manually closed when closing entry

Improvements:

  • #281 Skip adding file with empty names
  • #291 Fix failing tests on Windows
  • #301 Set password also via a setter on ZipInputStream
  • #307 Add new compression levels for deflate compression
  • #311 Implement available on ZipInputStream
  • #321 Avoid using StandardCharsets for older Android compatibility

Bug fixes:

  • #290 Read in reverse order to determine end of central directory
  • #308 Add parent file null check when determining path to zip file
  • #309 Read data descriptor for a directory
  • #313 Check for busy state at Abstract zip task level
  • #315 Use equals when comparing for file names in entry deletion