[package]
edition = "2024"
name = "worterbuch"
version = "1.4.2"
authors = ["Michael Bachmann <mbachmann@bbmsoft.net>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
default-run = "worterbuch"
description = "A message broker / database hybrid."
readme = "README.md"
keywords = [
"message",
"broker",
"data",
"base",
"pubsub",
]
categories = ["database-implementations"]
license = "AGPL-3.0-or-later"
repository = "https://github.com/babymotte/worterbuch"
[features]
commercial = []
default = [
"jemalloc",
"telemetry",
]
jemalloc = [
"worterbuch-common/jemalloc",
"tikv-jemalloc-ctl",
]
telemetry = [
"opentelemetry",
"opentelemetry-otlp",
"opentelemetry-resource-detectors",
"opentelemetry-semantic-conventions",
"opentelemetry_sdk",
"tracing-opentelemetry",
]
[lib]
name = "worterbuch"
path = "src/lib.rs"
[[bin]]
name = "worterbuch"
path = "src/main.rs"
[dependencies.axum]
version = "0.8.7"
features = [
"http2",
"ws",
]
[dependencies.axum-extra]
version = "0.12.2"
features = [
"cookie",
"typed-header",
]
[dependencies.axum-server]
version = "0.8.0"
[dependencies.base64]
version = "0.22.1"
[dependencies.chrono]
version = "0.4.41"
[dependencies.clap]
version = "4.1.11"
features = [
"derive",
"env",
]
[dependencies.dotenvy]
version = "0.15.7"
[dependencies.flate2]
version = "1.1.0"
[dependencies.futures]
version = "0.3.27"
[dependencies.hashbrown]
version = "0.16.1"
features = ["serde"]
[dependencies.hashlink]
version = "0.11.0"
[dependencies.headers]
version = "0.4.1"
[dependencies.hex]
version = "0.4.3"
[dependencies.hostname]
version = "0.4.0"
[dependencies.http-body-util]
version = "0.1.3"
[dependencies.jsonwebtoken]
version = "10.0.0"
features = ["rust_crypto"]
[dependencies.lazy_static]
version = "1.5.0"
[dependencies.libc]
version = "0.2.175"
[dependencies.miette]
version = "7.1.0"
features = ["fancy"]
[dependencies.opentelemetry]
version = "0.31.0"
optional = true
[dependencies.opentelemetry-otlp]
version = "0.31.0"
features = ["grpc-tonic"]
optional = true
[dependencies.opentelemetry-resource-detectors]
version = "0.10.0"
optional = true
[dependencies.opentelemetry-semantic-conventions]
version = "0.31.0"
optional = true
[dependencies.opentelemetry_sdk]
version = "0.31.0"
optional = true
[dependencies.redb]
version = "3.0.2"
[dependencies.serde]
version = "1.0.157"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.94"
[dependencies.serde_yaml]
version = "0.9.22"
[dependencies.sha2]
version = "0.10.6"
[dependencies.socket2]
version = "0.6.0"
features = ["all"]
[dependencies.strum]
version = "0.27.2"
features = ["derive"]
[dependencies.supports-color]
version = "3.0.2"
[dependencies.thiserror]
version = "2.0.16"
[dependencies.tikv-jemalloc-ctl]
version = "0.6.0"
features = ["stats"]
optional = true
[dependencies.tokio]
version = "1.44.2"
features = [
"rt-multi-thread",
"fs",
]
[dependencies.tokio-graceful-shutdown]
version = "0.19.0"
features = ["tracing"]
[dependencies.tokio-metrics]
version = "0.4.0"
[dependencies.tokio-stream]
version = "0.1.14"
[dependencies.tokio-util]
version = "0.7.13"
[dependencies.tower-http]
version = "0.6.2"
features = [
"cors",
"fs",
"trace",
]
[dependencies.tracing]
version = "0.1.41"
[dependencies.tracing-opentelemetry]
version = "0.32.0"
optional = true
[dependencies.tracing-subscriber]
version = "0.3.20"
features = ["env-filter"]
[dependencies.uuid]
version = "1.3.0"
features = [
"serde",
"v4",
]
[dependencies.worterbuch-common]
version = "1.4.2"
features = ["axum-errors"]
[lints.clippy]
all = "deny"
enum_glob_use = "deny"
unwrap_used = "deny"
[lints.rust]