switchy_database_connection 0.2.0

Switchy database connection package
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "switchy_database_connection"
version = "0.2.0"
authors = ["Braden Steffaniak"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Switchy database connection package"
readme = "README.md"
keywords = [
    "database",
    "mysql",
    "postgres",
    "sqlite",
]
categories = ["database"]
license = "MPL-2.0"
repository = "https://github.com/MoosicBox/MoosicBox"

[package.metadata]
examples = true

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

[features]
creds = [
    "dep:aws-config",
    "dep:aws-sdk-ssm",
]
database-connection-turso = ["turso"]
default = [
    "duckdb",
    "mysql-sqlx",
    "postgres-sqlx",
    "simulator",
    "sqlite-rusqlite",
    "sqlite-sqlx",
]
duckdb = [
    "dep:duckdb",
    "dep:switchy_async",
    "switchy_database/duckdb",
]
duckdb-bundled = [
    "duckdb",
    "duckdb/bundled",
    "switchy_database/duckdb-bundled",
]
fail-on-warnings = [
    "switchy_async?/fail-on-warnings",
    "switchy_database/fail-on-warnings",
    "switchy_env/fail-on-warnings",
]
mysql = [
    "dep:switchy_async",
    "switchy_database/mysql",
]
mysql-sqlx = [
    "mysql",
    "sqlx",
    "sqlx/mysql",
    "switchy_database/mysql-sqlx",
]
postgres = [
    "dep:switchy_async",
    "switchy_database/postgres",
]
postgres-native-tls = [
    "dep:native-tls",
    "dep:postgres-native-tls",
]
postgres-openssl = [
    "dep:openssl",
    "dep:postgres-openssl",
]
postgres-raw = [
    "dep:deadpool-postgres",
    "dep:tokio-postgres",
    "postgres",
    "switchy_database/postgres-raw",
]
postgres-sqlx = [
    "postgres",
    "sqlx",
    "sqlx/postgres",
    "sqlx/tls-rustls",
    "switchy_database/postgres-sqlx",
]
simulator = [
    "switchy_async?/simulator",
    "switchy_database/simulator",
    "switchy_env/simulator",
]
sqlite = [
    "dep:switchy_async",
    "switchy_database/sqlite",
]
sqlite-rusqlite = [
    "dep:rusqlite",
    "sqlite",
    "switchy_database/sqlite-rusqlite",
]
sqlite-sqlx = [
    "sqlite",
    "sqlx",
    "sqlx/sqlite",
    "switchy_database/sqlite-sqlx",
]
sqlx = [
    "dep:sqlx",
    "switchy_database/sqlx",
]
tls = [
    "sqlx/tls-rustls",
    "switchy_database/tls",
]
turso = [
    "sqlite",
    "switchy_database/turso",
]

[lib]
name = "switchy_database_connection"
path = "src/lib.rs"

[dependencies.aws-config]
version = "1.8.16"
optional = true

[dependencies.aws-sdk-ssm]
version = "1.109.0"
optional = true

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

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

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

[dependencies.native-tls]
version = "0.2.18"
optional = true

[dependencies.openssl]
version = "0.10.80"
features = ["v110"]
optional = true

[dependencies.postgres-native-tls]
version = "0.5.3"
optional = true

[dependencies.postgres-openssl]
version = "0.5.3"
optional = true

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

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

[dependencies.switchy_async]
version = "0.2.0"
optional = true
default-features = false

[dependencies.switchy_database]
version = "0.2.0"
default-features = false

[dependencies.switchy_env]
version = "0.2.0"
features = ["std"]
default-features = false

[dependencies.thiserror]
version = "2.0.18"

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