[package] name = "psrt" version = "0.2.5" edition = "2021" authors = ["Serhij S. "] license = "Apache-2.0" repository = "https://github.com/alttch/psrt" description = "Industrial Pub-Sub server with minimal latency and MQTT-compatible logic" readme = "README.md" keywords = ["pubsub", "server", "client"] autoexamples = false [[example]] name = "pubsub" path = "examples/pubsub.rs" [[example]] name = "udp_aes" path = "examples/udp_aes.rs" required-features = ["crypto"] [lib] name = "psrt" path = "src/lib.rs" [[bin]] name = "psrtd" path = "src/server.rs" required-features = ["server"] [[bin]] name = "psrt-cli" path = "src/cli.rs" required-features = ["cli"] [profile.dev] overflow-checks = false [profile.release] strip = true lto = true codegen-units = 1 [dependencies] tokio = { version = "1.20.1", features = ["full"] } log = "0.4.14" hex = "0.4.2" nix = "0.25.0" tokio-native-tls = "0.3.0" openssl = "0.10.62" async-channel = "1.7.1" serde = { version = "1.0.143", features = ["derive"] } serde_yaml = "0.8.26" clap = { version = "=3.0.0-beta.2", optional = true } clap_derive = { version = "=3.0.0-beta.2", optional = true } syslog = { version = "5.0.0", optional = true } chrono = { version = "0.4.19", optional = true } colored = { version = "2", optional = true } env_logger = { version = "0.9.0", optional = true } bcrypt = { version = "0.10.1", optional = true } fork = { version = "0.1.18", optional = true } bma-benchmark = { version = "0.0.20", optional = true } byte-unit = { version = "4.0.13", optional = true } hyper = { version = "0.14", features = ["full"], optional = true } serde_json = { version = "1.0.68", optional = true } base64 = { version = "0.13.0", optional = true } hostname = { version = "0.3.1", optional = true } term_size = { version = "0.3.2", optional = true } prettytable-rs = { version = "0.10.0", optional = true } num-format = { version = "0.4.0", optional = true } getch = { version = "0.2.1", optional = true } aes-gcm = { version = "0.9.4", optional = true } rand = { version = "0.8.4", optional = true } submap = { version = "0.2.3", optional = true } jemallocator = { version = "0.3.2", optional = true } parking_lot = { package = "parking_lot_rt", version = "0.12.1" } async-trait = "0.1.74" eva-sdk = "0.3.10" once_cell = "1.18.0" eva-common = { version = "0.3.23", features = ["services"] } [features] #default = ["server"] cluster = ["server"] cli = ["bma-benchmark", "byte-unit", "clap", "clap_derive", "env_logger", "term_size", "prettytable-rs", "num-format", "getch", "rand", "jemallocator"] server = ["base64", "bcrypt", "clap", "clap_derive", "colored", "chrono", "fork", "hostname", "hyper", "serde_json", "syslog", "jemallocator", "submap/native-digest"] crypto = ["aes-gcm", "rand"] openssl-vendored = ["openssl/vendored", "eva-common/openssl-no-fips"] openssl3 = ["eva-common/openssl3"] std-alloc = []