fp/apps/aquatic/crates/http/Cargo.toml

68 lines
1.6 KiB
TOML
Raw Permalink Normal View History

[package]
name = "aquatic_http"
description = "High-performance open HTTP BitTorrent tracker (with optional TLS)"
keywords = ["http", "server", "peer-to-peer", "torrent", "bittorrent"]
version.workspace = true
authors.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
rust-version.workspace = true
readme = "./README.md"
[lib]
name = "aquatic_http"
[[bin]]
name = "aquatic_http"
[features]
default = ["prometheus", "mimalloc"]
prometheus = ["aquatic_common/prometheus", "metrics", "dep:metrics-util"]
metrics = ["dep:metrics"]
# Use mimalloc allocator for much better performance.
#
# Requires cmake and a C compiler
mimalloc = ["dep:mimalloc"]
[dependencies]
aquatic_common = { workspace = true, features = ["rustls"] }
aquatic_http_protocol.workspace = true
aquatic_toml_config.workspace = true
anyhow = "1"
arrayvec = "0.7"
arc-swap = "1"
cfg-if = "1"
either = "1"
futures = "0.3"
futures-lite = "1"
futures-rustls = "0.26"
glommio = "0.9"
httparse = "1"
itoa = "1"
libc = "0.2"
log = "0.4"
memchr = "2"
privdrop = "0.5"
once_cell = "1"
rand = { version = "0.8", features = ["small_rng"] }
rustls-pemfile = "2"
serde = { version = "1", features = ["derive"] }
signal-hook = { version = "0.3" }
slotmap = "1"
socket2 = { version = "0.5", features = ["all"] }
thiserror = "2"
# metrics feature
metrics = { version = "0.24", optional = true }
metrics-util = { version = "0.19", optional = true }
# mimalloc feature
mimalloc = { version = "0.1", default-features = false, optional = true }
[dev-dependencies]
quickcheck = "1"
quickcheck_macros = "1"