[package]
name = "flaredb-server"
version.workspace = true
edition.workspace = true

[dependencies]
flaredb-types = { path = "../flaredb-types" }
flaredb-proto = { path = "../flaredb-proto" }
flaredb-storage = { path = "../flaredb-storage" }
flaredb-raft = { path = "../flaredb-raft" }
flaredb-sql = { path = "../flaredb-sql" }
flaredb-client = { path = "../flaredb-client" }
tokio.workspace = true
tonic.workspace = true
tonic-health.workspace = true
prost.workspace = true
serde = { workspace = true }
serde_json = { workspace = true }
openraft = { workspace = true }
anyhow = { workspace = true }
clap.workspace = true
toml.workspace = true
config.workspace = true
async-trait.workspace = true
tracing.workspace = true
tracing-subscriber.workspace = true
metrics.workspace = true
metrics-exporter-prometheus.workspace = true
rocksdb.workspace = true
futures.workspace = true
sha2.workspace = true
tokio-stream.workspace = true

# REST API dependencies
axum = "0.8"
uuid = { version = "1.11", features = ["v4", "serde"] }
chrono = { version = "0.4", features = ["serde"] }

[dev-dependencies]
tempfile.workspace = true
criterion.workspace = true

[[bench]]
name = "storage_bench"
harness = false

[lib]
name = "flaredb_server"
path = "src/lib.rs"
