[package]
name = "mssql-driver-pool"
description = "Connection pooling for SQL Server with sp_reset_connection support"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
repository.workspace = true
keywords = ["sql-server", "pool", "connection", "async"]
categories = ["database", "asynchronous"]

[package.metadata.docs.rs]
# docs.rs builds on Linux x86_64. Excluded: sspi-auth (Windows-only) and
# integrated-auth (libgssapi system library not guaranteed on docs.rs).
features = ["otel", "filestream"]

[features]
default = []
# Integrated authentication (Kerberos/SPNEGO) - Linux/macOS
integrated-auth = ["mssql-client/integrated-auth"]
# Windows SSPI integrated authentication
sspi-auth = ["mssql-client/sspi-auth"]
# FILESTREAM BLOB access (Windows only)
filestream = ["mssql-client/filestream"]
# OpenTelemetry metrics for pool lifecycle events (gauges for in-use/idle/max,
# counters for connections created/closed, histogram for acquisition wait time).
otel = ["mssql-client/otel"]

[dependencies]
mssql-client = { workspace = true }
tokio = { workspace = true }
thiserror = { workspace = true }
tracing = { workspace = true }
parking_lot = { workspace = true }
async-trait = { workspace = true }

[dev-dependencies]
tokio-test = { workspace = true }
tracing-subscriber = "0.3"

[[example]]
name = "connection_pool"
path = "examples/connection_pool.rs"

[package.metadata.cargo-machete]
# tokio-test is used in dev-dependencies for test utilities
ignored = ["tokio-test"]

[lints]
workspace = true
