Release Notes: A divide-by-zero error was fixed when a file is smaller than the page size and compressed with -U. uclibc doesn't return valid values via sysconf for RAM, so this is worked around by reading /proc if possible. More 32-bit workarounds were made. Threads now spawn at regular intervals along chunk size, thus speeding up compression and decompression. Decompression threading was changed to have a group of threads for each stream (2 in total), thus making mulithreaded decompression more robust. bzip2 is used as a fallback compression when lzma fails due to internal memory errors as may happen on 32-bit systems.
Release Notes: The program now copes when there are multiple stream 0 entries per chunk, which would cause a failure on massive file decompression. A mistake in which lzma windows were being set far too small at all times was fixed. The nice level of the main process was decreased compared to back end threads as it tends to be the rate limiting step.
Release Notes: Sane defaults are now chosen for memory usage because Linux ludicriously overcommits. A sliding mmap is used for compression windows greater than 2/3 RAM. Testing of allocatable RAM was consolidated and simplified. Minor tweaks were made to output. The size of the high buffer in sliding mmap was rounded up to one page. A little more was squeezed out of 32-bit compression windows. A problem with sliding mmap from not working from the 2nd pass onwards, causing a slowdown of death, was fixed.
Release Notes: This release changes the versioning scheme back to one that distributions prefer.
Release Notes: The Darwin build was fixed again. Cases of extreme RAM usage on 32-bit failing was fixed by limiting zpaq to 600MB windows as well. Page size is checked if possible instead of assuming it's always 4k. The progress output was improved. Failure to chmod and failure to set nice level were changed to warnings only. A distinction between stderr messages and output was standardized.
Release Notes: This release implements unlimited sized compression windows not constrained by RAM through a "sliding mmap" design. It modifies the default compression windows to find the largest possible safely addressable RAM instead of guessing. These changes both have major compression improvements on files larger than RAM. Darwin builds have been fixed. Improved screen output. More checks and error messages. Numerous fixes, micro-optimisations, and cleanups. Updated docs and benchmarks.
Release Notes: Variable byte width offsets are now used, and match lengths were shrunk for better compression and speed. A new file format was implemented. Memory initialization was rewritten to find the maximum window size possible without failing. Up to 44-bit sized offsets can be addressed on 32-bit machines on decompression. Compression from stdin without temporary files is now possible. More robust fatal warnings were provided. There were numerous cleanups and tidying of code, and the documentation and comments were updated.
Release Notes: A minor fix for installing when DESTDIR is set.
Release Notes: A lrzuntar wrapper was added for extracting whole tarball directories. Minor fixes were made to prevent lrztar from recompressing .tar.lrz files. Path name handling was fixed in lrztar. Compiler fixes were made for Solaris. The nasm program test was fixed. Some error handling was fixed and the man pages were updated.
Release Notes: This release fixes the progress update in ZPAQ to not update with each byte, which was wasting heaps of CPU time. The progress update has been changed to show which of 2 chunks are being compressed in ZPAQ.