[package]
edition = "2024"
rust-version = "1.90"
name = "keelson-sqlx"
version = "0.1.0"
authors = ["Kensuke Kubo"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "The sqlx backend for keelson: pools, connections and transactions implementing keelson-exec's traits for PostgreSQL, MySQL and SQLite."
readme = "README.md"
keywords = [
"sql",
"sqlx",
"database",
"postgres",
"mysql",
]
categories = ["database"]
license = "MIT"
repository = "https://github.com/ken109/keelson-rs"
[package.metadata.docs.rs]
features = [
"psql",
"mysql",
"sqlite",
"chrono",
"uuid",
"decimal",
"json",
]
[features]
chrono = [
"keelson-core/chrono",
"sqlx/chrono",
"dep:chrono",
]
decimal = [
"keelson-core/decimal",
"sqlx/rust_decimal",
"dep:rust_decimal",
]
json = [
"keelson-core/json",
"sqlx/json",
"dep:serde_json",
]
live-docker = [
"psql",
"mysql",
]
mysql = ["sqlx/mysql"]
psql = ["sqlx/postgres"]
sqlite = ["sqlx/sqlite"]
uuid = [
"keelson-core/uuid",
"sqlx/uuid",
"dep:uuid",
]
[lib]
name = "keelson_sqlx"
path = "src/lib.rs"
[[test]]
name = "query_path"
path = "tests/query_path.rs"
[[test]]
name = "roundtrip"
path = "tests/roundtrip.rs"
[[test]]
name = "transactions"
path = "tests/transactions.rs"
[dependencies.chrono]
version = "0.4"
features = ["std"]
optional = true
default-features = false
[dependencies.futures-util]
version = "0.3"
features = ["std"]
default-features = false
[dependencies.keelson-core]
version = "0.1.0"
[dependencies.keelson-exec]
version = "0.1.0"
[dependencies.rust_decimal]
version = "1"
features = ["std"]
optional = true
default-features = false
[dependencies.serde_json]
version = "1"
optional = true
[dependencies.sqlx]
version = "0.8"
features = ["runtime-tokio"]
default-features = false
[dependencies.tokio]
version = "1"
features = [
"rt",
"sync",
]
default-features = false
[dependencies.uuid]
version = "1"
features = ["std"]
optional = true
default-features = false
[dev-dependencies.tokio]
version = "1"
features = [
"macros",
"rt-multi-thread",
]
default-features = false
[lints.clippy]
todo = "warn"
[lints.rust]
missing_debug_implementations = "warn"
unreachable_pub = "warn"