NEWS 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. -*- org -*-
  2. #+TITLE: Guile-zlib NEWS – history of user-visible changes
  3. #+STARTUP: content hidestars
  4. Copyright © 2021, 2024 Ludovic Courtès <ludo@gnu.org>
  5. Copying and distribution of this file, with or without modification,
  6. are permitted in any medium without royalty provided the copyright
  7. notice and this notice are preserved.
  8. Please report bugs at <https://notabug.org/guile-zlib/guile-zlib>.
  9. * Changes in 0.2.1 (compared to 0.2.0)
  10. ** Fix wrong-type-argument error that could occur in ‘uncompress’
  11. ‘uncompress’ could throw to ‘wrong-type-arg’, “expecting exact integer”,
  12. depending on the size of its input bytevector.
  13. * Changes in 0.2.0 (compared to 0.1.0)
  14. ** Improve heuristics of bytevector size calculation in ‘uncompress’
  15. ‘uncompress’ now makes a better job at guessing the size of the
  16. output bytevector.
  17. ** ‘make-zlib-input-port’ & co. inherit the input port’s encoding
  18. ‘make-gzip-input-port’, ‘make-gzip-output-port’,
  19. ‘make-zlib-output-port’, and ‘make-zlib-input-port’ now inherit the
  20. encoding of their input port.
  21. ** ‘zlib-error’ exceptions from gz* procedures now include accurate info
  22. ‘zlib-error’ exceptions thrown by the gz* family of procedures now
  23. include a correct error code and optionally an error message.
  24. Exceptions now have one of the following forms:
  25. (zlib-error PROC)
  26. (zlib-error PROC CODE)
  27. (zlib-error PROC CODE MESSAGE)
  28. ** ‘call-with-*’ procedures no longer use ‘dynamic-wind’
  29. Previously ‘call-with-zlib-input-port’ and other similar procedures
  30. would use ‘dynamic-wind’ to close the zlib/gzip port both for local
  31. and non-local exits from the given procedure. Since this does not
  32. play well with delimited continuations, notably used in Fibers, this
  33. use of ‘dynamic-wind’ has been replaced by a ‘catch #t’ form.
  34. * Changes in 0.1.0 (compared to 0.0.1)
  35. ** New procedures: ‘make-zlib-input-port’, ‘make-zlib-output-port’
  36. These procedures and the companion ‘call-with-zlib-*’ procedures
  37. provide an alternative to the ‘make-gzip-*’ and ‘call-with-gzip-*’
  38. procedures; unlike those, they operate on all types of ports, not
  39. just file ports.
  40. These procedures also support multiple formats: raw “deflate”,
  41. “zlib”, and “gzip”.
  42. ** New ‘compress’ and ‘uncompress’ procedures
  43. These procedures support compression/decompression of individual
  44. bytevectors.