findutils 0.9.0

Rust implementation of GNU findutils
Documentation
[package]
name = "findutils"
version = "0.9.0"
homepage = "https://github.com/uutils/findutils"
repository = "https://github.com/uutils/findutils"
edition = "2021"
license = "MIT"
readme = "README.md"
description = "Rust implementation of GNU findutils"
authors = ["uutils developers"]

[dependencies]
argmax = "0.4.0"
chrono = "0.4.45"
clap = { version = "4.6", features = ["env"] }
faccess = "0.2.4"
nix = { version = "0.31", features = ["fs", "user"] }
onig = { version = "6.5", default-features = false }
regex = "1.12"
uucore = { version = "0.9.0", features = ["entries", "fs", "fsext", "mode"] }
walkdir = "2.5"
itertools = "0.14.0"
thiserror = "2.0.12"

[dev-dependencies]
criterion = { version = "4.7.0", package = "codspeed-criterion-compat" }
assert_cmd = "2"
ctor = "1.0"
filetime = "0.2"
nix = { version = "0.31", features = ["fs"] }
rstest = "0.26.1"
tempfile = "3"
uutests = "0.9.0"

[[bench]]
name = "find_bench"
harness = false

[[bench]]
name = "xargs_bench"
harness = false

[[bench]]
name = "updatedb_bench"
harness = false

[[bench]]
name = "locate_bench"
harness = false

[[bin]]
name = "find"
path = "src/find/main.rs"

[[bin]]
name = "locate"
path = "src/locate/main.rs"

[[bin]]
name = "updatedb"
path = "src/updatedb/main.rs"

[[bin]]
name = "xargs"
path = "src/xargs/main.rs"

[[bin]]
name = "testing-commandline"
path = "src/testing/commandline/main.rs"

[profile.release]
lto = "thin"
codegen-units = 1

[profile.release-fast]
inherits = "release"
panic = "abort"

[lints.clippy]
all = { level = "warn", priority = -1 }
cargo = { level = "warn", priority = -1 }
pedantic = { level = "warn", priority = -1 }
use_self = "warn" # nursery lint

# Group-level allows for lints that are too noisy or not worth enforcing for now.
multiple_crate_versions = "allow"
cargo_common_metadata = "allow"
uninlined_format_args = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
must_use_candidate = "allow"
match_same_arms = "allow"
cast_possible_truncation = "allow"
too_many_lines = "allow"
cast_possible_wrap = "allow"
cast_sign_loss = "allow"
struct_excessive_bools = "allow"
cast_precision_loss = "allow"
cast_lossless = "allow"
ignored_unit_patterns = "allow"
similar_names = "allow"
float_cmp = "allow"
return_self_not_must_use = "allow"
inline_always = "allow"
fn_params_excessive_bools = "allow"
used_underscore_items = "allow"
should_panic_without_expect = "allow"
doc_markdown = "allow"
unused_self = "allow"
enum_glob_use = "allow"
unnested_or_patterns = "allow"
implicit_hasher = "allow"
doc_link_with_quotes = "allow"
format_push_string = "allow"
flat_map_option = "allow"
from_iter_instead_of_collect = "allow"
large_types_passed_by_value = "allow"
# Disable for now, we have a few occurrences
# panic = "warn"