[package]
name = "azoth"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true
description = "High-performance embedded database for state management and event sourcing with ACID guarantees"
readme = "../../README.md"
repository.workspace = true
homepage.workspace = true
documentation.workspace = true
keywords.workspace = true
categories.workspace = true
[dependencies]
azoth-core = { workspace = true }
azoth-lmdb = { workspace = true }
azoth-sqlite = { workspace = true }
azoth-file-log = { workspace = true }
azoth-projector = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
thiserror = { workspace = true }
tracing = { workspace = true }
anyhow = { workspace = true }
tokio = { workspace = true }
rusqlite = { workspace = true }
chrono = { workspace = true }
bincode = { workspace = true }
rmp-serde = "1.3"
parking_lot = { workspace = true }
age = "0.10"
zstd = "0.13"
tar = "0.4"
reqwest = { version = "0.12", features = ["json", "multipart"] }
async-trait = "0.1"
tempfile = { workspace = true }
uuid = { workspace = true }
walkdir = { workspace = true }
sha2 = { workspace = true }
alloy-primitives = { version = "0.8", optional = true }
alloy-provider = { version = "0.6", optional = true, features = ["reqwest"] }
alloy-network = { version = "0.6", optional = true }
alloy-rpc-types = { version = "0.6", optional = true }
alloy-signer = { version = "0.6", optional = true }
alloy-signer-local = { version = "0.6", optional = true }
alloy-sol-types = { version = "0.8", optional = true }
alloy-transport-http = { version = "0.6", optional = true }
[features]
default = []
alloy = ["alloy-primitives"]
observe = ["azoth-core/observe"]
onchain = ["alloy", "alloy-provider", "alloy-network", "alloy-rpc-types", "alloy-signer", "alloy-signer-local", "alloy-sol-types", "alloy-transport-http"]
[dev-dependencies]
tempfile = { workspace = true }
tracing-subscriber = { workspace = true }
tokio = { workspace = true, features = ["rt-multi-thread", "macros", "signal"] }
criterion = { version = "0.5", features = ["html_reports"] }
parking_lot = "0.12"
[[example]]
name = "migration_example"
required-features = []
[[bench]]
name = "transaction_throughput"
harness = false
[[bench]]
name = "basic_benchmark"
harness = false
[[bench]]
name = "preflight_cache_benchmark"
harness = false