[package]
edition = "2024"
rust-version = "1.95.0"
name = "tephra-server"
version = "0.4.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Synchronous, thread-per-connection TCP server exposing a tephra event store over the length-prefixed protobuf protocol"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/tephradb/tephra"
resolver = "2"
[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/v{ version }/{ name }-v{ version }-{ target }.tar.gz"
pkg-fmt = "tgz"
bin-dir = "{ name }-v{ version }-{ target }/{ bin }{ binary-ext }"
[features]
crash-points = ["tephra/crash-points"]
default = [
"metrics",
"tls",
"jemalloc",
]
jemalloc = [
"dep:tikv-jemallocator",
"dep:tikv-jemalloc-ctl",
]
metrics = []
tls = [
"dep:rustls",
"tephra-proto/tls",
]
[lib]
name = "tephra_server"
path = "src/lib.rs"
[[bin]]
name = "tephra-server"
path = "src/main.rs"
[[test]]
name = "integration"
path = "tests/integration.rs"
[[test]]
name = "tls"
path = "tests/tls.rs"
[dependencies.argh]
version = "0.1"
[dependencies.config]
version = "0.15"
features = ["toml"]
default-features = false
[dependencies.ctrlc]
version = "3"
features = ["termination"]
[dependencies.flume]
version = "0.12"
features = ["select"]
default-features = false
[dependencies.protobuf]
version = "=4.35.1-release"
[dependencies.rustls]
version = "0.23"
features = [
"ring",
"std",
"logging",
]
optional = true
default-features = false
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.sha2]
version = "0.10"
[dependencies.socket2]
version = "0.6.5"
[dependencies.tephra]
version = "0.3.5"
[dependencies.tephra-proto]
version = "0.2.0"
[dependencies.tikv-jemalloc-ctl]
version = "0.6"
optional = true
[dependencies.tikv-jemallocator]
version = "0.6"
optional = true
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
[dev-dependencies.rcgen]
version = "0.14"
features = [
"ring",
"pem",
]
default-features = false
[dev-dependencies.rustls]
version = "0.23"
features = [
"ring",
"std",
"logging",
]
default-features = false
[dev-dependencies.socket2]
version = "0.6.5"
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tephra-client]
version = "0.5.0"
features = [
"async",
"tls",
"async-tls",
]
[dev-dependencies.tokio]
version = "1"
features = [
"macros",
"rt-multi-thread",
]
default-features = false
[dev-dependencies.tokio-stream]
version = "0.1"