[package] name = "aquatic_ws" description = "High-performance open WebTorrent tracker" keywords = ["webtorrent", "websocket", "peer-to-peer", "torrent", "bittorrent"] version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true repository.workspace = true readme.workspace = true rust-version.workspace = true [lib] name = "aquatic_ws" [[bin]] name = "aquatic_ws" [features] prometheus = ["metrics", "metrics-exporter-prometheus"] metrics = ["dep:metrics"] [dependencies] aquatic_common = { workspace = true, features = ["rustls", "glommio"] } aquatic_toml_config.workspace = true aquatic_ws_protocol.workspace = true anyhow = "1" async-tungstenite = "0.19" cfg-if = "1" futures = "0.3" futures-lite = "1" futures-rustls = "0.22" glommio = "0.7" hashbrown = { version = "0.13", features = ["serde"] } httparse = "1" log = "0.4" metrics = { version = "0.20", optional = true } metrics-exporter-prometheus = { version = "0.11", optional = true, default-features = false, features = ["http-listener"] } mimalloc = { version = "0.1", default-features = false } privdrop = "0.5" rand = { version = "0.8", features = ["small_rng"] } rustls = "0.20" rustls-pemfile = "1" serde = { version = "1", features = ["derive"] } signal-hook = { version = "0.3" } slab = "0.4" socket2 = { version = "0.4", features = ["all"] } tungstenite = "0.18" [dev-dependencies] quickcheck = "1" quickcheck_macros = "1"