Files
sed/Cargo.toml
T
2026-01-24 17:35:06 +00:00

138 lines
3.5 KiB
TOML

# sed (uutils)
# * see the repository LICENSE, README, and CONTRIBUTING files for more information
# spell-checker:ignore (libs) mangen sed
[package]
name = "sed"
version = "0.1.1"
authors = ["uutils developers"]
license = "MIT"
description = "sed ~ implemented as universal (cross-platform) utils, written in Rust"
default-run = "sed"
homepage = "https://github.com/uutils/sed"
repository = "https://github.com/uutils/sed"
readme = "README.md"
keywords = ["sed", "uutils", "cross-platform", "cli", "utility"]
categories = ["command-line-utilities"]
edition = "2024"
rust-version = "1.88"
build = "build.rs"
[features]
default = ["feat_common_core"]
feat_common_core = ["sed"]
sed = []
[workspace.dependencies]
assert_fs = "1.1.3"
bytesize = "2.0.0"
chrono = { version = "0.4.37", default-features = false, features = [
"clock",
] }
clap = { version = "4.4", features = ["wrap_help", "cargo"] }
clap_complete = "4.5"
clap_mangen = "0.2"
divan = { package = "codspeed-divan-compat", version = "4.0.5" }
fancy-regex = "0.17.0"
hex = "0.4"
libc = "0.2.153"
memchr = "2.7.4"
memmap2 = "0.9"
phf = "0.13.0"
phf_codegen = "0.13.0"
predicates = "3.1.3"
rand = { version = "0.9", features = ["small_rng"] }
regex = "1.10.4"
sha2 = "0.10"
sysinfo = "0.38"
tempfile = "3.10.1"
textwrap = { version = "0.16.1", features = ["terminal_size"] }
terminal_size = "0.4.2"
uucore = { version = "0.5.0", features = ["libc"] }
xattr = "1.3.1"
[dependencies]
assert_fs = { workspace = true }
clap = { workspace = true }
clap_complete = { workspace = true }
clap_mangen = { workspace = true }
ctor = "0.6.0"
fancy-regex = { workspace = true }
memchr = { workspace = true }
memmap2.workspace = true
phf = { workspace = true }
predicates = { workspace = true }
regex = { workspace = true }
sysinfo = { workspace = true }
tempfile = { workspace = true }
terminal_size = { workspace = true }
textwrap = { workspace = true }
uucore = { workspace = true }
[dev-dependencies]
chrono = { workspace = true }
divan = { workspace = true }
hex = { workspace = true }
libc = { workspace = true }
pretty_assertions = "1"
rand = { workspace = true }
regex = { workspace = true }
sha2 = { workspace = true }
tempfile = { workspace = true }
uucore = { workspace = true, features = ["entries", "process", "signals", "benchmark"] }
uutests = "0.5.0"
[target.'cfg(unix)'.dev-dependencies]
xattr = { workspace = true }
[target.'cfg(any(target_os = "linux", target_os = "android"))'.dev-dependencies]
rlimit = "0.10.1"
[build-dependencies]
phf_codegen = { workspace = true }
[lib]
path = "src/lib.rs"
[[bin]]
name = "sed"
path = "src/bin/sed.rs"
[[bench]]
name = "sed_bench"
harness = false
# The default release profile. It contains all optimizations, without
# sacrificing debug info. With this profile (like in the standard
# release profile), the debug info and the stack traces will still be available.
[profile.release]
lto = true
# A release-like profile that is tuned to be fast, even when being fast
# compromises on binary size. This includes aborting on panic.
[profile.release-fast]
inherits = "release"
panic = "abort"
codegen-units = 1 # should be moved to release without regression
# A release-like profile that is as small as possible.
[profile.release-small]
inherits = "release-fast"
opt-level = "z"
strip = true
[lints.clippy]
default_trait_access = "warn"
manual_string_new = "warn"
cognitive_complexity = "warn"
implicit_clone = "warn"
range-plus-one = "warn"
redundant-clone = "warn"
match_bool = "warn"
semicolon_if_nothing_returned = "warn"