ChangeLog revision 17651
1 2 ChangeLog file for zlib 3 4Changes in 1.0.4 (24 Jul 96) 5- In very rare conditions, deflate(s, Z_FINISH) could fail to produce an EOF 6 bit, so the decompressor could decompress all the correct data but went 7 on to attempt decompressing extra garbage data. This affected minigzip too. 8- zlibVersion and gzerror return const char* (needed for DLL) 9- port to RISCOS (no fdopen, no multiple dots, no unlink, no fileno) 10- use z_error only for DEBUG (avoid problem with DLLs) 11 12Changes in 1.0.3 (2 Jul 96) 13- use z_streamp instead of z_stream *, which is now a far pointer in MSDOS 14 small and medium models; this makes the library incompatible with previous 15 versions for these models. (No effect in large model or on other systems.) 16- return OK instead of BUF_ERROR if previous deflate call returned with 17 avail_out as zero but there is nothing to do 18- added memcmp for non STDC compilers 19- define NO_DUMMY_DECL for more Mac compilers (.h files merged incorrectly) 20- define __32BIT__ if __386__ or i386 is defined (pb. with Watcom and SCO) 21- better check for 16-bit mode MSC (avoids problem with Symantec) 22 23Changes in 1.0.2 (23 May 96) 24- added Windows DLL support 25- added a function zlibVersion (for the DLL support) 26- fixed declarations using Bytef in infutil.c (pb with MSDOS medium model) 27- Bytef is define's instead of typedef'd only for Borland C 28- avoid reading uninitialized memory in example.c 29- mention in README that the zlib format is now RFC1950 30- updated Makefile.dj2 31- added algorithm.doc 32 33Changes in 1.0.1 (20 May 96) [1.0 skipped to avoid confusion] 34- fix array overlay in deflate.c which sometimes caused bad compressed data 35- fix inflate bug with empty stored block 36- fix MSDOS medium model which was broken in 0.99 37- fix deflateParams() which could generated bad compressed data. 38- Bytef is define'd instead of typedef'ed (work around Borland bug) 39- added an INDEX file 40- new makefiles for DJGPP (Makefile.dj2), 32-bit Borland (Makefile.b32), 41 Watcom (Makefile.wat), Amiga SAS/C (Makefile.sas) 42- speed up adler32 for modern machines without auto-increment 43- added -ansi for IRIX in configure 44- static_init_done in trees.c is an int 45- define unlink as delete for VMS 46- fix configure for QNX 47- add configure branch for SCO and HPUX 48- avoid many warnings (unused variables, dead assignments, etc...) 49- no fdopen for BeOS 50- fix the Watcom fix for 32 bit mode (define FAR as empty) 51- removed redefinition of Byte for MKWERKS 52- work around an MWKERKS bug (incorrect merge of all .h files) 53 54Changes in 0.99 (27 Jan 96) 55- allow preset dictionary shared between compressor and decompressor 56- allow compression level 0 (no compression) 57- add deflateParams in zlib.h: allow dynamic change of compression level 58 and compression strategy. 59- test large buffers and deflateParams in example.c 60- add optional "configure" to build zlib as a shared library 61- suppress Makefile.qnx, use configure instead 62- fixed deflate for 64-bit systems (detected on Cray) 63- fixed inflate_blocks for 64-bit systems (detected on Alpha) 64- declare Z_DEFLATED in zlib.h (possible parameter for deflateInit2) 65- always return Z_BUF_ERROR when deflate() has nothing to do 66- deflateInit and inflateInit are now macros to allow version checking 67- prefix all global functions and types with z_ with -DZ_PREFIX 68- make falloc completely reentrant (inftrees.c) 69- fixed very unlikely race condition in ct_static_init 70- free in reverse order of allocation to help memory manager 71- use zlib-1.0/* instead of zlib/* inside the tar.gz 72- make zlib warning-free with "gcc -O3 -Wall -Wwrite-strings -Wpointer-arith 73 -Wconversion -Wstrict-prototypes -Wmissing-prototypes" 74- allow gzread on concatenated .gz files 75- deflateEnd now returns Z_DATA_ERROR if it was premature 76- deflate is finally (?) fully deterministic (no matches beyond end of input) 77- Document Z_SYNC_FLUSH 78- add uninstall in Makefile 79- Check for __cpluplus in zlib.h 80- Better test in ct_align for partial flush 81- avoid harmless warnings for Borland C++ 82- initialize hash_head in deflate.c 83- avoid warning on fdopen (gzio.c) for HP cc -Aa 84- include stdlib.h for STDC compilers 85- include errno.h for Cray 86- ignore error if ranlib doesn't exist 87- call ranlib twice for NeXTSTEP 88- use exec_prefix instead of prefix for libz.a 89- renamed ct_* as _tr_* to avoid conflict with applications 90- clear z->msg in inflateInit2 before any error return 91- initialize opaque in example.c, gzio.c, deflate.c and inflate.c 92- fixed typo in zconf.h (_GNUC__ => __GNUC__) 93- check for WIN32 in zconf.h and zutil.c (avoid farmalloc in 32-bit mode) 94- fix typo in Make_vms.com (f$trnlnm -> f$getsyi) 95- in fcalloc, normalize pointer if size > 65520 bytes 96- don't use special fcalloc for 32 bit Borland C++ 97- use STDC instead of __GO32__ to avoid redeclaring exit, calloc, etc... 98- use Z_BINARY instead of BINARY 99- document that gzclose after gzdopen will close the file 100- allow "a" as mode in gzopen. 101- fix error checking in gzread 102- allow skipping .gz extra-field on pipes 103- added reference to Perl interface in README 104- put the crc table in FAR data (I dislike more and more the medium model :) 105- added get_crc_table 106- added a dimension to all arrays (Borland C can't count). 107- workaround Borland C bug in declaration of inflate_codes_new & inflate_fast 108- guard against multiple inclusion of *.h (for precompiled header on Mac) 109- Watcom C pretends to be Microsoft C small model even in 32 bit mode. 110- don't use unsized arrays to avoid silly warnings by Visual C++: 111 warning C4746: 'inflate_mask' : unsized array treated as '__far' 112 (what's wrong with far data in far model?). 113- define enum out of inflate_blocks_state to allow compilation with C++ 114 115Changes in 0.95 (16 Aug 95) 116- fix MSDOS small and medium model (now easier to adapt to any compiler) 117- inlined send_bits 118- fix the final (:-) bug for deflate with flush (output was correct but 119 not completely flushed in rare occasions). 120- default window size is same for compression and decompression 121 (it's now sufficient to set MAX_WBITS in zconf.h). 122- voidp -> voidpf and voidnp -> voidp (for consistency with other 123 typedefs and because voidnp was not near in large model). 124 125Changes in 0.94 (13 Aug 95) 126- support MSDOS medium model 127- fix deflate with flush (could sometimes generate bad output) 128- fix deflateReset (zlib header was incorrectly suppressed) 129- added support for VMS 130- allow a compression level in gzopen() 131- gzflush now calls fflush 132- For deflate with flush, flush even if no more input is provided. 133- rename libgz.a as libz.a 134- avoid complex expression in infcodes.c triggering Turbo C bug 135- work around a problem with gcc on Alpha (in INSERT_STRING) 136- don't use inline functions (problem with some gcc versions) 137- allow renaming of Byte, uInt, etc... with #define. 138- avoid warning about (unused) pointer before start of array in deflate.c 139- avoid various warnings in gzio.c, example.c, infblock.c, adler32.c, zutil.c 140- avoid reserved word 'new' in trees.c 141 142Changes in 0.93 (25 June 95) 143- temporarily disable inline functions 144- make deflate deterministic 145- give enough lookahead for PARTIAL_FLUSH 146- Set binary mode for stdin/stdout in minigzip.c for OS/2 147- don't even use signed char in inflate (not portable enough) 148- fix inflate memory leak for segmented architectures 149 150Changes in 0.92 (3 May 95) 151- don't assume that char is signed (problem on SGI) 152- Clear bit buffer when starting a stored block 153- no memcpy on Pyramid 154- suppressed inftest.c 155- optimized fill_window, put longest_match inline for gcc 156- optimized inflate on stored blocks. 157- untabify all sources to simplify patches 158 159Changes in 0.91 (2 May 95) 160- Default MEM_LEVEL is 8 (not 9 for Unix) as documented in zlib.h 161- Document the memory requirements in zconf.h 162- added "make install" 163- fix sync search logic in inflateSync 164- deflate(Z_FULL_FLUSH) now works even if output buffer too short 165- after inflateSync, don't scare people with just "lo world" 166- added support for DJGPP 167 168Changes in 0.9 (1 May 95) 169- don't assume that zalloc clears the allocated memory (the TurboC bug 170 was Mark's bug after all :) 171- let again gzread copy uncompressed data unchanged (was working in 0.71) 172- deflate(Z_FULL_FLUSH), inflateReset and inflateSync are now fully implemented 173- added a test of inflateSync in example.c 174- moved MAX_WBITS to zconf.h because users might want to change that. 175- document explicitly that zalloc(64K) on MSDOS must return a normalized 176 pointer (zero offset) 177- added Makefiles for Microsoft C, Turbo C, Borland C++ 178- faster crc32() 179 180Changes in 0.8 (29 April 95) 181- added fast inflate (inffast.c) 182- deflate(Z_FINISH) now returns Z_STREAM_END when done. Warning: this 183 is incompatible with previous versions of zlib which returned Z_OK. 184- work around a TurboC compiler bug (bad code for b << 0, see infutil.h) 185 (actually that was not a compiler bug, see 0.81 above) 186- gzread no longer reads one extra byte in certain cases 187- In gzio destroy(), don't reference a freed structure 188- avoid many warnings for MSDOS 189- avoid the ERROR symbol which is used by MS Windows 190 191Changes in 0.71 (14 April 95) 192- Fixed more MSDOS compilation problems :( There is still a bug with 193 TurboC large model. 194 195Changes in 0.7 (14 April 95) 196- Added full inflate support. 197- Simplified the crc32() interface. The pre- and post-conditioning 198 (one's complement) is now done inside crc32(). WARNING: this is 199 incompatible with previous versions; see zlib.h for the new usage. 200 201Changes in 0.61 (12 April 95) 202- workaround for a bug in TurboC. example and minigzip now work on MSDOS. 203 204Changes in 0.6 (11 April 95) 205- added minigzip.c 206- added gzdopen to reopen a file descriptor as gzFile 207- added transparent reading of non-gziped files in gzread. 208- fixed bug in gzread (don't read crc as data) 209- fixed bug in destroy (gzio.c) (don't return Z_STREAM_END for gzclose). 210- don't allocate big arrays in the stack (for MSDOS) 211- fix some MSDOS compilation problems 212 213Changes in 0.5: 214- do real compression in deflate.c. Z_PARTIAL_FLUSH is supported but 215 not yet Z_FULL_FLUSH. 216- support decompression but only in a single step (forced Z_FINISH) 217- added opaque object for zalloc and zfree. 218- added deflateReset and inflateReset 219- added a variable zlib_version for consistency checking. 220- renamed the 'filter' parameter of deflateInit2 as 'strategy'. 221 Added Z_FILTERED and Z_HUFFMAN_ONLY constants. 222 223Changes in 0.4: 224- avoid "zip" everywhere, use zlib instead of ziplib. 225- suppress Z_BLOCK_FLUSH, interpret Z_PARTIAL_FLUSH as block flush 226 if compression method == 8. 227- added adler32 and crc32 228- renamed deflateOptions as deflateInit2, call one or the other but not both 229- added the method parameter for deflateInit2. 230- added inflateInit2 231- simplied considerably deflateInit and inflateInit by not supporting 232 user-provided history buffer. This is supported only in deflateInit2 233 and inflateInit2. 234 235Changes in 0.3: 236- prefix all macro names with Z_ 237- use Z_FINISH instead of deflateEnd to finish compression. 238- added Z_HUFFMAN_ONLY 239- added gzerror() 240