switchy_database 0.3.0

Switchy database package
[[bench]]
harness = false
name = "database_benchmarks"

[dependencies.actix-web]
optional = true
version = "4.13.0"

[dependencies.async-trait]
version = "0.1.89"

[dependencies.chrono]
default-features = false
features = [
    "clock",
    "serde",
]
version = "0.4.44"

[dependencies.deadpool-postgres]
optional = true
version = "0.14.1"

[dependencies.duckdb]
default-features = false
optional = true
version = "1.10502.0"

[dependencies.futures]
optional = true
version = "0.3.32"

[dependencies.log]
features = ["release_max_level_trace"]
version = "0.4.29"

[dependencies.moosicbox_assert]
default-features = false
version = "0.3.0"

[dependencies.moosicbox_profiles]
default-features = false
features = ["api"]
version = "0.3.0"

[dependencies.postgres-protocol]
features = []
optional = true
version = "0.6.11"

[dependencies.regex]
optional = true
version = "1.12.3"

[dependencies.rusqlite]
features = ["bundled"]
optional = true
version = "=0.32.1"

[dependencies.rust_decimal]
default-features = false
features = [
    "std",
    "tokio-pg",
]
optional = true
version = "1.42.0"

[dependencies.sqlx]
default-features = false
features = ["runtime-tokio"]
optional = true
version = "0.8.6"

[dependencies.sqlx-postgres]
default-features = false
features = ["chrono"]
optional = true
version = "0.8.6"

[dependencies.switchy_async]
default-features = false
features = [
    "sync",
    "tokio",
]
version = "0.3.0"

[dependencies.switchy_time]
default-features = false
features = [
    "chrono",
    "std",
]
version = "0.3.0"

[dependencies.thiserror]
version = "2.0.18"

[dependencies.tokio]
version = "1.52.3"

[dependencies.tokio-postgres]
features = []
optional = true
version = "0.7.17"

[dependencies.tokio-util]
optional = true
version = "0.7.18"

[dependencies.turso]
default-features = false
features = ["mimalloc"]
optional = true
version = "0.6.0"

[dependencies.uuid]
features = ["v4"]
optional = true
version = "1.23.1"

[features]
_any_backend = []
all-placeholders = [
    "placeholder-at-number",
    "placeholder-colon-number",
    "placeholder-dollar-number",
    "placeholder-named-colon",
    "placeholder-question-mark",
]
api = [
    "dep:actix-web",
    "dep:futures",
    "moosicbox_profiles/api",
]
auto-reverse = []
cascade = ["schema"]
decimal = [
    "dep:rust_decimal",
    "sqlx?/rust_decimal",
]
default = [
    "all-placeholders",
    "api",
    "auto-reverse",
    "cascade",
    "decimal",
    "duckdb",
    "mysql",
    "postgres-sqlx",
    "schema",
    "simulator",
    "sqlite-rusqlite",
    "sqlite-sqlx",
    "turso",
    "uuid",
]
duckdb = [
    "_any_backend",
    "dep:duckdb",
    "dep:regex",
    "placeholder-question-mark",
    "switchy_async/sync",
]
duckdb-bundled = [
    "duckdb",
    "duckdb/bundled",
]
fail-on-warnings = [
    "moosicbox_assert/fail-on-warnings",
    "moosicbox_profiles/fail-on-warnings",
    "switchy_async/fail-on-warnings",
    "switchy_time/fail-on-warnings",
]
mysql = [
    "_any_backend",
    "mysql-sqlx",
    "sqlx",
]
mysql-sqlx = [
    "_any_backend",
    "dep:futures",
    "dep:sqlx",
    "placeholder-question-mark",
    "sqlx",
    "sqlx/mysql",
]
placeholder-at-number = ["dep:regex"]
placeholder-colon-number = ["dep:regex"]
placeholder-dollar-number = ["dep:regex"]
placeholder-named-colon = ["dep:regex"]
placeholder-question-mark = []
postgres = [
    "_any_backend",
    "dep:futures",
    "dep:regex",
    "dep:tokio-util",
    "postgres-raw",
]
postgres-raw = [
    "_any_backend",
    "dep:deadpool-postgres",
    "dep:postgres-protocol",
    "dep:tokio-postgres",
    "placeholder-dollar-number",
    "postgres",
]
postgres-sqlx = [
    "_any_backend",
    "dep:sqlx",
    "dep:sqlx-postgres",
    "placeholder-dollar-number",
    "postgres",
    "sqlx",
    "sqlx-postgres/chrono",
    "sqlx/postgres",
]
schema = []
simulator = [
    "sqlite-rusqlite",
    "switchy_async/simulator",
    "switchy_time/simulator",
]
sqlite = [
    "_any_backend",
    "sqlite-sqlx",
]
sqlite-rusqlite = [
    "_any_backend",
    "dep:regex",
    "dep:rusqlite",
    "placeholder-question-mark",
    "switchy_async/sync",
]
sqlite-sqlx = [
    "_any_backend",
    "dep:futures",
    "dep:regex",
    "dep:sqlx",
    "placeholder-question-mark",
    "sqlx",
    "sqlx/sqlite",
]
sqlx = ["_any_backend"]
tls = ["sqlx?/tls-rustls"]
turso = [
    "_any_backend",
    "dep:regex",
    "dep:turso",
    "placeholder-question-mark",
]
uuid = [
    "dep:uuid",
    "sqlx?/uuid",
]

[package]
authors = ["Braden Steffaniak"]
categories = ["database"]
description = "Switchy database package"
edition = "2024"
keywords = [
    "database",
    "mysql",
    "postgres",
    "sqlite",
]
license = "MPL-2.0"
name = "switchy_database"
readme = "README.md"
repository = "https://github.com/MoosicBox/MoosicBox"
version = "0.3.0"

[package.metadata]
examples = true

[package.metadata.workspaces]
group = "switchy"