[package]
name = "engineioxide"
description = "Engine IO server implementation in rust as a Tower Service."
version.workspace = true
edition.workspace = true
rust-version.workspace = true
authors.workspace = true
repository.workspace = true
homepage.workspace = true
keywords.workspace = true
categories.workspace = true
license.workspace = true
[package.metadata.docs.rs]
features = ["v3", "hyper-v1"]
rustdoc-args = ["--cfg", "docsrs"]
[dependencies]
futures.workspace = true
http.workspace = true
http-body.workspace = true
serde.workspace = true
serde_json.workspace = true
thiserror.workspace = true
tokio = { workspace = true, features = ["rt", "time"] }
tower.workspace = true
hyper.workspace = true
tokio-tungstenite.workspace = true
base64 = "0.21.0"
bytes = "1.4.0"
pin-project = "1.0.12"
rand = "0.8.5"
tracing = { workspace = true, optional = true }
memchr = { version = "2.5.0", optional = true }
unicode-segmentation = { version = "1.10.1", optional = true }
hyper-v1 = { workspace = true, optional = true }
http-body-v1 = { workspace = true, optional = true }
[dev-dependencies]
tokio = { workspace = true, features = ["macros", "parking_lot"] }
tracing-subscriber.workspace = true
criterion.workspace = true
warp.workspace = true
axum.workspace = true
salvo.workspace = true
[features]
v3 = ["memchr", "unicode-segmentation"]
test-utils = []
tracing = ["dep:tracing"]
hyper-v1 = ["dep:hyper-v1", "dep:http-body-v1"]
[[bench]]
name = "packet_encode"
path = "benches/packet_encode.rs"
harness = false
[[bench]]
name = "packet_decode"
path = "benches/packet_decode.rs"
harness = false