[package]
name = "qail-core"
version = "1.3.2"
edition = "2024"
description = "AST-native query builder - type-safe expressions, zero SQL strings"
license = "Apache-2.0"
repository = "https://github.com/qail-io/qail"
readme = "README.md"
categories = ["database", "parser-implementations"]
keywords = ["qail", "sql", "parser"]

[features]
default = []
analyzer = []
# Internal-only: enables examples that depend on external crates (qail-pg, bytes).
# Never used in normal builds — only for manual `cargo run --example`.
_pg_examples = []

[dependencies]
serde = { version = "1.0", features = ["derive"] }
nom = "8"
serde_json = "1.0"
chrono = { version = "0.4", features = ["serde"] }
uuid = { version = "1", features = ["serde", "v4", "js"] }
strsim = "0.11"
toml = "1.1"

[dev-dependencies]
proptest = "1.11.0"

[[example]]
name = "test_multiline_sql"
required-features = ["analyzer"]

# This example depends on qail-pg (external crate); gated behind _pg_examples
# so it is excluded from `cargo test -p qail-core`.
[[example]]
name = "test_subquery_sql2"
required-features = ["_pg_examples"]

[lints]
workspace = true
