1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- -*- org -*-
- #+TITLE: Guile-zlib NEWS – history of user-visible changes
- #+STARTUP: content hidestars
- Copyright © 2021, 2024-2025 Ludovic Courtès <ludo@gnu.org>
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved.
- Please report bugs at <https://notabug.org/guile-zlib/guile-zlib>.
- * Changes in 0.2.2 (compared to 0.2.1)
- ** Fix ‘uncompress’ procedure on 32-bit systems
- The ‘uncompress’ procedure would reportedly cause crashes on 32-bit
- PowerPC systems and could lead to buffer overflows on other 32-bit
- systems.
- ** Adjust test for zlib-ng
- The “gzip output port, error” test would fail when using zlib-ng instead
- of zlib. This is now fixed.
- * Changes in 0.2.1 (compared to 0.2.0)
- ** Fix wrong-type-argument error that could occur in ‘uncompress’
- ‘uncompress’ could throw to ‘wrong-type-arg’, “expecting exact integer”,
- depending on the size of its input bytevector.
- * Changes in 0.2.0 (compared to 0.1.0)
- ** Improve heuristics of bytevector size calculation in ‘uncompress’
- ‘uncompress’ now makes a better job at guessing the size of the
- output bytevector.
- ** ‘make-zlib-input-port’ & co. inherit the input port’s encoding
- ‘make-gzip-input-port’, ‘make-gzip-output-port’,
- ‘make-zlib-output-port’, and ‘make-zlib-input-port’ now inherit the
- encoding of their input port.
- ** ‘zlib-error’ exceptions from gz* procedures now include accurate info
- ‘zlib-error’ exceptions thrown by the gz* family of procedures now
- include a correct error code and optionally an error message.
- Exceptions now have one of the following forms:
- (zlib-error PROC)
- (zlib-error PROC CODE)
- (zlib-error PROC CODE MESSAGE)
- ** ‘call-with-*’ procedures no longer use ‘dynamic-wind’
- Previously ‘call-with-zlib-input-port’ and other similar procedures
- would use ‘dynamic-wind’ to close the zlib/gzip port both for local
- and non-local exits from the given procedure. Since this does not
- play well with delimited continuations, notably used in Fibers, this
- use of ‘dynamic-wind’ has been replaced by a ‘catch #t’ form.
- * Changes in 0.1.0 (compared to 0.0.1)
- ** New procedures: ‘make-zlib-input-port’, ‘make-zlib-output-port’
- These procedures and the companion ‘call-with-zlib-*’ procedures
- provide an alternative to the ‘make-gzip-*’ and ‘call-with-gzip-*’
- procedures; unlike those, they operate on all types of ports, not
- just file ports.
- These procedures also support multiple formats: raw “deflate”,
- “zlib”, and “gzip”.
- ** New ‘compress’ and ‘uncompress’ procedures
- These procedures support compression/decompression of individual
- bytevectors.
|