Bugfix release for lrzip not fully compressing files on version 0.640 with no other changes.
Downloads, including access to standalone static binary:
Git tree:
https://github.com/ckolivas/lrzip
Enjoy!
お楽しみ下さい
-ck
A development blog of what Con Kolivas is doing with code at the moment with the emphasis on linux kernel, MuQSS, BFS and -ck.
Bugfix release for lrzip not fully compressing files on version 0.640 with no other changes.
Downloads, including access to standalone static binary:
Git tree:
https://github.com/ckolivas/lrzip
Enjoy!
お楽しみ下さい
-ck
I haven't had much time till recently to dedicate to my application lrzip, but I have a soft spot for it since I use it extensively so I couldn't let it go to bitrot, and luckily I'm between other projects so have spent a few days on it. Here is an updated version with numerous bugfixes, some for security issues, some for crashes on corrupt archives, some to avoid creating corrupt archives, some for build issues, and random other bugfixes too numerous to list in detail. So this is a stable bug release and I encourage everyone to update.
Downloads, including access to standalone static binary:
Git tree:
https://github.com/ckolivas/lrzip
The only change to its behaviour is it now requires liblz4-dev to build because it uses the super fast lz4 compression algorithm for compressibility testing - it does NOT use it for any compressed archives as this would be incompatible with the existing format, and almost certainly will not offer any advantage in speed over lzo because the bulk of the time is the rzip pre-compression library stage. It also now can build the crc checking as an assembly component on x86_64, though this is largely not going to affect speed in any significant fashion. Long term I will probably remove this ancient and not-very reliable checking from future versions if I break the existing format. I will also probably drop MD5 sums.
Peter Hyman has also been working behind the scenes to add countless little features to lrzip for the duration that I haven't given it any attention and has been running his own tree with all his changes.
https://github.com/pete4abw/lrzip/
Alas most of those are new features and break the existing lrzip file format, and have come with new issues of their own that would require quite some effort to blend into the existing codebase and iron out bugs. I'd also want new archives to be created compatible with older versions as much as possible preferentially so compatibility code would need to be added.
Thus I concentrated entirely on just bringing out another stable release before looking at any of his code, including having to roll back some of his changes I'd already incorporated into my master tree. In time I hope to get to his changes to incorporate them.
Enjoy!
お楽しみ下さい
-ck
Fixed -O not working on lrztar.Enjoy!
Made it less likely to run out of ram when working with STDIN/OUT.
Fixed running out of ram when using -U on huge files.
Fixed corrupt archives being generated from incompressible data.
Fixed corrupt archives being generated from very small files.
Fixed endianness on various platforms for MD5 calculation to work.
Fixed rare corruption when compressing with lzma from STDIN.
Fixed all blank data being generated when compressing from STDIN on OSX.
Performance micro-optimisations.
Fixed corrupt archive being generated when all the same non-zero bytes exist on
large files.
Compression Size Percentage Compress Time Decompress Time None 10737418240 100.0 gzip 2772899756 25.8 3m56s 2m15s pbzip2 2705814394 25.2 1m41s 1m46s lrzip 1095337763 10.2 2m54s 2m21sNote that with enough ram and CPU, lrzip is actually faster than gzip (which does compression in place) and comparable on decompression, despite a huge increase in compression. pbzip2 is faster than both but its compression is almost no better than gzip.
Compression Size Percentage Compress Decompress None 430612480 100 7z 63636839 14.8 2m28s 0m6.6s xz 63291156 14.7 4m02s 0m8.7 lrzip 64561485 14.9 1m12s 0m4.3s lrzip -z 51588423 12.0 2m02s 2m08s lrzip -l 137515997 31.9 0m14s 0m2.7s lrzip -g 86142459 20.0 0m17s 0m3.0s lrzip -b 72103197 16.7 0m21s 0m6.5s bzip2 74060625 17.2 0m48s 0m12.8s gzip 94512561 21.9 0m17s 0m4.0s
Compression Size Percentage Compress Time Decompress Time None 10737418240 100.0 gzip 2772899756 25.8 05m47s 2m46s bzip2 2704781700 25.2 16m15s 6m19s xz 2272322208 21.2 50m58s 3m52s 7z 2242897134 20.9 26m36s 5m41s lrzip 1372218189 12.8 10m23s 2m53s lrzip -U 1095735108 10.2 08m44s 2m45s lrzip -l 1831894161 17.1 04m53s 2m37s lrzip -lU 1414959433 13.2 04m48s 2m38s lrzip -zU 1067169419 9.9 39m32s 39m46s