diff --git a/Cargo.lock b/Cargo.lock index 1621202..837f7f7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -653,73 +653,6 @@ dependencies = [ "getrandom", ] -[[package]] -name = "num" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43db66d1170d347f9a065114077f7dccb00c1b9478c89384490a3425279a4606" -dependencies = [ - "num-bigint", - "num-complex", - "num-integer", - "num-iter", - "num-rational", - "num-traits", -] - -[[package]] -name = "num-bigint" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-complex" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02e0d21255c828d6f128a1e41534206671e8c3ea0c62f32291e808dc82cff17d" -dependencies = [ - "num-traits", -] - -[[package]] -name = "num-integer" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" -dependencies = [ - "autocfg", - "num-traits", -] - -[[package]] -name = "num-iter" -version = "0.1.43" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-rational" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" -dependencies = [ - "autocfg", - "num-bigint", - "num-integer", - "num-traits", -] - [[package]] name = "num-traits" version = "0.2.15" @@ -773,7 +706,6 @@ dependencies = [ "libc", "linked-hash-map", "lzzzz", - "num", "once_cell", "parse-display", "proptest", diff --git a/Cargo.toml b/Cargo.toml index c8dff06..d7291ee 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -23,7 +23,6 @@ ignore = "0.4.20" libc = "0.2.140" linked-hash-map = "0.5.6" lzzzz = "1.0.4" -num = "0.4.0" once_cell = "1.17.1" rayon = "1.7.0" same-file = "1.0.6" diff --git a/src/commands/compress.rs b/src/commands/compress.rs index f8da228..6d941ac 100644 --- a/src/commands/compress.rs +++ b/src/commands/compress.rs @@ -46,37 +46,40 @@ pub fn compress_files( // instead of the regular default that flate2 uses gzp::par::compress::ParCompress::::builder() .compression_level( - level.map_or_else(Default::default, |l| gzp::Compression::new(num::clamp(l as u32, 1, 9))), + level.map_or_else(Default::default, |l| gzp::Compression::new((l as u32).clamp(0, 9))), ) .from_writer(encoder), ), Bzip => Box::new(bzip2::write::BzEncoder::new( encoder, - level.map_or_else(Default::default, |l| { - bzip2::Compression::new(num::clamp(l as u32, 1, 9)) - }), + level.map_or_else(Default::default, |l| bzip2::Compression::new((l as u32).clamp(1, 9))), )), Lz4 => Box::new(lzzzz::lz4f::WriteCompressor::new( encoder, lzzzz::lz4f::PreferencesBuilder::new() - .compression_level(level.map_or(0, |l| num::clamp(l as i32, 1, 12))) + .compression_level(level.map_or(0, |l| (l as i32).clamp(1, lzzzz::lz4f::CLEVEL_MAX))) .build(), )?), Lzma => Box::new(xz2::write::XzEncoder::new( encoder, - level.map_or(6, |l| num::clamp(l as u32, 0, 9)), + level.map_or(6, |l| (l as u32).clamp(0, 9)), )), Snappy => Box::new( gzp::par::compress::ParCompress::::builder() .compression_level(gzp::par::compress::Compression::new( - level.map_or_else(Default::default, |l| num::clamp(l as u32, 0, 9)), + level.map_or_else(Default::default, |l| (l as u32).clamp(0, 9)), )) .from_writer(encoder), ), Zstd => Box::new( - zstd::stream::write::Encoder::new(encoder, level.map_or(0, |l| num::clamp(l as i32, 1, 22))) - .unwrap() - .auto_finish(), + zstd::stream::write::Encoder::new( + encoder, + level.map_or(0, |l| { + (l as i32).clamp(zstd::zstd_safe::min_c_level(), zstd::zstd_safe::max_c_level()) + }), + ) + .unwrap() + .auto_finish(), ), Tar | Zip => unreachable!(), };