Release Notes: Decompression was extracted from the split-work-multiplex skeleton into a separate module. Compression was added. The project has been renamed to lbzip2. The reordering of processed sub-blocks happens entirely in the multiplexer now, changing the time complexity from O(log n) to O(1) inside the critical section among the workers and the muxer. The command line conforms to utility syntax guidelines. Lbzip2 queries the number of online processors if sysconf() supports it. Block serial numbers have fixed 64-bit width. The README file was updated. The development status has been advanced to Beta.
Release Notes: This release adds a new feature: When decompressing with both --force and --stdout options given, lbzip2 will copy files which are not in bzip2 format, instead of reporting an invalid file format. This release also fixes several minor bugs.
Release Notes: The decompressor was made more bzip2-compatible. All valid bzip2 files should now be properly decompressed by lbzip2. Memory allocation was reduced significantly. Compression performance was improved by the inclusion of new block-sorting code using the divsufsort algorithm. This version also fixes a few other minor bugs.
Release Notes: This release fixes a use-after-free security vulnerability introduced in version 2.0. All users are recommended to update to version 2.1.
Release Notes: In this release, lbzip2 writes a single compressed stream per bz2 file instead of multiple concatenated streams. It doesn't decompress streams embedded within trailing garbage. It detects and rejects more kinds of invalid bz2 files. Relying on the independent bzip2 stack written by the new maintainer, lbzip2-2.0 features significantly improved (de)compression speed and robustness. In verbose mode, the compression ratio and progress information is displayed for each file. Decompression failures result in more detailed messages now. Lbzip2-2.x is licensed under the GPL v3.0 or any later version.
Release Notes: In this release, if lbzip2 intends to exit with status 1 due to any fatal error, but any SIGPIPE or SIGXFSZ with an inherited SIG_DFL action was generated for lbzip2 previously, then lbzip2 terminates by way of one of the said signals, after cleaning up any interrupted output file. This should improve compatibility with GNU tar when it spawns lbzip2 as a filter and closes the pipe between them early, before it receives an EOF from lbzip2.