[package]
edition = "2024"
name = "rich_rust"
version = "0.1.1"
authors = ["Jeffrey Emanuel"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A Rust port of Python's Rich library for beautiful terminal output"
homepage = "https://github.com/Dicklesworthstone/rich_rust"
documentation = "https://docs.rs/rich_rust"
readme = "README.md"
keywords = [
"terminal",
"cli",
"rich",
"ansi",
"formatting",
]
categories = [
"command-line-interface",
"text-processing",
]
license = "MIT"
repository = "https://github.com/Dicklesworthstone/rich_rust"
[features]
conformance_test = []
default = []
full = [
"syntax",
"markdown",
"json",
]
json = ["serde_json"]
markdown = ["pulldown-cmark"]
syntax = ["syntect"]
tracing = [
"dep:tracing",
"dep:tracing-subscriber",
]
[lib]
name = "rich_rust"
path = "src/lib.rs"
[[example]]
name = "basic"
path = "examples/basic.rs"
[[example]]
name = "e2e_export"
path = "examples/e2e_export.rs"
[[example]]
name = "e2e_layout"
path = "examples/e2e_layout.rs"
[[example]]
name = "e2e_logging"
path = "examples/e2e_logging.rs"
[[example]]
name = "logging"
path = "examples/logging.rs"
[[example]]
name = "phase2_demo"
path = "examples/phase2_demo.rs"
[[example]]
name = "progress"
path = "examples/progress.rs"
[[example]]
name = "tables"
path = "examples/tables.rs"
[[example]]
name = "text_styling"
path = "examples/text_styling.rs"
[[example]]
name = "tree"
path = "examples/tree.rs"
[[test]]
name = "conformance_python"
path = "tests/conformance_python.rs"
[[test]]
name = "conformance_test"
path = "tests/conformance_test.rs"
[[test]]
name = "e2e_hyperlink"
path = "tests/e2e_hyperlink.rs"
[[test]]
name = "e2e_live"
path = "tests/e2e_live.rs"
[[test]]
name = "e2e_panel"
path = "tests/e2e_panel.rs"
[[test]]
name = "e2e_performance"
path = "tests/e2e_performance.rs"
[[test]]
name = "e2e_rendering"
path = "tests/e2e_rendering.rs"
[[test]]
name = "e2e_style_edge_cases"
path = "tests/e2e_style_edge_cases.rs"
[[test]]
name = "e2e_table"
path = "tests/e2e_table.rs"
[[test]]
name = "e2e_text"
path = "tests/e2e_text.rs"
[[test]]
name = "e2e_width_algorithms"
path = "tests/e2e_width_algorithms.rs"
[[test]]
name = "golden_test"
path = "tests/golden_test.rs"
[[test]]
name = "logging_test"
path = "tests/logging_test.rs"
[[test]]
name = "property_tests"
path = "tests/property_tests.rs"
[[test]]
name = "regression_tests"
path = "tests/regression_tests.rs"
[[test]]
name = "repro_rule_overflow"
path = "tests/repro_rule_overflow.rs"
[[test]]
name = "repro_table_foot_row"
path = "tests/repro_table_foot_row.rs"
[[test]]
name = "thread_safety"
path = "tests/thread_safety.rs"
[[bench]]
name = "render_bench"
path = "benches/render_bench.rs"
harness = false
[dependencies.bitflags]
version = "2.10"
[dependencies.crossterm]
version = "0.29"
[dependencies.log]
version = "0.4"
features = ["std"]
[dependencies.lru]
version = "0.16"
[dependencies.num-rational]
version = "0.4.2"
[dependencies.once_cell]
version = "1.21"
[dependencies.pulldown-cmark]
version = "0.13"
optional = true
[dependencies.regex]
version = "1.12"
[dependencies.serde_json]
version = "1.0"
optional = true
[dependencies.syntect]
version = "5.3"
optional = true
[dependencies.time]
version = "0.3.36"
features = [
"local-offset",
"formatting",
]
[dependencies.tracing]
version = "0.1.44"
optional = true
[dependencies.tracing-subscriber]
version = "0.3.22"
features = ["fmt"]
optional = true
[dependencies.unicode-width]
version = ">=0.2.0, <0.3"
[dev-dependencies.criterion]
version = "0.8"
[dev-dependencies.insta]
version = "1.46"
features = [
"glob",
"filters",
]
[dev-dependencies.proptest]
version = "1.6"
[dev-dependencies.serde_json]
version = "1.0"
[dev-dependencies.test-log]
version = "0.2.19"
features = ["trace"]
[dev-dependencies.tracing]
version = "0.1.44"
[dev-dependencies.tracing-subscriber]
version = "0.3.22"
features = [
"env-filter",
"fmt",
"json",
]
[dev-dependencies.tracing-test]
version = "0.2.5"
[profile.release]
opt-level = "z"
lto = true
codegen-units = 1
panic = "abort"
strip = true