You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by bo...@apache.org on 2019/08/24 16:25:20 UTC

[commons-compress] annotated tag 1.19-RC1 created (now b2a7871)

This is an automated email from the ASF dual-hosted git repository.

bodewig pushed a change to annotated tag 1.19-RC1
in repository https://gitbox.apache.org/repos/asf/commons-compress.git.


      at b2a7871  (tag)
 tagging 516f76ac1fe48be9a5162e53e4d0a99f23774565 (commit)
 replaces rel/1.18
      by Stefan Bodewig
      on Sat Aug 24 18:24:38 2019 +0200

- Log -----------------------------------------------------------------
Tag commons Compress Release 1.19 RC1
-----BEGIN PGP SIGNATURE-----

iHEEABECADEWIQTOgHWiUVR77iSbwVGiEVrhX2uLcgUCXWFkxhMcYm9kZXdpZ0Bh
cGFjaGUub3JnAAoJEKIRWuFfa4tyv5IAnizrf5SF2DED1wfFtqwmzH/tCYgoAJ9p
poRgf4j+2yrd/YBUi5/9CNW21g==
=H8sC
-----END PGP SIGNATURE-----
-----------------------------------------------------------------------

This annotated tag includes the following new commits:

     new 516f76a  prepare RC1 of Commons Compress 1.19

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[commons-compress] 01/01: prepare RC1 of Commons Compress 1.19

Posted by bo...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

bodewig pushed a commit to annotated tag 1.19-RC1
in repository https://gitbox.apache.org/repos/asf/commons-compress.git

commit 516f76ac1fe48be9a5162e53e4d0a99f23774565
Author: Stefan Bodewig <bo...@apache.org>
AuthorDate: Sat Aug 24 13:30:35 2019 +0200

    prepare RC1 of Commons Compress 1.19
---
 CONTRIBUTING.md                     |   2 +-
 README.md                           |   8 +--
 RELEASE-NOTES.txt                   | 106 ++++++++++++++++++++++++++++++++++++
 pom.xml                             |   4 +-
 src/site/site.xml                   |   1 +
 src/site/xdoc/download_compress.xml |  44 ++++++++-------
 src/site/xdoc/index.xml             |  23 ++++----
 src/site/xdoc/issue-tracking.xml    |   2 +-
 src/site/xdoc/mail-lists.xml        |   8 +--
 9 files changed, 155 insertions(+), 43 deletions(-)

diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index aaa2c87..8b7804b 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -25,7 +25,7 @@
  | commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates |
  +======================================================================+
  |                                                                      |
- | 1) Re-generate using: mvn commons:contributing-md                    |
+ | 1) Re-generate using: mvn commons-build:contributing-md              |
  |                                                                      |
  | 2) Set the following properties in the component's pom:              |
  |    - commons.jira.id  (required, alphabetic, upper case)             |
diff --git a/README.md b/README.md
index b576ca3..bb406bf 100644
--- a/README.md
+++ b/README.md
@@ -25,7 +25,7 @@
  | commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates |
  +======================================================================+
  |                                                                      |
- | 1) Re-generate using: mvn commons:readme-md                          |
+ | 1) Re-generate using: mvn commons-build:readme-md                    |
  |                                                                      |
  | 2) Set the following properties in the component's pom:              |
  |    - commons.componentid (required, alphabetic, lower case)          |
