cratestack-sqlite 0.4.13

CrateStack embedded facade — rusqlite-backed SQLite runtime (native + wasm32) plus the shared schema/parser/policy/SQL surface. Pick this crate via `cratestack = { package = "cratestack-sqlite" }` for mobile, desktop, browser, or any on-device storage layer.
Documentation
[package]
name = "cratestack-sqlite"
version.workspace = true
edition.workspace = true
license.workspace = true
authors.workspace = true
description = "CrateStack embedded facade — rusqlite-backed SQLite runtime (native + wasm32) plus the shared schema/parser/policy/SQL surface. Pick this crate via `cratestack = { package = \"cratestack-sqlite\" }` for mobile, desktop, browser, or any on-device storage layer."
repository.workspace = true
homepage.workspace = true
documentation.workspace = true
readme = "README.md"
keywords.workspace = true
categories.workspace = true

# Same `[lib]` rename trick as `cratestack-pg`: package is
# `cratestack-sqlite` on crates.io, but the library is named
# `cratestack` so integration tests resolve `::cratestack::*` paths
# directly. External consumers use `cratestack = { package = "cratestack-sqlite" }`.
[lib]
name = "cratestack"
path = "src/lib.rs"

[features]
default = ["decimal-rust-decimal", "codec-json"]
decimal-rust-decimal = [
    "cratestack-core/decimal-rust-decimal",
    "cratestack-rusqlite/decimal-rust-decimal",
]
decimal-bigdecimal = [
    "cratestack-core/decimal-bigdecimal",
    "cratestack-rusqlite/decimal-bigdecimal",
]
# Forwards the JSON codec to the generated client runtime. See
# `cratestack-pg` for rationale. On `wasm32` the client runtime isn't
# linked (no `reqwest`), so this feature has no effect there.
codec-json = ["cratestack-client-rust/codec-json"]

[dependencies]
chrono.workspace = true
cratestack-core.workspace = true
cratestack-macros.workspace = true
cratestack-parser.workspace = true
cratestack-policy.workspace = true
cratestack-rusqlite.workspace = true
cratestack-sql.workspace = true
regex.workspace = true
serde.workspace = true
serde_json.workspace = true
tracing.workspace = true
uuid.workspace = true

# Generated HTTP client runtime — used by `include_client_schema!` on
# hybrid consumers (e.g. a NAPI / Tauri shell that ships an embedded
# SQLite DB *and* calls a remote backend over HTTP). Target-gated off
# `wasm32-unknown-unknown` because the runtime depends on `reqwest`,
# which doesn't compile to wasm; on wasm the macro's expansion isn't
# useful anyway (browsers use the JS fetch API directly).
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
cratestack-client-rust.workspace = true

[dev-dependencies]
tokio.workspace = true
tracing-subscriber.workspace = true