mdsteele / rust-cab

Rust library for encoding/decoding Windows cabinet (.cab) files
MIT License
15 stars 8 forks source link

Implement LZX support. #8

Closed DrChat closed 3 years ago

DrChat commented 3 years ago

This is a set of changes to implement LZX decompression support, as well as a few other misc. improvements:

Note that this changeset depends on Lonami/lzxd#4, and the test I've added won't succeed until that pull request is merged upstream.

This PR fixes #7.

mdsteele commented 3 years ago

Thanks for the PR! I hadn't realized that an LZX crate now exists.

Could you also update the support table in the crate-level doc comment in lib.rs?

DrChat commented 3 years ago

Could you also update the support table in the crate-level doc comment in lib.rs?

Sure! Should I say anything about LZX only being supported for decompression?

mdsteele commented 3 years ago

Yes, it would be good to make clear in the table that LZX is only supported for decompression, not compression (whereas the other modes support both or neither). Perhaps by having two separate columns for compression/decompression support, or by writing e.g. "Decompression only" in the "Supported" column for LZX, or something.

DrChat commented 3 years ago

Okay - I went ahead and amended the last commit with that change! This is good for merge now, though we might wait a bit longer for the author of lzxd to push the updates up to crates.io.

DrChat commented 3 years ago

Alrighty - this is ready to go. lzxd has been updated.

mdsteele commented 3 years ago

Thanks again for implementing this!