[package]
edition = "2024"
rust-version = "1.88"
name = "mssql-client"
version = "0.19.2"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "High-level async SQL Server client with type-state connection management"
readme = "README.md"
keywords = [
"sql-server",
"mssql",
"database",
"async",
"tokio",
]
categories = [
"database",
"asynchronous",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/praxiomlabs/rust-mssql-driver"
[package.metadata.docs.rs]
features = [
"otel",
"json",
"always-encrypted",
"azure-identity",
"zeroize",
"encoding",
"tls",
"chrono",
"uuid",
"decimal",
"filestream",
]
[package.metadata.cargo-machete]
ignored = [
"tokio-test",
"opentelemetry_sdk",
"tracing-opentelemetry",
"mssql-tls",
"mssql-derive",
]
[features]
always-encrypted = [
"mssql-auth/always-encrypted",
"dep:encoding_rs",
]
azure-identity = ["mssql-auth/azure-identity"]
bench = []
chrono = [
"mssql-types/chrono",
"dep:chrono",
]
decimal = [
"mssql-types/decimal",
"dep:rust_decimal",
]
default = [
"chrono",
"uuid",
"decimal",
"encoding",
"tls",
"derive",
]
derive = ["dep:mssql-derive"]
encoding = [
"tds-protocol/encoding",
"mssql-types/encoding",
]
filestream = ["tokio/fs"]
fuzzing = []
integrated-auth = ["mssql-auth/integrated-auth"]
json = ["mssql-types/json"]
native-certs = [
"tls",
"mssql-tls/native-certs",
]
otel = [
"dep:opentelemetry",
"dep:opentelemetry_sdk",
"dep:tracing-opentelemetry",
]
sspi-auth = ["mssql-auth/sspi-auth"]
tls = ["dep:mssql-tls"]
uuid = [
"mssql-types/uuid",
"dep:uuid",
]
zeroize = ["mssql-auth/zeroize"]
[lib]
name = "mssql_client"
path = "src/lib.rs"
[[example]]
name = "azure_sql"
path = "examples/azure_sql.rs"
[[example]]
name = "basic"
path = "examples/basic.rs"
[[example]]
name = "bulk_insert"
path = "examples/bulk_insert.rs"
[[example]]
name = "collation_encoding"
path = "examples/collation_encoding.rs"
[[example]]
name = "derive_macros"
path = "examples/derive_macros.rs"
[[example]]
name = "error_handling"
path = "examples/error_handling.rs"
[[example]]
name = "streaming"
path = "examples/streaming.rs"
[[example]]
name = "transactions"
path = "examples/transactions.rs"
[[test]]
name = "always_encrypted"
path = "tests/always_encrypted.rs"
[[test]]
name = "azure_sql"
path = "tests/azure_sql.rs"
[[test]]
name = "blob_stream"
path = "tests/blob_stream.rs"
[[test]]
name = "bulk_insert"
path = "tests/bulk_insert.rs"
[[test]]
name = "change_tracking_live"
path = "tests/change_tracking_live.rs"
[[test]]
name = "collation_test"
path = "tests/collation_test.rs"
[[test]]
name = "config"
path = "tests/config.rs"
[[test]]
name = "derive_compile_tests"
path = "tests/derive_compile_tests.rs"
[[test]]
name = "derive_runtime"
path = "tests/derive_runtime.rs"
[[test]]
name = "edge_cases"
path = "tests/edge_cases.rs"
[[test]]
name = "error_handling"
path = "tests/error_handling.rs"
[[test]]
name = "integration"
path = "tests/integration.rs"
[[test]]
name = "protocol_conformance"
path = "tests/protocol_conformance.rs"
[[test]]
name = "query_stream"
path = "tests/query_stream.rs"
[[test]]
name = "resilience"
path = "tests/resilience.rs"
[[test]]
name = "rpc_roundtrip"
path = "tests/rpc_roundtrip.rs"
[[test]]
name = "stored_procedure"
path = "tests/stored_procedure.rs"
[[test]]
name = "streaming_memory"
path = "tests/streaming_memory.rs"
[[test]]
name = "stress"
path = "tests/stress.rs"
[[test]]
name = "type_matrix"
path = "tests/type_matrix.rs"
[[test]]
name = "type_state_compile_tests"
path = "tests/type_state_compile_tests.rs"
[[test]]
name = "version_compatibility"
path = "tests/version_compatibility.rs"
[[test]]
name = "windows_filestream"
path = "tests/windows_filestream.rs"
[[test]]
name = "windows_sspi"
path = "tests/windows_sspi.rs"
[[bench]]
name = "buffered_decode"
path = "benches/buffered_decode.rs"
harness = false
required-features = ["bench"]
[[bench]]
name = "client"
path = "benches/client.rs"
harness = false
[dependencies.bytes]
version = "1.9"
default-features = false
[dependencies.chrono]
version = "0.4"
features = ["std"]
optional = true
default-features = false
[dependencies.encoding_rs]
version = "0.8"
optional = true
[dependencies.futures-core]
version = "0.3"
[dependencies.lru]
version = "0.18"
[dependencies.mssql-auth]
version = "0.19.2"
[dependencies.mssql-codec]
version = "0.19.2"
[dependencies.mssql-derive]
version = "0.19.2"
optional = true
[dependencies.mssql-tls]
version = "0.19.2"
optional = true
[dependencies.mssql-types]
version = "0.19.2"
default-features = false
[dependencies.once_cell]
version = "1.20"
[dependencies.opentelemetry]
version = "0.32"
optional = true
[dependencies.opentelemetry_sdk]
version = "0.32"
optional = true
[dependencies.regex]
version = "1.11"
[dependencies.rust_decimal]
version = "1.36"
optional = true
[dependencies.tds-protocol]
version = "0.19.2"
features = ["std"]
default-features = false
[dependencies.thiserror]
version = "2.0"
features = ["std"]
default-features = false
[dependencies.tokio]
version = "1.48"
features = [
"net",
"io-util",
"sync",
"time",
"macros",
"rt",
"rt-multi-thread",
]
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-opentelemetry]
version = "0.33"
optional = true
[dependencies.uuid]
version = "1.11"
features = ["v4"]
optional = true
[dev-dependencies.chrono]
version = "0.4"
features = ["std"]
default-features = false
[dev-dependencies.criterion]
version = "0.8"
features = ["async_tokio"]
[dev-dependencies.rand]
version = "0.8"
[dev-dependencies.rsa]
version = "0.9"
features = ["sha2"]
[dev-dependencies.rust_decimal]
version = "1.36"
[dev-dependencies.sha1]
version = "0.10"
[dev-dependencies.sha2]
version = "0.10"
[dev-dependencies.tokio-test]
version = "0.4"
[dev-dependencies.tracing-subscriber]
version = "0.3"
[dev-dependencies.trybuild]
version = "1.0"
[dev-dependencies.uuid]
version = "1.11"
features = ["v4"]
[lints.clippy]
dbg_macro = "warn"
expect_used = "warn"
panic = "warn"
todo = "warn"
unwrap_used = "warn"
[lints.rust]
missing_docs = "warn"
unsafe_code = "deny"