[package]
edition = "2024"
rust-version = "1.85.0"
name = "ouch"
version = "0.7.1"
authors = [
"João Marcos <marcospb19@hotmail.com>",
"Vinícius Rodrigues Miguel <vrmiguel99@gmail.com>",
]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A command-line utility for easily compressing and decompressing files and directories."
readme = "README.md"
keywords = [
"decompression",
"compression",
"cli",
]
categories = [
"command-line-utilities",
"compression",
"encoding",
]
license = "MIT"
repository = "https://github.com/ouch-org/ouch"
[features]
default = [
"unrar",
"use_zlib",
"use_zstd_thin",
"bzip3",
]
use_zlib = [
"flate2/zlib",
"gzp/deflate_zlib",
"zip/deflate-flate2-zlib",
]
use_zstd_thin = ["zstd/thin"]
[[bin]]
name = "ouch"
path = "src/main.rs"
[[test]]
name = "integration"
path = "tests/integration.rs"
[[test]]
name = "mime"
path = "tests/mime.rs"
[[test]]
name = "ui"
path = "tests/ui.rs"
[[test]]
name = "utils"
path = "tests/utils.rs"
[dependencies.brotli]
version = "7.0.0"
[dependencies.bstr]
version = "1.10.0"
features = ["std"]
default-features = false
[dependencies.bytesize]
version = "1.3.0"
[dependencies.bzip2]
version = "0.4.4"
[dependencies.bzip3]
version = "0.9.0"
features = ["bundled"]
optional = true
[dependencies.clap]
version = "4.5.20"
features = [
"derive",
"env",
]
[dependencies.file_type_enum]
version = "3.0.1"
[dependencies.filetime_creation]
version = "0.2"
[dependencies.flate2]
version = "1.0.30"
default-features = false
[dependencies.fs-err]
version = "2.11.0"
[dependencies.gzp]
version = "2.0.1"
features = ["snappy_default"]
default-features = true
[dependencies.ignore]
version = "0.4.25"
[dependencies.is_executable]
version = "1.0.5"
[dependencies.libc]
version = "0.2.155"
[dependencies.linked-hash-map]
version = "0.5.6"
[dependencies.lz4_flex]
version = "0.11.6"
[dependencies.lzma-rust2]
version = "0.14.2"
[dependencies.num_cpus]
version = "1.16.0"
[dependencies.rayon]
version = "1.10.0"
[dependencies.same-file]
version = "1.0.6"
[dependencies.sevenz-rust2]
version = "0.19.1"
features = [
"compress",
"aes256",
]
[dependencies.snap]
version = "1.1.1"
[dependencies.strum]
version = "0.28.0"
features = ["derive"]
[dependencies.tar]
version = "0.4.42"
[dependencies.tempfile]
version = "3.10.1"
[dependencies.time]
version = "0.3.36"
default-features = false
[dependencies.unrar]
version = "0.5.7"
optional = true
[dependencies.xz2]
version = "0.1.7"
[dependencies.zip]
version = "6"
features = [
"time",
"aes-crypto",
]
default-features = false
[dependencies.zstd]
version = "0.13.2"
features = ["zstdmt"]
default-features = false
[dev-dependencies.anyhow]
version = "1.0.102"
[dev-dependencies.assert_cmd]
version = "2.0.14"
[dev-dependencies.glob]
version = "0.3.2"
[dev-dependencies.infer]
version = "0.16.0"
[dev-dependencies.insta]
version = "1.40.0"
features = ["filters"]
[dev-dependencies.itertools]
version = "0.14.0"
[dev-dependencies.memchr]
version = "2.7.4"
[dev-dependencies.parse-display]
version = "0.9.1"
[dev-dependencies.pretty_assertions]
version = "1.4.1"
[dev-dependencies.proptest]
version = "1.5.0"
[dev-dependencies.rand]
version = "0.8.5"
features = [
"small_rng",
"std",
]
default-features = false
[dev-dependencies.regex]
version = "1.10.4"
[dev-dependencies.test-strategy]
version = "0.4.0"
[build-dependencies.clap]
version = "4.5.20"
features = [
"derive",
"env",
"string",
]
[build-dependencies.clap_complete]
version = "4.5.28"
[build-dependencies.clap_complete_nushell]
version = "4.5.5"
[build-dependencies.clap_mangen]
version = "0.2.24"
[lints.clippy]
too_many_arguments = "allow"
type_complexity = "allow"
[profile.fast]
opt-level = 2
lto = false
codegen-units = 32
incremental = true
inherits = "release"
strip = false
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
strip = true