CHANGES
-------
1.32 - 26 November 2003
* Steve Hay reported a problem on rt.cpan.org with Windows and
MSCV++ 6.0 where the source from the zlib directory was getting
installed with the rest of the module.
https://rt.cpan.org/Ticket/Display.html?id=1741
This has been fixed by renaming the "zlib" directory to "zlib-src"
thus avoiding a conflict with the name of this Perl module.
* Fixed a bug in the inflate method where the input buffer is an
lvalue (via substr). Problem & solution reported by Salvador Fandiqo.
* Tightened up the logic in Makefile.PL when BUILD_ZLIB is
True. Issue spotted by Ralf S. Engelschall.
1.31 - 29 October 2003
* Reinstated the creation of .bak files - $^I seems to need a
backup file on Windows. For OpenVMS, the extenstion _bak is used.
1.30 - 28 October 2003
* Bundled a sub-set of the zlib source with the module and changed
the default make behaviour to build with the included zlib source.
The previous behaviour of using a pre-built zlib library is
still available for those that want it.
* Added prototypes to the subs in Zlib.pm that didn't already have
them. Patch from Ed Avis.
* No .bak files are created by Makefile.PL any more - this keep
distclean much happier. Patch suggested by Ed Avis.
This also fixes a similar problem reported by Dr. Martin Zinser
on OpenVMS.
* Documentation for some of the gz functions updated.
* Format strings modified in DispStream to keep OpenVMS happy.
Problem reported by Dr. Martin Zinser.
1.22 - 17 June 2003
* Makefile.PL now displays a warning about not installing
Compress::Zlib via the CPAN shell.
* Fix to allow intermingling of gzread & gzreadline - patch
supplied by Doug Perham.
* memGunzip will silently now work if the gzip trailer is
missing. Some HTTP Origin Servers seem to leave it out.
1.21 - 28 April 2003
* Tests 148 & 150 from t/02zlib.t were failing on redhat 9.
* Added a few words about the problems with Mac OS X to the README file.
1.20 - 4 April 2003
* Fixed bug in gzopen where $gzerrno wasn't being set correctly.
The symptom was $gzerrno was set to Z_MEM_ERROR although the file
was opened ok. If gzopen failed, $gzerrno was being set correctly.
This problem wasn't spotted before because the typical test
to determine whether gzopen passed or failed was to check its
return value.
1.19 - 31 October 2002
* fixed a problem with t/02zlib.t that was failing with redhat 8.
1.18 - 24 October 2002
* fixed a Win32 problem in t/02zlib.t by changing sysread to read.
* zlib 1.0.5 & older doesn't have gzsetparams & gzeof. Added a new
variable to config.in to flag an old version of zlib. Split
out the tests for gzsetparams into t/05gzsetp.t
1.17 - 22 October 2002
* Moved the test to check the versions of libz & zlib.h into a separate
file and added troubleshooting notes to README.
* In gzopen, only attempt to call "tell" for normal files.
* Broke changes out of README into Changes file.
* Replaced internal use of Z_PARTIAL_FLUSH symbol with Z_SYNC_FLUSH.
zlib.h says /* will be removed, use Z_SYNC_FLUSH instead */
* Added support for zlib functions inflateSync and deflateParams.
* Added support for zlib functions gzeof and gzsetparams.
* Added support for access to adler, total_in & total_out
* The compress function can now take an optional parameter that
allows the compression level to be specified. This mirrors the
compress2 function available in zlib.
* memGzip doesn't work properly with perl 5.8.0 when it is given
UTF-8 data. Bug spotted by Andreas J. Koenig.
* Added note about Linux zlib-devel RPM to README.
* Fixed recursive build problem on win32 machines.
* Fixed problem with the test harness on Mac OS X.
Thanks to Carl Johan Berglund for reporting the problem and
helping track it down.
1.16 - 13 December 2001
* Fixed bug in Makefile.PL that stopped "perl Makefile.PL PREFIX=..."
working.
1.15 - 4th December 2001
* Changes a few types to get the module to build on 64-bit Solaris
* Changed the up/downgrade logic to default to the older constructs, and
to only call a downgrade if specifically requested. Some older versions
of Perl were having problems with the in-place edit.
* added the new XS constant code.
1.14 - 27th August 2001
* Memory overwrite bug fixed in "inflate". Kudos to Rob Simons for
reporting the bug and to Anton Berezin for fixing it for me.
1.13 - 31st June 2001
* Make sure config.in is consistant when released.
1.12 - 28th April 2001
* Modified Makefile.PL to only enable the warnings pragma if
using perl 5.6.1 or better.
1.11 - 17th February 2001
* Added logic in Makefile.PL to toggle between using $^W and
the warnings pragma in the module.
* The module, the examples & the test harness are now all strict
& warnings clean.
1.10 - 5th February 2001
* fixed a bug in memGunzip. Used Z_ERR instead of Z_DATA_ERROR.
1.09 - 15th January 2001
* Silenced a few compiler warnings.
* Updated zlib home site in README & Zlib.pm to www.info-zip.org
* Minor typo in Zlib.pm - a link used AUTHORS instead of AUTHOR
-- spotted by Frank Martini.
* Mention Archive::Zip
* added memGunzip. This is largely based on code provided by Jim Leonard.
* $deflate->flush can now take an optional parameter. Valid
values are Z_NO_FLUSH, Z_PARTIAL_FLUSH, Z_SYNC_FLUSH, Z_FULL_FLUSH
and Z_FINISH. The default is Z_FINISH.
1.08 - 6 Jan 2000
* uncompress was clobbering its input parameter. Now it doesn't.
This bug was spotted by Deven T. Corzine.
* If a variable that only ever contained a number was given
to compress or deflate, it would not be compressed properly. Now
it will be coerced to a string and then compressed. This bug
was spotted by Deven T. Corzine.
1.07 - 27 Nov 1999
* ANSI-ified the static functions in Zlib.xs
* Added the ability to build zlib along with the module.
This feature is 90% based on a Makefile provided by Gurusamy
Sarathy.
1.06 - 20 Sep 1999
* Fixed a nasty problem where inflate could truncate the data
returned. Thanks to Douglas Thomson <dougt@mugc.cc.monash.edu.au>
for both spotting the problem and fixing the bug.
* Added a note about the undocumented features in zlib that are
required when accessing zip files.
* gzclose will now get called automatically when the gzip object is
destroyed.
1.05 - 3 June 1999
* Previous release used newSVpvn, which doesn't exist in 5.004_04
or earlier. Changed to use newSVpv instead.
* The module needs Perl 5.004 or better, so updated the version
checking in Zlib.pm and Makefile.PL
1.04 - 27 May 1999
* Bug 19990527.001: compress(undef) core dumps -- Fixed.
1.03 - 17 Mar 1999
* Updated to use the new PL_ symbols.
Means the module can be built with Perl 5.005_5*
1.02 - 31 Jan 1999
* The return codes for gzread, gzreadline and gzwrite were
documented incorrectly as returning a status code.
* The test harness was missing a "gzclose". This caused problem
showed up on an amiga. Thanks to Erik van Roode for reporting
this one.
* Patched zlib.t for OS/2. Thanks to Ilya Zakharevich for the patch.
1.01 - 23 Nov 1997
* A number of fixes to the test suite and the example scripts to
allow them to work under win32. All courtesy of Gurusamy
Sarathy.
1.00 - 14 Nov 1997
* Fixed crc32 & adler32. They were very broken.
* The following functions can now take a scalar reference in
place of a scalar for their buffer parameters:
compress
uncompress
deflate
inflate
crc32
adler32
This should mean applications that make use of the module don't
have to copy large buffers around.
* Normally the inflate method consumes I<all> of the input buffer
before returning. The exception to this is when inflate detects
the end of the stream (Z_STREAM_END). In this case the input
buffer need not be completely consumed. To allow processing of
file formats that embed a deflation stream (e.g. zip, gzip),
the inflate method now sets the buffer parameter to be what
remains after inflation.
When the return status is Z_STREAM_END, it will be what remains
of the buffer (if any) after deflation. When the status is Z_OK
it will be an empty string.
This change means that the buffer parameter must be a lvalue.
* Fixed crc32 and adler32. They were both very broken.
* Added the Compress::Zlib::memGzip function.
0.5 - Confirmed that no changes were necessary for zlib 1.0.3, or 1.0.4.
The optional parameters for deflateInit and inflateInit can now
be specified as an associative array in addition to a reference
to an associative array. They can also accept the -Name
syntax.
gzopen can now optionally take a reference to an open
filehandle in place of a filename. In this case it will call
gzdopen.
Added gzstream example script.
0.4 - Upgrade to support zlib 0.99
Added dictionary interface.
Fixed bug in gzreadline - previously it would keep returning
the same buffer. This bug was reported by Helmut Jarausch
Removed dependency to zutil.h and so dropped support for
DEF_MEM_LEVEL (use MAX_MEM_LEVEL instead)
DEF_WBITS (use MAX_WBITS instead)
0.3 - Added prototype specification.
0.2 - Fixed a minor allocation problem in Zlib.xs
0.1 - first alpha release. 2nd October 1995