topiary-cli 0.7.0

CLI app for Topiary, the universal code formatter.
[package]
name = "topiary-cli"
description = "CLI app for Topiary, the universal code formatter."
categories = ["command-line-utilities", "development-tools", "text-processing"]
keywords = [
  "cli",
  "code-formatter",
  "formatter",
  "text",
  "tree-sitter",
]
version.workspace = true
edition.workspace = true
authors.workspace = true
homepage.workspace = true
repository.workspace = true
documentation.workspace = true
readme.workspace = true
license.workspace = true

[[bin]]
name = "topiary"
path = "src/main.rs"

[dependencies]
# For now we just load the tree-sitter language parsers statically.
# Eventually we will want to dynamically load them, like Helix does.
async-scoped = { workspace = true }
clap = { workspace = true, features = ["derive", "env", "wrap_help"] }
clap_complete = { workspace = true }
env_logger = { workspace = true }
futures = { workspace = true }
itertools = { workspace = true }
log = { workspace = true }
nickel-lang-core.workspace = true
serde = { workspace = true, features = ["derive"] }
tempfile = { workspace = true }
tokio = { workspace = true, features = ["fs", "rt-multi-thread", "sync", "macros"] }
toml = { workspace = true }
topiary-core.workspace = true
topiary-config.workspace = true
topiary-queries.workspace = true
topiary-tree-sitter-facade.workspace = true
miette.workspace = true
tabled = { workspace = true }

[dev-dependencies]
assert_cmd = { workspace = true }
pastey = { workspace = true }
predicates = { workspace = true }

[features]
default = [
  "contributed",
  "bash",
  "json",
  "nickel",
  "ocaml",
  "ocaml_interface",
  "ocamllex",
  "toml",
  "tree_sitter_query",
]

# Included by default
contributed = [
  "css",
  "openscad",
  "wit",
  "sdml",
]

# Excluded by default
experimental = [
  "rust"
]

bash = ["topiary-config/bash", "topiary-queries/bash"]
css = ["topiary-config/css", "topiary-queries/css"]
json = ["topiary-config/json", "topiary-queries/json"]
nickel = ["topiary-config/nickel", "topiary-queries/nickel"]
ocaml = ["topiary-config/ocaml", "topiary-queries/ocaml"]
ocaml_interface = ["topiary-config/ocaml_interface", "topiary-queries/ocaml_interface"]
ocamllex = ["topiary-config/ocamllex", "topiary-queries/ocamllex"]
openscad = ["topiary-config/openscad", "topiary-queries/openscad"]
rust = ["topiary-config/rust", "topiary-queries/rust"]
sdml = ["topiary-config/sdml", "topiary-queries/sdml"]
toml = ["topiary-config/toml", "topiary-queries/toml"]
tree_sitter_query = ["topiary-config/tree_sitter_query", "topiary-queries/tree_sitter_query"]
wit = ["topiary-config/wit", "topiary-queries/wit"]