commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christian Grobmeier <>
Subject Re: [ANNOUNCE] Commons Compress 1.1 released
Date Tue, 24 Aug 2010 04:59:21 GMT
And I would like to thank all who helped me with the Nexus tool and more! :-)

On Tue, Aug 24, 2010 at 6:57 AM, Christian Grobmeier
<> wrote:
> The Commons Compress team is pleased to announce the
> commons-compress-1.1 release!
> Commons Compress defines an API for working with compression and
> archive formats.
>  These include: bzip2, gzip and ar, cpio, jar, tar, zip.
> Source and binary distributions are available for download from the
> Apache Commons download site:
> When downloading, please verify signatures using the KEYS file
> available at the above location when downloading the release.
> For more information on Apache Commons Compress, visit the Commons
> Compress home page:
> Changes in this version include:
> New features:
> o Command-line interface to list archive contents.
>       Usage: java -jar commons-compress-n.m.jar archive-name
> [zip|tar|etc]  Issue: COMPRESS-108.
> o Tar implementation does not support Pax headers
>       Added support for reading pax headers.
>       Note: does not support global pax headers  Issue: COMPRESS-109.
> o ZipArchiveInputStream can optionally extract data that used
>        the STORED compression method and a data descriptor.
>        Doing so in a stream is not safe in general, so you have to
>        explicitly enable the feature.  By default the stream will
>        throw an exception if it encounters such an entry.  Issue:
> o The ZIP classes will throw specialized exceptions if any
>        attempt is made to read or write data that uses zip features
>        not supported (yet).  Issue: COMPRESS-98.
> o ZipFile#getEntries returns entries in a predictable order -
>        the order they appear inside the central directory.
>        A new method getEntriesInPhysicalOrder returns entries in
>        order of the entry data, i.e. the order ZipArchiveInputStream
>        would see.  Issue: COMPRESS-99.
> o The Archive*Stream and ZipFile classes now have
>        can(Read|Write)EntryData methods that can be used to check
>        whether a given entry's data can be read/written.
>        The method currently returns false for ZIP archives if an
>        entry uses an unsupported compression method or encryption.
> o The ZIP classes now detect encrypted entries.  Issue: COMPRESS-89.
> o Added autodetection of compression format to
>        CompressorStreamFactory.  Issue: COMPRESS-97.
> o Improve ExceptionMessages in ArchiveStreamFactory  Issue:
> COMPRESS-95. Thanks to Joerg Bellmann.
> o A new constructor of TarArchiveEntry can create entries with
>        names that start with slashes - the default is to strip
>        leading slashes in order to create relative path names.
> o ArchiveEntry now has a getLastModifiedDate method.
> o Add a BZip2Utils class modelled after GZipUtils  Issue: COMPRESS-78.
> Thanks to Jukka Zitting.
> Fixed Bugs:
> o Move acknowledgements from NOTICE to README  Issue: COMPRESS-72.
> o TarArchiveEntry.parseTarHeader() includes the trailing space/NUL
> when parsing the octal size  Issue: COMPRESS-113.
> o TarUtils.parseName does not properly handle characters outside the
> range 0-127  Issue: COMPRESS-118.
> o ArchiveStreamFactory does not recognise tar files created by Ant
> Issue: COMPRESS-107.
> o Support "ustar" prefix field, which is used when file paths are longer
>       than 100 characters.  Issue: COMPRESS-110.
> o ZipArchiveInputStream will throw an exception if it detects an
>        entry that uses a data descriptor for a STORED entry since it
>        cannot reliably find the end of data for this "compression"
>        method.  Issue: COMPRESS-100.
> o ZipArchiveInputStream should now properly read archives that
>        use data descriptors but without the "unofficial" signature.
> Issue: COMPRESS-101.
> o ZipArchiveInputStream failed to update the number of bytes
>        read properly.  Issue: COMPRESS-74.
> o ArchiveInputStream has a new method getBytesRead that should
>        be preferred over getCount since the later may truncate the
>        number of bytes read for big archives.
> o The cpio archives created by CpioArchiveOutputStream couldn't
>        be read by many existing native implementations because the
>        archives contained multiple entries with the same inode/device
>        combinations and weren't padded to a blocksize of 512 bytes.
> Issue: COMPRESS-85.
> o ZipArchiveEntry, ZipFile and ZipArchiveInputStream are now
>        more lenient when parsing extra fields.  Issue: COMPRESS-73.
> o cpio is terribly slow.
>        Documented that buffered streams are needed for performance
> Issue: COMPRESS-82.
> o Improved exception message if the extra field data in ZIP
>        archives cannot be parsed.
> o Tar format unspecified - current support documented.  Issue: COMPRESS-17.
> o ZipArchiveEntry's equals method was broken for entries created
>        with the String-arg constructor.  This lead to broken ZIP
>        archives if two different entries had the same hash code.
> Issue: COMPRESS-94. Thanks to Anon Devs.
> o ZipArchiveInputStream could repeatedly return 0 on read() when
>        the archive was truncated.  Issue: COMPRESS-87. Thanks to Antoni Mylka.
> o Tar archive entries holding the file name for names longer
>        than 100 characters in GNU longfile mode didn't properly
>        specify they'd be using the "oldgnu" extension.  Issue: COMPRESS-86.
> o Delegate all read and write methods in GZip stream in order to
>        speed up operations.  Issue: COMPRESS-83.
> o The ar and cpio streams now properly read and write last
>        modified times.
> o TarOutputStream can leave garbage at the end of the archive  Issue:
> Changes:
> o ArArchiveInputStream does not handle GNU extended filename records
> (//)  Issue: COMPRESS-112.
> o Document that the name of an ZipArchiveEntry determines whether
>       an entry is considered a directory or not.
>       If you don't use the constructor with the File argument the entry's
>        name must end in a "/" in order for the entry to be known as a
> directory.  Issue: COMPRESS-105.
> o Move DOS/Java time conversions into Zip utility class.  Issue: COMPRESS-79.
> o ZipArchiveInputStream does not show location in file where a problem
> occurred.  Issue: COMPRESS-75.
> Have fun!
> -Commons Compress team

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message