* Noteworthy changes in release 1.12 (2022-04-07) [stable]
** Changes in behavior
'gzip -l' no longer misreports file lengths 4 GiB and larger.
Previously, 'gzip -l' output the 32-bit value stored in the gzip
header even though that is the uncompressed length modulo 2**32.
Now, 'gzip -l' calculates the uncompressed length by decompressing
the data and counting the resulting bytes. Although this can take
much more time, nowadays the correctness pros seem to outweigh the
performance cons.
'zless' is no longer installed on platforms lacking 'less'.
** Bug fixes
zgrep applied to a crafted file name with two or more newlines
can no longer overwrite an arbitrary, attacker-selected file.
[bug introduced in gzip-1.3.10]
zgrep now names input file on error instead of mislabeling it as
"(standard input)", if grep supports the GNU -H and --label options.
'zdiff -C 5' no longer misbehaves by treating '5' as a file name.
[bug present since the beginning]
Configure-time options like --program-prefix now work.
* Noteworthy changes in release 1.11 (2021-09-03) [stable]
** Performance improvements
IBM Z platforms now support hardware-accelerated deflation.
1.0.3 (2022-03-28)
* *Fix* a number of memory leaks by freeing allocated liblzma data structures
(Issue Quintus#20 reported by xTRiM, PR win93#7 by Alex Gittemeier)
2022-01-24 Antonio Diaz Diaz <antonio@gnu.org>
* Version 1.23 released.
* Decompression time has been reduced by 5-12% depending on the file.
* main.cc (getnum): Show option name and valid range if error.
* Improve several descriptions in manual, '--help', and man page.
* lzip.texi: Change GNU Texinfo category to 'Compression'.
(Reported by Alfred M. Szmidt).
2022-01-22 Antonio Diaz Diaz <antonio@gnu.org>
* Version 1.13 released.
* Decompression time has been reduced by 5-12% depending on the file.
* main.c (getnum): Show option name and valid range if error.
2022-01-21 Antonio Diaz Diaz <antonio@gnu.org>
* Version 1.23 released.
* Decompression time has been reduced by 5-12% depending on the file.
* main_common.cc (getnum): Show option name and valid range if error.
* dump_remove.cc (dump_members): Check tty except for --dump=tdata.
* Option '-U, --unzcrash' now takes an argument ('1' or 'B<size>').
* mtester.cc (duplicate_buffer): Use an external buffer.
* repair.cc (debug_decompress): Continue decoding on CRC mismatch.
* unzcrash.cc: Make zcmp_command a string of unlimited size.
Use execvp instead of popen to avoid invoking /bin/sh.
Print byte or block position in messages.
* New file common.h.
* Improve several descriptions in manual, '--help', and man page.
* lziprecover.texi: Change GNU Texinfo category to 'Compression'.
(Reported by Alfred M. Szmidt).
0.17.0 (released 2021-01-18)
Backwards Compatibility Notes
ZstdCompressionWriter and ZstdDecompressionWriter now implement __iter__() and __next__(). The methods always raise io.UnsupportedOperation. The added methods are part of the io.IOBase abstract base class / interface and help ensure instances look like other I/O types.
The HASHLOG3_MAX constant has been removed since it is no longer defined in zstd 1.5.1.
Bug Fixes
The ZstdCompressionReader, ZstdCompressionWriter, ZstdDecompressionReader, and ZstdDecompressionWriter types in the C backend now tracks their closed attribute using the proper C type. Before, due to a mismatch between the C struct type and the type declared to Python, Python could read the wrong bits on platforms like s390x and incorrectly report the value of the closed attribute to Python.
Changes
Bundled zstd library upgraded from 1.5.0 to 1.5.1.
The C backend now exposes the symbols ZstdCompressionReader, ZstdCompressionWriter, ZstdDecompressionReader, and ZstdDecompressionWriter. This should match the behavior of the CFFI backend.
ZstdCompressionWriter and ZstdDecompressionWriter now implement __iter__ and __next__, which always raise io.UnsupportedOperation.
Documentation on thread safety has been updated to note that derived objects like ZstdCompressionWriter have the same thread unsafety as the contexts they were derived from.
v1.5.1 (Dec, 2021)
perf: rebalanced compression levels, to better match the intended speed/level curve, by @senhuang42
perf: faster huffman decoder, using x64 assembly, by @terrelln
perf: slightly faster high speed modes (strategies fast & dfast), by @felixhandte
perf: improved binary size and faster compilation times, by @terrelln
perf: new row64 mode, used notably in level 12, by @senhuang42
perf: faster mid-level compression speed in presence of highly repetitive patterns, by @senhuang42
perf: minor compression ratio improvements for small data at high levels, by @cyan4973
perf: reduced stack usage (mostly useful for Linux Kernel), by @terrelln
perf: faster compression speed on incompressible data, by @bindhvo
perf: on-demand reduced ZSTD_DCtx state size, using build macro ZSTD_DECODER_INTERNAL_BUFFER, at a small cost of performance, by @bindhvo
build: allows hiding static symbols in the dynamic library, using build macro, by @skitt
build: support for m68k (Motorola 68000's), by @cyan4973
build: improved AIX support, by @Helflym
build: improved meson unofficial build, by @eli-schwartz
cli : custom memory limit when training dictionary
cli : report advanced parameters information when compressing in very verbose mode (``-vv`)
This flag should be set for packages that import pkg_resources
and thus need setuptools after the build step.
Set this flag for packages that need it and bump PKGREVISION.
0.16.0
Backwards Compatibility Notes
Support for Python 3.5 has been dropped. Python 3.6 is now the minimum required Python version.
Changes
Bundled zstd library upgraded from 1.4.8 to 1.5.0.
manylinux2014_aarch64 wheels are now being produced for CPython 3.6+.
Wheels are now being produced for CPython 3.10.
Arguments to ZstdCompressor() and ZstdDecompressor() are now all optional in the C backend and an explicit None value is accepted. Before, the C backend wouldn't accept an explicit None value (but the CFFI backend would). The new behavior should be consistent between the backends
v3.1.10
Add skip existing when publishing to PyPi
v3.1.9
Revert to using created release events
v3.1.8
Update github actions trigger to use published release
v3.1.7
Update github actions trigger
v3.1.6
Trigger github actions on a release being made.
v3.1.5
Remove the push requirement for triggering PyPi pushes of artifacts.
v3.1.4
Shift wheel building to github actions
Disable Travis and Appveyor building
Disable Windows wheel builds which are failing with memory allocation problems with 64 bit on the github actions runners
Disable Aarch64 builds which are failing somewhere in the stream bindings tests
LZ4FrameFile.write()/LZ4FrameDecompressor.decompress() handle buffer protocol correctly
Pass source_size kwarg through from frame.open to LZ4FrameFile instance
Add readall to LZ4FrameFile and use it on python 3.10
The Unarchiver is an archive unpacker program with support for lots of
archive formats including ZIP, RAR, 7z, tar, gzip, bzip2, LZMA, XZ,
CAB, MSI, NSIS, EXE, ISO, BIN, split file formats, as well as the old
Stuffit, Stuffit X, DiskDouble, Compact Pro, Packit, cpio, compress
(.Z), ARJ, ARC, PAK, ACE, ZOO, LZH, ADF, DMS, LZX, PowerPacker, LBR,
Squeeze, Crunch, and other old/obscure formats.
It can also handle filenames in foreign character sets, created with
non-English versions of some operating systems, and is particularly
useful for processing CJK archives correctly.
This package contains command-line tools for The Unarchiver, namely
lsar and unar.
1.0.1 (2021-11-13)
* Fix a buffer overflow error in XZ::Stream (PR Quintus#17 by genail)
* Fix an issue with transcode_options that was introduced by Ruby 3 (PR
win93#1 by Alex Gittemeier)
* Update project README, gemspec, and other metadata to reflect a change in
maintainership. All prior releases were released by Marvin Gülker.
Changelog from AN-2021-09-01:
- tartest: Added support for gettext() based translations
The string "Jörg Schilling" is now separate and in a gettext() call.