engineioxide 0.17.4

Engine IO server implementation as a Tower Service.
Documentation
[package]
name = "engineioxide"
description = "Engine IO server implementation as a Tower Service."
version = "0.17.4"
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
readme = "README.md"

# docs.rs-specific configuration
[package.metadata.docs.rs]
features = ["v3"]
# Special configuration for docs.rs build
rustdoc-args = ["--cfg", "docsrs"]

[dependencies]
engineioxide-core = { path = "../engineioxide-core", version = "0.2" }
bytes.workspace = true
futures-core.workspace = true
futures-util.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"] }
tokio-util.workspace = true
tower-service.workspace = true
tower-layer.workspace = true
hyper.workspace = true
tokio-tungstenite.workspace = true
http-body-util.workspace = true
pin-project-lite.workspace = true
smallvec.workspace = true
hyper-util = { workspace = true, features = ["tokio"] }

base64 = "0.22"

# Tracing
tracing = { workspace = true, optional = true }

# Engine.io V3 payload
itoa = { workspace = true, optional = true }
memchr = { version = "2.7", optional = true }
unicode-segmentation = { version = "1.13", optional = true }

[dev-dependencies]
tokio = { workspace = true, features = ["macros", "parking_lot"] }
tracing-subscriber.workspace = true
hyper = { workspace = true, features = ["server", "http1"] }
criterion.workspace = true
axum.workspace = true
tokio-stream.workspace = true
[features]
v3 = ["memchr", "unicode-segmentation", "itoa"]
tracing = ["dep:tracing"]
__test_harness = []

[[bench]]
name = "packet_encode"
path = "benches/packet_encode.rs"
harness = false

[[bench]]
name = "packet_decode"
path = "benches/packet_decode.rs"
harness = false

[lints]
workspace = true