[[bench]]
harness = false
name = "common"
path = "benches/common.rs"
required-features = ["bench"]
[[bench]]
harness = false
name = "read_bench"
path = "benches/read_bench.rs"
required-features = ["bench"]
[[bench]]
harness = false
name = "write_bench"
path = "benches/write_bench.rs"
required-features = ["bench"]
[[bench]]
harness = false
name = "writes"
path = "benches/criterion/writes.rs"
required-features = ["sled"]
[dependencies.arrow]
version = "54"
[dependencies.async-lock]
version = "3"
[dependencies.async-stream]
version = "0.3"
[dependencies.async-trait]
optional = true
version = "0.1"
[dependencies.bytes]
optional = true
version = "1.7"
[dependencies.crc32fast]
version = "1"
[dependencies.crossbeam-skiplist]
version = "0.1"
[dependencies.datafusion]
optional = true
version = "45"
[dependencies.flume]
features = ["async"]
version = "0.11"
[dependencies.fusio]
features = ["dyn", "fs"]
package = "fusio"
version = "0.3.8"
[dependencies.fusio-dispatch]
package = "fusio-dispatch"
version = "0.3.8"
[dependencies.fusio-log]
default-features = false
features = ["bytes"]
package = "fusio-log"
version = "0.3.8"
[dependencies.fusio-parquet]
package = "fusio-parquet"
version = "0.3.8"
[dependencies.futures-core]
version = "0.3"
[dependencies.futures-util]
version = "0.3"
[dependencies.lockable]
version = "0.1.1"
[dependencies.log]
version = "0.4.22"
[dependencies.once_cell]
version = "1"
[dependencies.parquet]
default-features = false
features = ["async", "base64", "brotli", "flate2", "lz4", "snap"]
version = "54"
[dependencies.parquet-lru]
version = "0.3.0"
[dependencies.pin-project-lite]
version = "0.2"
[dependencies.redb]
optional = true
version = "2"
[dependencies.rocksdb]
optional = true
version = "0.23"
[dependencies.sled]
optional = true
version = "0.34"
[dependencies.thiserror]
version = "2.0.3"
[dependencies.tokio]
default-features = false
features = ["io-util"]
version = "1"
[dependencies.tonbo_macros]
version = "0.3.1"
[dependencies.tracing]
version = "0.1"
[dependencies.ulid]
features = ["serde"]
version = "1"
[dev-dependencies.bincode]
version = "1"
[dev-dependencies.fastrand]
version = "2"
[dev-dependencies.futures]
version = "0.3"
[dev-dependencies.serde]
version = "1"
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.trybuild]
version = "1.0"
[[example]]
name = "datafusion"
path = "examples/datafusion.rs"
required-features = ["datafusion"]
[[example]]
name = "declare"
path = "examples/declare.rs"
required-features = ["bytes", "tokio"]
[[example]]
name = "dynamic"
path = "examples/dynamic.rs"
[features]
aws = ["fusio-dispatch/aws", "fusio-log/aws", "fusio/aws"]
bench = ["redb", "rocksdb", "sled"]
bytes = ["dep:bytes"]
datafusion = ["dep:async-trait", "dep:datafusion"]
default = ["aws", "bytes", "tokio", "tokio-http"]
load_tbl = []
object-store = ["fusio/object_store"]
opfs = ["dep:wasm-bindgen-futures", "fusio-dispatch/opfs", "fusio-log/web", "fusio-parquet/web", "fusio/opfs"]
redb = ["dep:redb"]
rocksdb = ["dep:rocksdb"]
sled = ["dep:sled"]
sync = ["fusio/sync"]
tokio = ["fusio-dispatch/tokio", "fusio-log/tokio", "fusio-parquet/tokio", "fusio/tokio", "parquet/default", "tokio/fs", "tokio/rt-multi-thread"]
tokio-http = ["fusio/tokio-http", "fusio-log/tokio-http"]
wasm = ["aws", "bytes", "opfs", "wasm-http"]
wasm-http = ["fusio/wasm-http", "fusio-log/web-http"]
[lib]
name = "tonbo"
path = "src/lib.rs"
[package]
autobenches = false
autobins = false
autoexamples = false
autotests = false
build = false
description = "An embedded persistent KV database in Rust."
documentation = "https://docs.rs/tonbo"
edition = "2021"
license = "Apache-2.0"
name = "tonbo"
readme = "README.md"
resolver = "2"
version = "0.3.2"
[package.metadata]
msrv = "1.79.0"
[profile.bench]
debug = 2
inherits = "release"
[profile.release]
codegen-units = 1
lto = "thin"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.comfy-table]
version = "7"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.criterion]
features = ["async_tokio", "html_reports"]
version = "0.5"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.mimalloc]
version = "0.1"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.tokio]
features = ["full"]
version = "1"
[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom]
features = ["wasm_js"]
version = "0.3.1"
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen]
version = "0.2.95"
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen-futures]
optional = true
version = "0.4.45"
[target.'cfg(target_arch = "wasm32")'.dev-dependencies.wasm-bindgen]
version = "0.2.95"
[target.'cfg(target_arch = "wasm32")'.dev-dependencies.wasm-bindgen-test]
version = "0.3.9"
[target."cfg(unix)".dev-dependencies.pprof]
features = ["criterion", "flamegraph"]
version = "0.14"
[[test]]
name = "data_integrity"
path = "tests/data_integrity.rs"
[[test]]
name = "macros_correctness"
path = "tests/macros_correctness.rs"
[[test]]
name = "wasm"
path = "tests/wasm.rs"