29 unstable releases
0.15.1 | Jul 16, 2024 |
---|---|
0.14.3 | May 26, 2023 |
0.14.1 | Mar 21, 2023 |
0.14.0 | Nov 20, 2022 |
0.1.0 | Apr 25, 2019 |
#70 in Compression
746 downloads per month
Used in 14 crates
(9 directly)
81KB
1.5K
SLoC
compress-tools
The compress-tools
crate aims to provide a convenient and easy to use set
of methods which builds on top of libarchive
exposing a small set of it’s
functionalities.
Platform | Build Status |
---|---|
Linux - x86_64 | |
macOS - x86_64 | |
Windows - x86_64 |
Dependencies
You must have libarchive
, 3.2.0 or newer, properly installed on your
system in order to use this. If building on *nix and Windows GNU
systems, pkg-config
is used to locate the libarchive
; on Windows
MSVC, vcpkg
will be used to locating the libarchive
.
The minimum supported Rust version is 1.59.
Features
This crate is capable of extracting:
- compressed files
- archive files
- single file from an archive
For example, to extract an archive file it is as simple as:
use compress_tools::*;
use std::fs::File;
use std::path::Path;
let mut source = File::open("tree.tar.gz")?;
let dest = Path::new("/tmp/dest");
uncompress_archive(&mut source, &dest, Ownership::Preserve)?;
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or https://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or https://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~0.3–9MB
~83K SLoC