[package]
edition = "2024"
rust-version = "1.93.0"
name = "ouch"
version = "0.8.0"
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-rs",
"gzp/deflate_rust",
"zip/deflate-flate2-zlib-rs",
]
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 = "8.0.2"
[dependencies.bstr]
version = "1.12.1"
features = ["std"]
default-features = false
[dependencies.bzip2]
version = "0.6.1"
[dependencies.bzip3]
version = "0.12.0"
features = ["bundled"]
optional = true
[dependencies.clap]
version = "4.6.1"
features = [
"derive",
"env",
]
[dependencies.file_type_enum]
version = "3.0.1"
[dependencies.filetime_creation]
version = "0.2"
[dependencies.flate2]
version = "1.1.9"
default-features = false
[dependencies.fs-err]
version = "3.3.0"
[dependencies.gzp]
version = "2.0.2"
features = ["snappy_default"]
default-features = false
[dependencies.ignore]
version = "0.4.25"
[dependencies.indexmap]
version = "2"
[dependencies.is_executable]
version = "1.0.5"
[dependencies.libc]
version = "0.2.186"
[dependencies.lz4_flex]
version = "0.13.0"
[dependencies.lzma-rust2]
version = "0.16.2"
[dependencies.num_cpus]
version = "1.17.0"
[dependencies.rayon]
version = "1.12.0"
[dependencies.same-file]
version = "1.0.6"
[dependencies.sevenz-rust2]
version = "0.21.0"
features = [
"compress",
"aes256",
]
[dependencies.snap]
version = "1.1.1"
[dependencies.strum]
version = "0.28.0"
features = ["derive"]
[dependencies.tar]
version = "0.4.45"
[dependencies.tempfile]
version = "3.27.0"
[dependencies.time]
version = "0.3.47"
default-features = false
[dependencies.unrar]
version = "0.7.6"
optional = true
package = "unrar-ng"
[dependencies.zip]
version = "8.6.0"
features = [
"time",
"aes-crypto",
]
default-features = false
[dependencies.zstd]
version = "0.13.3"
features = ["zstdmt"]
default-features = false
[dev-dependencies.anyhow]
version = "1.0.102"
[dev-dependencies.assert_cmd]
version = "2.2.1"
[dev-dependencies.glob]
version = "0.3.3"
[dev-dependencies.infer]
version = "0.19.0"
[dev-dependencies.insta]
version = "1.47.2"
features = ["filters"]
[dev-dependencies.itertools]
version = "0.14.0"
[dev-dependencies.memchr]
version = "2.8.0"
[dev-dependencies.parse-display]
version = "0.11.0"
[dev-dependencies.pretty_assertions]
version = "1.4.1"
[dev-dependencies.proptest]
version = "1.11.0"
[dev-dependencies.rand]
version = "0.9.4"
features = [
"small_rng",
"std",
"os_rng",
]
default-features = false
[dev-dependencies.regex]
version = "1.12.3"
[dev-dependencies.test-strategy]
version = "0.4.5"
[build-dependencies.clap]
version = "4.6.1"
features = [
"derive",
"env",
"string",
]
[build-dependencies.clap_complete]
version = "4.6.3"
[build-dependencies.clap_complete_nushell]
version = "4.6.0"
[build-dependencies.clap_mangen]
version = "0.3.0"
[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