[package]
edition = "2021"
name = "tree_fmt"
version = "0.9.0"
authors = ["wandalen <wandalen@obox.systems>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Multi-format data visualization library with 10 formatters, 31 variants, and granular per-variant feature flags for minimal binary size"
readme = "README.md"
keywords = [
"tree",
"table",
"formatter",
"hierarchical",
"display",
]
categories = [
"text-processing",
"data-structures",
"visualization",
]
license = "MIT"
repository = "https://github.com/Wandalen/willbe/tree/master/module/tree_fmt"
[features]
all_formats = [
"visual_formats",
"web_formats",
"data_formats",
"format_text",
"themes",
]
data_formats = [
"format_json",
"format_yaml",
"format_toml",
]
default = [
"table_plain",
"expanded_postgres",
"tree_hierarchical",
"format_logfmt",
]
expanded_postgres = []
expanded_property = []
format_expanded = [
"expanded_postgres",
"expanded_property",
]
format_html = [
"format_html_basic",
"format_html_frameworks",
]
format_html_basic = [
"html_minimal",
"html_custom",
]
format_html_frameworks = [
"html_bootstrap",
"html_tailwind",
]
format_json = [
"serde_support",
"dep:serde_json",
]
format_logfmt = []
format_sql = [
"sql_ansi",
"sql_postgres",
"sql_mysql",
"sql_sqlite",
]
format_table = [
"format_table_visual",
"format_table_export",
]
format_table_export = [
"table_csv",
"table_tsv",
]
format_table_visual = [
"table_plain",
"table_minimal",
"table_bordered",
"table_markdown",
"table_grid",
"table_unicode",
"table_compact",
]
format_text = []
format_toml = [
"serde_support",
"dep:toml",
]
format_tree = [
"tree_hierarchical",
"tree_aligned",
"tree_aggregated",
]
format_yaml = [
"serde_support",
"dep:serde_yaml",
]
html_bootstrap = []
html_custom = []
html_minimal = []
html_tailwind = []
integration = []
serde_support = ["dep:serde"]
sql_ansi = []
sql_mysql = []
sql_postgres = []
sql_sqlite = []
table_bordered = []
table_compact = []
table_csv = []
table_grid = []
table_markdown = []
table_minimal = []
table_plain = []
table_tsv = []
table_unicode = []
themes = []
tree_aggregated = []
tree_aligned = []
tree_hierarchical = []
visual_formats = [
"format_table",
"format_expanded",
"format_tree",
"format_logfmt",
]
web_formats = [
"format_html",
"format_sql",
]
[lib]
name = "tree_fmt"
path = "src/lib.rs"
[[example]]
name = "command_report"
path = "examples/command_report.rs"
[[example]]
name = "expanded_format"
path = "examples/expanded_format.rs"
[[example]]
name = "html_format"
path = "examples/html_format.rs"
[[example]]
name = "logfmt_format"
path = "examples/logfmt_format.rs"
[[example]]
name = "manual_test_001_truncation"
path = "examples/manual_test_001_truncation.rs"
[[example]]
name = "manual_test_002_multiline"
path = "examples/manual_test_002_multiline.rs"
[[example]]
name = "manual_test_003_combined"
path = "examples/manual_test_003_combined.rs"
[[example]]
name = "manual_test_runner"
path = "examples/manual_test_runner.rs"
[[example]]
name = "sql_format"
path = "examples/sql_format.rs"
[[example]]
name = "table_format"
path = "examples/table_format.rs"
[[example]]
name = "text_format"
path = "examples/text_format.rs"
[[example]]
name = "themes"
path = "examples/themes.rs"
[[example]]
name = "tree_format"
path = "examples/tree_format.rs"
[[example]]
name = "unified_formats"
path = "examples/unified_formats.rs"
[[test]]
name = "aligned_tree_basic"
path = "tests/aligned_tree_basic.rs"
[[test]]
name = "aligned_tree_configuration"
path = "tests/aligned_tree_configuration.rs"
[[test]]
name = "aligned_tree_edge_cases"
path = "tests/aligned_tree_edge_cases.rs"
[[test]]
name = "builder"
path = "tests/builder.rs"
[[test]]
name = "column_data"
path = "tests/column_data.rs"
[[test]]
name = "column_truncation"
path = "tests/column_truncation.rs"
[[test]]
name = "data"
path = "tests/data.rs"
[[test]]
name = "debug_alignment"
path = "tests/debug_alignment.rs"
[[test]]
name = "flatten_config"
path = "tests/flatten_config.rs"
[[test]]
name = "fluent_api"
path = "tests/fluent_api.rs"
[[test]]
name = "formatters"
path = "tests/formatters.rs"
[[test]]
name = "html"
path = "tests/html.rs"
[[test]]
name = "logfmt"
path = "tests/logfmt.rs"
[[test]]
name = "multiline_cells"
path = "tests/multiline_cells.rs"
[[test]]
name = "reproduce_alignment_problem"
path = "tests/reproduce_alignment_problem.rs"
[[test]]
name = "reproduce_willbe3_alignment"
path = "tests/reproduce_willbe3_alignment.rs"
[[test]]
name = "sql"
path = "tests/sql.rs"
[[test]]
name = "table_styles_compatibility"
path = "tests/table_styles_compatibility.rs"
[[test]]
name = "table_styles_outputs"
path = "tests/table_styles_outputs.rs"
[[test]]
name = "table_styles_presets"
path = "tests/table_styles_presets.rs"
[[test]]
name = "text_cli_help"
path = "tests/text_cli_help.rs"
[[test]]
name = "themes"
path = "tests/themes.rs"
[[test]]
name = "unicode_display_width_alignment"
path = "tests/unicode_display_width_alignment.rs"
[[test]]
name = "unified_format_trait"
path = "tests/unified_format_trait.rs"
[[test]]
name = "verify_alignment_correct"
path = "tests/verify_alignment_correct.rs"
[dependencies.serde]
version = "1.0.219"
features = ["derive"]
optional = true
[dependencies.serde_json]
version = "1.0.140"
optional = true
[dependencies.serde_yaml]
version = "0.9.34"
optional = true
[dependencies.strs_tools]
version = "~0.43.0"
features = ["ansi"]
default-features = false
[dependencies.toml]
version = "0.8.23"
optional = true
[dependencies.unicode-width]
version = "0.1"
[dev-dependencies.serde]
version = "1.0.219"
features = ["derive"]
[dev-dependencies.serde_json]
version = "1.0.140"
[dev-dependencies.serde_yaml]
version = "0.9.34"
[dev-dependencies.toml]
version = "0.8.23"
[lints.clippy]
absolute_paths = "allow"
arbitrary_source_item_ordering = "allow"
cast_precision_loss = "allow"
doc_include_without_cfg = "warn"
implicit_return = "allow"
inline_always = "allow"
items_after_statements = "allow"
large_enum_variant = "allow"
missing_docs_in_private_items = "allow"
missing_inline_in_public_items = "allow"
mod_module_files = "allow"
module_name_repetitions = "allow"
pub_use = "allow"
question_mark_used = "allow"
single_call_fn = "allow"
std_instead_of_alloc = "allow"
std_instead_of_core = "warn"
struct_excessive_bools = "allow"
undocumented_unsafe_blocks = "deny"
wildcard_imports = "allow"
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
missing_debug_implementations = "warn"
missing_docs = "warn"
unsafe-code = "deny"
[lints.rust.future_incompatible]
level = "warn"
priority = -1
[lints.rust.rust_2018_idioms]
level = "warn"
priority = -1
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ['cfg(feature, values("diagnostics_runtime_assertions", "diagnostics_compiletime_assertions", "diagnostics_memory_layout"))']