[package]
edition = "2024"
rust-version = "1.88.0"
name = "termprofile"
version = "0.2.1"
authors = ["Austin Schey <aschey13@gmail.com>"]
build = false
include = [
"/src",
"/examples",
"/tests",
"LICENSE-MIT",
"LICENSE-APACHE",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A library to detect and handle terminal color/styling support"
homepage = "https://github.com/aschey/termprofile"
readme = "README.md"
keywords = [
"tui",
"terminal",
"color",
]
categories = ["command-line-interface"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/aschey/termprofile"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
cargo-args = [
"-Zunstable-options",
"-Zrustdoc-scrape-examples",
]
[features]
color-cache = ["dep:lru"]
convert = [
"dep:anstyle",
"dep:palette",
]
default = []
query-detect = ["dep:termina"]
ratatui = ["dep:ratatui-core"]
ratatui-underline-color = ["ratatui-core/underline-color"]
terminfo = ["dep:termini"]
windows-version = ["dep:os_info"]
[lib]
name = "termprofile"
path = "src/lib.rs"
[[example]]
name = "convert"
path = "examples/convert.rs"
doc-scrape-examples = true
required-features = [
"convert",
"query-detect",
]
[[example]]
name = "detect"
path = "examples/detect.rs"
doc-scrape-examples = true
required-features = ["query-detect"]
[[example]]
name = "override"
path = "examples/override.rs"
doc-scrape-examples = true
required-features = ["query-detect"]
[[example]]
name = "ratatui_app"
path = "examples/ratatui_app.rs"
doc-scrape-examples = true
required-features = [
"ratatui",
"convert",
"query-detect",
]
[[example]]
name = "subprocess_force"
path = "examples/subprocess_force.rs"
[dependencies.anstyle]
version = "1"
optional = true
[dependencies.lru]
version = "0.16"
features = ["hashbrown"]
optional = true
[dependencies.palette]
version = "0.7"
features = ["std"]
optional = true
default-features = false
[dependencies.ratatui-core]
version = "0.1"
optional = true
default-features = false
[dependencies.termina]
version = "0.2"
optional = true
[dependencies.termini]
version = "1"
optional = true
[dev-dependencies.anstyle-owo-colors]
version = "2.0.4"
[dev-dependencies.owo-colors]
version = "4.2.2"
[dev-dependencies.rand]
version = "0.10.0"
[dev-dependencies.ratatui]
version = "0.30"
[dev-dependencies.rstest]
version = "0.26.1"
[target."cfg(windows)".dependencies.os_info]
version = "3.10"
optional = true
default-features = false
[lints.clippy]
allow_attributes = "deny"
default_trait_access = "warn"
doc_markdown = "warn"
explicit_into_iter_loop = "warn"
explicit_iter_loop = "warn"
ignored_unit_patterns = "warn"
impl_trait_in_params = "warn"
missing_fields_in_debug = "warn"
missing_panics_doc = "warn"
redundant_closure_for_method_calls = "warn"
semicolon_if_nothing_returned = "warn"
use_self = "warn"
[lints.rustdoc]
broken_intra_doc_links = "deny"