[package]
edition = "2024"
name = "cli_utils_hoijui"
version = "0.13.0"
authors = ["Robin Vobruba <hoijui.quaero@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = """
A tiny CLI utilities library,
providing functions and constants useful in many CLI tools."""
homepage = "https://github.com/hoijui/cli-utils-rs"
readme = "README.md"
keywords = [
"cli",
"utility",
]
categories = [
"command-line-utilities",
"command-line-interface",
"config",
"rust-patterns",
]
license = "AGPL-3.0-or-later"
repository = "https://github.com/hoijui/cli-utils-rs"
[features]
async = ["dep:async-std"]
default = []
file_traversal = [
"async",
"dep:futures",
"dep:thiserror",
"dep:async-walkdir",
]
ignore_path = [
"dep:regex",
"dep:thiserror",
"dep:wildmatch",
]
logging = [
"dep:log",
"dep:tracing",
"dep:tracing-subscriber",
]
serde = [
"dep:serde",
"dep:serde_regex",
]
std_error = ["dep:thiserror"]
url_parse_error = [
"std_error",
"dep:url",
]
[lib]
name = "cli_utils_hoijui"
path = "src/lib.rs"
[dependencies.async-std]
version = "1.13"
optional = true
[dependencies.async-walkdir]
version = "2.1"
optional = true
default-features = false
[dependencies.futures]
version = "0.3"
optional = true
default-features = false
[dependencies.log]
version = "0.4"
optional = true
default-features = false
[dependencies.regex]
version = "1.12"
optional = true
default-features = false
[dependencies.serde]
version = "1.0"
features = [
"std",
"derive",
]
optional = true
default-features = false
[dependencies.serde_regex]
version = "1.1"
optional = true
default-features = false
[dependencies.thiserror]
version = "2.0"
optional = true
default-features = false
[dependencies.tracing]
version = "0.1"
optional = true
default-features = false
[dependencies.tracing-subscriber]
version = "0.3"
features = [
"env-filter",
"fmt",
]
optional = true
default-features = false
[dependencies.url]
version = "2.5"
optional = true
default-features = false
[dependencies.wildmatch]
version = "2.5"
features = ["serde"]
optional = true
default-features = false
[dev-dependencies.tokio]
version = "1.50"
features = [
"rt",
"macros",
]
default-features = false
[lints.clippy]
clone_on_ref_ptr = "warn"
else_if_without_else = "warn"
empty_structs_with_brackets = "warn"
indexing_slicing = "warn"
print_stderr = "warn"
print_stdout = "warn"
shadow_reuse = "warn"
string_slice = "warn"
try_err = "warn"
use_debug = "warn"
wildcard_enum_match_arm = "warn"
[lints.clippy.all]
level = "deny"
priority = -1
[lints.clippy.cargo]
level = "warn"
priority = -1
[lints.clippy.multiple_crate_versions]
level = "allow"
priority = 1
[lints.clippy.nursery]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust.rust_2024_compatibility]
level = "warn"
priority = -1