[package]
name = "message-io"
version = "0.10.2"
authors = ["lemunozm <lemunozm@gmail.com>"]
edition = "2018"
readme = "README.md"
license = "Apache-2.0"
description = "Easy asynchronous network message library"
homepage = "https://github.com/lemunozm/message-io/"
repository = "https://github.com/lemunozm/message-io/"
keywords = ["network", "async", "events", "non-blocking", "tcp"]
categories = ["asynchronous", "game-development", "network-programming", "rust-patterns", "web-programming::websocket"]

[badges]
maintenance = { status = "actively-developed" }

[package.metadata.docs.rs]
all-features = true

[features]
default = ["tcp", "udp", "websocket"] # All features by default
tcp = ["mio/tcp"]
udp = ["mio/udp"]
websocket = ["tungstenite", "mio/tcp"]

[dependencies]
mio = { version = "0.7", features = ["os-poll"] }
crossbeam = "0.8"
log = "0.4"
net2 = "0.2.34"
strum = { version = "0.20", features = ["derive"] }
url = "2.2.0"
tungstenite = { version = "0.13.0", optional = true }

[dev-dependencies]
serde = { version = "1.0", features = ["derive"] }
bincode = "1.3.1"
criterion = "0.3"
fern = "0.6.0"
chrono = "0.4.19"
test-case = "1.1.0"
rand = "0.8.3"
httparse = "1.3.5"

# Only for tests
#![cfg_attr(test, feature(proc_macro))]
#[cfg(test)]
lazy_static = "1.4.0"

[[bench]]
name = "performance"
harness = false
