[package] name = "tsyncp" version = "0.4.1" edition = "2021" authors = ["PoOnesNerfect "] license = "MIT" readme = "README.md" repository = "https://github.com/PoOnesNerfect/tsyncp" homepage = "https://github.com/PoOnesNerfect/tsyncp" documentation = "https://docs.rs/tsyncp/" description = """ Async channel APIs (mpsc, broadcast, barrier, etc) over TCP for message-passing. """ categories = ["network-programming", "web-programming"] keywords = ["channel", "async", "mpsc", "tcp", "message-passing"] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [features] default = ["full"] full = ["json", "prost", "bincode"] json = ["serde", "serde_json"] prost = ["dep:prost", "prost/std"] bincode = ["serde", "dep:bincode" ] # rkyv = ["dep:rkyv", "bytecheck"] [dependencies] bytes = { version = "1" } futures = { version = "0.3" } pin-project = { version = "1" } parking_lot = { version = "0.12" } tokio = { version = "1", features = ["sync", "time", "net", "macros", "io-util", "rt"] } tokio-util = { version = "0.7", features = ["codec"] } serde = { version = "1", optional = true } serde_json = { version = "1", optional = true } prost = { version = "0.12", default-features = false, features = ["std"], optional = true} bincode = { version = "1.3.3", optional = true } thiserror = "1.0" tosserror = "0.1" # rkyv = { version = "0.7", features = ["validation"], optional = true } # bytecheck = { version = "0.6", optional = true } [dev-dependencies] env_logger = { version = "0.11" } log = { version = "0.4" } color-eyre = { version = "0.6" } fake = { version = "2.9", features = ["derive"] } rand = { version = "0.8" } serde = { version = "1", features = ["derive"]} serde_json = { version = "1" } tokio = { version = "1", features = ["sync", "net", "macros", "rt-multi-thread", "time"] } prost = { version = "0.12", default-features = false, features = ["std", "prost-derive"] }