[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Lzip-bug] Lzlib 1.12 released
From: |
Antonio Diaz Diaz |
Subject: |
[Lzip-bug] Lzlib 1.12 released |
Date: |
Wed, 06 Jan 2021 17:48:25 +0100 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i586; en-US; rv:1.9.1.19) Gecko/20110420 SeaMonkey/2.0.14 |
I am pleased to announce the release of lzlib 1.12.
Lzlib is a compression library providing in-memory LZMA compression and
decompression functions, including integrity checking of the decompressed
data. The compressed data format used by lzlib is the lzip format. Lzlib is
written in C. Lzlib is free software distributed under a 2-clause BSD license.
Compression/decompression is done by repeatedly calling a couple of
read/write functions until all the data have been processed by the library.
This interface is safer and less error prone than the traditional zlib
interface.
The homepage is at http://www.nongnu.org/lzip/lzlib.html
The sources can be downloaded from
http://download.savannah.gnu.org/releases/lzip/lzlib/
The sha256sums are:
238469af158a5a52e480907014dd90fe8ae5a78070473e18634fb74ac17cfcd8
lzlib-1.12.tar.lz
8e5d84242eb52cf1dcc98e58bd9ba8ef1aefa501431abdd0273a22bf4ce337b1
lzlib-1.12.tar.gz
This release is also GPG signed. You can download the signature by appending
'.sig' to the URL. If the 'gpg --verify' command fails because you don't
have the required public key, then run this command to import it:
gpg --keyserver keys.gnupg.net --recv-keys 8FE99503132D7742
Key fingerprint = 1D41 C14B 272A 2219 A739 FA4F 8FE9 9503 132D 7742
Changes in version 1.12:
* The value of the version test macro 'LZ_API_VERSION' is now defined as
1000 * major + minor. For version 1.12 it is 1012. This change does not
affect the soversion.
* The new function 'LZ_api_version', which returns the LZ_API_VERSION of
the library object code being used at run time, has been added to lzlib.
* If end of file is found at member trailer or EOS marker,
'LZ_decompress_errno' now returns 'LZ_unexpected_eof' instead of
'LZ_data_error'.
* Decompression speed has been slightly increased.
* A bug has been fixed in minilzip that falsely reported a library stall
when decompressing a file with empty members.
* The new option '--check-lib', which compares the version of lzlib used
to compile minilzip with the version actually being used at run time, has
been added to minilzip.
* Minilzip now reports an error if a file name is empty (minilzip -t "").
* Option '-o, --output' now behaves like '-c, --stdout', but sending the
output unconditionally to a file instead of to standard output. See the new
description of '-o' in the manual. This change is not backwards compatible.
Therefore commands like:
minilzip -o foo.lz - bar < foo
must now be split into:
minilzip -o foo.lz - < foo
minilzip bar
or rewritten as:
minilzip - bar < foo > foo.lz
* When using '-c' or '-o', minilzip now checks whether the output is a
terminal only once.
* Minilzip now does not even open the output file if the input file is a
terminal.
* The words 'decompressed' and 'compressed' have been replaced with the
shorter 'out' and 'in' in the verbose output of minilzip when decompressing
or testing.
* It has been documented in the manual that 'LZ_(de)compress_close' and
'LZ_(de)compress_errno' can be called with a null argument.
* It has been documented in the manual that the LZMA marker '3' ("Sync
Flush" marker) is not allowed in lzip files. Marker '3' is a device for
interactive communication between applications using lzlib, but is useless
and wasteful in a file, and is excluded from the media type
'application/lzip'. The LZMA marker '2' ("End Of Stream" marker) is the only
marker allowed in lzip files. See
http://tools.ietf.org/html/draft-diaz-lzip-02#section-3
* It has been documented in the manual that not calling
'LZ_decompress_finish' prevents lzlib from detecting a truncated member.
* It has been documented in the manual that 'LZ_decompress_read' returns
at least once per member so that 'LZ_decompress_member_finished' can be
called (and trailer data retrieved) for each member, even for empty members.
Therefore, 'LZ_decompress_read' returning 0 does not mean that the end of
the stream has been reached.
* It has been documented in the manual that 'LZ_(de)compress_read' can be
called with a null buffer pointer argument.
* Real code examples for the most common uses of the library have been
added to the tutorial.
* 'bbexample.c' has been simplified to not use 'LZ_(de)compress_write_size'.
* 'lzcheck' now accepts options '-s' (to check LZ_compress_sync_flush)
and '-m' (to check member by member decompression).
* 'lzcheck.c' now also tests member by member decompression without
intermediate calls to 'LZ_decompress_finish'.
* The new file 'ffexample.c', containing example functions for
file-to-file compression/decompression, has been added to the distribution.
* The commands needed to extract files from a tar.lz archive have been
documented in the output of 'minilzip --help' and in the man page.
* 'make install-bin' no longer installs the minilzip man page. This is to
prevent 'make install-bin install-man-compress' from installing the man page
twice before compressing it.
* The new targets 'install-bin-compress' and
'install-bin-strip-compress', which install a (stripped) minilzip and a
compressed man page, have been added to the Makefile.
* 9 new test files have been added to the testsuite.
Please send bug reports and suggestions to lzip-bug@nongnu.org
Regards,
Antonio Diaz, lzlib author and maintainer.
Self-determination is a human right. Free Catalan political prisoners.
--
If you care about data safety and long-term archiving, please consider using
lzip. See http://www.nongnu.org/lzip/lzip_benchmark.html
http://www.nongnu.org/lzip/manual/lzip_manual.html#Quality-assurance and
http://www.nongnu.org/lzip/safety_of_the_lzip_format.html Thanks.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Lzip-bug] Lzlib 1.12 released,
Antonio Diaz Diaz <=