Decompress
A library that supports decompression of archives in multiple formats, inspired by ergonomics from Node's decompress.
- Includes a default stack of decompressors supporting:
zip,tar,tar.gz,tar.bz2,tar.xz,tar.zst(zstd compression),ar(Unix Archive) - Build your own decompressors and add them
- Compose a custom stack (exclude compressors, respond to different file extensions)
- Use
cargofeatures to avoid compiling formats you don't need
Dependency
[]
= "0.1.0"
Usage
Default use:
decompress;
Strip the first component of all paths in the archive (for when you have a wrapper folder you don't need):
decompress;
A micro optimization:
let decompressor = default
// use decompressor
// decompressor.decompress(...)
Build your own stack:
use Regex;
let decompressor = build;
// use decompressor
// decompressor.decompress(...)
It's also possible to filter unwanted files, similar to nodejs decompress
let decompressor = default;
let res = decompressor.decompress;
Mapping paths is also supported
let decompressor = default;
let res = decompressor.decompress;
Copyright
Copyright (c) 2022 @jondot. See LICENSE for further details.