persistant-sqlx 0.9.7

PersistAnt's relational driver over sqlx: implements RelationalBackend for PostgreSQL, with typed error classification.
Documentation
[package]
name = "persistant-sqlx"
version.workspace = true
edition = "2024"
# sqlx 0.9 needs 1.94; only this crate (and what depends on it) pays it. The workspace MSRV job
# excludes it and a separate job checks it on its own floor.
rust-version = "1.94"
description = "PersistAnt's relational driver over sqlx: implements RelationalBackend for PostgreSQL, with typed error classification."
license = "MIT OR Apache-2.0"
repository = "https://github.com/ciresnave/PersistAnt"
keywords = ["sql", "postgres", "sqlx", "persistence"]
categories = ["database"]

[features]
# SQLite is compiled in (bundled C library): opt in.
sqlite = ["sqlx/sqlite"]
# MySQL and MariaDB (pure Rust driver).
mysql = ["sqlx/mysql"]

[dependencies]
persistant-core = { workspace = true }
persistant-relational = { workspace = true, features = ["catalog"] }
tokio = { version = "1.53.2", default-features = false, features = ["sync", "time"] }
sqlx = { version = "0.9.0", default-features = false, features = ["runtime-tokio", "tls-rustls-ring-webpki", "postgres", "migrate", "time"] }

[dev-dependencies]
sha2 = "0.10"
persistant-kv = { workspace = true }
# `persistant::sql!` end to end: the macro, and the `sql` feature of persistant-relational for its traits.
persistant-macros = { workspace = true }
persistant-relational = { workspace = true, features = ["sql"] }
tokio = { version = "1.53.2", features = ["rt-multi-thread", "macros", "sync", "time"] }

[[example]]
name = "matrix_sqlite"
required-features = ["sqlite"]

[[example]]
name = "matrix_mysql"
required-features = ["mysql"]

[[example]]
name = "speed"
required-features = ["sqlite"]

[[example]]
name = "rel_speed"
required-features = ["sqlite"]

[[example]]
name = "machine_vm"
required-features = ["sqlite", "mysql"]

[[test]]
name = "durability_sqlite"
harness = false
required-features = ["sqlite"]

[[test]]
name = "durability_postgres"
harness = false

[[test]]
name = "durability_mysql"
harness = false
required-features = ["mysql"]

[[test]]
name = "tls_mysql"
required-features = ["mysql"]