This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
8faec2a8c492521d1e523125c7d88952ffffaa6d
[perl5.git] / ext / IO-Compress / Changes
1 CHANGES
2 -------
3
4   2.017 30 March 2009
5
6       * Merged IO-Compress-Base, IO-Compress-Bzip2, IO-Compress-Zlib &
7         Compress-Zlib into IO-Compress.
8
9       * The interface to Compress-Raw-Zlib now uses the new LimitOutput
10         feature. This will make all of the zlib-related IO-Compress modules
11         less greedy in their memory consumption.
12
13       * Removed MAN3PODS from Makefile.PL
14
15       * A few changes to get the test harness to work on VMS courtesy of
16         Craig. A. Berry.
17
18       * IO::Compress::Base & IO::Uncompress::Base
19         Downgraded some croaks in the constructors to just set $! (by letting 
20         the code attempt to open a file and fail).
21         This makes the behavior more consistent to a standard open.
22         [RT #42657]
23         
24       * IO::Uncompress::Base
25         Doing a seek with MultiStream could drop some of the uncompressed
26         data. Fixed.
27
28       * IO::Compress::Zip 
29         - Fixed problem with the uncompressed & uncompressed fields when
30           zip64 is enabled. They were set to 0x0000FFFF instead of
31           0xFFFFFFFF. Also the ZIP64 extra field was 4 bytes short.
32           Problem spotted by Dino Chiesa.
33
34       * IO::Uncompress::Unzip 
35         - use POSIX::mktime instead of Time::Local::timelocal to convert
36           the zip DOS time field into Unix time.
37
38       * Compress::Zlib 
39         - Documented Compress::Zlib::zlib_version()
40
41
42   2.015 3 September 2008
43
44       * Makefile.PL
45         Backout changes made in 2.014
46
47   2.014 2 September 2008
48
49       * Makefile.PL
50         Updated to check for indirect dependencies.
51
52   2.013 18 July 2008
53
54       * IO::Compress::Base 
55         - Allow IO::Compress::Base::Parameters::parse to accept an 
56           IO::Compress::Base::Parameters object.
57
58   2.012 15 July 2008
59
60       * IO::Compress::Base 
61         - Silenced an uninitialised value warning when reading a line
62           at a time from a zip file where the content uses ZIP_CM_STORE. 
63           [Problem spotted & fixed by Jeff Holt]
64
65       * IO::Compress::Base & IO::Uncompress::Base
66         - local-ise $!, $? et al in the DESTROY methods.
67           
68   2.011 17 May 2008
69
70       * IO::Compress::Base
71         - Fixed problem that prevented the creation of a zip file that
72           contained more than one compression method.
73
74       * IO::Compress::Base::Common
75         - The private Validator class in this module clashes with another
76           CPAN module. Moved Validator into the IO::Compress::Base::Common
77           namespace.
78           [RT #35954]
79
80       * IO::Uncompress::Unzip 
81         - Print an error message if the zip file contains a
82           member compressed with bzip2 and IO::Uncompress::Bunzip2 is 
83           not available.
84         - Could not cope with mixed compression zip files. For example a
85           zip file that contains both STORED and DEFLATED content.
86           [RT #35573]
87
88   2.010 5 May 2008
89
90       * Fixed problem that meant Perl 5.10 could not upgrade this module.
91         [RT #35342 & 35341]
92
93   2.009 20 April 2008
94
95       * Removed the alpha status from File::GlobMapper
96       
97       * IO::Compress::Base 
98         When writing output never output a zero length buffer.
99         Done to improve interoperability with other tied filenandle
100         modules.
101
102       * Changed IO::Uncompress::Base to not use the offset parameter of
103         the read method when reading from a filehandle. 
104
105         The object returned from Net::FTP::retr implements a non-standard
106         read method. The third parameter is used for a timeout value
107         rather than an offset.  
108         [rt.cpan#33231]
109         
110       * Changed IO::Uncompress::Base to not use the eof method when
111         reading from a filehandle. 
112
113         The object returned from Net::FTP::retr implements both the read
114         method and the eof method. Unfortunately the implementation of
115         the read method uses non-buffered IO (by using sysread) while
116         the eof method uses buffered IO. Mixing buffered and non-buffered
117         IO results in data corruption.
118
119       * IO::Compress::Zip 
120
121         - Added exUnix2 option to allow storing of UID & GID.
122         - When running on a Unix derivative the ExtAttr option now defaults
123           to the equivalent of 0666. For all other systems the default
124           remains 0.
125
126       * Compress::Zlib 
127         - Minor documentation issue with flush.
128           [rt.cpan.org #31446]
129
130
131   2.008 2 November 2007
132
133       * Minor documentation changes in README
134
135       * t/compress/truncate.pl
136         EBCDIC Cleanup.
137
138       * IO::Compress::Gzip::Constants.pm
139         Tidied up the character classes used to defined invalid 
140         FNAME & FCOMMENT fields for EBCDIC.
141
142       * Compress::Zlib 
143         lib/Compress/Zlib.pm -- 1.x Backward Compatability issues
144         gzclose - documented return value was wrong, should be 0 for ok.
145         gzflush - return value didn't match 1.x, should return 0 if ok.
146         [rt.cpan.org #29215] and Debian bug #440943 http://bugs.debian.org/440943
147
148   2.006 1 September 20007
149
150       * Makefile.PL
151         Added INSTALLDIRS directive to install as a core module when built
152         on a perl >= 5.9.
153
154       * IO::Uncompress::RawDeflate 
155
156         - Fixed export problem - "$RawDeflateError" and "rawdeflate" were
157           not being exported with ":all".
158
159       * Compress::Zlib 
160         - t/03zlib-v1.t
161           Fixed crc32 and adler32 tests in to remove ascii assumption.
162
163         - lib/Compress/Zlib.pm 
164           Make gzreadline not support $/, just like in Compress::Zlib 1.x
165           Folk who want $/ with readline support can get it in
166           IO::Uncompress::Gunzip.  [rt.cpan.org #28663] and 
167           Debian bug #435656 http://bugs.debian.org/435656
168
169
170   2.005 18 June 2007
171
172       * Stephen Turner reported a problem when using IO::Uncompress::Gunzip
173         with XML::Parser. Turns out there were two issues.  
174
175         Firstly an IO::Uncompress object isn't an IO::Handle. It is now.
176
177         Secondly the implementation of "read" wasn't honouring this 
178
179             SCALAR will be grown or shrunk to the length actually read.
180
181         In particular it didn't do the right thing on EOF.
182         This has been fixed.
183
184       * IO::Compress::Gzip & IO::Uncompress::Gunzip
185
186         - RFC1952 says that the FNAME & FCOMMENT header fields must be ISO
187           8859-1 (LATIN-1) characters. The code can optionally police this.
188           Added a fix for this logic when running on EBCDIC.
189
190       * Compress::Zlib 
191         Added info about removing Compress::Zlib version 1, before
192         installing version 2. 
193
194   2.004 3 March 2007
195
196       * Made seek less wasteful of memory.
197
198       * IO::Compress::Zip 
199
200         - Added Zip64 documentation.
201
202         - Fixed extended timestamp.  
203           Creation time isn't available in Unix so only store the
204           modification time and the last access time in the extended field.
205
206         - Fixed file mode.
207
208         - Added ExtAttr option to control the value of the "external file
209           attributes" field in the central directory.
210
211         - Added Unix2 extended attribute ("Ux"). 
212           This stores the UID & GID.
213
214       * IO::Compress::Gzip 
215
216         - Fixed 050interop-gzip.t for Windows 
217
218       * IO::Compress::Bzip2 
219
220         - Fixed 050interop-bzip2.t for Windows 
221
222       * Compress::Zlib 
223
224         - rewrote memGzip using IO::Compress::Gzip::gzip
225
226   2.003 2 January 2007
227
228       * Added explicit version checking
229
230   2.002 29 December 2006
231
232       * Documentation updates.
233
234       * Added IO::Handle to the ISA test in isaFilehandle
235
236       * Add an explicit use_ok test for Scalar::Util in the test harness.
237         The error message reported by 01misc implied the problem was
238         somewhere else.
239         Also explictly check that 'dualvar' is available.
240
241       * Compress::Zlib 
242         - Fix append mode with gzopen.
243           rt-cpan.org 24041
244
245         - Allow gzopen to read from and write to a scalar reference.
246
247   2.001 1 November 2006
248
249       * Remove beta status.
250
251   2.000_14 26 October 2006
252
253       * IO::Uncompress::Base
254         Added support for $/ in record mode
255
256       * IO::Uncompress::Base
257         The readline interface was substantially slower than the 1.x
258         equivalent. This has now been sorted. 
259         Thanks to Andreas J. Koenig for spotting the problem.
260
261       * IO::Uncompress::AnyUncompress
262         Added IO::Uncompress::Lzf to the list of supported uncompresors.
263
264       * IO::Uncompress::Base
265         Added TrailingData to one-shot interface.
266
267       * IO::Uncompress::AnyUncompress
268         Remove raw-deflate (RFC1951) from the default list of compressors 
269         to check.
270         It can still be included if the new RawInflate parameter is
271         supplied.
272         This change was made because the only way to tell if content is 
273         raw-deflate is to attempt to uncompress it - a few false positives
274         have popped up recently, which suggests that auto-detecting raw 
275         deflate is far from perfect.
276         The equivalent change has been made to IO::Uncompress::AnyInflate.
277         [Core patch #28445]
278
279       * Don't check that filehandles are writable. It would seem that 
280         "-w *STDOUT" on windows returns false. 
281         [Core Patch #28415]
282
283       * IO::Uncompress::Deflate
284         Beefed up the magic signature check. Means less false positives
285         when auto-detecting the compression type.
286
287       * IO::Uncompress::UnZip
288         Tighten up the zip64 extra field processing to cope with the case
289         wheere only some of the local header fields are superceeded.
290
291       * IO::Uncompress::AnyInflate
292         Remove raw-deflate (RFC 1951) from the default list of compressors 
293         to check.
294         It can still be included if the new RawInflate parameter is
295         supplied.
296         This change was made because the only way to tell if content is 
297         raw-deflate is to attempt to uncompress it - a few false positives
298         have popped up recently, which suggests that auto-detecting raw 
299         deflate is far from perfect.
300         The equivalent change has been made to IO::Uncompress::AnyUncompress.
301         [Core patch #28445]
302
303   2.000_13 20 June 2006
304
305       * Store compress & uncompressed sizes as 64-bit.
306
307       * For one-shot uncompression, like this
308
309             unzip "some.zip" => \@a, MultiStream => 1;
310
311         Push each uncompressed stream from "some.zip" onto @a.
312
313       * Added IO::Compress::Base::FilterEnvelope
314
315       * Added IO::Uncompress::Base::nextStream
316
317       * The '-' filehandle now maps to either *STDIN or *STDOUT. 
318         This keeps mod_perl happier. Was using these before
319
320             new IO::File("<-")
321             new IO::File(">-")
322
323       * Preliminary support for reading zip files with zip64 members.
324   
325   2.000_12 3 May 2006
326
327       * Moved the code for creating and parsing the gzip extra field into
328         IO::Compress::Zlib::Extra.pm so that IO::Compress::Zip &
329         IO::Uncompress::Unzip can use it as well. 
330
331       * Added ExtraFieldLocal & ExtraFieldCentral options to IO::Compress::Zip.
332         These allow the creation of user-defined extra fields in the local
333         and central headers, just like the ExtraField option in
334         IO::Compress::Gzip.
335
336       * Moved the zip constants into IO::Compress::Zip::Constants
337
338       * Added exTime option to IO::Compress::Zip. 
339         This allows creation of the extended timestamp extra field.
340
341       * Added Minimal option to IO::Compress::Zip. 
342         This disables the creation of all extended fields.
343
344       * Added TextFlag option to IO::Compress::Zip. 
345
346       * Documented Comment and ZipComment options in IO::Compress::Zip. 
347
348       * Compress::Zlib
349         Fixed gzread to zap the output buffer to an empty string when zero
350         bytes are requested. This matches the behaviour of C::Z 1.x
351
352   2.000_11 10 April 2006
353
354       * Transparent + InputLength made more robust where input data is not
355         compressed.
356
357       * Updated Documentation for zip modules.
358
359       * Changed IO::Compress::Zip 'Store' option to 'Method' and added
360         symbolic constants ZIP_CM_STORE, ZIP_CM_DEFLATE and ZIP_CM_BZIP2 to
361         allow the compression method to be picked by the user.
362
363       * Added support to allow bzip2 compressed data to be written/read
364         with IO::Compress::Zip and IO::Uncompress::Unzip.
365
366       * Beefed up 050interop-gzip.t to check that the external gzip command
367         works as expected before starting the tests. This means that
368         this test harness will just be skipped on problematic systems.
369
370       * Merged core patch 27565 from Steve Peters. This works around a
371         problem with gzip on OpenBSD where it doesn't seem to like
372         compressing files < 10 bytes long.
373
374       * Beefed up 050interop-bzip2.t to check that the external bzip2 command
375         works as expected before starting the tests. This means that
376         this test harness will just be skipped on problematic systems.
377
378   2.000_10 13 March 2006
379
380       * AnyUncompress doesn't assume  that IO-Compress-Zlib is installed any
381         more.
382
383       * Documentation updates.
384
385       * Compress::Zlib
386         Changed gzread so that its behaviour matches C::Z::gzread 1.x if it
387         is called after eof. In this case it will write an empty string
388         into the output parameter. This change is solely for backward
389         compatability reasons.
390
391   2.000_09 3 March 2006
392
393       * Released to CPAN.
394
395   2.000_08 2 March 2006
396
397       * Split IO::Compress::Base into its own distribution.
398
399       * Split IO::Compress::Bzip2 into its own distribution.
400
401       * Added opened, autoflush and input_line_number.
402
403       * Beefed up support for $.
404
405       * Split IO::Compress::Zlib into its own distribution.
406
407       * Beefed up support for zip/unzip
408
409       * Breakout zlib specific code into separate modules.
410
411       * Limited support for reading/writing zip files
412
413   2.000_06 5 October 2005
414
415       * Added eof parameter to Compress::Zlib::inflate method.
416
417       * Fixed issue with 64-bit
418
419   2.000_05 4 October 2005
420
421       * Renamed IO::* to IO::Compress::* & IO::Uncompress::*
422
423   2.000_04 23 September 2005
424
425       * Fixed some more non-portable test that were failing on VMS.
426
427       * fixed problem where error messages in the oneshot interface were
428         getting lost.
429
430   2.000_03 12 September 2005
431
432       * Fixed some non-portable test that were failing on VMS.
433
434       * Fixed export of zlib constants from the IO::* classes
435
436   2.000_02 6 September 2005
437
438       * Split Append mode into Append and Merge
439
440       * Fixed typos in the documentation.
441
442       * Added pod/FAQ.pod
443
444       * Added libscan to Makefile.PL
445
446       * Added InputLength for IO::Gunzip et al
447
448   2.000_01 22 August 2005
449
450       * Fixed VERSION in Compress::Gzip::Constants
451
452       * Removed Compress::Gzip::Info from the distribution.
453
454   2.000_00 21 August 2005
455
456       * First Beta relase of Compress::zlib rewrite.
457
458 Compress-Zlib version 1 Changes
459
460   1.38 - 6 September 2005
461
462       * Integrate core change 25304 -- Symbian Update
463
464       * Added libscan to Makefile.PL
465
466   1.37 - 12 August 2005
467
468       * Change to t/03examples.t for VMS from Abe Timmerman
469
470   1.36 - 3 August 2005
471
472       * Renamed zlib-src-1.2.3 to zlib-src to help VMS
473
474       * Fixed Makefile.PL for VMS
475
476       * Fixed t/03examples.t for VMS
477
478       * Added a couple of notes about incompatibility with Unix compress.
479
480   1.35 - 16 July 2005
481
482       * Updated zlib source to 1.2.3
483
484       * Fixed problem with where two calls to gzclose would hang the debugger.
485         See https://rt.cpan.org/Ticket/Display.html?id=13789
486
487       * Added code from Alexey Tourbin to use XSLoader when available,
488         and DynaLoader otherwise.
489
490       * Documented that the compress & uncompress functions were not
491         the same as the Unix utilities of the same name.
492
493       * Fixed 05gzsetp -- it left a temp file hanging around. 
494
495       * Integrate core change 24787 - SvUPGRADE returns void in blead
496
497       * Integrate core change 24788 - Makefile.PL adjustments for the core
498
499
500   1.34 - 30 January 2005
501
502       * Fixed typo in the README
503
504       * Fixed examples.t on Win32 where paths have embedded whitespace.
505
506       * Fix for Cygwin and core integration from Jos I. Boumans
507
508       * Upgrade zlib source to 1.2.2
509
510   1.33 - 14 January 2004
511
512       * Reworked Makefile.PL to avoid creating a private copy of zlib. 
513         This both simplifies the build, plus it makes life easier for VMS.
514
515       * Patches for Makefile.PL to get it to work on VMS supplied by
516         Craig A. Berry.
517
518       * memGunzip has very slow on FreeBSD. Turns out to be down to
519         the way realloc works on FreeBSD. Changed both inflate & deflate
520         to use exponentially increasing buffer sizes when they need to
521         realloc. Thanks to Peter Jeremy for the lowdown on FreeBSD
522         memory allocation.
523
524   1.32 - 26 November 2003
525
526       * Steve Hay reported a problem on rt.cpan.org with Windows and
527         MSCV++ 6.0 where the source from the zlib directory was getting
528         installed with the rest of the module.
529         https://rt.cpan.org/Ticket/Display.html?id=1741
530
531         This has been fixed by renaming the "zlib" directory to "zlib-src"
532         thus avoiding a conflict with the name of this Perl module.
533
534       * Fixed a bug in the inflate method where the input buffer is an
535         lvalue (via substr). Problem & solution reported by Salvador Fandiqo.
536
537       * Tightened up the logic in Makefile.PL when BUILD_ZLIB is
538         True. Issue spotted by Ralf S. Engelschall.
539
540   1.31 - 29 October 2003
541
542       * Reinstated the creation of .bak files - $^I seems to need a
543         backup file on Windows. For OpenVMS, the extenstion _bak is used.
544
545   1.30 - 28 October 2003
546
547       * Bundled a sub-set of the zlib source with the module and changed
548         the default make behaviour to build with the included zlib source.
549         The previous behaviour of using a pre-built zlib library is
550         still available for those that want it.
551
552       * Added prototypes to the subs in Zlib.pm that didn't already have
553         them. Patch from Ed Avis.
554
555       * No .bak files are created by Makefile.PL any more - this keep
556         distclean much happier. Patch suggested by Ed Avis.
557         This also fixes a similar problem reported by Dr. Martin Zinser
558         on OpenVMS.
559
560       * Documentation for some of the gz functions updated.
561
562       * Format strings modified in DispStream to keep OpenVMS happy. 
563         Problem reported by Dr. Martin Zinser.
564
565
566   1.22 - 17 June 2003
567
568       * Makefile.PL now displays a warning about not installing
569         Compress::Zlib via the CPAN shell.
570
571       * Fix to allow intermingling of gzread & gzreadline - patch
572         supplied by Doug Perham.
573
574       * memGunzip will silently now work if the gzip trailer is
575         missing. Some HTTP Origin Servers seem to leave it out.
576
577   1.21 - 28 April 2003
578
579       * Tests 148 & 150 from t/02zlib.t were failing on redhat 9. 
580
581       * Added a few words about the problems with Mac OS X to the README file. 
582
583   1.20 - 4 April 2003
584
585       * Fixed bug in gzopen where $gzerrno wasn't being set correctly.
586         The symptom was $gzerrno was set to Z_MEM_ERROR although the file 
587         was opened ok. If gzopen failed, $gzerrno was being set correctly.
588         This problem wasn't spotted before because the typical test
589         to determine whether gzopen passed or failed was to check its
590         return value. 
591
592   1.19 - 31 October 2002
593
594       * fixed a problem with t/02zlib.t that was failing with redhat 8.
595
596   1.18 - 24 October 2002
597
598       * fixed a Win32 problem in t/02zlib.t by changing sysread to read.
599
600       * zlib 1.0.5 & older doesn't have gzsetparams & gzeof. Added a new
601         variable to config.in to flag an old version of zlib. Split
602         out the tests for gzsetparams into t/05gzsetp.t
603
604   1.17 - 23 May 2002
605
606       * Moved the test to check the versions of libz & zlib.h into a separate
607         file and added troubleshooting notes to README.
608
609       * In gzopen, only attempt to call "tell" for normal files.
610
611       * Fixed to work in taint mode.
612
613       * Broke changes out of README into Changes file.
614
615       * Replaced internal use of Z_PARTIAL_FLUSH symbol with Z_SYNC_FLUSH. 
616         zlib.h says  /* will be removed, use Z_SYNC_FLUSH instead */  
617
618   1.16 - 13 December 2001
619
620       * Fixed bug in Makefile.PL that stopped "perl Makefile.PL PREFIX=..."
621         working.
622
623   1.15 - 4th December 2001
624
625       * Changes a few types to get the module to build on 64-bit Solaris
626
627       * Changed the up/downgrade logic to default to the older constructs, and
628         to only call a downgrade if specifically requested. Some older versions
629         of Perl were having problems with the in-place edit.
630
631       * added the new XS constant code.
632
633   1.14 - 27th August 2001
634
635       * Memory overwrite bug fixed in "inflate". Kudos to Rob Simons for
636         reporting the bug and to Anton Berezin for fixing it for me.
637
638   1.13 - 31st June 2001
639
640       * Make sure config.in is consistant when released.
641
642   1.12 - 28th April 2001
643
644       * Modified Makefile.PL to only enable the warnings pragma if
645         using perl 5.6.1 or better.
646
647   1.11 - 17th February 2001
648
649       * Added logic in Makefile.PL to toggle between using $^W and
650         the warnings pragma in the module.
651
652       * The module, the examples & the test harness are now all strict
653         & warnings clean.
654
655   1.10 - 5th February 2001
656
657       * fixed a bug in memGunzip. Used Z_ERR instead of Z_DATA_ERROR.
658
659   1.09 - 15th January 2001
660
661       * Silenced a few compiler warnings.
662
663       * Updated zlib home site in README & Zlib.pm to www.info-zip.org
664
665       * Minor typo in Zlib.pm - a link used AUTHORS instead of AUTHOR
666         -- spotted by Frank Martini.
667
668       * Mention Archive::Zip
669
670       * added memGunzip. This is largely based on code provided by Jim Leonard.
671
672       * $deflate->flush can now take an optional parameter. Valid
673         values are Z_NO_FLUSH, Z_PARTIAL_FLUSH, Z_SYNC_FLUSH, Z_FULL_FLUSH
674         and Z_FINISH. The default is Z_FINISH.
675
676   1.08 - 6 Jan 2000
677
678       * uncompress was clobbering its input parameter. Now it doesn't.
679         This bug was spotted by Deven T. Corzine.
680  
681       * If a variable that only ever contained a number was given
682         to compress or deflate, it would not be compressed properly. Now
683         it will be coerced to a string and then compressed. This bug
684         was spotted by Deven T. Corzine.
685
686   1.07 - 27 Nov 1999
687
688       * ANSI-ified the static functions in Zlib.xs
689
690       * Added the ability to build zlib along with the module.
691         This feature is 90% based on a Makefile provided by Gurusamy
692         Sarathy.
693
694   1.06 - 20 Sep 1999
695
696       * Fixed a nasty problem where inflate could truncate the data
697         returned. Thanks to Douglas Thomson <dougt@mugc.cc.monash.edu.au>
698         for both spotting the problem and fixing the bug.
699
700       * Added a note about the undocumented features in zlib that are
701         required when accessing zip files.
702
703       * gzclose will now get called automatically when the gzip object is
704         destroyed.
705
706   1.05 - 3 June 1999
707
708       * Previous release used newSVpvn, which doesn't exist in 5.004_04
709         or earlier. Changed to use newSVpv instead.
710
711       * The module needs Perl 5.004 or better, so updated the version
712         checking in Zlib.pm and Makefile.PL
713
714   1.04 - 27 May 1999
715
716       * Bug 19990527.001: compress(undef) core dumps -- Fixed.  
717
718   1.03 - 17 Mar 1999
719
720       * Updated to use the new PL_ symbols. 
721         Means the module can be built with Perl 5.005_5*
722
723   1.02 - 31 Jan 1999
724
725       * The return codes for gzread, gzreadline and gzwrite were
726         documented incorrectly as returning a status code.
727
728       * The test harness was missing a "gzclose". This caused problem
729         showed up on an amiga. Thanks to Erik van Roode for reporting
730         this one.
731
732       * Patched zlib.t for OS/2. Thanks to Ilya Zakharevich for the patch.
733
734   1.01 - 23 Nov 1997
735
736       * A number of fixes to the test suite and the example scripts to
737         allow them to work under win32. All courtesy of Gurusamy
738         Sarathy.
739
740   1.00 - 14 Nov 1997
741
742       * Fixed crc32 & adler32. They were very broken. 
743
744       * The following functions can now take a scalar reference in
745         place of a scalar for their buffer parameters:
746
747             compress
748             uncompress
749             deflate
750             inflate
751             crc32
752             adler32
753  
754         This should mean applications that make use of the module don't
755         have to copy large buffers around.
756
757  
758       * Normally the inflate method consumes I<all> of the input buffer
759         before returning. The exception to this is when inflate detects
760         the end of the stream (Z_STREAM_END). In this case the input
761         buffer need not be completely consumed. To allow processing of
762         file formats that embed a deflation stream (e.g. zip, gzip),
763         the inflate method now sets the buffer parameter to be what
764         remains after inflation.
765
766         When the return status is Z_STREAM_END, it will be what remains
767         of the buffer (if any) after deflation. When the status is Z_OK
768         it will be an empty string.
769
770         This change means that the buffer parameter must be a lvalue.
771  
772       * Fixed crc32 and adler32. They were both very broken.
773
774       * Added the Compress::Zlib::memGzip function.
775
776   0.5 - Confirmed that no changes were necessary for zlib 1.0.3, or 1.0.4.
777
778         The optional parameters for deflateInit and inflateInit can now
779         be specified as an associative array in addition to a reference
780         to an associative array. They can also accept the -Name
781         syntax.
782
783         gzopen can now optionally take a reference to an open
784         filehandle in place of a filename. In this case it will call
785         gzdopen.
786
787         Added gzstream example script.
788  
789   0.4 - Upgrade to support zlib 0.99 
790
791         Added dictionary interface.
792
793         Fixed bug in gzreadline - previously it would keep returning
794         the same buffer. This bug was reported by Helmut Jarausch
795
796         Removed dependency to zutil.h and so dropped support for 
797         
798             DEF_MEM_LEVEL (use MAX_MEM_LEVEL instead)
799             DEF_WBITS     (use MAX_WBITS instead)
800
801   0.3 - Added prototype specification.
802
803   0.2 - Fixed a minor allocation problem in Zlib.xs
804
805   0.1 - first alpha release. 2nd October 1995