[package]
edition = "2024"
name = "wasm-sql"
version = "0.1.6"
authors = ["Alexander Shitikov <a.shitikov73@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Wasmtime host implementation for a SQL component WIT interface. Enables Wasm components to interact with SQL databases via the WebAssembly Component Model."
readme = "README.md"
license = "MIT"
repository = "https://github.com/ashitikov/wasm-sql"
resolver = "2"
[features]
default = ["postgres"]
mysql = ["sqlx/mysql"]
postgres = [
"sqlx/postgres",
"sqlx/bigdecimal",
"sqlx/ipnet",
"sqlx/mac_address",
"dep:bigdecimal",
"dep:ipnet",
"dep:mac_address",
]
sqlite = ["sqlx/sqlite"]
sqlite-unbundled = ["sqlx/sqlite-unbundled"]
[lib]
name = "wasm_sql"
path = "src/lib.rs"
[[example]]
name = "host"
path = "examples/host.rs"
required-features = ["postgres"]
[[test]]
name = "postgres_integration"
path = "tests/postgres_integration.rs"
[[test]]
name = "sqlite_integration"
path = "tests/sqlite_integration.rs"
[dependencies.anyhow]
version = "1.0.100"
[dependencies.bigdecimal]
version = "0.4.9"
optional = true
[dependencies.chrono]
version = "0.4.42"
[dependencies.ipnet]
version = "2.11.0"
optional = true
[dependencies.mac_address]
version = "1.1"
optional = true
[dependencies.serde_json]
version = "1.0.145"
features = ["raw_value"]
[dependencies.sqlx]
version = "0.8"
features = [
"runtime-tokio",
"tls-rustls-ring-webpki",
"chrono",
"uuid",
"json",
"any",
]
optional = true
default-features = false
[dependencies.tokio]
version = "1.48.0"
features = ["sync"]
[dependencies.wasmtime]
version = ">=41"
[dev-dependencies.ctor]
version = "0.4"
[dev-dependencies.paste]
version = "1.0"
[dev-dependencies.testcontainers-modules]
version = "0.11"
features = ["postgres"]
[dev-dependencies.tokio]
version = "1.48"
features = [
"rt-multi-thread",
"macros",
]
[dev-dependencies.wasmtime-wasi]
version = ">=41"