[package]
name = "sochdb-kernel"
version.workspace = true
edition = "2024"
description = "SochDB Kernel - Minimal ACID core with plugin architecture"
license.workspace = true

[features]
default = []
# Feature flags for optional plugin loading
dynamic-plugins = ["libloading"]
# WASM plugin support
wasm-plugins = ["wasmtime", "toml"]

[dependencies]
# Minimal dependencies - only what's needed for ACID core
sochdb-core = { version = "2.0.12", path = "../sochdb-core" }
thiserror = { workspace = true }
parking_lot = "0.12"
crossbeam-channel = "0.5"
bytes = "1.0"
crc32fast = "1.3"

# Optional: for dynamic plugin loading
libloading = { version = "0.8", optional = true }

# Optional: WASM sandbox runtime
wasmtime = { version = "21", optional = true }
toml = { version = "0.8", optional = true }

# Optional: serde for manifest parsing
serde = { version = "1.0", features = ["derive"], optional = true }

[dev-dependencies]
tempfile = "3"
# Tokio only for testing async functions (not in main dependencies)
tokio = { version = "1.35", features = ["macros", "rt"] }