@@ -46,7 +46,7 @@ Apache Commons Compress
 [![Build Status](https://travis-ci.org/apache/commons-compress.svg)](https://travis-ci.org/apache/commons-compress)
 [![Coverage Status](https://coveralls.io/repos/apache/commons-compress/badge.svg)](https://coveralls.io/r/apache/commons-compress)
 [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.apache.commons/commons-compress/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.apache.commons/commons-compress/)
-[![License](https://img.shields.io/:license-apache-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0.html)
+[![Javadocs](https://javadoc.io/badge/org.apache.commons/commons-compress/1.19.svg)](https://javadoc.io/doc/org.apache.commons/commons-compress/1.19)
 
 Apache Commons Compress software defines an API for working with
 compression and archive formats.  These include: bzip2, gzip, pack200,
@@ -57,7 +57,7 @@ Documentation
 -------------
 
 More information can be found on the [Apache Commons Compress homepage](https://commons.apache.org/proper/commons-compress).
-The [Javadoc](https://commons.apache.org/proper/commons-compress/javadocs/api-release) can be browsed.
+The [Javadoc](https://commons.apache.org/proper/commons-compress/apidocs) can be browsed.
 Questions related to the usage of Apache Commons Compress should be posted to the [user mailing list][ml].
 
 Where can I get the latest release?
@@ -70,7 +70,7 @@ Alternatively you can pull it from the central Maven repositories:
 <dependency>
   <groupId>org.apache.commons</groupId>
   <artifactId>commons-compress</artifactId>
-  <version>1.18</version>
+  <version>1.19</version>
 </dependency>
 ```
 
diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt
index b40901f..45631ad 100644
--- a/RELEASE-NOTES.txt
+++ b/RELEASE-NOTES.txt
@@ -5,6 +5,112 @@ compression and archive formats.  These include: bzip2, gzip, pack200,
 lzma, xz, Snappy, traditional Unix Compress, DEFLATE, DEFLATE64, LZ4,
 Brotli, Zstandard and ar, cpio, jar, tar, zip, dump, 7z, arj.
 
+Release 1.19
+------------
+
+ZipArchiveInputStream and ZipFile will no longer throw an exception if
+an extra field generally understood by Commons Compress is malformed
+but rather turn them into UnrecognizedExtraField instances.  You can
+influence the way extra fields are parsed in more detail by using the
+new getExtraFields(ExtraFieldParsingBehavior) method of
+ZipArchiveEntry now.
+
+Some of the ZIP extra fields related to strong encryption will now
+throw ZipExceptions rather than ArrayIndexOutOfBoundsExceptions in
+certain cases when used directly. There is no practical difference
+when they are read via ZipArchiveInputStream or ZipFile.
+
+New features:
+o It is now possible to skip parsing of local file headers when
+  using ZipFile which may speed up reading the archive at the
+  cost of potentially missing important information. See the
+  javadocs of the ZipFile class for details.
+  Issue: COMPRESS-466. 
+o TarArchiveInputStream has a new constructor-arg lenient that
+  can be used to accept certain broken archives.
+  Issue: COMPRESS-469. 
+o ArjArchiveEntry and SevenZArchiveEntry now implement hashCode
+  and equals.
+  Issue: COMPRESS-475. 
+o Added a MultiReadOnlySeekableByteChannel class
+  that can be used to concatenate the parts of a multi volume 7z
+  archive so that SevenZFile can read them.
+  Issue: COMPRESS-231.
+  Thanks to Tim Underwood. 
+
+Fixed Bugs:
+o ZipArchiveInputStream could forget the compression level has
+  changed under certain circumstances. 
+o Fixed another potential resource leak in
+  ParallelScatterZipCreator#writeTo.
+  Issue: COMPRESS-470. 
+o ArArchiveInputStream could think it had hit EOF prematurely.
+  Github Pull Request #74.
+  Thanks to Alex Bertram. 
+o Throw IOException rather than RuntimeExceptions for certain
+  malformed LZ4 or Snappy inputs.
+  Issue: COMPRESS-490. 
+o ZipArchiveInputStream failed to read stored entries with a
+  data descriptor if the data descriptor didn't use the
+  signature invented by InfoZIP.
+  Issue: COMPRESS-482. 
+
+Changes:
+o SevenZFile now provides a way to cap memory consumption for
+  LZMA(2) compressed content.
+  Github Pull Request #76.
+  Issue: COMPRESS-481.
+  Thanks to Robin Schimpf. 
+o The ARJ package has been updated to contain constants for more
+  recent specifications.
+  Issue: COMPRESS-464.
+  Thanks to Rostislav Krasny. 
+o Update optional library zstd-jni from 1.3.3-3 to 1.4.0-1.
+  Issue: COMPRESS-484. 
+o ParallelScatterZipCreator now writes the entries to the
+  gathered output in the same order they have been added.
+  Github Pull Requests #78 and #79.
+  Issue: COMPRESS-485.
+  Thanks to Hervé Boutemy, Tibor Digana. 
+o The Expander and Archive example classes can leak resources
+  they have wrapped around passed in streams or channels. The
+  methods consuming streams and channels have been adapted to
+  give the calling code a chance to deal with those wrapper
+  resources.
+  Issue: COMPRESS-486. 
+o ZipArchiveInputStream and ZipFile no longer assume Commons
+  Compress would understand extra fields better than the writer
+  of the archive and silently turn extra fields that Commons
+  Compress should understand into UnrecognizedExtraFields if
+  parsing said fields fails.
+  It is now possible to take more control over the extra field
+  parsing process with a new overload of
+  ZipArchiveEntry#getExtraFields.
+  Issue: COMPRESS-479. 
+o ZipArchiveInputStream will now throw an exception if reading a
+  stored entry with a data descriptor and the data descriptor
+  doesn't match what it has actually read.
+
+  The most common case for a situation like this is a stored ZIP
+  archive inside of the archive ZipArchiveInputStream currently
+  reads. In such a case ZipArchiveInputStream would happily
+  extract the contained archive and stop once the central
+  directory of the inner archive has been hit. This is a case
+  where ZipArchiveInputStream simply can not be used and only
+  ZipFile is able to read the archive.
+
+  The only other explanation is a broken archive. So the
+  exception prevents users from thinking they had successfully
+  read the contents of the archive.
+  Issue: COMPRESS-483. 
+o The 7zip tools provide a default name for archive entries
+  without name; SevenZFile returns a null name for such
+  entries. A new method getDefaultName has been added to derive
+  the same name the 7zip tools would use and an option has been
+  added that sets SevenZArchiveEntry's name to the default name
+  if it is not contained inside the archive.
+  Issue: COMPRESS-478.
+
 Release 1.18
 ------------
 
diff --git a/pom.xml b/pom.xml
index cecbedf..e6874f0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -24,7 +24,7 @@
   </parent>
 
   <artifactId>commons-compress</artifactId>
-  <version>1.19-SNAPSHOT</version>
+  <version>1.19</version>
   <name>Apache Commons Compress</name>
   <url>https://commons.apache.org/proper/commons-compress/</url>
   <!-- The description is not indented to make it look better in the release notes -->
@@ -49,7 +49,7 @@ Brotli, Zstandard and ar, cpio, jar, tar, zip, dump, 7z, arj.
     <!-- configuration bits for cutting a release candidate -->
     <commons.release.version>${project.version}</commons.release.version>
     <commons.rc.version>RC1</commons.rc.version>
-    <commons.bc.version>1.18</commons.bc.version>
+    <commons.bc.version>1.19</commons.bc.version>
     <powermock.version>1.7.4</powermock.version>
     <commons.pmd-plugin.version>3.12.0</commons.pmd-plugin.version>
 
diff --git a/src/site/site.xml b/src/site/site.xml
index e816250..34604fd 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -38,6 +38,7 @@
     </menu>
     <menu name="API Docs">
       <item name="Latest release" href="javadocs/api-release/index.html"/>
+      <item name="1.19" href="javadocs/api-1.19/index.html"/>
       <item name="1.18" href="javadocs/api-1.18/index.html"/>
       <item name="1.17" href="javadocs/api-1.17/index.html"/>
       <item name="1.16.1" href="javadocs/api-1.16.1/index.html"/>
diff --git a/src/site/xdoc/download_compress.xml b/src/site/xdoc/download_compress.xml
index bed1ce7..d76ec9a 100644
--- a/src/site/xdoc/download_compress.xml
+++ b/src/site/xdoc/download_compress.xml
@@ -26,22 +26,24 @@ limitations under the License.
  | commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates |
  +======================================================================+
  |                                                                      |
- | 1) Re-generate using: mvn commons:download-page                      |
+ | 1) Re-generate using: mvn commons-build:download-page                |
  |                                                                      |
  | 2) Set the following properties in the component's pom:              |
- |    - commons.componentid (required, alphabetic, lower case)          |
+ |    - commons.componentid     (required, alphabetic, lower case)      |
  |    - commons.release.version (required)                              |
  |    - commons.release.name    (required)                              |
  |    - commons.binary.suffix   (optional)                              |
  |      (defaults to "-bin", set to "" for pre-maven2 releases)         |
  |    - commons.release.desc    (optional)                              |
  |    - commons.release.subdir  (optional)                              |
+ |    - commons.release.hash    (optional, lowercase, default sha512)   |
  |                                                                      |
- |    - commons.release.2/3.version       (conditional)                 |
- |    - commons.release.2/3.name          (conditional)                 |
- |    - commons.release.2/3.binary.suffix (optional)                    |
- |    - commons.release.2/3.desc          (optional)                    |
- |    - commons.release.2/3.subdir        (optional)                    |
+ |    - commons.release.[234].version       (conditional)               |
+ |    - commons.release.[234].name          (conditional)               |
+ |    - commons.release.[234].binary.suffix (optional)                  |
+ |    - commons.release.[234].desc          (optional)                  |
+ |    - commons.release.[234].subdir        (optional)                  |
+ |    - commons.release.[234].hash       (optional, lowercase, [sha512])|
  |                                                                      |
  | 3) Example Properties                                                |
  |    (commons.release.name inherited by parent:                        |
@@ -102,7 +104,7 @@ limitations under the License.
         It is essential that you
         <a href="https://www.apache.org/info/verification.html">verify the integrity</a>
         of downloaded files, preferably using the <code>PGP</code> signature (<code>*.asc</code> files);
-        failing that using the <code>SHA256</code> hash (<code>*.sha256</code> checksum files).
+        failing that using the <code>SHA512</code> hash (<code>*.sha512</code> checksum files).
       </p>
       <p>
         The <a href="https://www.apache.org/dist/commons/KEYS">KEYS</a>
@@ -111,32 +113,32 @@ limitations under the License.
       </p>
     </subsection>
     </section>
-    <section name="Apache Commons Compress 1.18 ">
+    <section name="Apache Commons Compress 1.19 ">
       <subsection name="Binaries">
         <table>
           <tr>
-              <td><a href="[preferred]/commons/compress/binaries/commons-compress-1.18-bin.tar.gz">commons-compress-1.18-bin.tar.gz</a></td>
-              <td><a href="https://www.apache.org/dist/commons/compress/binaries/commons-compress-1.18-bin.tar.gz.sha256">sha256</a></td>
-              <td><a href="https://www.apache.org/dist/commons/compress/binaries/commons-compress-1.18-bin.tar.gz.asc">pgp</a></td>
+              <td><a href="[preferred]/commons/compress/binaries/commons-compress-1.19-bin.tar.gz">commons-compress-1.19-bin.tar.gz</a></td>
+              <td><a href="https://www.apache.org/dist/commons/compress/binaries/commons-compress-1.19-bin.tar.gz.sha512">sha512</a></td>
+              <td><a href="https://www.apache.org/dist/commons/compress/binaries/commons-compress-1.19-bin.tar.gz.asc">pgp</a></td>
           </tr>
           <tr>
-              <td><a href="[preferred]/commons/compress/binaries/commons-compress-1.18-bin.zip">commons-compress-1.18-bin.zip</a></td>
-              <td><a href="https://www.apache.org/dist/commons/compress/binaries/commons-compress-1.18-bin.zip.sha256">sha256</a></td>
-              <td><a href="https://www.apache.org/dist/commons/compress/binaries/commons-compress-1.18-bin.zip.asc">pgp</a></td>
+              <td><a href="[preferred]/commons/compress/binaries/commons-compress-1.19-bin.zip">commons-compress-1.19-bin.zip</a></td>
+              <td><a href="https://www.apache.org/dist/commons/compress/binaries/commons-compress-1.19-bin.zip.sha512">sha512</a></td>
+              <td><a href="https://www.apache.org/dist/commons/compress/binaries/commons-compress-1.19-bin.zip.asc">pgp</a></td>
           </tr>
         </table>
       </subsection>
       <subsection name="Source">
         <table>
           <tr>
-              <td><a href="[preferred]/commons/compress/source/commons-compress-1.18-src.tar.gz">commons-compress-1.18-src.tar.gz</a></td>
-              <td><a href="https://www.apache.org/dist/commons/compress/source/commons-compress-1.18-src.tar.gz.sha256">sha256</a></td>
-              <td><a href="https://www.apache.org/dist/commons/compress/source/commons-compress-1.18-src.tar.gz.asc">pgp</a></td>
+              <td><a href="[preferred]/commons/compress/source/commons-compress-1.19-src.tar.gz">commons-compress-1.19-src.tar.gz</a></td>
+              <td><a href="https://www.apache.org/dist/commons/compress/source/commons-compress-1.19-src.tar.gz.sha512">sha512</a></td>
+              <td><a href="https://www.apache.org/dist/commons/compress/source/commons-compress-1.19-src.tar.gz.asc">pgp</a></td>
           </tr>
           <tr>
-              <td><a href="[preferred]/commons/compress/source/commons-compress-1.18-src.zip">commons-compress-1.18-src.zip</a></td>
-              <td><a href="https://www.apache.org/dist/commons/compress/source/commons-compress-1.18-src.zip.sha256">sha256</a></td>
-              <td><a href="https://www.apache.org/dist/commons/compress/source/commons-compress-1.18-src.zip.asc">pgp</a></td>
+              <td><a href="[preferred]/commons/compress/source/commons-compress-1.19-src.zip">commons-compress-1.19-src.zip</a></td>
+              <td><a href="https://www.apache.org/dist/commons/compress/source/commons-compress-1.19-src.zip.sha512">sha512</a></td>
+              <td><a href="https://www.apache.org/dist/commons/compress/source/commons-compress-1.19-src.zip.asc">pgp</a></td>
           </tr>
         </table>
       </subsection>
diff --git a/src/site/xdoc/index.xml b/src/site/xdoc/index.xml
index b2c7a5a..18709b4 100644
--- a/src/site/xdoc/index.xml
+++ b/src/site/xdoc/index.xml
@@ -52,20 +52,23 @@
         </section>
 
         <section name="Status">
-          <p>The current release is 1.18 and requires Java 7.</p>
+          <p>The current release is 1.19 and requires Java 7.</p>
 
           <p>Below we highlight some new features, for a full list
           of changes see the <a href="changes-report.html">Changes
           Report</a>.</p>
 
-          <subsection name="What's new in 1.18?">
+          <subsection name="What's new in 1.19?">
             <ul>
-              <li>The CPIO package now properly handles file names
-              using a mult-byte encoding.</li>
-              <li>ZipArchiveInputStream can now deal with APK files
-              containing an APK signing block.</li>
-              <li>It is now possible to specifiy various parameters
-              for Zstd output.</li>
+              <li><code>ParallelScatterZipCreator</code> now writes
+              entries in the same order they have been added to the
+              archive.</li>
+              <li><code>ZipArchiveInputStream</code> and
+              <code>ZipFile</code> are more forgiving when parsing
+              extra fields by default now.</li>
+              <li><code>TarArchiveInputStream</code> has a new lenient
+              mode that may allow it to read certain broken
+              archives.</li>
             </ul>
           </subsection>
         </section>
@@ -90,14 +93,14 @@
             licensed <a href="https://github.com/google/brotli">Google
             Brotli decoder</a>. Zstandard support is provided by the BSD
             licensed <a href="https://github.com/luben/zstd-jni">Zstd-jni</a>.
-            As of Commons Compress 1.18 support for the DEFLATE64, Z and Brotli
+            As of Commons Compress 1.19 support for the DEFLATE64, Z and Brotli
             formats is read-only.</p>
 
           <p>The ar, arj, cpio, dump, tar, 7z and zip formats are supported as
             archivers where the <a href="zip.html">zip</a>
             implementation provides capabilities that go beyond the
             features found in java.util.zip.  As of Commons Compress
-            1.18 support for the dump and arj formats is
+            1.19 support for the dump and arj formats is
             read-only - 7z can read most compressed and encrypted
             archives but only write unencrypted ones.  LZMA(2) support
             in 7z requires <a href="https://tukaani.org/xz/java.html">XZ for
diff --git a/src/site/xdoc/issue-tracking.xml b/src/site/xdoc/issue-tracking.xml
index 6389f92..05bce42 100644
--- a/src/site/xdoc/issue-tracking.xml
+++ b/src/site/xdoc/issue-tracking.xml
@@ -26,7 +26,7 @@ limitations under the License.
  | commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates |
  +======================================================================+
  |                                                                      |
- | 1) Re-generate using: mvn commons:jira-page                          |
+ | 1) Re-generate using: mvn commons-build:jira-page                    |
  |                                                                      |
  | 2) Set the following properties in the component's pom:              |
  |    - commons.jira.id  (required, alphabetic, upper case)             |
diff --git a/src/site/xdoc/mail-lists.xml b/src/site/xdoc/mail-lists.xml
index 954802e..8ac21a8 100644
--- a/src/site/xdoc/mail-lists.xml
+++ b/src/site/xdoc/mail-lists.xml
@@ -26,7 +26,7 @@ limitations under the License.
  | commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates |
  +======================================================================+
  |                                                                      |
- | 1) Re-generate using: mvn commons:mail-page                          |
+ | 1) Re-generate using: mvn commons-build:mail-page                    |
  |                                                                      |
  | 2) Set the following properties in the component's pom:              |
  |    - commons.componentid (required, alphabetic, lower case)          |
@@ -152,7 +152,7 @@ limitations under the License.
           <td>
             <strong>Commons Commits List</strong>
             <br /><br />
-            Only for e-mails automatically generated by the <a href="scm.html">source control</a> sytem.
+            Only for e-mails automatically generated by the <a href="source-repository.html">source control</a> sytem.
             <br /><br />
           </td>
           <td><a href="mailto:commits-subscribe@commons.apache.org">Subscribe</a></td>
@@ -192,9 +192,9 @@ limitations under the License.
           <td><a class="externalLink" href="mailto:announce-unsubscribe@apache.org">Unsubscribe</a></td>
           <td><i>read only</i></td>
           <td><a class="externalLink" href="https://mail-archives.apache.org/mod_mbox/www-announce/">mail-archives.apache.org</a></td>
-          <td><a class="externalLink" href="https://markmail.org/list/org.apache.announce/">markmail.org</a><br />
+          <td><a class="externalLink" href="http://markmail.org/list/org.apache.announce/">markmail.org</a><br />
               <a class="externalLink" href="http://old.nabble.com/Apache-News-and-Announce-f109.html">old.nabble.com</a><br />
-              <a class="externalLink" href="https://www.mail-archive.com/announce@apache.org/">www.mail-archive.com</a><br />
+              <a class="externalLink" href="http://www.mail-archive.com/announce@apache.org/">www.mail-archive.com</a><br />
               <a class="externalLink" href="http://news.gmane.org/gmane.comp.apache.announce">news.gmane.org</a>
           </td>
         </tr>