summaryrefslogtreecommitdiff
path: root/guix/lzlib.scm
AgeCommit message (Collapse)Author
2020-01-16lzlib: Define 'dictionary-size+match-length-limit'.Ludovic Courtès
* guix/lzlib.scm (%compression-levels): Splice the rest of each element. (dictionary-size+match-length-limit): New procedure. (make-lzip-output-port, make-lzip-input-port/compressed): Use it. * tests/lzlib.scm ("Bytevector of size relative to Lzip internal buffers (2 * dictionary)"): Use 'dictionary-size+match-length-limit' instead of 'assoc-ref'.
2019-06-01lzlib: 'make-lzip-input-port' better handles end of decompression.Ludovic Courtès
Suggested by Pierre Neidhardt <mail@ambrevar.xyz>. * guix/lzlib.scm (lzread!): Call 'lz-decompress-finish' when 'feed-decoder!' returns EOF. Call 'lz-decompress-finished?' to determine end of compression.
2019-05-27lzlib: 'lzread!' never returns more than it was asked for.Ludovic Courtès
Fixes a bug whereby 'lzread!' could return more than COUNT. * guix/lzlib.scm (lzread!): Rewrite in a semi-functional style.
2019-05-27lzlib: Add 'make-lzip-input-port/compressed'.Ludovic Courtès
* guix/lzlib.scm (lzwrite!, make-lzip-input-port/compressed): New procedures. * tests/lzlib.scm ("make-lzip-input-port/compressed"): New test. * guix/tests.scm (%seed): Export.
2019-05-27lzlib: Adjust 'lz-compress-read' docstring.Ludovic Courtès
* guix/lzlib.scm (lz-compress-read): The integer return can be zero; adjust docstring accordingly.
2019-05-07guix: Simplify and robustify lzread!.Pierre Neidhardt
* guix/lzlib.scm (lzread!): Do it. Previously lzread! would fail if COUNT was bigger than (lz-decompress-write-size). This is possible if a previous call to lzread! didn't empty the LZ_decompress input buffer (e.g. BV was too small to fit all the data).
2019-05-06Add (guix lzlib).Pierre Neidhardt
* guix/lzlib.scm, tests/lzlib.scm: New files. * Makefile.am (MODULES): Add guix/lzlib.scm. (SCM_TESTS): Add tests/lzlib.scm. * m4/guix.m4 (GUIX_LIBLZ_LIBDIR): New macro. * configure.ac (LIBLZ_LIBDIR): Use it. Define and substitute 'LIBLZ'. * guix/config.scm.in (%liblz): New variable. * guix/self.scm (make-config.scm): Add TODO comment. Co-authored-by: Ludovic Courtès <ludo@gnu.org>