Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[feature] Include indexed_bzip2 classes and CLI method in rapidgzip m…
…odule rapidgzip was split off from indexed_bzip2 because it adds many dependencies and makes the build process more error-prone. The other way around, indexed_bzip2 is fully self-contained, relatively small because of fewer precomputed lookup tables. Ergo, there is basically no downside to including it with rapidgzip and has the upside that, in the future, ratarmount might only have to depend on rapidgzip when/if it gets zstd or even lz4 support. This adds ~15% overhead to the compressed and uncompressed precompiled wheels and binaries: zipinfo on rapidgzip 0.10.3 wheel: 35230512 rapidgzip.cpython-310-x86_64-linux-gnu.so 8 files, 35266211 bytes uncompressed, 7523567 bytes compressed: 78.7% zipinfo on rapidgzip wheel with indexed_bzip2: 39876504 rapidgzip.cpython-310-x86_64-linux-gnu.so 8 files, 39915164 bytes uncompressed, 8936562 bytes compressed: 77.6% zipinfo on indexed_bzip2 1.5.0: 12061016 indexed_bzip2.cpython-310-x86_64-linux-gnu.so 8 files, 12088983 bytes uncompressed, 3795195 bytes compressed: 68.6% Notably, this merge saves ~15% when comparing it to having both installed, which is helpful for the AppImage. The versioning of indexed_bzip2 is not easily accessible via the rapidgzip module, it can be thought of as assuming the one by rapidgzip. The rapidgzip.open method does not (yet) recognize bzip2 files. This is one step towards the unification mentioned in: Rogdham/python-xz#3
- Loading branch information