[package] name = "memphis-rust-community" authors = ["turulix", "Conner"] homepage = "https://github.com/turulix/memphis-rust-community" repository = "https://github.com/turulix/memphis-rust-community" documentation = "https://docs.rs/memphis-rust-community" description = "A Rust implementation of the Memphis Messaging Protocol" readme = "../README.md" license = "GPL-3.0" version = "0.4.0" edition = "2021" exclude = [ "docker-compose-latest.yml", "docker-compose-stable.yml" ] keywords = ["memphis", "messaging", "realtime"] categories = ["network-programming", "asynchronous", "api-bindings"] [package.metadata."docs.rs"] all-features = true [features] default = ["producers", "consumers"] full = ["producers", "consumers", "schemaverse", "validator_json", "validator_graphql", "validator_protobuf"] producers = [] consumers = [] schemaverse = [] validator_json = ["schemaverse", "dep:jsonschema"] validator_graphql = ["schemaverse"] validator_protobuf = ["schemaverse"] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] async-nats = "0.32.1" rand = "0.8.5" serde = "1.0.188" serde_json = "1.0.107" tokio = { version = "1.33.0", features = ["full"] } tokio-util = "0.7.9" uuid = { version = "1.4.1", features = ["v4"] } bytes = "1.5.0" log = "0.4.20" futures-util = "0.3.28" thiserror = "1.0.49" async-trait = "0.1.73" hex = { version = "0.4.3", features = ["serde"] } murmur3 = "0.5.2" jsonschema = { version = "0.17.1", optional = true } [dev-dependencies] tokio-test = "0.4.3" env_logger = "0.10.0" log = "0.4.20"