[package]
name = "schemat"
version = "0.4.9"
edition = "2024"
description = "A code formatter for Scheme, Lisp, and any S-expressions"
readme = "./README.md"
repository = "https://github.com/raviqqe/schemat"
license = "Unlicense"
keywords = ["format", "scheme"]
categories = ["command-line-utilities", "development-tools"]

[dependencies]
allocator-api2 = "0.2.21"
bumpalo = { version = "3.19.1", features = ["allocator-api2"] }
clap = { version = "4.5.53", features = ["derive"] }
colored = "3.0.0"
futures = "0.3.31"
glob = "0.3.3"
itertools = "0.14.0"
mfmt = "0.4.2"
nom = "8.0.0"
nom_locate = "5.0.0"
tokio = { version = "1.48.0", default-features = false, features = [
  "fs",
  "io-std",
  "io-util",
  "macros",
  "rt-multi-thread",
] }

[dev-dependencies]
indoc = "2.0.7"
pretty_assertions = "1.4.1"

[lints.clippy]
alloc_instead_of_core = "deny"
cargo = "deny"
complexity = "deny"
correctness = "deny"
dbg_macro = "deny"
derive_partial_eq_without_eq = "deny"
equatable_if_let = "deny"
explicit_deref_methods = "deny"
if_not_else = "deny"
manual_let_else = "deny"
missing_const_for_fn = "deny"
missing_panics_doc = "deny"
multiple_crate_versions = { level = "allow", priority = 1 }
option_if_let_else = "deny"
perf = "deny"
std_instead_of_alloc = "deny"
std_instead_of_core = "deny"
style = "deny"
suspicious = "deny"
todo = "deny"
undocumented_unsafe_blocks = "deny"
unimplemented = "deny"
uninlined_format_args = "deny"
unnecessary_safety_comment = "deny"
unused_self = "deny"
use_self = "deny"

[lints.rust]
missing_docs = "deny"
warnings = "deny"
