xref: /aosp_15_r20/external/apache-commons-compress/src/changes/changes.xml (revision ba8755cb0ae00084b4d58129cd522613d3299f27)
1*ba8755cbSAndroid Build Coastguard Worker<?xml version="1.0" encoding="UTF-8"?>
2*ba8755cbSAndroid Build Coastguard Worker<!--
3*ba8755cbSAndroid Build Coastguard Worker Licensed to the Apache Software Foundation (ASF) under one
4*ba8755cbSAndroid Build Coastguard Worker or more contributor license agreements.  See the NOTICE file
5*ba8755cbSAndroid Build Coastguard Worker distributed with this work for additional information
6*ba8755cbSAndroid Build Coastguard Worker regarding copyright ownership.  The ASF licenses this file
7*ba8755cbSAndroid Build Coastguard Worker to you under the Apache License, Version 2.0 (the
8*ba8755cbSAndroid Build Coastguard Worker "License"); you may not use this file except in compliance
9*ba8755cbSAndroid Build Coastguard Worker with the License.  You may obtain a copy of the License at
10*ba8755cbSAndroid Build Coastguard Worker
11*ba8755cbSAndroid Build Coastguard Worker   http://www.apache.org/licenses/LICENSE-2.0
12*ba8755cbSAndroid Build Coastguard Worker
13*ba8755cbSAndroid Build Coastguard Worker Unless required by applicable law or agreed to in writing,
14*ba8755cbSAndroid Build Coastguard Worker software distributed under the License is distributed on an
15*ba8755cbSAndroid Build Coastguard Worker "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*ba8755cbSAndroid Build Coastguard Worker KIND, either express or implied.  See the License for the
17*ba8755cbSAndroid Build Coastguard Worker specific language governing permissions and limitations
18*ba8755cbSAndroid Build Coastguard Worker under the License.
19*ba8755cbSAndroid Build Coastguard Worker-->
20*ba8755cbSAndroid Build Coastguard Worker
21*ba8755cbSAndroid Build Coastguard Worker<!--
22*ba8755cbSAndroid Build Coastguard WorkerThis file is also used by the maven-changes-plugin to generate the release notes.
23*ba8755cbSAndroid Build Coastguard WorkerUseful ways of finding items to add to this file are:
24*ba8755cbSAndroid Build Coastguard Worker
25*ba8755cbSAndroid Build Coastguard Worker1.  Add items when you fix a bug or add a feature (this makes the
26*ba8755cbSAndroid Build Coastguard Workerrelease process easy :-).
27*ba8755cbSAndroid Build Coastguard Worker
28*ba8755cbSAndroid Build Coastguard Worker2.  Do a JIRA search for tickets closed since the previous release.
29*ba8755cbSAndroid Build Coastguard Worker
30*ba8755cbSAndroid Build Coastguard Worker3.  Use the report generated by the maven-changelog-plugin to see all
31*ba8755cbSAndroid Build Coastguard WorkerSVN commits. TBA how to use this with SVN.
32*ba8755cbSAndroid Build Coastguard Worker
33*ba8755cbSAndroid Build Coastguard WorkerTo generate the release notes from this file:
34*ba8755cbSAndroid Build Coastguard Worker
35*ba8755cbSAndroid Build Coastguard Workermvn changes:announcement-generate -Prelease-notes [-Dchanges.version=m.n]
36*ba8755cbSAndroid Build Coastguard Worker
37*ba8755cbSAndroid Build Coastguard WorkerThe <action> type attribute can be add,update,fix,remove.
38*ba8755cbSAndroid Build Coastguard Worker-->
39*ba8755cbSAndroid Build Coastguard Worker
40*ba8755cbSAndroid Build Coastguard Worker<document>
41*ba8755cbSAndroid Build Coastguard Worker  <properties>
42*ba8755cbSAndroid Build Coastguard Worker    <title>commons-compress</title>
43*ba8755cbSAndroid Build Coastguard Worker  </properties>
44*ba8755cbSAndroid Build Coastguard Worker  <body>
45*ba8755cbSAndroid Build Coastguard Worker    <release version="1.19" date="not released, yet"
46*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.19">
47*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2018-09-07">
48*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream could forget the compression level has
49*ba8755cbSAndroid Build Coastguard Worker        changed under certain circumstances.
50*ba8755cbSAndroid Build Coastguard Worker      </action>
51*ba8755cbSAndroid Build Coastguard Worker    </release>
52*ba8755cbSAndroid Build Coastguard Worker    <release version="1.18" date="2018-08-16"
53*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.18">
54*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2018-06-15" due-to="DidierLoiseau">
55*ba8755cbSAndroid Build Coastguard Worker        The example Expander class has been vulnerable to a path
56*ba8755cbSAndroid Build Coastguard Worker        traversal in the edge case that happens when the target
57*ba8755cbSAndroid Build Coastguard Worker        directory has a sibling directory and the name of the target
58*ba8755cbSAndroid Build Coastguard Worker        directory is a prefix of the sibling directory's name.
59*ba8755cbSAndroid Build Coastguard Worker      </action>
60*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-456" type="fix" date="2018-06-19">
61*ba8755cbSAndroid Build Coastguard Worker        Changed the OSGi Import-Package to also optionally import
62*ba8755cbSAndroid Build Coastguard Worker        javax.crypto so encrypted archives can be read.
63*ba8755cbSAndroid Build Coastguard Worker      </action>
64*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-457" type="fix" date="2018-07-01">
65*ba8755cbSAndroid Build Coastguard Worker        Changed various implementations of the close method to better
66*ba8755cbSAndroid Build Coastguard Worker        ensure all held resources get closed even if exceptions are
67*ba8755cbSAndroid Build Coastguard Worker        thrown during the closing the stream.
68*ba8755cbSAndroid Build Coastguard Worker      </action>
69*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-455" type="fix" date="2018-07-01">
70*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream can now detect the APK Signing Block
71*ba8755cbSAndroid Build Coastguard Worker        used in signed Android APK files and treats it as an "end of
72*ba8755cbSAndroid Build Coastguard Worker        archive" marker.
73*ba8755cbSAndroid Build Coastguard Worker      </action>
74*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-459" type="fix" date="2018-07-11"
75*ba8755cbSAndroid Build Coastguard Worker              due-to="Jens Reimann">
76*ba8755cbSAndroid Build Coastguard Worker        The cpio streams didn't handle archives using a multi-byte
77*ba8755cbSAndroid Build Coastguard Worker        encoding properly.
78*ba8755cbSAndroid Build Coastguard Worker      </action>
79*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-460" type="add" date="2018-07-28"
80*ba8755cbSAndroid Build Coastguard Worker              due-to="Carmi Grushko">
81*ba8755cbSAndroid Build Coastguard Worker        It is now possible to specify the arguments of zstd-jni's
82*ba8755cbSAndroid Build Coastguard Worker        ZstdOutputStream constructors via Commons Compress as well.
83*ba8755cbSAndroid Build Coastguard Worker      </action>
84*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-463" type="fix" date="2018-08-09">
85*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream#read would silently return -1 on a
86*ba8755cbSAndroid Build Coastguard Worker        corrupted stored entry and even return > 0 after hitting the
87*ba8755cbSAndroid Build Coastguard Worker        end of the archive.
88*ba8755cbSAndroid Build Coastguard Worker      </action>
89*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-462" type="fix" date="2018-08-10">
90*ba8755cbSAndroid Build Coastguard Worker        ArArchiveInputStream#read would allow to read from the stream
91*ba8755cbSAndroid Build Coastguard Worker        without opening an entry at all.
92*ba8755cbSAndroid Build Coastguard Worker      </action>
93*ba8755cbSAndroid Build Coastguard Worker    </release>
94*ba8755cbSAndroid Build Coastguard Worker    <release version="1.17" date="2018-06-03"
95*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.17">
96*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2018-02-06">
97*ba8755cbSAndroid Build Coastguard Worker        Removed the objenesis dependency from the pom as it is not
98*ba8755cbSAndroid Build Coastguard Worker        needed at all.
99*ba8755cbSAndroid Build Coastguard Worker      </action>
100*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-446" type="fix" date="2018-03-29">
101*ba8755cbSAndroid Build Coastguard Worker        Fixed resource leak in ParallelScatterZipCreator#writeTo.
102*ba8755cbSAndroid Build Coastguard Worker      </action>
103*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2018-04-01" due-to="Marchenko Sergey">
104*ba8755cbSAndroid Build Coastguard Worker        Fixed some code examples.
105*ba8755cbSAndroid Build Coastguard Worker        Github Pull Request #63.
106*ba8755cbSAndroid Build Coastguard Worker      </action>
107*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-447" type="fix" date="2018-04-22">
108*ba8755cbSAndroid Build Coastguard Worker        Certain errors when parsing ZIP extra fields in corrupt
109*ba8755cbSAndroid Build Coastguard Worker        archives are now turned into ZipException, they used to
110*ba8755cbSAndroid Build Coastguard Worker        manifest as ArrayIndexOutOfBoundsException before.
111*ba8755cbSAndroid Build Coastguard Worker      </action>
112*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-445" type="update" date="2018-04-22"
113*ba8755cbSAndroid Build Coastguard Worker              due-to="Andreas Beeker">
114*ba8755cbSAndroid Build Coastguard Worker        The streams returned by ZipFile and most other decompressing
115*ba8755cbSAndroid Build Coastguard Worker        streams now provide information about the number of compressed
116*ba8755cbSAndroid Build Coastguard Worker        and uncompressed bytes read so far. This may be used to detect
117*ba8755cbSAndroid Build Coastguard Worker        a ZipBomb if the compression ratio exceeds a certain
118*ba8755cbSAndroid Build Coastguard Worker        threshold, for example.
119*ba8755cbSAndroid Build Coastguard Worker        For SevenZFile a new method returns the statistics for the
120*ba8755cbSAndroid Build Coastguard Worker        current entry.
121*ba8755cbSAndroid Build Coastguard Worker      </action>
122*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-443" type="add" date="2018-04-25">
123*ba8755cbSAndroid Build Coastguard Worker        Added a unit test that is supposed to fail if we break the
124*ba8755cbSAndroid Build Coastguard Worker        OSGi manifest entries again.
125*ba8755cbSAndroid Build Coastguard Worker      </action>
126*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-449" type="add" date="2018-05-02">
127*ba8755cbSAndroid Build Coastguard Worker        Add a new SkipShieldingInputStream class that can be used with
128*ba8755cbSAndroid Build Coastguard Worker        streams that throw an IOException when skip is invoked.
129*ba8755cbSAndroid Build Coastguard Worker      </action>
130*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-451" type="fix" date="2018-05-04">
131*ba8755cbSAndroid Build Coastguard Worker        IOUtils.copy now verifies the buffer size is bigger than 0.
132*ba8755cbSAndroid Build Coastguard Worker      </action>
133*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-452" type="add" date="2018-05-09">
134*ba8755cbSAndroid Build Coastguard Worker        New constructors have been added to SevenZFile that accept
135*ba8755cbSAndroid Build Coastguard Worker        char[]s rather than byte[]s in order to avoid a common error
136*ba8755cbSAndroid Build Coastguard Worker        of using the wrong encoding when creating the byte[].  This
137*ba8755cbSAndroid Build Coastguard Worker        change may break source compatibility for client code that
138*ba8755cbSAndroid Build Coastguard Worker        uses one of the constructors expecting a password and passes
139*ba8755cbSAndroid Build Coastguard Worker        in null as password. We recommend to change the code to use a
140*ba8755cbSAndroid Build Coastguard Worker        constructor without password argument.
141*ba8755cbSAndroid Build Coastguard Worker      </action>
142*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-453" type="update" date="2018-05-24">
143*ba8755cbSAndroid Build Coastguard Worker        Added a workaround for a bug in AdoptOpenJDK for S/390 to
144*ba8755cbSAndroid Build Coastguard Worker        BZip2CompressorInputStream.
145*ba8755cbSAndroid Build Coastguard Worker      </action>
146*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-454" type="fix" date="2018-05-30">
147*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream failed to read some files with stored
148*ba8755cbSAndroid Build Coastguard Worker        entries using a data descriptor.
149*ba8755cbSAndroid Build Coastguard Worker      </action>
150*ba8755cbSAndroid Build Coastguard Worker    </release>
151*ba8755cbSAndroid Build Coastguard Worker    <release version="1.16.1" date="2018-02-10"
152*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.16.1">
153*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-442" type="fix" date="2018-02-06">
154*ba8755cbSAndroid Build Coastguard Worker        Fixed the OSGi manifest entry for imports that has been broken
155*ba8755cbSAndroid Build Coastguard Worker        in 1.16.
156*ba8755cbSAndroid Build Coastguard Worker      </action>
157*ba8755cbSAndroid Build Coastguard Worker    </release>
158*ba8755cbSAndroid Build Coastguard Worker    <release version="1.16" date="2018-02-05"
159*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.16">
160*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-423" type="add" date="2017-10-17"
161*ba8755cbSAndroid Build Coastguard Worker              due-to="Andre F de Miranda">
162*ba8755cbSAndroid Build Coastguard Worker        Add read-only support for Zstandard compression based on the
163*ba8755cbSAndroid Build Coastguard Worker        Zstd-jni project.
164*ba8755cbSAndroid Build Coastguard Worker      </action>
165*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-425" type="add" date="2017-10-22">
166*ba8755cbSAndroid Build Coastguard Worker        Added auto-detection for Zstandard compressed streams.
167*ba8755cbSAndroid Build Coastguard Worker      </action>
168*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-430" type="fix" date="2017-11-25"
169*ba8755cbSAndroid Build Coastguard Worker              due-to="Bruno P. Kinoshita">
170*ba8755cbSAndroid Build Coastguard Worker        Synchronized iteration over a synchronizedList in ParallelScatterZipCreator.
171*ba8755cbSAndroid Build Coastguard Worker      </action>
172*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-432" type="fix" date="2017-12-22">
173*ba8755cbSAndroid Build Coastguard Worker        ZipFile could get stuck in an infinite loop when parsing ZIP
174*ba8755cbSAndroid Build Coastguard Worker        archives with certain strong encryption headers.
175*ba8755cbSAndroid Build Coastguard Worker      </action>
176*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-435" type="update" date="2017-12-27"
177*ba8755cbSAndroid Build Coastguard Worker              due-to="BELUGA BEHR">
178*ba8755cbSAndroid Build Coastguard Worker        Replaces instanceof checks with a type marker in LZ77 support code.
179*ba8755cbSAndroid Build Coastguard Worker      </action>
180*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-426" type="add" date="2017-12-28">
181*ba8755cbSAndroid Build Coastguard Worker        Added write-support for Zstandard compression.
182*ba8755cbSAndroid Build Coastguard Worker      </action>
183*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-424" type="fix" date="2017-12-30">
184*ba8755cbSAndroid Build Coastguard Worker        Added improved checks to detect corrupted bzip2 streams and
185*ba8755cbSAndroid Build Coastguard Worker        throw the expected IOException rather than obscure
186*ba8755cbSAndroid Build Coastguard Worker        RuntimeExceptions.
187*ba8755cbSAndroid Build Coastguard Worker      </action>
188*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2018-01-04">
189*ba8755cbSAndroid Build Coastguard Worker        Updated XZ for Java dependency to 1.8 in order to pick up bug
190*ba8755cbSAndroid Build Coastguard Worker        fix to LZMA2InputStream's available method.
191*ba8755cbSAndroid Build Coastguard Worker      </action>
192*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2018-01-05" issue="COMPRESS-429"
193*ba8755cbSAndroid Build Coastguard Worker              due-to="Damiano Albani">
194*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveEntry now exposes how the name or comment have been
195*ba8755cbSAndroid Build Coastguard Worker        determined when the entry was read.
196*ba8755cbSAndroid Build Coastguard Worker      </action>
197*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-380" type="add" date="2018-01-09"
198*ba8755cbSAndroid Build Coastguard Worker              due-to="Christian Marquez Grabia">
199*ba8755cbSAndroid Build Coastguard Worker        Added read-only DEFLATE64 support to ZIP archives and as
200*ba8755cbSAndroid Build Coastguard Worker        stand-alone CompressorInputStream.
201*ba8755cbSAndroid Build Coastguard Worker      </action>
202*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-438" type="update" date="2018-01-10">
203*ba8755cbSAndroid Build Coastguard Worker        ZipFile.getInputStream will now always buffer the stream
204*ba8755cbSAndroid Build Coastguard Worker        internally in order to improve read performance.
205*ba8755cbSAndroid Build Coastguard Worker      </action>
206*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-440" type="update" date="2018-01-12"
207*ba8755cbSAndroid Build Coastguard Worker              due-to="Dawid Weiss">
208*ba8755cbSAndroid Build Coastguard Worker        Speed improvement for DEFLATE64 decompression.
209*ba8755cbSAndroid Build Coastguard Worker      </action>
210*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-437" type="add" date="2018-01-13">
211*ba8755cbSAndroid Build Coastguard Worker        Added read-only DEFLATE64 support to 7z archives.
212*ba8755cbSAndroid Build Coastguard Worker      </action>
213*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-436" type="update" date="2018-01-14">
214*ba8755cbSAndroid Build Coastguard Worker        Added a few extra sanity checks for the rarer compression
215*ba8755cbSAndroid Build Coastguard Worker        methods used in ZIP archives.
216*ba8755cbSAndroid Build Coastguard Worker      </action>
217*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-441" type="update" date="2018-01-14">
218*ba8755cbSAndroid Build Coastguard Worker        Simplified the special handling for the dummy byte required by
219*ba8755cbSAndroid Build Coastguard Worker        zlib when using java.util.zip.Inflater.
220*ba8755cbSAndroid Build Coastguard Worker      </action>
221*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2018-01-18" due-to="Shahab Kondri">
222*ba8755cbSAndroid Build Coastguard Worker        Various code cleanups.
223*ba8755cbSAndroid Build Coastguard Worker        Github Pull Request #61.
224*ba8755cbSAndroid Build Coastguard Worker      </action>
225*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2018-01-29">
226*ba8755cbSAndroid Build Coastguard Worker        TarArchiveEntry's preserveLeadingSlashes constructor argument
227*ba8755cbSAndroid Build Coastguard Worker        has been renamed and can now also be used to preserve the
228*ba8755cbSAndroid Build Coastguard Worker        drive letter on Windows.
229*ba8755cbSAndroid Build Coastguard Worker      </action>
230*ba8755cbSAndroid Build Coastguard Worker    </release>
231*ba8755cbSAndroid Build Coastguard Worker    <release version="1.15" date="2017-10-17"
232*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.15
233*ba8755cbSAndroid Build Coastguard Worker----------------------------------------
234*ba8755cbSAndroid Build Coastguard Worker
235*ba8755cbSAndroid Build Coastguard WorkerTarArchiveOutputStream now ensures record size is 512 and block size is
236*ba8755cbSAndroid Build Coastguard Workera multiple of 512 as any other value would create invalid tar
237*ba8755cbSAndroid Build Coastguard Workerarchives. This may break compatibility for code that deliberately
238*ba8755cbSAndroid Build Coastguard Workerwanted to create such files.">
239*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-394" type="fix" date="2017-05-22">
240*ba8755cbSAndroid Build Coastguard Worker        Make sure "version needed to extract" in local file header and
241*ba8755cbSAndroid Build Coastguard Worker        central directory of a ZIP archive agree with each other.
242*ba8755cbSAndroid Build Coastguard Worker        Also ensure the version is set to 2.0 if DEFLATE is used.
243*ba8755cbSAndroid Build Coastguard Worker      </action>
244*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-395" type="fix" date="2017-05-22">
245*ba8755cbSAndroid Build Coastguard Worker        Don't use a data descriptor in ZIP archives when copying a raw
246*ba8755cbSAndroid Build Coastguard Worker        entry that already knows its size and CRC information.
247*ba8755cbSAndroid Build Coastguard Worker      </action>
248*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-413" type="fix" date="2017-05-22" due-to="Simon Spero">
249*ba8755cbSAndroid Build Coastguard Worker        Travis build redundantly repeats compilation and tests redundantly #43.
250*ba8755cbSAndroid Build Coastguard Worker      </action>
251*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-397" type="add" date="2017-05-22">
252*ba8755cbSAndroid Build Coastguard Worker        Added magic MANIFEST entry Automatic-Module-Name so the module
253*ba8755cbSAndroid Build Coastguard Worker        name will be org.apache.commons.compress when the jar is used
254*ba8755cbSAndroid Build Coastguard Worker        as an automatic module in Java9.
255*ba8755cbSAndroid Build Coastguard Worker      </action>
256*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-396" type="fix" date="2017-05-23">
257*ba8755cbSAndroid Build Coastguard Worker        The MANIFEST of 1.14 lacks an OSGi Import-Package for XZ for
258*ba8755cbSAndroid Build Coastguard Worker        Java.
259*ba8755cbSAndroid Build Coastguard Worker      </action>
260*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-406" type="fix" date="2017-06-12"
261*ba8755cbSAndroid Build Coastguard Worker              due-to="Simon Spero">
262*ba8755cbSAndroid Build Coastguard Worker        BUILDING.md now passes the RAT check.
263*ba8755cbSAndroid Build Coastguard Worker      </action>
264*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-405" type="add" date="2017-06-15"
265*ba8755cbSAndroid Build Coastguard Worker              due-to="Simon Spero ">
266*ba8755cbSAndroid Build Coastguard Worker        Added a new utility class FixedLengthBlockOutputStream that
267*ba8755cbSAndroid Build Coastguard Worker        can be used to ensure writing always happens in blocks of a
268*ba8755cbSAndroid Build Coastguard Worker        given size.
269*ba8755cbSAndroid Build Coastguard Worker      </action>
270*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-412" type="fix" date="2017-06-17"
271*ba8755cbSAndroid Build Coastguard Worker              due-to="Michael Hausegger">
272*ba8755cbSAndroid Build Coastguard Worker        Made sure ChecksumCalculatingInputStream receives valid
273*ba8755cbSAndroid Build Coastguard Worker        checksum and input stream instances via the constructor.
274*ba8755cbSAndroid Build Coastguard Worker      </action>
275*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-407" type="fix" date="2017-06-24"
276*ba8755cbSAndroid Build Coastguard Worker              due-to="Simon Spero ">
277*ba8755cbSAndroid Build Coastguard Worker        TarArchiveOutputStream now verifies the block and record sizes
278*ba8755cbSAndroid Build Coastguard Worker        specified at construction time are compatible with the tar
279*ba8755cbSAndroid Build Coastguard Worker        specification. In particular 512 is the only record size
280*ba8755cbSAndroid Build Coastguard Worker        accepted and the block size must be a multiple of 512.
281*ba8755cbSAndroid Build Coastguard Worker        At the same time the default block size in
282*ba8755cbSAndroid Build Coastguard Worker        TarArchiveOutputStream has been changed from 10240 to 512
283*ba8755cbSAndroid Build Coastguard Worker        bytes.
284*ba8755cbSAndroid Build Coastguard Worker      </action>
285*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-400" type="add" date="2017-06-26"
286*ba8755cbSAndroid Build Coastguard Worker              due-to="Simon Spero ">
287*ba8755cbSAndroid Build Coastguard Worker        It is now possible to specify/read custom PAX headers when
288*ba8755cbSAndroid Build Coastguard Worker        writing/reading tar archives.
289*ba8755cbSAndroid Build Coastguard Worker      </action>
290*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-415" type="fix" date="2017-06-27">
291*ba8755cbSAndroid Build Coastguard Worker        Fixed class names of CpioArchiveEntry and
292*ba8755cbSAndroid Build Coastguard Worker        CpioArchiveInputStream in various Javadocs.
293*ba8755cbSAndroid Build Coastguard Worker      </action>
294*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-416" type="fix" date="2017-07-04"
295*ba8755cbSAndroid Build Coastguard Worker              due-to="Simon Spero ">
296*ba8755cbSAndroid Build Coastguard Worker        The code of the extended timestamp zip extra field incorrectly
297*ba8755cbSAndroid Build Coastguard Worker        assumed the time was stored as unsigned 32-bit int and thus
298*ba8755cbSAndroid Build Coastguard Worker        created incorrect results for years after 2037.
299*ba8755cbSAndroid Build Coastguard Worker      </action>
300*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-410" type="fix" date="2017-07-05"
301*ba8755cbSAndroid Build Coastguard Worker              due-to="Simon Spero ">
302*ba8755cbSAndroid Build Coastguard Worker        Removed ZipEncoding code that became obsolete when we started
303*ba8755cbSAndroid Build Coastguard Worker        to require Java 5 as baseline long ago.
304*ba8755cbSAndroid Build Coastguard Worker      </action>
305*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-417" type="fix" date="2017-07-19">
306*ba8755cbSAndroid Build Coastguard Worker        The tar package will no longer try to parse the major and
307*ba8755cbSAndroid Build Coastguard Worker        minor device numbers unless the entry represents a character
308*ba8755cbSAndroid Build Coastguard Worker        or block special file.
309*ba8755cbSAndroid Build Coastguard Worker      </action>
310*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-421" type="fix" date="2017-10-06"
311*ba8755cbSAndroid Build Coastguard Worker              due-to="Roel Spilker">
312*ba8755cbSAndroid Build Coastguard Worker        When reading tar headers with name fields containing embedded
313*ba8755cbSAndroid Build Coastguard Worker        NULs, the name will now be terminated at the first NUL byte.
314*ba8755cbSAndroid Build Coastguard Worker      </action>
315*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-409" type="fix" date="2017-10-08">
316*ba8755cbSAndroid Build Coastguard Worker        Simplified TarArchiveOutputStream by replacing the internal
317*ba8755cbSAndroid Build Coastguard Worker        buffering with new class FixedLengthBlockOutputStream.
318*ba8755cbSAndroid Build Coastguard Worker      </action>
319*ba8755cbSAndroid Build Coastguard Worker    </release>
320*ba8755cbSAndroid Build Coastguard Worker    <release version="1.14" date="2017-05-14"
321*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.14">
322*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-378" type="fix" date="2017-01-09">
323*ba8755cbSAndroid Build Coastguard Worker        SnappyCompressorInputStream slides the window too early
324*ba8755cbSAndroid Build Coastguard Worker        leading to ArrayIndexOutOfBoundsExceptions for some streams.
325*ba8755cbSAndroid Build Coastguard Worker      </action>
326*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-246" type="add" date="2017-01-10">
327*ba8755cbSAndroid Build Coastguard Worker        Added write support for Snappy.
328*ba8755cbSAndroid Build Coastguard Worker      </action>
329*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-358" type="update" date="2017-01-10">
330*ba8755cbSAndroid Build Coastguard Worker        The blocksize for FramedSnappyCompressorInputStream can now be
331*ba8755cbSAndroid Build Coastguard Worker        configured as some IWA files seem to be using blocks larger
332*ba8755cbSAndroid Build Coastguard Worker        than the default 32k.
333*ba8755cbSAndroid Build Coastguard Worker      </action>
334*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-379" type="fix" date="2017-01-15"
335*ba8755cbSAndroid Build Coastguard Worker              due-to="Guillaume Boué">
336*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveEntry#isUnixSymlink now only returns true if the
337*ba8755cbSAndroid Build Coastguard Worker        corresponding link flag is the only file-type flag set.
338*ba8755cbSAndroid Build Coastguard Worker      </action>
339*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-271" type="add" date="2017-02-07">
340*ba8755cbSAndroid Build Coastguard Worker        Added support for LZ4 (block and frame format).
341*ba8755cbSAndroid Build Coastguard Worker      </action>
342*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2017-02-15" due-to="Thomas Meyer">
343*ba8755cbSAndroid Build Coastguard Worker        BZip2CompressorInputstream now uses BitInputStream internally.
344*ba8755cbSAndroid Build Coastguard Worker        Pull Request #13.
345*ba8755cbSAndroid Build Coastguard Worker      </action>
346*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2017-03-29" due-to="Daniel Collin">
347*ba8755cbSAndroid Build Coastguard Worker        Fixed an integer overflow in CPIO's CRC calculation.
348*ba8755cbSAndroid Build Coastguard Worker        Pull Request #17.
349*ba8755cbSAndroid Build Coastguard Worker      </action>
350*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-385" type="add" date="2017-04-18">
351*ba8755cbSAndroid Build Coastguard Worker        Add static detect(InputStream in) to CompressorStreamFactory
352*ba8755cbSAndroid Build Coastguard Worker        and ArchiveStreamFactory
353*ba8755cbSAndroid Build Coastguard Worker      </action>
354*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-387" type="fix" date="2017-04-18">
355*ba8755cbSAndroid Build Coastguard Worker        Make unit tests work on Windows paths with spaces in their names.
356*ba8755cbSAndroid Build Coastguard Worker      </action>
357*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-388" type="update" date="2017-04-25"
358*ba8755cbSAndroid Build Coastguard Worker              due-to="Zbynek Vyskovsky">
359*ba8755cbSAndroid Build Coastguard Worker        Improved performance for concurrent reads from ZipFile when
360*ba8755cbSAndroid Build Coastguard Worker        reading from a file.
361*ba8755cbSAndroid Build Coastguard Worker      </action>
362*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-382" type="add" date="2017-04-25"
363*ba8755cbSAndroid Build Coastguard Worker              due-to="Tim Allison">
364*ba8755cbSAndroid Build Coastguard Worker        Added a way to limit amount of memory ZCompressorStream may
365*ba8755cbSAndroid Build Coastguard Worker        use.
366*ba8755cbSAndroid Build Coastguard Worker      </action>
367*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-386" type="add" date="2017-04-25"
368*ba8755cbSAndroid Build Coastguard Worker              due-to="Tim Allison">
369*ba8755cbSAndroid Build Coastguard Worker        Added a way to limit amount of memory ZCompressorStream may
370*ba8755cbSAndroid Build Coastguard Worker        use.
371*ba8755cbSAndroid Build Coastguard Worker      </action>
372*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-382" type="add" date="2017-04-25"
373*ba8755cbSAndroid Build Coastguard Worker              due-to="Tim Allison">
374*ba8755cbSAndroid Build Coastguard Worker        Added a way to limit amount of memory LZMACompressorStream and
375*ba8755cbSAndroid Build Coastguard Worker        XZCompressorInputStream may use.
376*ba8755cbSAndroid Build Coastguard Worker      </action>
377*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-389" type="fix" date="2017-04-26">
378*ba8755cbSAndroid Build Coastguard Worker        Internal location pointer in ZipFile could get incremented
379*ba8755cbSAndroid Build Coastguard Worker        even if nothing had been read.
380*ba8755cbSAndroid Build Coastguard Worker      </action>
381*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-392" type="add" date="2017-05-02" due-to="Philippe Mouawad">
382*ba8755cbSAndroid Build Coastguard Worker        Add Brotli decoder based on the Google Brotli library.
383*ba8755cbSAndroid Build Coastguard Worker      </action>
384*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-390" type="add" date="2017-05-04"
385*ba8755cbSAndroid Build Coastguard Worker              due-to="Zbynek Vyskovsky">
386*ba8755cbSAndroid Build Coastguard Worker        ZipEntry now exposes its data offset.
387*ba8755cbSAndroid Build Coastguard Worker      </action>
388*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-393" type="fix" date="2017-05-07">
389*ba8755cbSAndroid Build Coastguard Worker        LZMACompressorOutputStream#flush would throw an exception
390*ba8755cbSAndroid Build Coastguard Worker        rather than be the NOP it promised to be.
391*ba8755cbSAndroid Build Coastguard Worker      </action>
392*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-391" type="add" date="2017-05-11"
393*ba8755cbSAndroid Build Coastguard Worker              due-to="Zbynek Vyskovsky">
394*ba8755cbSAndroid Build Coastguard Worker        Using ZipArchiveEntry's setAlignment it is now possible to
395*ba8755cbSAndroid Build Coastguard Worker        ensure the data offset of an entry starts at a file position
396*ba8755cbSAndroid Build Coastguard Worker        that at word or page boundaries.
397*ba8755cbSAndroid Build Coastguard Worker        A new extra field has been added for this purpose.
398*ba8755cbSAndroid Build Coastguard Worker      </action>
399*ba8755cbSAndroid Build Coastguard Worker    </release>
400*ba8755cbSAndroid Build Coastguard Worker    <release version="1.13" date="2016-12-29"
401*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.13 - API compatible to 1.12 but requires Java 7 at runtime.">
402*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-360" type="update" date="2016-06-25" dev="ggregory">
403*ba8755cbSAndroid Build Coastguard Worker        Update Java requirement from 6 to 7.
404*ba8755cbSAndroid Build Coastguard Worker      </action>
405*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-363" type="fix" date="2016-07-01">
406*ba8755cbSAndroid Build Coastguard Worker        BitInputStream could return bad results when overflowing
407*ba8755cbSAndroid Build Coastguard Worker        internally - if two consecutive reads tried to read more than
408*ba8755cbSAndroid Build Coastguard Worker        64 bits.
409*ba8755cbSAndroid Build Coastguard Worker      </action>
410*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-366" type="update" date="2016-10-07">
411*ba8755cbSAndroid Build Coastguard Worker        Clarified which TarArchiveEntry methods are useless for
412*ba8755cbSAndroid Build Coastguard Worker        entries read from an archive.
413*ba8755cbSAndroid Build Coastguard Worker      </action>
414*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-364" type="fix" date="2016-10-07"
415*ba8755cbSAndroid Build Coastguard Worker              due-to="Mike Mole">
416*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream.closeEntry does not properly advance to
417*ba8755cbSAndroid Build Coastguard Worker        next entry if there are junk bytes at end of data section
418*ba8755cbSAndroid Build Coastguard Worker      </action>
419*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-327" type="add" date="2016-10-12">
420*ba8755cbSAndroid Build Coastguard Worker        SevenZFile, SevenZOutputFile, ZipFile and
421*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveOutputStream can now work on non-file resources if
422*ba8755cbSAndroid Build Coastguard Worker        they can be accessed via SeekableByteChannel.
423*ba8755cbSAndroid Build Coastguard Worker      </action>
424*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-368" type="add" date="2016-11-15">
425*ba8755cbSAndroid Build Coastguard Worker        Allow compressor extensions through a standard JRE ServiceLoader.
426*ba8755cbSAndroid Build Coastguard Worker      </action>
427*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-369" type="add" date="2016-11-15">
428*ba8755cbSAndroid Build Coastguard Worker        Allow archive extensions through a standard JRE ServiceLoader.
429*ba8755cbSAndroid Build Coastguard Worker      </action>
430*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-373" type="add" date="2016-11-29">
431*ba8755cbSAndroid Build Coastguard Worker        Add write support for the legacy LZMA format, this requires XZ
432*ba8755cbSAndroid Build Coastguard Worker        for Java 1.6.
433*ba8755cbSAndroid Build Coastguard Worker      </action>
434*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-374" type="add" date="2016-11-29">
435*ba8755cbSAndroid Build Coastguard Worker        Add write support for the legacy LZMA stream to 7z, this
436*ba8755cbSAndroid Build Coastguard Worker        requires XZ for Java 1.6.
437*ba8755cbSAndroid Build Coastguard Worker      </action>
438*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-375" type="add" date="2016-12-04"
439*ba8755cbSAndroid Build Coastguard Worker              due-to="Plamen Totev">
440*ba8755cbSAndroid Build Coastguard Worker        Allow the clients of ParallelScatterZipCreator to provide
441*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveEntryRequestSupplier.
442*ba8755cbSAndroid Build Coastguard Worker      </action>
443*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-367" type="fix" date="2016-12-09"
444*ba8755cbSAndroid Build Coastguard Worker              due-to="Mike Mole">
445*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream now throws an Exception if it encounters
446*ba8755cbSAndroid Build Coastguard Worker        a broken ZIP archive rather than signaling end-of-archive.
447*ba8755cbSAndroid Build Coastguard Worker      </action>
448*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-377" type="fix" date="2016-12-20">
449*ba8755cbSAndroid Build Coastguard Worker        ScatterZipOutputStream didn't close the StreamCompressor
450*ba8755cbSAndroid Build Coastguard Worker        causing a potential resource leak.
451*ba8755cbSAndroid Build Coastguard Worker      </action>
452*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-372" type="add" date="2016-12-20">
453*ba8755cbSAndroid Build Coastguard Worker        Add a version-independent link to the API docs of the latest
454*ba8755cbSAndroid Build Coastguard Worker        release.
455*ba8755cbSAndroid Build Coastguard Worker      </action>
456*ba8755cbSAndroid Build Coastguard Worker    </release>
457*ba8755cbSAndroid Build Coastguard Worker    <release version="1.12" date="2016-06-21"
458*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.12 - API compatible to 1.11 but requires Java 6 at runtime.
459*ba8755cbSAndroid Build Coastguard Worker------------
460*ba8755cbSAndroid Build Coastguard Worker
461*ba8755cbSAndroid Build Coastguard Worker
462*ba8755cbSAndroid Build Coastguard Worker
463*ba8755cbSAndroid Build Coastguard WorkerRelease 1.12 changes the behavior of BZip2CompressorOutputStream's
464*ba8755cbSAndroid Build Coastguard Workerfinalize method so that it no longer invokes finish. This is going to
465*ba8755cbSAndroid Build Coastguard Workerbreak code that relied on the finalizer to clean up an unfinished
466*ba8755cbSAndroid Build Coastguard Workerstream. The code will need to be changed to call finish or
467*ba8755cbSAndroid Build Coastguard Workerclose itself. Note that a finalizer is not guaranteed to run, so
468*ba8755cbSAndroid Build Coastguard Workerthe feature was not 100% effective in any case.
469*ba8755cbSAndroid Build Coastguard Worker">
470*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-349" type="update" date="2016-04-09" dev="ggregory">
471*ba8755cbSAndroid Build Coastguard Worker        Update requirement from Java 5 to 6.
472*ba8755cbSAndroid Build Coastguard Worker      </action>
473*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-350" type="update" date="2016-04-09" dev="ggregory">
474*ba8755cbSAndroid Build Coastguard Worker        TarArchiveEntry wastefully allocates empty arrays.
475*ba8755cbSAndroid Build Coastguard Worker      </action>
476*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-348" type="fix" date="2016-04-24">
477*ba8755cbSAndroid Build Coastguard Worker        SevenZFile.read() throws an IllegalStateException for empty entries.
478*ba8755cbSAndroid Build Coastguard Worker      </action>
479*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-353" type="update" date="2016-05-06" dev="ggregory">
480*ba8755cbSAndroid Build Coastguard Worker        Javadoc for BZip2CompressorInputStream(InputStream, boolean) should refer to IOEx, not NPE.
481*ba8755cbSAndroid Build Coastguard Worker      </action>
482*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-354" type="update" date="2016-05-16">
483*ba8755cbSAndroid Build Coastguard Worker        PureJavaCrc32C in the snappy package is now final so it is now
484*ba8755cbSAndroid Build Coastguard Worker        safe to call a virtual method inside the constructor.
485*ba8755cbSAndroid Build Coastguard Worker      </action>
486*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-355" type="fix" date="2016-05-20"
487*ba8755cbSAndroid Build Coastguard Worker              due-to="Jeremy Gustie">
488*ba8755cbSAndroid Build Coastguard Worker        TarArchiveInputStream failed to parse PAX headers that
489*ba8755cbSAndroid Build Coastguard Worker        included blank lines.
490*ba8755cbSAndroid Build Coastguard Worker      </action>
491*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-356" type="fix" date="2016-05-20"
492*ba8755cbSAndroid Build Coastguard Worker              due-to="Jeremy Gustie">
493*ba8755cbSAndroid Build Coastguard Worker        TarArchiveInputStream failed to parse PAX headers whose tar
494*ba8755cbSAndroid Build Coastguard Worker        entry name ended with a slash.
495*ba8755cbSAndroid Build Coastguard Worker      </action>
496*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-352" type="add" date="2016-05-22">
497*ba8755cbSAndroid Build Coastguard Worker        FramedSnappyCompressorInputStream now supports the dialect of
498*ba8755cbSAndroid Build Coastguard Worker        Snappy used by the IWA files contained within the zip archives
499*ba8755cbSAndroid Build Coastguard Worker        used in Apple's iWork 13 files.
500*ba8755cbSAndroid Build Coastguard Worker      </action>
501*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-351" type="update" date="2016-06-07">
502*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream and CpioArchiveInputStream could throw
503*ba8755cbSAndroid Build Coastguard Worker        exceptions who's messages contained potentially corrupt entry
504*ba8755cbSAndroid Build Coastguard Worker        names read from a broken archive. They will now sanitize the
505*ba8755cbSAndroid Build Coastguard Worker        names by replacing unprintable characters and restricting the
506*ba8755cbSAndroid Build Coastguard Worker        length to 255 characters.
507*ba8755cbSAndroid Build Coastguard Worker      </action>
508*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-357" type="update" date="2016-06-15">
509*ba8755cbSAndroid Build Coastguard Worker        BZip2CompressorOutputStream no longer tries to finish the
510*ba8755cbSAndroid Build Coastguard Worker        output stream in finalize. This is a breaking change for code
511*ba8755cbSAndroid Build Coastguard Worker        that relied on the finalizer.
512*ba8755cbSAndroid Build Coastguard Worker      </action>
513*ba8755cbSAndroid Build Coastguard Worker    </release>
514*ba8755cbSAndroid Build Coastguard Worker    <release version="1.11" date="2016-04-06"
515*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.11">
516*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-347" type="add" date="2016-03-23">
517*ba8755cbSAndroid Build Coastguard Worker        TarArchiveInputStream now supports reading global PAX headers.
518*ba8755cbSAndroid Build Coastguard Worker      </action>
519*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-346" type="add" date="2016-03-23">
520*ba8755cbSAndroid Build Coastguard Worker        The PAX headers for sparse entries written by star are now
521*ba8755cbSAndroid Build Coastguard Worker        applied.
522*ba8755cbSAndroid Build Coastguard Worker      </action>
523*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-345" type="add" date="2016-03-23">
524*ba8755cbSAndroid Build Coastguard Worker        GNU sparse files using one of the PAX formats are now
525*ba8755cbSAndroid Build Coastguard Worker        detected, but cannot be extracted.
526*ba8755cbSAndroid Build Coastguard Worker      </action>
527*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-344" type="fix" date="2016-03-22">
528*ba8755cbSAndroid Build Coastguard Worker        ArArchiveInputStream can now read GNU extended names that are
529*ba8755cbSAndroid Build Coastguard Worker        terminated with a NUL byte rather than a linefeed.
530*ba8755cbSAndroid Build Coastguard Worker      </action>
531*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-341" type="add" date="2016-03-20">
532*ba8755cbSAndroid Build Coastguard Worker        New method SevenZFile.getEntries can be used to list the
533*ba8755cbSAndroid Build Coastguard Worker        contents of a 7z archive.
534*ba8755cbSAndroid Build Coastguard Worker      </action>
535*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-343" type="fix" date="2016-03-17"
536*ba8755cbSAndroid Build Coastguard Worker              due-to="Rene Preissel">
537*ba8755cbSAndroid Build Coastguard Worker        Native Memory Leak in Sevenz-DeflateDecoder.
538*ba8755cbSAndroid Build Coastguard Worker      </action>
539*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2016-03-05"
540*ba8755cbSAndroid Build Coastguard Worker              due-to="Matt Hovey">
541*ba8755cbSAndroid Build Coastguard Worker        When using Zip64Mode.Always also use ZIP64 extensions inside
542*ba8755cbSAndroid Build Coastguard Worker        the central directory.
543*ba8755cbSAndroid Build Coastguard Worker        GitHub Pull Request #10
544*ba8755cbSAndroid Build Coastguard Worker      </action>
545*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-340" type="fix" date="2016-02-24"
546*ba8755cbSAndroid Build Coastguard Worker              due-to="Dawid Weiss">
547*ba8755cbSAndroid Build Coastguard Worker        SevenZFile will now only try to drain an entry's content when
548*ba8755cbSAndroid Build Coastguard Worker        moving on to the next entry if data is read from the next
549*ba8755cbSAndroid Build Coastguard Worker        entry. This should improve performance for applications that
550*ba8755cbSAndroid Build Coastguard Worker        try to skip over entries.
551*ba8755cbSAndroid Build Coastguard Worker      </action>
552*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-336" type="fix" date="2016-02-14">
553*ba8755cbSAndroid Build Coastguard Worker        file names of tar archives using the xstar format are now
554*ba8755cbSAndroid Build Coastguard Worker        parsed properly.
555*ba8755cbSAndroid Build Coastguard Worker      </action>
556*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-335" type="fix" date="2016-02-05">
557*ba8755cbSAndroid Build Coastguard Worker        checksums of tars that pad the checksum field to the left are
558*ba8755cbSAndroid Build Coastguard Worker        now calculated properly.
559*ba8755cbSAndroid Build Coastguard Worker      </action>
560*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-334" type="fix" date="2016-02-05"
561*ba8755cbSAndroid Build Coastguard Worker              due-to="Jeremy Gustie">
562*ba8755cbSAndroid Build Coastguard Worker        ArArchiveInputStream failed to read past the first entry when
563*ba8755cbSAndroid Build Coastguard Worker        BSD long names have been used.
564*ba8755cbSAndroid Build Coastguard Worker      </action>
565*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-333" type="fix" date="2016-02-03" due-to="Dawid Weiss">
566*ba8755cbSAndroid Build Coastguard Worker        Added buffering for random access which speeds up 7Z support.
567*ba8755cbSAndroid Build Coastguard Worker      </action>
568*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-331" type="fix" date="2016-01-31">
569*ba8755cbSAndroid Build Coastguard Worker        The checksum validation of TararchiveEntry is now as strict as
570*ba8755cbSAndroid Build Coastguard Worker        the validation of GNU tar, which eliminates a few cases of
571*ba8755cbSAndroid Build Coastguard Worker        false positives of ArchiveStreamFactory.
572*ba8755cbSAndroid Build Coastguard Worker        This behavior is a breaking change since the check has become
573*ba8755cbSAndroid Build Coastguard Worker        more strict but any archive that fails the checksum test now
574*ba8755cbSAndroid Build Coastguard Worker        would also fail it when extracted with other tools and must be
575*ba8755cbSAndroid Build Coastguard Worker        considered an invalid archive.
576*ba8755cbSAndroid Build Coastguard Worker      </action>
577*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-323" type="add" date="2016-01-29">
578*ba8755cbSAndroid Build Coastguard Worker        ZipFile.getRawInputStream() is now part of the public API
579*ba8755cbSAndroid Build Coastguard Worker      </action>
580*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-332" type="fix" date="2016-01-29">
581*ba8755cbSAndroid Build Coastguard Worker        SnappyCompressorInputStream and
582*ba8755cbSAndroid Build Coastguard Worker        FramedSnappyCompressorInputStream returned 0 at the end of the
583*ba8755cbSAndroid Build Coastguard Worker        stream under certain circumstances.
584*ba8755cbSAndroid Build Coastguard Worker      </action>
585*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2016-01-27" due-to="Jason van Zyl">
586*ba8755cbSAndroid Build Coastguard Worker        Allow byte-for-byte replication of Zip entries.
587*ba8755cbSAndroid Build Coastguard Worker        GitHub Pull Request #6.
588*ba8755cbSAndroid Build Coastguard Worker      </action>
589*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-328" type="add" date="2016-01-15">
590*ba8755cbSAndroid Build Coastguard Worker        TarArchiveEntry's preserveLeadingSlashes is now a property and used
591*ba8755cbSAndroid Build Coastguard Worker        on later calls to setName, too.
592*ba8755cbSAndroid Build Coastguard Worker        This behavior is a breaking change.
593*ba8755cbSAndroid Build Coastguard Worker      </action>
594*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-326" type="fix" date="2015-10-24">
595*ba8755cbSAndroid Build Coastguard Worker        Adjusted unit test to updates in Java8 and later that change
596*ba8755cbSAndroid Build Coastguard Worker        the logic of ZipEntry#getTime.
597*ba8755cbSAndroid Build Coastguard Worker      </action>
598*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-324" type="fix" date="2015-10-06">
599*ba8755cbSAndroid Build Coastguard Worker        TarArchiveOutputStream will now recognize GNU long name and
600*ba8755cbSAndroid Build Coastguard Worker        link entries even if the special entry has a different name
601*ba8755cbSAndroid Build Coastguard Worker        than GNU tar uses itself.  This seems to be the case for
602*ba8755cbSAndroid Build Coastguard Worker        archives created by star.
603*ba8755cbSAndroid Build Coastguard Worker      </action>
604*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-321" type="fix" date="2015-08-22">
605*ba8755cbSAndroid Build Coastguard Worker        ArrayIndexOutOfBoundsException when InfoZIP type 7875 extra
606*ba8755cbSAndroid Build Coastguard Worker        fields are read from the central directory.
607*ba8755cbSAndroid Build Coastguard Worker      </action>
608*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2015-11-11" due-to="Sören Glimm">
609*ba8755cbSAndroid Build Coastguard Worker        Added read-only support for bzip2 compression used inside of
610*ba8755cbSAndroid Build Coastguard Worker        ZIP archives.
611*ba8755cbSAndroid Build Coastguard Worker        GitHub Pull Request #4.
612*ba8755cbSAndroid Build Coastguard Worker      </action>
613*ba8755cbSAndroid Build Coastguard Worker    </release>
614*ba8755cbSAndroid Build Coastguard Worker
615*ba8755cbSAndroid Build Coastguard Worker    <release version="1.10" date="2015-08-18"
616*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.10
617*ba8755cbSAndroid Build Coastguard Worker------------
618*ba8755cbSAndroid Build Coastguard Worker
619*ba8755cbSAndroid Build Coastguard Worker
620*ba8755cbSAndroid Build Coastguard Worker
621*ba8755cbSAndroid Build Coastguard WorkerRelease 1.10 moves the former
622*ba8755cbSAndroid Build Coastguard Workerorg.apache.commons.compress.compressors.z._internal_ package which
623*ba8755cbSAndroid Build Coastguard Workerbreaks backwards compatibility for code which used the old package.
624*ba8755cbSAndroid Build Coastguard WorkerThis also changes the superclass of ZCompressorInputStream.
625*ba8755cbSAndroid Build Coastguard Worker">
626*ba8755cbSAndroid Build Coastguard Worker
627*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-317" type="fix" date="2015-06-09"
628*ba8755cbSAndroid Build Coastguard Worker              due-to="Lucas Werkmeister">
629*ba8755cbSAndroid Build Coastguard Worker        ArrayIndexOutOfBoundsException when ZIP extra fields are read
630*ba8755cbSAndroid Build Coastguard Worker        and the entry contains an UnparseableExtraField.
631*ba8755cbSAndroid Build Coastguard Worker      </action>
632*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-316" type="add" date="2015-05-23"
633*ba8755cbSAndroid Build Coastguard Worker              due-to="Nick Burch">
634*ba8755cbSAndroid Build Coastguard Worker        CompressorStreamFactory can now auto-detect DEFLATE streams
635*ba8755cbSAndroid Build Coastguard Worker        with ZLIB header.
636*ba8755cbSAndroid Build Coastguard Worker      </action>
637*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-314" type="fix" date="2015-05-08">
638*ba8755cbSAndroid Build Coastguard Worker        TarArchiveInputStream can now read entries with group or
639*ba8755cbSAndroid Build Coastguard Worker        user ids &gt; 0x80000000.
640*ba8755cbSAndroid Build Coastguard Worker      </action>
641*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-315" type="fix" date="2015-05-06">
642*ba8755cbSAndroid Build Coastguard Worker        TarArchiveOutputStream can now write entries with group or
643*ba8755cbSAndroid Build Coastguard Worker        user ids &gt; 0x80000000.
644*ba8755cbSAndroid Build Coastguard Worker      </action>
645*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-313" type="add" date="2015-03-30">
646*ba8755cbSAndroid Build Coastguard Worker        CompressorStreamFactory can now auto-detect LZMA streams.
647*ba8755cbSAndroid Build Coastguard Worker      </action>
648*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-312" type="fix" date="2015-03-28">
649*ba8755cbSAndroid Build Coastguard Worker        TarArchiveEntry's constructor with a File and a String arg
650*ba8755cbSAndroid Build Coastguard Worker        didn't normalize the name.
651*ba8755cbSAndroid Build Coastguard Worker      </action>
652*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-308" type="fix" date="2015-02-20">
653*ba8755cbSAndroid Build Coastguard Worker        ZipEncodingHelper no longer reads system properties directly
654*ba8755cbSAndroid Build Coastguard Worker        to determine the default charset.
655*ba8755cbSAndroid Build Coastguard Worker      </action>
656*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-309" type="fix" date="2015-02-20">
657*ba8755cbSAndroid Build Coastguard Worker        BZip2CompressorInputStream#read would return -1 when asked to
658*ba8755cbSAndroid Build Coastguard Worker        read 0 bytes.
659*ba8755cbSAndroid Build Coastguard Worker      </action>
660*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-306" type="fix" date="2015-02-17">
661*ba8755cbSAndroid Build Coastguard Worker        ArchiveStreamFactory fails to pass on the encoding when creating some streams.
662*ba8755cbSAndroid Build Coastguard Worker        * ArjArchiveInputStream
663*ba8755cbSAndroid Build Coastguard Worker        * CpioArchiveInputStream
664*ba8755cbSAndroid Build Coastguard Worker        * DumpArchiveInputStream
665*ba8755cbSAndroid Build Coastguard Worker        * JarArchiveInputStream
666*ba8755cbSAndroid Build Coastguard Worker        * TarArchiveInputStream
667*ba8755cbSAndroid Build Coastguard Worker        * JarArchiveOutputStream
668*ba8755cbSAndroid Build Coastguard Worker      </action>
669*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-302" type="fix" date="2015-02-16">
670*ba8755cbSAndroid Build Coastguard Worker        Restore immutability/thread-safety to ArchiveStreamFactory.
671*ba8755cbSAndroid Build Coastguard Worker        The class is now immutable provided that the method setEntryEncoding is not used.
672*ba8755cbSAndroid Build Coastguard Worker        The class is thread-safe.
673*ba8755cbSAndroid Build Coastguard Worker      </action>
674*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-303" type="fix" date="2015-02-16">
675*ba8755cbSAndroid Build Coastguard Worker        Restore immutability/thread-safety to CompressorStreamFactory.
676*ba8755cbSAndroid Build Coastguard Worker        The class is now immutable provided that the method setDecompressConcatenated is not used.
677*ba8755cbSAndroid Build Coastguard Worker        The class is thread-safe.
678*ba8755cbSAndroid Build Coastguard Worker      </action>
679*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-298" type="fix" date="2015-01-20">
680*ba8755cbSAndroid Build Coastguard Worker        SevenZFile now throws the specific PasswordRequiredException
681*ba8755cbSAndroid Build Coastguard Worker        when it encounters an encrypted stream but no password has
682*ba8755cbSAndroid Build Coastguard Worker        been specified.
683*ba8755cbSAndroid Build Coastguard Worker      </action>
684*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-290" type="fix" date="2015-01-13"
685*ba8755cbSAndroid Build Coastguard Worker              due-to="Kristian Rosenvold">
686*ba8755cbSAndroid Build Coastguard Worker        Improved error message when tar encounters a groupId that is
687*ba8755cbSAndroid Build Coastguard Worker        too big to write without using the STAR or POSIX format.
688*ba8755cbSAndroid Build Coastguard Worker      </action>
689*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-296" type="add" date="2015-01-10"
690*ba8755cbSAndroid Build Coastguard Worker              due-to="Kristian Rosenvold">
691*ba8755cbSAndroid Build Coastguard Worker        Added support for parallel compression. This low-level API allows
692*ba8755cbSAndroid Build Coastguard Worker        a client to build a zip/jar file by using the class
693*ba8755cbSAndroid Build Coastguard Worker        org.apache.commons.compress.archivers.zip.ParallelScatterZipCreator.
694*ba8755cbSAndroid Build Coastguard Worker
695*ba8755cbSAndroid Build Coastguard Worker        Zip documentation updated with further notes about parallel features.
696*ba8755cbSAndroid Build Coastguard Worker
697*ba8755cbSAndroid Build Coastguard Worker        Please note that some aspects of jar creation need to be
698*ba8755cbSAndroid Build Coastguard Worker        handled by client code and is not part of commons-compress for this
699*ba8755cbSAndroid Build Coastguard Worker        release.
700*ba8755cbSAndroid Build Coastguard Worker      </action>
701*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2014-12-24"
702*ba8755cbSAndroid Build Coastguard Worker              due-to="Kristian Rosenvold">
703*ba8755cbSAndroid Build Coastguard Worker        Cut overall object instantiation in half by changing file
704*ba8755cbSAndroid Build Coastguard Worker        header generation algorithm, for a 10-15 percent performance
705*ba8755cbSAndroid Build Coastguard Worker        improvement.
706*ba8755cbSAndroid Build Coastguard Worker
707*ba8755cbSAndroid Build Coastguard Worker        Also extracted two private methods createLocalFileHeader
708*ba8755cbSAndroid Build Coastguard Worker        and createCentralFileHeader in ZipArchiveOutputStream.
709*ba8755cbSAndroid Build Coastguard Worker        These may have some interesting additional usages in the
710*ba8755cbSAndroid Build Coastguard Worker        near future.
711*ba8755cbSAndroid Build Coastguard Worker      </action>
712*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-297" type="fix" date="2014-12-22">
713*ba8755cbSAndroid Build Coastguard Worker        ZipFile logs a warning in its finalizer when its constructor
714*ba8755cbSAndroid Build Coastguard Worker        has thrown an exception reading the file - for example if the
715*ba8755cbSAndroid Build Coastguard Worker        file doesn't exist.
716*ba8755cbSAndroid Build Coastguard Worker      </action>
717*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-295" type="add" date="2014-12-18"
718*ba8755cbSAndroid Build Coastguard Worker              due-to="Kristian Rosenvold">
719*ba8755cbSAndroid Build Coastguard Worker        New methods in ZipArchiveOutputStream and ZipFile allows
720*ba8755cbSAndroid Build Coastguard Worker        entries to be copied from one archive to another without
721*ba8755cbSAndroid Build Coastguard Worker        having to re-compress them.
722*ba8755cbSAndroid Build Coastguard Worker      </action>
723*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2014-10-28"
724*ba8755cbSAndroid Build Coastguard Worker              due-to="Damjan Jovanovic">
725*ba8755cbSAndroid Build Coastguard Worker        Moved the package
726*ba8755cbSAndroid Build Coastguard Worker        org.apache.commons.compress.compressors.z._internal_ to
727*ba8755cbSAndroid Build Coastguard Worker        org.apache.commons.compress.compressors.lzw and made it part
728*ba8755cbSAndroid Build Coastguard Worker        of the API that is officially supported.  This will break
729*ba8755cbSAndroid Build Coastguard Worker        existing code that uses the old package.
730*ba8755cbSAndroid Build Coastguard Worker      </action>
731*ba8755cbSAndroid Build Coastguard Worker    </release>
732*ba8755cbSAndroid Build Coastguard Worker
733*ba8755cbSAndroid Build Coastguard Worker    <release version="1.9" date="2014-10-09"
734*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.9">
735*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2014-06-14" issue="COMPRESS-263"
736*ba8755cbSAndroid Build Coastguard Worker              due-to="Matthias Stevens">
737*ba8755cbSAndroid Build Coastguard Worker        Added support for DEFLATE streams without any gzip framing.
738*ba8755cbSAndroid Build Coastguard Worker      </action>
739*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2014-08-14" issue="COMPRESS-287">
740*ba8755cbSAndroid Build Coastguard Worker        When reading 7z files unknown file properties and properties
741*ba8755cbSAndroid Build Coastguard Worker        of type kDummy are now ignored.
742*ba8755cbSAndroid Build Coastguard Worker      </action>
743*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2014-08-21" issue="COMPRESS-286">
744*ba8755cbSAndroid Build Coastguard Worker        Expanding 7z archives using LZMA compression could cause an
745*ba8755cbSAndroid Build Coastguard Worker        EOFException.
746*ba8755cbSAndroid Build Coastguard Worker      </action>
747*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2014-08-31" issue="COMPRESS-285">
748*ba8755cbSAndroid Build Coastguard Worker        Checking for XZ for Java may be expensive.  The result will
749*ba8755cbSAndroid Build Coastguard Worker        now be cached outside of an OSGi environment.  You can use the
750*ba8755cbSAndroid Build Coastguard Worker        new XZUtils#setCacheXZAvailability to overrride this default
751*ba8755cbSAndroid Build Coastguard Worker        behavior.
752*ba8755cbSAndroid Build Coastguard Worker      </action>
753*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2014-09-19" issue="COMPRESS-289"
754*ba8755cbSAndroid Build Coastguard Worker              due-to="Bob Robertson">
755*ba8755cbSAndroid Build Coastguard Worker        Long-Name and -link or PAX-header entries in TAR archives
756*ba8755cbSAndroid Build Coastguard Worker        always had the current time as last modfication time, creating
757*ba8755cbSAndroid Build Coastguard Worker        archives that are different at the byte level each time an
758*ba8755cbSAndroid Build Coastguard Worker        archive was built.
759*ba8755cbSAndroid Build Coastguard Worker      </action>
760*ba8755cbSAndroid Build Coastguard Worker    </release>
761*ba8755cbSAndroid Build Coastguard Worker
762*ba8755cbSAndroid Build Coastguard Worker    <release version="1.8.1" date="2014-05-14"
763*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.8.1">
764*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2014-03-19">
765*ba8755cbSAndroid Build Coastguard Worker        The dependency on org.tukaani:xz is now marked as optional.
766*ba8755cbSAndroid Build Coastguard Worker      </action>
767*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2014-03-28" issue="COMPRESS-270">
768*ba8755cbSAndroid Build Coastguard Worker        The snappy, ar and tar inputstreams might fail to read from a
769*ba8755cbSAndroid Build Coastguard Worker        non-buffered stream in certain cases.
770*ba8755cbSAndroid Build Coastguard Worker      </action>
771*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2014-04-12" issue="COMPRESS-272">
772*ba8755cbSAndroid Build Coastguard Worker        CompressorStreamFactory can now auto-detect Unix compress
773*ba8755cbSAndroid Build Coastguard Worker        (".Z") streams.
774*ba8755cbSAndroid Build Coastguard Worker      </action>
775*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2014-04-12" issue="COMPRESS-277">
776*ba8755cbSAndroid Build Coastguard Worker        IOUtils#skip might skip fewer bytes than requested even though
777*ba8755cbSAndroid Build Coastguard Worker        more could be read from the stream.
778*ba8755cbSAndroid Build Coastguard Worker      </action>
779*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2014-04-13" issue="COMPRESS-276">
780*ba8755cbSAndroid Build Coastguard Worker        ArchiveStreams now validate there is a current entry before
781*ba8755cbSAndroid Build Coastguard Worker        reading or writing entry data.
782*ba8755cbSAndroid Build Coastguard Worker      </action>
783*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2014-04-13">
784*ba8755cbSAndroid Build Coastguard Worker        ArjArchiveInputStream#canReadEntryData tested the current
785*ba8755cbSAndroid Build Coastguard Worker        entry of the stream rather than its argument.
786*ba8755cbSAndroid Build Coastguard Worker      </action>
787*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2014-04-13" issue="COMPRESS-274">
788*ba8755cbSAndroid Build Coastguard Worker        ChangeSet#delete and deleteDir now properly deal with unnamed
789*ba8755cbSAndroid Build Coastguard Worker        entries.
790*ba8755cbSAndroid Build Coastguard Worker      </action>
791*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2014-04-18" issue="COMPRESS-273">
792*ba8755cbSAndroid Build Coastguard Worker        Added a few null checks to improve robustness.
793*ba8755cbSAndroid Build Coastguard Worker      </action>
794*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2014-04-19" issue="COMPRESS-278">
795*ba8755cbSAndroid Build Coastguard Worker        TarArchiveInputStream failed to read archives with empty
796*ba8755cbSAndroid Build Coastguard Worker        gid/uid fields.
797*ba8755cbSAndroid Build Coastguard Worker      </action>
798*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2014-04-27" issue="COMPRESS-279">
799*ba8755cbSAndroid Build Coastguard Worker        TarArchiveInputStream now again throws an exception when it
800*ba8755cbSAndroid Build Coastguard Worker        encounters a truncated archive while reading from the last
801*ba8755cbSAndroid Build Coastguard Worker        entry.
802*ba8755cbSAndroid Build Coastguard Worker      </action>
803*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2014-05-02" issue="COMPRESS-280"
804*ba8755cbSAndroid Build Coastguard Worker              due-to="BELUGA BEHR">
805*ba8755cbSAndroid Build Coastguard Worker        Adapted TarArchiveInputStream#skip to the modified
806*ba8755cbSAndroid Build Coastguard Worker        IOUtils#skip method.
807*ba8755cbSAndroid Build Coastguard Worker      </action>
808*ba8755cbSAndroid Build Coastguard Worker    </release>
809*ba8755cbSAndroid Build Coastguard Worker    <release version="1.8" date="2014-03-12"
810*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.8">
811*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-253" type="fix" date="2014-01-20">
812*ba8755cbSAndroid Build Coastguard Worker        BZip2CompressorInputStream read fewer bytes than possible from
813*ba8755cbSAndroid Build Coastguard Worker        a truncated stream.
814*ba8755cbSAndroid Build Coastguard Worker      </action>
815*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-253" type="fix" date="2014-01-22">
816*ba8755cbSAndroid Build Coastguard Worker        SevenZFile failed claiming the dictionary was too large when
817*ba8755cbSAndroid Build Coastguard Worker        archives used LZMA compression for headers and content and
818*ba8755cbSAndroid Build Coastguard Worker        certain non-default dictionary sizes.
819*ba8755cbSAndroid Build Coastguard Worker      </action>
820*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-259" type="fix" date="2014-01-24">
821*ba8755cbSAndroid Build Coastguard Worker        CompressorStreamFactory.createCompressorInputStream with
822*ba8755cbSAndroid Build Coastguard Worker        explicit compression did not honor decompressConcatenated
823*ba8755cbSAndroid Build Coastguard Worker      </action>
824*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-260" type="add" date="2014-02-20">
825*ba8755cbSAndroid Build Coastguard Worker        GzipCompressorInputStream now provides access to the same
826*ba8755cbSAndroid Build Coastguard Worker        metadata that can be provided via GzipParameters when writing
827*ba8755cbSAndroid Build Coastguard Worker        a gzip stream.
828*ba8755cbSAndroid Build Coastguard Worker      </action>
829*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-262" type="fix" date="2014-02-21">
830*ba8755cbSAndroid Build Coastguard Worker        TarArchiveInputStream will now read archives created by tar
831*ba8755cbSAndroid Build Coastguard Worker        implementations that encode big numbers by not adding a
832*ba8755cbSAndroid Build Coastguard Worker        trailing NUL.
833*ba8755cbSAndroid Build Coastguard Worker      </action>
834*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-264" type="fix" date="2014-02-21">
835*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream would return NUL bytes for the first 512
836*ba8755cbSAndroid Build Coastguard Worker        bytes of a STORED entry if it was the very first entry of the
837*ba8755cbSAndroid Build Coastguard Worker        archive.
838*ba8755cbSAndroid Build Coastguard Worker      </action>
839*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-265" type="fix" date="2014-02-22">
840*ba8755cbSAndroid Build Coastguard Worker        When writing PAX/POSIX headers for TAR entries with
841*ba8755cbSAndroid Build Coastguard Worker        backslashes or certain non-ASCII characters in their name
842*ba8755cbSAndroid Build Coastguard Worker        TarArchiveOutputStream could fail.
843*ba8755cbSAndroid Build Coastguard Worker      </action>
844*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-267" type="fix" date="2014-02-22">
845*ba8755cbSAndroid Build Coastguard Worker        ArchiveStreamFactory now throws a StreamingNotSupported - a
846*ba8755cbSAndroid Build Coastguard Worker        new subclass of ArchiveException - if it is asked to read from
847*ba8755cbSAndroid Build Coastguard Worker        or write to a stream and Commons Compress doesn't support
848*ba8755cbSAndroid Build Coastguard Worker        streaming for the format.  This currently only applies to the
849*ba8755cbSAndroid Build Coastguard Worker        7z format.
850*ba8755cbSAndroid Build Coastguard Worker      </action>
851*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-266" type="add" date="2014-02-25">
852*ba8755cbSAndroid Build Coastguard Worker        SevenZOutputFile now supports chaining multiple
853*ba8755cbSAndroid Build Coastguard Worker        compression/encryption/filter methods and passing options to
854*ba8755cbSAndroid Build Coastguard Worker        the methods.
855*ba8755cbSAndroid Build Coastguard Worker      </action>
856*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-261" type="add" date="2014-02-26">
857*ba8755cbSAndroid Build Coastguard Worker        The (compression) method(s) can now be specified per entry in
858*ba8755cbSAndroid Build Coastguard Worker        SevenZOutputFile.
859*ba8755cbSAndroid Build Coastguard Worker      </action>
860*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-258" type="add" date="2014-02-26">
861*ba8755cbSAndroid Build Coastguard Worker        SevenZArchiveEntry "knows" which method(s) have been used to
862*ba8755cbSAndroid Build Coastguard Worker        write it to the archive.
863*ba8755cbSAndroid Build Coastguard Worker      </action>
864*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2014-02-28">
865*ba8755cbSAndroid Build Coastguard Worker        The 7z package now supports the delta filter as method.
866*ba8755cbSAndroid Build Coastguard Worker      </action>
867*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-257" type="add" date="2014-03-03">
868*ba8755cbSAndroid Build Coastguard Worker        The 7z package now supports BCJ filters for several platforms.
869*ba8755cbSAndroid Build Coastguard Worker        You will need a version &gt;= 1.5 of XZ for Java to read archives
870*ba8755cbSAndroid Build Coastguard Worker        using BCJ, though.
871*ba8755cbSAndroid Build Coastguard Worker      </action>
872*ba8755cbSAndroid Build Coastguard Worker    </release>
873*ba8755cbSAndroid Build Coastguard Worker    <release version="1.7" date="2014-01-20"
874*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.7">
875*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-241" type="fix" date="2013-10-27">
876*ba8755cbSAndroid Build Coastguard Worker        SevenZOutputFile#closeArchiveEntry throws an exception when
877*ba8755cbSAndroid Build Coastguard Worker        using LZMA2 compression on Java8.
878*ba8755cbSAndroid Build Coastguard Worker      </action>
879*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-147" type="add" date="2013-11-07"
880*ba8755cbSAndroid Build Coastguard Worker              due-to="BELUGA BEHR">
881*ba8755cbSAndroid Build Coastguard Worker        Read-Only support for Snappy compression.
882*ba8755cbSAndroid Build Coastguard Worker      </action>
883*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-244" type="fix" date="2013-11-27"
884*ba8755cbSAndroid Build Coastguard Worker              due-to="Nico Kruber">
885*ba8755cbSAndroid Build Coastguard Worker        7z reading of big 64bit values could be wrong.
886*ba8755cbSAndroid Build Coastguard Worker      </action>
887*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-243" type="add" date="2013-11-30"
888*ba8755cbSAndroid Build Coastguard Worker              due-to="Damjan Jovanovic">
889*ba8755cbSAndroid Build Coastguard Worker        Read-Only support for .Z compressed files.
890*ba8755cbSAndroid Build Coastguard Worker      </action>
891*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2013-12-06" due-to="Damjan Jovanovic">
892*ba8755cbSAndroid Build Coastguard Worker        ZipFile and ZipArchiveInputStream now support reading entries compressed using the
893*ba8755cbSAndroid Build Coastguard Worker        SHRINKING method.
894*ba8755cbSAndroid Build Coastguard Worker      </action>
895*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-245" type="fix" date="2013-12-06">
896*ba8755cbSAndroid Build Coastguard Worker        TarArchiveInputStream could fail to read an archive completely.
897*ba8755cbSAndroid Build Coastguard Worker      </action>
898*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-242" type="fix" date="2013-12-08">
899*ba8755cbSAndroid Build Coastguard Worker        The time-setters in X5455_ExtendedTimestamp now set the
900*ba8755cbSAndroid Build Coastguard Worker        corresponding flags explicitly - i.e. they set the bit if the
901*ba8755cbSAndroid Build Coastguard Worker        valus is not-null and reset it otherwise.  This may cause
902*ba8755cbSAndroid Build Coastguard Worker        incompatibilities if you use setFlags to unset a bit and later
903*ba8755cbSAndroid Build Coastguard Worker        set the time to a non-null value - the flag will now be set.
904*ba8755cbSAndroid Build Coastguard Worker      </action>
905*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-250" type="add" date="2013-12-16" due-to="Emmanuel Bourg">
906*ba8755cbSAndroid Build Coastguard Worker        GzipCompressorOutputStream now supports setting the compression level and the header metadata
907*ba8755cbSAndroid Build Coastguard Worker        (filename, comment, modification time, operating system and extra flags)
908*ba8755cbSAndroid Build Coastguard Worker      </action>
909*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-115" type="add" date="2013-12-19" due-to="Emmanuel Bourg">
910*ba8755cbSAndroid Build Coastguard Worker        ZipFile and ZipArchiveInputStream now support reading entries compressed using the IMPLODE method.
911*ba8755cbSAndroid Build Coastguard Worker      </action>
912*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-252" type="fix" date="2013-12-20">
913*ba8755cbSAndroid Build Coastguard Worker        SevenZOutputFile would create invalid archives if more than
914*ba8755cbSAndroid Build Coastguard Worker        six empty files or directories were included.
915*ba8755cbSAndroid Build Coastguard Worker      </action>
916*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2013-12-20">
917*ba8755cbSAndroid Build Coastguard Worker        ZipFile and the 7z file classes now implement Closeable and
918*ba8755cbSAndroid Build Coastguard Worker        can be used in try-with-resources constructs.
919*ba8755cbSAndroid Build Coastguard Worker      </action>
920*ba8755cbSAndroid Build Coastguard Worker    </release>
921*ba8755cbSAndroid Build Coastguard Worker    <release version="1.6" date="2013-10-26"
922*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.6">
923*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2013-04-25" issue="COMPRESS-223"
924*ba8755cbSAndroid Build Coastguard Worker              due-to="Jeremy Gustie">
925*ba8755cbSAndroid Build Coastguard Worker        TarBuffer.tryToConsumeSecondEOFRecord could throw a
926*ba8755cbSAndroid Build Coastguard Worker        NullPointerException
927*ba8755cbSAndroid Build Coastguard Worker      </action>
928*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2013-05-07" issue="COMPRESS-54"
929*ba8755cbSAndroid Build Coastguard Worker              due-to="Damjan Jovanovic">
930*ba8755cbSAndroid Build Coastguard Worker        Added support for 7z archives.  Most compression algorithms
931*ba8755cbSAndroid Build Coastguard Worker        can be read and written, LZMA and encryption are only
932*ba8755cbSAndroid Build Coastguard Worker        supported when reading.
933*ba8755cbSAndroid Build Coastguard Worker      </action>
934*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2013-05-19" issue="COMPRESS-226"
935*ba8755cbSAndroid Build Coastguard Worker              due-to="Damjan Jovanovic">
936*ba8755cbSAndroid Build Coastguard Worker        Added read-only support for ARJ archives that don't use
937*ba8755cbSAndroid Build Coastguard Worker        compression.
938*ba8755cbSAndroid Build Coastguard Worker      </action>
939*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2013-05-26" issue="COMPRESS-228">
940*ba8755cbSAndroid Build Coastguard Worker        Parsing of zip64 extra fields has become more lenient in order
941*ba8755cbSAndroid Build Coastguard Worker        to be able to read archives created by DotNetZip and maybe
942*ba8755cbSAndroid Build Coastguard Worker        other archivers as well.
943*ba8755cbSAndroid Build Coastguard Worker      </action>
944*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2013-06-03" issue="COMPRESS-229"
945*ba8755cbSAndroid Build Coastguard Worker              due-to="Christoph Gysin">
946*ba8755cbSAndroid Build Coastguard Worker        TAR will now properly read the names of symbolic links with
947*ba8755cbSAndroid Build Coastguard Worker        long names that use the GNU variant to specify the long file
948*ba8755cbSAndroid Build Coastguard Worker        name.
949*ba8755cbSAndroid Build Coastguard Worker      </action>
950*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2013-06-04" issue="COMPRESS-227">
951*ba8755cbSAndroid Build Coastguard Worker        ZipFile#getInputStream could return null if the archive
952*ba8755cbSAndroid Build Coastguard Worker        contained duplicate entries.
953*ba8755cbSAndroid Build Coastguard Worker        The class now also provides two new methods to obtain all
954*ba8755cbSAndroid Build Coastguard Worker        entries of a given name rather than just the first one.
955*ba8755cbSAndroid Build Coastguard Worker      </action>
956*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2013-07-08" issue="COMPRESS-232"
957*ba8755cbSAndroid Build Coastguard Worker              due-to="BELUGA BEHR">
958*ba8755cbSAndroid Build Coastguard Worker        Readabilty patch to TarArchiveInputStream.
959*ba8755cbSAndroid Build Coastguard Worker      </action>
960*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2013-08-08" issue="COMPRESS-234"
961*ba8755cbSAndroid Build Coastguard Worker              due-to="BELUGA BEHR">
962*ba8755cbSAndroid Build Coastguard Worker        Performance improvements to TarArchiveInputStream, in
963*ba8755cbSAndroid Build Coastguard Worker        particular to the skip method.
964*ba8755cbSAndroid Build Coastguard Worker      </action>
965*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2013-08-08" issue="COMPRESS-236"
966*ba8755cbSAndroid Build Coastguard Worker              due-to="Andrew Duffy">
967*ba8755cbSAndroid Build Coastguard Worker        CpioArchiveInputStream failed to read archives created by
968*ba8755cbSAndroid Build Coastguard Worker        Redline RPM.
969*ba8755cbSAndroid Build Coastguard Worker      </action>
970*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2013-08-09" issue="COMPRESS-237"
971*ba8755cbSAndroid Build Coastguard Worker              due-to="Emmanuel Bourg">
972*ba8755cbSAndroid Build Coastguard Worker        TarArchiveOutputStream now properly handles link names that
973*ba8755cbSAndroid Build Coastguard Worker        are too long to fit into a traditional TAR header.
974*ba8755cbSAndroid Build Coastguard Worker      </action>
975*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2013-08-10">
976*ba8755cbSAndroid Build Coastguard Worker        DumpArchiveInputStream now supports an encoding parameter that
977*ba8755cbSAndroid Build Coastguard Worker        can be used to specify the encoding of file names.
978*ba8755cbSAndroid Build Coastguard Worker      </action>
979*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2013-08-10">
980*ba8755cbSAndroid Build Coastguard Worker        The CPIO streams now support an encoding parameter that can be
981*ba8755cbSAndroid Build Coastguard Worker        used to specify the encoding of file names.
982*ba8755cbSAndroid Build Coastguard Worker      </action>
983*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2013-09-22" issue="COMPRESS-111">
984*ba8755cbSAndroid Build Coastguard Worker        Read-only support for LZMA standalone compression has been added.
985*ba8755cbSAndroid Build Coastguard Worker      </action>
986*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2013-10-04" issue="COMPRESS-239">
987*ba8755cbSAndroid Build Coastguard Worker        The auto-detecting create*InputStream methods of Archive and
988*ba8755cbSAndroid Build Coastguard Worker        CompressorStreamFactory could fail to detect the format of
989*ba8755cbSAndroid Build Coastguard Worker        blocking input streams.
990*ba8755cbSAndroid Build Coastguard Worker      </action>
991*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2013-10-21" issue="COMPRESS-240"
992*ba8755cbSAndroid Build Coastguard Worker              due-to="Gary Gregory">
993*ba8755cbSAndroid Build Coastguard Worker        ZipEncodingHelper.isUTF8(String) does not check all UTF-8 aliases.
994*ba8755cbSAndroid Build Coastguard Worker      </action>
995*ba8755cbSAndroid Build Coastguard Worker    </release>
996*ba8755cbSAndroid Build Coastguard Worker    <release version="1.5" date="2013-03-14"
997*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.5">
998*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2012-02-19" issue="COMPRESS-218"
999*ba8755cbSAndroid Build Coastguard Worker              due-to="Gili">
1000*ba8755cbSAndroid Build Coastguard Worker        Typo in CompressorStreamFactory Javadoc
1001*ba8755cbSAndroid Build Coastguard Worker      </action>
1002*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2012-07-08" issue="COMPRESS-188"
1003*ba8755cbSAndroid Build Coastguard Worker              due-to="Harald Kuhn">
1004*ba8755cbSAndroid Build Coastguard Worker        Improved exception message if a zip archive cannot be read
1005*ba8755cbSAndroid Build Coastguard Worker        because of an unsupported compression method.
1006*ba8755cbSAndroid Build Coastguard Worker      </action>
1007*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2012-07-07" issue="COMPRESS-192"
1008*ba8755cbSAndroid Build Coastguard Worker              due-to="Jukka Zitting">
1009*ba8755cbSAndroid Build Coastguard Worker        ArchiveStreamFactory has a setting for file name encoding that
1010*ba8755cbSAndroid Build Coastguard Worker        sets up encoding for ZIP and TAR streams.
1011*ba8755cbSAndroid Build Coastguard Worker      </action>
1012*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2012-07-07" issue="COMPRESS-191"
1013*ba8755cbSAndroid Build Coastguard Worker              due-to="Jukka Zitting">
1014*ba8755cbSAndroid Build Coastguard Worker        ArchiveStreamFactory's tar stream detection created false
1015*ba8755cbSAndroid Build Coastguard Worker        positives for AIFF files.
1016*ba8755cbSAndroid Build Coastguard Worker      </action>
1017*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2012-07-07" issue="COMPRESS-191"
1018*ba8755cbSAndroid Build Coastguard Worker              due-to="Jukka Zitting">
1019*ba8755cbSAndroid Build Coastguard Worker        TarArchiveEntry now has a method to verify its checksum.
1020*ba8755cbSAndroid Build Coastguard Worker      </action>
1021*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2012-12-27" issue="COMPRESS-199"
1022*ba8755cbSAndroid Build Coastguard Worker              due-to="Jukka Zitting">
1023*ba8755cbSAndroid Build Coastguard Worker        XZ for Java didn't provide an OSGi bundle.  Compress'
1024*ba8755cbSAndroid Build Coastguard Worker        dependency on it has now been marked optional so Compress
1025*ba8755cbSAndroid Build Coastguard Worker        itself can still be used in an OSGi context.
1026*ba8755cbSAndroid Build Coastguard Worker      </action>
1027*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2012-12-27" issue="COMPRESS-200"
1028*ba8755cbSAndroid Build Coastguard Worker              due-to="Christian Schlichtherle">
1029*ba8755cbSAndroid Build Coastguard Worker        When specifying the encoding explicitly TarArchiveOutputStream
1030*ba8755cbSAndroid Build Coastguard Worker        would write unreadable names in GNU mode or even cause errors
1031*ba8755cbSAndroid Build Coastguard Worker        in POSIX mode for file names longer than 66 characters.
1032*ba8755cbSAndroid Build Coastguard Worker      </action>
1033*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2012-12-27" issue="COMPRESS-203">
1034*ba8755cbSAndroid Build Coastguard Worker        Writing TAR PAX headers failed if the generated entry name
1035*ba8755cbSAndroid Build Coastguard Worker        ended with a "/".
1036*ba8755cbSAndroid Build Coastguard Worker      </action>
1037*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2012-12-28" issue="COMPRESS-189"
1038*ba8755cbSAndroid Build Coastguard Worker              due-to="Daniel Lowe">
1039*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream sometimes failed to provide input to the
1040*ba8755cbSAndroid Build Coastguard Worker        Inflater when it needed it, leading to reads returning 0.
1041*ba8755cbSAndroid Build Coastguard Worker      </action>
1042*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2013-01-01">
1043*ba8755cbSAndroid Build Coastguard Worker        Split/spanned ZIP archives are now properly detected by
1044*ba8755cbSAndroid Build Coastguard Worker        ArchiveStreamFactory but will cause an
1045*ba8755cbSAndroid Build Coastguard Worker        UnsupportedZipFeatureException when read.
1046*ba8755cbSAndroid Build Coastguard Worker      </action>
1047*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2013-01-01" issue="COMPRESS-208">
1048*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream now reads archives that start with a
1049*ba8755cbSAndroid Build Coastguard Worker        "PK00" signature.  Archives with this signatures are created
1050*ba8755cbSAndroid Build Coastguard Worker        when the archiver was willing to split the archive but in the
1051*ba8755cbSAndroid Build Coastguard Worker        end only needed a single segment - so didn't split anything.
1052*ba8755cbSAndroid Build Coastguard Worker      </action>
1053*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2013-01-01" issue="COMPRESS-201">
1054*ba8755cbSAndroid Build Coastguard Worker        TarArchiveEntry has a new constructor that allows setting
1055*ba8755cbSAndroid Build Coastguard Worker        linkFlag and preserveLeadingSlashes at the same time.
1056*ba8755cbSAndroid Build Coastguard Worker      </action>
1057*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2013-01-01" issue="COMPRESS-159">
1058*ba8755cbSAndroid Build Coastguard Worker        ChangeSetPerformer has a new perform overload that uses a
1059*ba8755cbSAndroid Build Coastguard Worker        ZipFile instance as input.
1060*ba8755cbSAndroid Build Coastguard Worker      </action>
1061*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2013-01-04" issue="COMPRESS-212">
1062*ba8755cbSAndroid Build Coastguard Worker        TarArchiveInputStream ignored the encoding for GNU long name
1063*ba8755cbSAndroid Build Coastguard Worker        entries.
1064*ba8755cbSAndroid Build Coastguard Worker      </action>
1065*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2013-01-05" issue="COMPRESS-172"
1066*ba8755cbSAndroid Build Coastguard Worker              due-to="Thomas Mair">
1067*ba8755cbSAndroid Build Coastguard Worker        Garbage collection pressure has been reduced by reusing
1068*ba8755cbSAndroid Build Coastguard Worker        temporary byte arrays in classes.
1069*ba8755cbSAndroid Build Coastguard Worker      </action>
1070*ba8755cbSAndroid Build Coastguard Worker        <action type="update" date="2013-01-08" issue="COMPRESS-210"
1071*ba8755cbSAndroid Build Coastguard Worker                due-to="Julius Davies">
1072*ba8755cbSAndroid Build Coastguard Worker          Can now handle zip extra field 0x5455 - Extended Timestamp.
1073*ba8755cbSAndroid Build Coastguard Worker        </action>
1074*ba8755cbSAndroid Build Coastguard Worker        <action type="update" date="2013-01-07" issue="COMPRESS-211"
1075*ba8755cbSAndroid Build Coastguard Worker                due-to="Julius Davies">
1076*ba8755cbSAndroid Build Coastguard Worker          handle zip extra field 0x7875 - Info Zip New Unix Extra Field.
1077*ba8755cbSAndroid Build Coastguard Worker        </action>
1078*ba8755cbSAndroid Build Coastguard Worker        <action type="update" date="2013-01-07" issue="COMPRESS-213"
1079*ba8755cbSAndroid Build Coastguard Worker                due-to="Julius Davies">
1080*ba8755cbSAndroid Build Coastguard Worker            ZipShort, ZipLong, ZipEightByteInteger should implement Serializable
1081*ba8755cbSAndroid Build Coastguard Worker        </action>
1082*ba8755cbSAndroid Build Coastguard Worker        <action type="update" date="2013-01-14" issue="COMPRESS-214"
1083*ba8755cbSAndroid Build Coastguard Worker                due-to="Julius Davies">
1084*ba8755cbSAndroid Build Coastguard Worker            better support for unix symlinks in ZipFile entries
1085*ba8755cbSAndroid Build Coastguard Worker        </action>
1086*ba8755cbSAndroid Build Coastguard Worker        <action type="update" date="2013-01-19" issue="COMPRESS-215"
1087*ba8755cbSAndroid Build Coastguard Worker                due-to="Robin Power">
1088*ba8755cbSAndroid Build Coastguard Worker          ZipFile's initialization has been improved for non-Zip64
1089*ba8755cbSAndroid Build Coastguard Worker          archives.
1090*ba8755cbSAndroid Build Coastguard Worker        </action>
1091*ba8755cbSAndroid Build Coastguard Worker        <action type="fix" date="2013-01-20" issue="COMPRESS-206"
1092*ba8755cbSAndroid Build Coastguard Worker                due-to="Peter De Maeyer">
1093*ba8755cbSAndroid Build Coastguard Worker          TarArchiveInputStream could leave the second EOF record
1094*ba8755cbSAndroid Build Coastguard Worker          inside the stream it had just finished reading.
1095*ba8755cbSAndroid Build Coastguard Worker        </action>
1096*ba8755cbSAndroid Build Coastguard Worker        <action type="fix" date="2013-01-20">
1097*ba8755cbSAndroid Build Coastguard Worker          DumpArchiveInputStream no longer implicitly closes the
1098*ba8755cbSAndroid Build Coastguard Worker          original input stream when it reaches the end of the
1099*ba8755cbSAndroid Build Coastguard Worker          archive.
1100*ba8755cbSAndroid Build Coastguard Worker        </action>
1101*ba8755cbSAndroid Build Coastguard Worker        <action type="fix" date="2013-01-22">
1102*ba8755cbSAndroid Build Coastguard Worker          ZipArchiveInputStream now consumes the remainder of the
1103*ba8755cbSAndroid Build Coastguard Worker          archive when getNextZipEntry returns null.
1104*ba8755cbSAndroid Build Coastguard Worker        </action>
1105*ba8755cbSAndroid Build Coastguard Worker        <action type="fix" date="2013-01-27" issue="COMPRESS-205"
1106*ba8755cbSAndroid Build Coastguard Worker                due-to="Daniel Lowe">
1107*ba8755cbSAndroid Build Coastguard Worker          Unit tests could fail if the source tree was checked out to
1108*ba8755cbSAndroid Build Coastguard Worker          a directory tree containign spaces.
1109*ba8755cbSAndroid Build Coastguard Worker        </action>
1110*ba8755cbSAndroid Build Coastguard Worker        <action type="update" date="2013-01-31">
1111*ba8755cbSAndroid Build Coastguard Worker          Updated XZ for Java dependency to 1.2 as this version
1112*ba8755cbSAndroid Build Coastguard Worker          provides proper OSGi manifest attributes.
1113*ba8755cbSAndroid Build Coastguard Worker        </action>
1114*ba8755cbSAndroid Build Coastguard Worker        <action type="fix" date="2013-02-20" issue="COMPRESS-219">
1115*ba8755cbSAndroid Build Coastguard Worker          Fixed a potential ArrayIndexOutOfBoundsException when
1116*ba8755cbSAndroid Build Coastguard Worker          reading STORED entries from ZipArchiveInputStream.
1117*ba8755cbSAndroid Build Coastguard Worker        </action>
1118*ba8755cbSAndroid Build Coastguard Worker        <action type="fix" date="2013-03-07" issue="COMPRESS-221">
1119*ba8755cbSAndroid Build Coastguard Worker          CompressorStreamFactory can now be used without XZ for Java
1120*ba8755cbSAndroid Build Coastguard Worker          being available.
1121*ba8755cbSAndroid Build Coastguard Worker        </action>
1122*ba8755cbSAndroid Build Coastguard Worker        <action type="add" date="2013-03-07" issue="COMPRESS-220">
1123*ba8755cbSAndroid Build Coastguard Worker          CompressorStreamFactory has an option to create
1124*ba8755cbSAndroid Build Coastguard Worker          decompressing streams that decompress the full input for
1125*ba8755cbSAndroid Build Coastguard Worker          formats that support multiple concatenated streams.
1126*ba8755cbSAndroid Build Coastguard Worker        </action>
1127*ba8755cbSAndroid Build Coastguard Worker    </release>
1128*ba8755cbSAndroid Build Coastguard Worker    <release version="1.4.1" date="2012-05-23"
1129*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.4.1">
1130*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2012-05-20">
1131*ba8755cbSAndroid Build Coastguard Worker        Ported libbzip2's fallback sort algorithm to
1132*ba8755cbSAndroid Build Coastguard Worker        BZip2CompressorOutputStream to speed up compression in certain
1133*ba8755cbSAndroid Build Coastguard Worker        edge cases.
1134*ba8755cbSAndroid Build Coastguard Worker        Using specially crafted inputs this can be used as a denial
1135*ba8755cbSAndroid Build Coastguard Worker        of service attack.  See the security reports page for details.
1136*ba8755cbSAndroid Build Coastguard Worker      </action>
1137*ba8755cbSAndroid Build Coastguard Worker    </release>
1138*ba8755cbSAndroid Build Coastguard Worker    <release version="1.4" date="2012-04-11"
1139*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.4">
1140*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-183" type="fix" date="2012-03-24">
1141*ba8755cbSAndroid Build Coastguard Worker        The tar package now allows the encoding of file names to be
1142*ba8755cbSAndroid Build Coastguard Worker        specified and can optionally use PAX extension headers to
1143*ba8755cbSAndroid Build Coastguard Worker        write non-ASCII file names.
1144*ba8755cbSAndroid Build Coastguard Worker        The stream classes now write (or expect to read) archives that
1145*ba8755cbSAndroid Build Coastguard Worker        use the platform's native encoding for file names.  Apache
1146*ba8755cbSAndroid Build Coastguard Worker        Commons Compress 1.3 used to strip everything but the lower
1147*ba8755cbSAndroid Build Coastguard Worker        eight bits of each character which effectively only worked for
1148*ba8755cbSAndroid Build Coastguard Worker        ASCII and ISO-8859-1 file names.
1149*ba8755cbSAndroid Build Coastguard Worker        This new default behavior is a breaking change.
1150*ba8755cbSAndroid Build Coastguard Worker      </action>
1151*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-184" type="fix" date="2012-03-23">
1152*ba8755cbSAndroid Build Coastguard Worker        TarArchiveInputStream failed to parse PAX headers that
1153*ba8755cbSAndroid Build Coastguard Worker        contained non-ASCII characters.
1154*ba8755cbSAndroid Build Coastguard Worker      </action>
1155*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-182" type="update" date="2012-03-02">
1156*ba8755cbSAndroid Build Coastguard Worker        The tar package can now write archives that use star/GNU/BSD
1157*ba8755cbSAndroid Build Coastguard Worker        extensions or use the POSIX/PAX variant to store numeric
1158*ba8755cbSAndroid Build Coastguard Worker        values that don't fit into the traditional header fields.
1159*ba8755cbSAndroid Build Coastguard Worker      </action>
1160*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-181" type="update" date="2012-03-02">
1161*ba8755cbSAndroid Build Coastguard Worker        Added a workaround for a Bug some tar implementations that add
1162*ba8755cbSAndroid Build Coastguard Worker        a NUL byte as first byte in numeric header fields.
1163*ba8755cbSAndroid Build Coastguard Worker      </action>
1164*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-176" type="update" date="2012-02-28">
1165*ba8755cbSAndroid Build Coastguard Worker        Added a workaround for a Bug in WinZIP which uses backslashes
1166*ba8755cbSAndroid Build Coastguard Worker        as path separators in Unicode Extra Fields.
1167*ba8755cbSAndroid Build Coastguard Worker      </action>
1168*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-131" type="update" date="2012-02-23">
1169*ba8755cbSAndroid Build Coastguard Worker        ArrayOutOfBounds while decompressing bz2. Added test case - code already seems to have been fixed.
1170*ba8755cbSAndroid Build Coastguard Worker      </action>
1171*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-178" type="fix" date="2012-02-23">
1172*ba8755cbSAndroid Build Coastguard Worker        TarArchiveInputStream throws IllegalArgumentException instead of IOException
1173*ba8755cbSAndroid Build Coastguard Worker      </action>
1174*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-179" type="fix" date="2012-02-23">
1175*ba8755cbSAndroid Build Coastguard Worker        TarUtils.formatLongOctalOrBinaryBytes() assumes the field will be 12 bytes long
1176*ba8755cbSAndroid Build Coastguard Worker      </action>
1177*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-175" type="fix" date="2012-02-22">
1178*ba8755cbSAndroid Build Coastguard Worker        GNU Tar sometimes uses binary encoding for UID and GID
1179*ba8755cbSAndroid Build Coastguard Worker      </action>
1180*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-171" type="fix" date="2012-01-29">
1181*ba8755cbSAndroid Build Coastguard Worker        ArchiveStreamFactory.createArchiveInputStream would claim
1182*ba8755cbSAndroid Build Coastguard Worker        short text files were TAR archives.
1183*ba8755cbSAndroid Build Coastguard Worker      </action>
1184*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-156" type="add" date="2011-11-02">
1185*ba8755cbSAndroid Build Coastguard Worker        Support for the XZ format has been added.
1186*ba8755cbSAndroid Build Coastguard Worker      </action>
1187*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-146" type="update" date="2011-11-07">
1188*ba8755cbSAndroid Build Coastguard Worker        BZip2CompressorInputStream now optionally supports reading of
1189*ba8755cbSAndroid Build Coastguard Worker        concatenated .bz2 files.
1190*ba8755cbSAndroid Build Coastguard Worker      </action>
1191*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-154" type="update" date="2011-11-09">
1192*ba8755cbSAndroid Build Coastguard Worker        GZipCompressorInputStream now optionally supports reading of
1193*ba8755cbSAndroid Build Coastguard Worker        concatenated .gz files.
1194*ba8755cbSAndroid Build Coastguard Worker      </action>
1195*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-164" type="fix" date="2011-12-05">
1196*ba8755cbSAndroid Build Coastguard Worker        ZipFile didn't work properly for archives using unicode extra
1197*ba8755cbSAndroid Build Coastguard Worker        fields rather than UTF-8 filenames and the EFS-Flag.
1198*ba8755cbSAndroid Build Coastguard Worker      </action>
1199*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-16" type="update" date="2011-12-07">
1200*ba8755cbSAndroid Build Coastguard Worker        The tar package can now read archives that use star/GNU/BSD
1201*ba8755cbSAndroid Build Coastguard Worker        extensions for files that are longer than 8 GByte as well as
1202*ba8755cbSAndroid Build Coastguard Worker        archives that use the POSIX/PAX variant.
1203*ba8755cbSAndroid Build Coastguard Worker      </action>
1204*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-165" type="update" date="2011-12-08">
1205*ba8755cbSAndroid Build Coastguard Worker        The tar package can now write archives that use star/GNU/BSD
1206*ba8755cbSAndroid Build Coastguard Worker        extensions for files that are longer than 8 GByte as well as
1207*ba8755cbSAndroid Build Coastguard Worker        archives that use the POSIX/PAX variant.
1208*ba8755cbSAndroid Build Coastguard Worker      </action>
1209*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-166" type="update" date="2011-12-08">
1210*ba8755cbSAndroid Build Coastguard Worker        The tar package can now use the POSIX/PAX variant for writing
1211*ba8755cbSAndroid Build Coastguard Worker        entries with names longer than 100 characters.
1212*ba8755cbSAndroid Build Coastguard Worker      </action>
1213*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-169" type="fix" date="2011-12-22">
1214*ba8755cbSAndroid Build Coastguard Worker        For corrupt archives ZipFile would throw a RuntimeException in
1215*ba8755cbSAndroid Build Coastguard Worker        some cases and an IOException in others.  It will now
1216*ba8755cbSAndroid Build Coastguard Worker        consistently throw an IOException.
1217*ba8755cbSAndroid Build Coastguard Worker      </action>
1218*ba8755cbSAndroid Build Coastguard Worker    </release>
1219*ba8755cbSAndroid Build Coastguard Worker    <release version="1.3" date="2011-11-01"
1220*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.3 - API compatible to 1.2 but requires Java5 at runtime">
1221*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-142" type="add" date="2011-09-14">
1222*ba8755cbSAndroid Build Coastguard Worker        Support for the Pack200 format has been added.
1223*ba8755cbSAndroid Build Coastguard Worker      </action>
1224*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-132" type="add" date="2011-08-17">
1225*ba8755cbSAndroid Build Coastguard Worker        Read-only support for the format used by the Unix dump(8) tool
1226*ba8755cbSAndroid Build Coastguard Worker        has been added.
1227*ba8755cbSAndroid Build Coastguard Worker      </action>
1228*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-36" type="update" date="2011-08-15">
1229*ba8755cbSAndroid Build Coastguard Worker        The ZIP package now supports Zip64 extensions.
1230*ba8755cbSAndroid Build Coastguard Worker      </action>
1231*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-144" type="update" date="2011-08-08">
1232*ba8755cbSAndroid Build Coastguard Worker        The AR package now supports the BSD dialect of storing file
1233*ba8755cbSAndroid Build Coastguard Worker        names longer than 16 chars (both reading and writing).
1234*ba8755cbSAndroid Build Coastguard Worker      </action>
1235*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2011-08-08">
1236*ba8755cbSAndroid Build Coastguard Worker        BZip2CompressorInputStream's getBytesRead method always
1237*ba8755cbSAndroid Build Coastguard Worker        returned 0.
1238*ba8755cbSAndroid Build Coastguard Worker      </action>
1239*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-152" type="fix" date="2011-08-03">
1240*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream and ZipArchiveOutputStream could leak
1241*ba8755cbSAndroid Build Coastguard Worker        resources on some JDKs.
1242*ba8755cbSAndroid Build Coastguard Worker      </action>
1243*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-160" type="fix" date="2011-10-23">
1244*ba8755cbSAndroid Build Coastguard Worker        TarArchiveOutputStream's getBytesWritten method didn't count
1245*ba8755cbSAndroid Build Coastguard Worker        correctly.
1246*ba8755cbSAndroid Build Coastguard Worker      </action>
1247*ba8755cbSAndroid Build Coastguard Worker    </release>
1248*ba8755cbSAndroid Build Coastguard Worker    <release version="1.2" date="2011-07-31"
1249*ba8755cbSAndroid Build Coastguard Worker             description="Release 1.2 - a bugfix release, the last release expected to be compatible with Java 1.4">
1250*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-129" type="fix" date="2011-07-26">
1251*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream could fail with a "Truncated ZIP" error
1252*ba8755cbSAndroid Build Coastguard Worker        message for entries between 2 GByte and 4 GByte in size.
1253*ba8755cbSAndroid Build Coastguard Worker      </action>
1254*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-145" type="fix" date="2011-07-23"
1255*ba8755cbSAndroid Build Coastguard Worker              due-tue="Patrick Dreyer">
1256*ba8755cbSAndroid Build Coastguard Worker        TarArchiveInputStream now detects sparse entries using the
1257*ba8755cbSAndroid Build Coastguard Worker        oldgnu format and properly reports it cannot extract their
1258*ba8755cbSAndroid Build Coastguard Worker        contents.
1259*ba8755cbSAndroid Build Coastguard Worker      </action>
1260*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-123" type="add" date="2011-07-23">
1261*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveEntry has a new method getRawName that provides the
1262*ba8755cbSAndroid Build Coastguard Worker        original bytes that made up the name.  This may allow user
1263*ba8755cbSAndroid Build Coastguard Worker        code to detect the encoding.
1264*ba8755cbSAndroid Build Coastguard Worker      </action>
1265*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-130" type="fix" date="2011-07-20">
1266*ba8755cbSAndroid Build Coastguard Worker        The Javadoc for ZipArchiveInputStream#skip now matches the
1267*ba8755cbSAndroid Build Coastguard Worker        implementation, the code has been made more defensive.
1268*ba8755cbSAndroid Build Coastguard Worker      </action>
1269*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-140" type="fix" date="2011-07-20"
1270*ba8755cbSAndroid Build Coastguard Worker              due-to="Trejkaz">
1271*ba8755cbSAndroid Build Coastguard Worker        ArArchiveInputStream fails if entries contain only blanks for
1272*ba8755cbSAndroid Build Coastguard Worker        userId or groupId.
1273*ba8755cbSAndroid Build Coastguard Worker      </action>
1274*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-139" type="fix" date="2011-07-13">
1275*ba8755cbSAndroid Build Coastguard Worker        ZipFile may leak resources on some JDKs.
1276*ba8755cbSAndroid Build Coastguard Worker      </action>
1277*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2011-04-18">
1278*ba8755cbSAndroid Build Coastguard Worker        ZipFile now implements finalize which closes the underlying
1279*ba8755cbSAndroid Build Coastguard Worker        file.
1280*ba8755cbSAndroid Build Coastguard Worker      </action>
1281*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-117" type="update" date="2011-03-23">
1282*ba8755cbSAndroid Build Coastguard Worker        Certain tar files not recognised by ArchiveStreamFactory.
1283*ba8755cbSAndroid Build Coastguard Worker      </action>
1284*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-125" type="fix" date="2011-03-23">
1285*ba8755cbSAndroid Build Coastguard Worker        BZip2CompressorInputStream throws IOException if underlying stream returns available() == 0.
1286*ba8755cbSAndroid Build Coastguard Worker        Removed the check.
1287*ba8755cbSAndroid Build Coastguard Worker      </action>
1288*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-127" type="fix" date="2011-03-23">
1289*ba8755cbSAndroid Build Coastguard Worker        Calling close() on inputStream returned by CompressorStreamFactory.createCompressorInputStream()
1290*ba8755cbSAndroid Build Coastguard Worker        does not close the underlying input stream.
1291*ba8755cbSAndroid Build Coastguard Worker      </action>
1292*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-122" type="add" date="2010-10-29">
1293*ba8755cbSAndroid Build Coastguard Worker        TarArchiveEntry provides access to the flags that determine
1294*ba8755cbSAndroid Build Coastguard Worker        whether it is an archived symbolic link, pipe or other
1295*ba8755cbSAndroid Build Coastguard Worker        "uncommon" file system object.
1296*ba8755cbSAndroid Build Coastguard Worker      </action>
1297*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-119" type="fix" date="2010-10-26">
1298*ba8755cbSAndroid Build Coastguard Worker        TarArchiveOutputStream#finish now writes all buffered data to the stream
1299*ba8755cbSAndroid Build Coastguard Worker      </action>
1300*ba8755cbSAndroid Build Coastguard Worker    </release>
1301*ba8755cbSAndroid Build Coastguard Worker    <release version="1.1" date="2010-08-13" description="Release 1.1">
1302*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-72" type="fix" date="2010-06-02">
1303*ba8755cbSAndroid Build Coastguard Worker       Move acknowledgements from NOTICE to README
1304*ba8755cbSAndroid Build Coastguard Worker      </action>
1305*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-113" type="fix" date="2010-06-02">
1306*ba8755cbSAndroid Build Coastguard Worker       TarArchiveEntry.parseTarHeader() includes the trailing space/NUL when parsing the octal size
1307*ba8755cbSAndroid Build Coastguard Worker      </action>
1308*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-108" type="add" date="2010-05-23">
1309*ba8755cbSAndroid Build Coastguard Worker       Command-line interface to list archive contents.
1310*ba8755cbSAndroid Build Coastguard Worker       Usage: java -jar commons-compress-n.m.jar archive-name [zip|tar|etc]
1311*ba8755cbSAndroid Build Coastguard Worker      </action>
1312*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-118" type="fix" date="2010-05-17">
1313*ba8755cbSAndroid Build Coastguard Worker       TarUtils.parseName does not properly handle characters outside the range 0-127
1314*ba8755cbSAndroid Build Coastguard Worker      </action>
1315*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-112" type="update" date="2010-05-13">
1316*ba8755cbSAndroid Build Coastguard Worker       ArArchiveInputStream does not handle GNU extended filename records (//)
1317*ba8755cbSAndroid Build Coastguard Worker      </action>
1318*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-109" type="add" date="2010-05-10">
1319*ba8755cbSAndroid Build Coastguard Worker       Tar implementation does not support Pax headers
1320*ba8755cbSAndroid Build Coastguard Worker       Added support for reading pax headers.
1321*ba8755cbSAndroid Build Coastguard Worker       Note: does not support global pax headers
1322*ba8755cbSAndroid Build Coastguard Worker      </action>
1323*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-107" type="fix" date="2010-05-10">
1324*ba8755cbSAndroid Build Coastguard Worker       ArchiveStreamFactory does not recognise tar files created by Ant
1325*ba8755cbSAndroid Build Coastguard Worker      </action>
1326*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-110" type="fix" date="2010-05-09">
1327*ba8755cbSAndroid Build Coastguard Worker       Support "ustar" prefix field, which is used when file paths are longer
1328*ba8755cbSAndroid Build Coastguard Worker       than 100 characters.
1329*ba8755cbSAndroid Build Coastguard Worker      </action>
1330*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2010-04-19" issue="COMPRESS-105">
1331*ba8755cbSAndroid Build Coastguard Worker       Document that the name of an ZipArchiveEntry determines whether
1332*ba8755cbSAndroid Build Coastguard Worker       an entry is considered a directory or not.
1333*ba8755cbSAndroid Build Coastguard Worker       If you don't use the constructor with the File argument the entry's
1334*ba8755cbSAndroid Build Coastguard Worker        name must end in a "/" in order for the entry to be known as a directory.
1335*ba8755cbSAndroid Build Coastguard Worker      </action>
1336*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2010-03-19" issue="COMPRESS-103">
1337*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream can optionally extract data that used
1338*ba8755cbSAndroid Build Coastguard Worker        the STORED compression method and a data descriptor.
1339*ba8755cbSAndroid Build Coastguard Worker        Doing so in a stream is not safe in general, so you have to
1340*ba8755cbSAndroid Build Coastguard Worker        explicitly enable the feature.  By default the stream will
1341*ba8755cbSAndroid Build Coastguard Worker        throw an exception if it encounters such an entry.
1342*ba8755cbSAndroid Build Coastguard Worker      </action>
1343*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2010-03-12" issue="COMPRESS-100">
1344*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream will throw an exception if it detects an
1345*ba8755cbSAndroid Build Coastguard Worker        entry that uses a data descriptor for a STORED entry since it
1346*ba8755cbSAndroid Build Coastguard Worker        cannot reliably find the end of data for this "compression"
1347*ba8755cbSAndroid Build Coastguard Worker        method.
1348*ba8755cbSAndroid Build Coastguard Worker      </action>
1349*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2010-03-12" issue="COMPRESS-101">
1350*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream should now properly read archives that
1351*ba8755cbSAndroid Build Coastguard Worker        use data descriptors but without the "unofficial" signature.
1352*ba8755cbSAndroid Build Coastguard Worker      </action>
1353*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2010-03-09" issue="COMPRESS-98">
1354*ba8755cbSAndroid Build Coastguard Worker        The ZIP classes will throw specialized exceptions if any
1355*ba8755cbSAndroid Build Coastguard Worker        attempt is made to read or write data that uses zip features
1356*ba8755cbSAndroid Build Coastguard Worker        not supported (yet).
1357*ba8755cbSAndroid Build Coastguard Worker      </action>
1358*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2010-03-08" issue="COMPRESS-99">
1359*ba8755cbSAndroid Build Coastguard Worker        ZipFile#getEntries returns entries in a predictable order -
1360*ba8755cbSAndroid Build Coastguard Worker        the order they appear inside the central directory.
1361*ba8755cbSAndroid Build Coastguard Worker        A new method getEntriesInPhysicalOrder returns entries in
1362*ba8755cbSAndroid Build Coastguard Worker        order of the entry data, i.e. the order ZipArchiveInputStream
1363*ba8755cbSAndroid Build Coastguard Worker        would see.
1364*ba8755cbSAndroid Build Coastguard Worker      </action>
1365*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2010-02-19">
1366*ba8755cbSAndroid Build Coastguard Worker        The Archive*Stream and ZipFile classes now have
1367*ba8755cbSAndroid Build Coastguard Worker        can(Read|Write)EntryData methods that can be used to check
1368*ba8755cbSAndroid Build Coastguard Worker        whether a given entry's data can be read/written.
1369*ba8755cbSAndroid Build Coastguard Worker        The method currently returns false for ZIP archives if an
1370*ba8755cbSAndroid Build Coastguard Worker        entry uses an unsupported compression method or encryption.
1371*ba8755cbSAndroid Build Coastguard Worker      </action>
1372*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2010-02-19" issue="COMPRESS-89">
1373*ba8755cbSAndroid Build Coastguard Worker        The ZIP classes now detect encrypted entries.
1374*ba8755cbSAndroid Build Coastguard Worker      </action>
1375*ba8755cbSAndroid Build Coastguard Worker      <action type="update" date="2010-02-18" issue="COMPRESS-79">
1376*ba8755cbSAndroid Build Coastguard Worker        Move DOS/Java time conversions into Zip utility class.
1377*ba8755cbSAndroid Build Coastguard Worker      </action>
1378*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2010-02-18" issue="COMPRESS-74">
1379*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream failed to update the number of bytes
1380*ba8755cbSAndroid Build Coastguard Worker        read properly.
1381*ba8755cbSAndroid Build Coastguard Worker      </action>
1382*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2010-02-18">
1383*ba8755cbSAndroid Build Coastguard Worker        ArchiveInputStream has a new method getBytesRead that should
1384*ba8755cbSAndroid Build Coastguard Worker        be preferred over getCount since the later may truncate the
1385*ba8755cbSAndroid Build Coastguard Worker        number of bytes read for big archives.
1386*ba8755cbSAndroid Build Coastguard Worker      </action>
1387*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2010-02-18" issue="COMPRESS-85">
1388*ba8755cbSAndroid Build Coastguard Worker        The cpio archives created by CpioArchiveOutputStream couldn't
1389*ba8755cbSAndroid Build Coastguard Worker        be read by many existing native implementations because the
1390*ba8755cbSAndroid Build Coastguard Worker        archives contained multiple entries with the same inode/device
1391*ba8755cbSAndroid Build Coastguard Worker        combinations and weren't padded to a blocksize of 512 bytes.
1392*ba8755cbSAndroid Build Coastguard Worker      </action>
1393*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2010-02-16" issue="COMPRESS-73">
1394*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveEntry, ZipFile and ZipArchiveInputStream are now
1395*ba8755cbSAndroid Build Coastguard Worker        more lenient when parsing extra fields.
1396*ba8755cbSAndroid Build Coastguard Worker      </action>
1397*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-75" type="update" date="2010-02-12">
1398*ba8755cbSAndroid Build Coastguard Worker       ZipArchiveInputStream does not show location in file where a problem occurred.
1399*ba8755cbSAndroid Build Coastguard Worker      </action>
1400*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2010-02-12" issue="COMPRESS-82">
1401*ba8755cbSAndroid Build Coastguard Worker        cpio is terribly slow.
1402*ba8755cbSAndroid Build Coastguard Worker        Documented that buffered streams are needed for performance
1403*ba8755cbSAndroid Build Coastguard Worker      </action>
1404*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2010-02-12" issue="COMPRESS-97">
1405*ba8755cbSAndroid Build Coastguard Worker        Added autodetection of compression format to
1406*ba8755cbSAndroid Build Coastguard Worker        CompressorStreamFactory.
1407*ba8755cbSAndroid Build Coastguard Worker      </action>
1408*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2010-02-12">
1409*ba8755cbSAndroid Build Coastguard Worker        Improved exception message if the extra field data in ZIP
1410*ba8755cbSAndroid Build Coastguard Worker        archives cannot be parsed.
1411*ba8755cbSAndroid Build Coastguard Worker      </action>
1412*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2010-02-11" issue="COMPRESS-17">
1413*ba8755cbSAndroid Build Coastguard Worker        Tar format unspecified - current support documented.
1414*ba8755cbSAndroid Build Coastguard Worker      </action>
1415*ba8755cbSAndroid Build Coastguard Worker      <action type="add" issue="COMPRESS-95" date="2010-01-29"
1416*ba8755cbSAndroid Build Coastguard Worker              due-to="Joerg Bellmann">
1417*ba8755cbSAndroid Build Coastguard Worker        Improve ExceptionMessages in ArchiveStreamFactory
1418*ba8755cbSAndroid Build Coastguard Worker      </action>
1419*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" issue="COMPRESS-94" date="2010-01-07"
1420*ba8755cbSAndroid Build Coastguard Worker              due-to="Anon Devs">
1421*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveEntry's equals method was broken for entries created
1422*ba8755cbSAndroid Build Coastguard Worker        with the String-arg constructor.  This lead to broken ZIP
1423*ba8755cbSAndroid Build Coastguard Worker        archives if two different entries had the same hash code.
1424*ba8755cbSAndroid Build Coastguard Worker      </action>
1425*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" issue="COMPRESS-87" date="2009-10-30"
1426*ba8755cbSAndroid Build Coastguard Worker              due-to="Antoni Mylka">
1427*ba8755cbSAndroid Build Coastguard Worker        ZipArchiveInputStream could repeatedly return 0 on read() when
1428*ba8755cbSAndroid Build Coastguard Worker        the archive was truncated.
1429*ba8755cbSAndroid Build Coastguard Worker      </action>
1430*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" issue="COMPRESS-86" date="2009-10-08">
1431*ba8755cbSAndroid Build Coastguard Worker        Tar archive entries holding the file name for names longer
1432*ba8755cbSAndroid Build Coastguard Worker        than 100 characters in GNU longfile mode didn't properly
1433*ba8755cbSAndroid Build Coastguard Worker        specify they'd be using the "oldgnu" extension.
1434*ba8755cbSAndroid Build Coastguard Worker      </action>
1435*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2009-08-25">
1436*ba8755cbSAndroid Build Coastguard Worker        A new constructor of TarArchiveEntry can create entries with
1437*ba8755cbSAndroid Build Coastguard Worker        names that start with slashes - the default is to strip
1438*ba8755cbSAndroid Build Coastguard Worker        leading slashes in order to create relative path names.
1439*ba8755cbSAndroid Build Coastguard Worker      </action>
1440*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-83" type="fix" date="2009-08-01">
1441*ba8755cbSAndroid Build Coastguard Worker        Delegate all read and write methods in GZip stream in order to
1442*ba8755cbSAndroid Build Coastguard Worker        speed up operations.
1443*ba8755cbSAndroid Build Coastguard Worker      </action>
1444*ba8755cbSAndroid Build Coastguard Worker      <action type="add" date="2009-08-01">
1445*ba8755cbSAndroid Build Coastguard Worker        ArchiveEntry now has a getLastModifiedDate method.
1446*ba8755cbSAndroid Build Coastguard Worker      </action>
1447*ba8755cbSAndroid Build Coastguard Worker      <action type="fix" date="2009-08-01">
1448*ba8755cbSAndroid Build Coastguard Worker        The ar and cpio streams now properly read and write last
1449*ba8755cbSAndroid Build Coastguard Worker        modified times.
1450*ba8755cbSAndroid Build Coastguard Worker      </action>
1451*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-81" type="fix" date="2009-06-30">
1452*ba8755cbSAndroid Build Coastguard Worker        TarOutputStream can leave garbage at the end of the archive
1453*ba8755cbSAndroid Build Coastguard Worker      </action>
1454*ba8755cbSAndroid Build Coastguard Worker      <action issue="COMPRESS-78" type="add" date="2009-06-30"
1455*ba8755cbSAndroid Build Coastguard Worker              due-to="Jukka Zitting">
1456*ba8755cbSAndroid Build Coastguard Worker        Add a BZip2Utils class modelled after GZipUtils
1457*ba8755cbSAndroid Build Coastguard Worker      </action>
1458*ba8755cbSAndroid Build Coastguard Worker    </release>
1459*ba8755cbSAndroid Build Coastguard Worker    <release version="1.0" date="2009-05-21" description="First Public Release">
1460*ba8755cbSAndroid Build Coastguard Worker      <action dev="all" type="add" date="2009-05-21">
1461*ba8755cbSAndroid Build Coastguard Worker        Initial release
1462*ba8755cbSAndroid Build Coastguard Worker      </action>
1463*ba8755cbSAndroid Build Coastguard Worker      <action dev="sgoeschl" type="fix">
1464*ba8755cbSAndroid Build Coastguard Worker        Updating the pom.xml for preparing a move to commons-proper
1465*ba8755cbSAndroid Build Coastguard Worker      </action>
1466*ba8755cbSAndroid Build Coastguard Worker    </release>
1467*ba8755cbSAndroid Build Coastguard Worker  </body>
1468*ba8755cbSAndroid Build Coastguard Worker</document>
1469