[package]
edition = "2024"
rust-version = "1.97.0"
name = "tact-memory"
version = "0.6.3"
authors = ["Ben Clabby"]
build = false
publish = ["crates-io"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Bounded local and remote memory for Tact"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/clabby/tact"
[features]
client = [
"dep:reqwest",
"dep:rustls",
"dep:tokio",
"dep:url",
"dep:zeroize",
]
default = [
"client",
"local",
"native-server",
"tool",
]
local = [
"dep:rusqlite",
"dep:tokio",
"dep:zeroize",
]
native-server = [
"server",
"dep:tokio",
"tower/limit",
]
server = [
"dep:axum",
"dep:sha2",
"dep:tower",
"dep:tracing",
"dep:web-time",
"dep:zeroize",
]
tool = [
"client",
"local",
"dep:nanocodex",
"dep:zeroize",
]
[lib]
name = "tact_memory"
path = "src/lib.rs"
[dependencies.axum]
version = "0.8.4"
features = ["json"]
optional = true
default-features = false
[dependencies.const_format]
version = "0.2.35"
[dependencies.nanocodex]
version = "0.5.0"
optional = true
[dependencies.reqwest]
version = "0.13.4"
features = [
"json",
"rustls-no-provider",
"stream",
]
optional = true
default-features = false
[dependencies.rusqlite]
version = "0.40.1"
features = ["bundled"]
optional = true
[dependencies.rustls]
version = "0.23.42"
features = [
"ring",
"std",
]
optional = true
default-features = false
[dependencies.serde]
version = "1.0.229"
features = [
"derive",
"rc",
]
[dependencies.serde_json]
version = "1.0.151"
features = ["raw_value"]
[dependencies.sha2]
version = "0.10.9"
optional = true
[dependencies.thiserror]
version = "2.0.19"
[dependencies.tower]
version = "0.5.3"
features = ["util"]
optional = true
[dependencies.tracing]
version = "0.1.44"
optional = true
[dependencies.url]
version = "2.5.7"
optional = true
[dependencies.web-time]
version = "1.1.0"
optional = true
[dependencies.zeroize]
version = "1.9.0"
features = ["derive"]
optional = true
[dev-dependencies.axum]
version = "0.8.4"
features = [
"json",
"http1",
"tokio",
]
default-features = false
[dev-dependencies.tempfile]
version = "3.27.0"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio]
version = "1.53.1"
features = [
"io-util",
"macros",
"process",
"rt-multi-thread",
"signal",
"sync",
"time",
]
optional = true
[lints.clippy]
manual_async_fn = "allow"