[package]
name = "banshee"
version.workspace = true
edition = "2024"
license.workspace = true
repository.workspace = true
homepage.workspace = true
description = "PostgreSQL SQL parser, formatter, linter and language server."
keywords = ["sql", "postgres", "linter", "formatter", "lsp"]
categories = ["development-tools", "command-line-utilities"]
[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/v{ version }/{ name }-{ target }.tar.gz"
bin-dir = "{ bin }{ binary-ext }"
pkg-fmt = "tgz"
[package.metadata.binstall.overrides.x86_64-pc-windows-msvc]
pkg-url = "{ repo }/releases/download/v{ version }/{ name }-{ target }.zip"
pkg-fmt = "zip"
[[bin]]
name = "banshee"
path = "src/main.rs"
[[bench]]
name = "parse"
harness = false
[[bench]]
name = "format"
harness = false
[[bench]]
name = "complete"
harness = false
[[example]]
name = "parse_and_format"
path = "../../examples/parse_and_format.rs"
[[example]]
name = "completion"
path = "../../examples/completion.rs"
[[example]]
name = "custom_provider"
path = "../../examples/custom_provider.rs"
[[example]]
name = "server_integration"
path = "../../examples/server_integration.rs"
[features]
default = []
db = ["banshee_schema/db", "dep:tokio"]
[dependencies]
banshee_syntax.workspace = true
banshee_lexer.workspace = true
banshee_parser.workspace = true
banshee_hir.workspace = true
banshee_completion.workspace = true
banshee_format.workspace = true
banshee_config.workspace = true
banshee_templater.workspace = true
banshee_schema.workspace = true
banshee_lsp.workspace = true
clap = { workspace = true }
anyhow = { workspace = true }
annotate-snippets = "0.11"
text-size = { workspace = true }
rayon = "1"
globset = "0.4"
tokio = { version = "1", features = ["rt-multi-thread"], optional = true }
[dev-dependencies]
criterion.workspace = true
text-size.workspace = true
sqlparser = "0.60.0"