busrt 0.5.0

Local and network IPC bus
Documentation
[[bin]]
name = "busrt"
path = "src/cli.rs"
required-features = ["cli"]

[[bin]]
name = "busrtd"
path = "src/server.rs"
required-features = ["server"]

[dependencies.async-channel]
version = "1.7.1"

[dependencies.async-io]
version = "2.6.0"

[dependencies.async-trait]
optional = true
version = "0.1.57"

[dependencies.bma-benchmark]
optional = true
version = "0.0.24"

[dependencies.chrono]
optional = true
version = "0.4.19"

[dependencies.clap]
features = ["derive"]
optional = true
version = "4.5.53"

[dependencies.colored]
optional = true
version = "2"

[dependencies.console-subscriber]
optional = true
version = "0.1.7"

[dependencies.env_logger]
optional = true
version = "0.11.8"

[dependencies.fork]
optional = true
version = "0.1.18"

[dependencies.futures]
optional = true
version = "0.3.26"

[dependencies.hex]
optional = true
version = "0.4.3"

[dependencies.hostname]
optional = true
version = "0.3.1"

[dependencies.ipnetwork]
optional = true
version = "0.20.0"

[dependencies.is-terminal]
optional = true
version = "0.4.17"

[dependencies.lazy_static]
optional = true
version = "1.4.0"

[dependencies.log]
optional = true
version = "0.4.14"

[dependencies.mimalloc]
optional = true
version = "0.1.46"

[dependencies.nix]
optional = true
version = "0.25.0"

[dependencies.num-format]
optional = true
version = "0.4.0"

[dependencies.oneshot]
version = "0.1.11"

[dependencies.parking_lot]
optional = true
version = "0.12.1"

[dependencies.parking_lot_rt]
optional = true
version = "0.12.1"

[dependencies.prettytable-rs]
optional = true
version = "0.10"

[dependencies.regex]
optional = true
version = "1.8.1"

[dependencies.rmp-serde]
optional = true
version = "1.3.0"

[dependencies.rtsc]
features = ["parking_lot"]
optional = true
version = "0.4.2"

[dependencies.serde]
features = ["derive"]
optional = true
version = "1.0.143"

[dependencies.serde-value]
optional = true
version = "0.7.0"

[dependencies.serde_json]
optional = true
version = "1.0.83"

[dependencies.sqlx]
features = ["postgres", "runtime-tokio-rustls"]
optional = true
version = "0.8"

[dependencies.submap]
optional = true
version = "0.3"

[dependencies.syslog]
optional = true
version = "7.0.0"

[dependencies.tokio]
features = ["full"]
optional = true
version = "1.20.1"

[dependencies.tokio-task-pool]
optional = true
version = "0.1.3"

[dependencies.triggered]
optional = true
version = "0.1.2"

[dependencies.unix-named-pipe]
optional = true
version = "0.2.0"

[dependencies.uuid]
features = ["serde", "v4"]
optional = true
version = "1.3.0"

[[example]]
name = "broker_aaa"
path = "examples/broker_aaa.rs"
required-features = ["broker", "rpc"]

[[example]]
name = "broker_custom_rpc"
path = "examples/broker_custom_rpc.rs"
required-features = ["broker", "rpc"]

[[example]]
name = "client_cursor"
path = "examples/client_cursor.rs"
required-features = ["ipc", "rpc", "cursors"]

[[example]]
name = "client_listener"
path = "examples/client_listener.rs"
required-features = ["ipc"]

[[example]]
name = "client_rpc"
path = "examples/client_rpc.rs"
required-features = ["ipc", "rpc"]

[[example]]
name = "client_rpc_handler"
path = "examples/client_rpc_handler.rs"
required-features = ["ipc", "rpc", "broker-rpc"]

[[example]]
name = "client_sender"
path = "examples/client_sender.rs"
required-features = ["ipc"]

[[example]]
name = "inter_thread"
path = "examples/inter_thread.rs"
required-features = ["broker", "rpc"]

[[example]]
name = "server_cursor"
path = "examples/server_cursor.rs"
required-features = ["broker", "ipc", "rpc", "cursors", "sqlx", "futures"]

[features]
broker = ["dep:log", "submap/digest", "dep:async-trait", "dep:unix-named-pipe", "dep:nix", "dep:ipnetwork", "dep:triggered", "dep:parking_lot", "dep:tokio"]
broker-rpc = ["broker", "rpc", "dep:rmp-serde"]
cli = ["ipc", "rpc", "dep:colored", "dep:clap", "dep:env_logger", "dep:bma-benchmark", "dep:prettytable-rs", "dep:hostname", "dep:hex", "dep:num-format", "dep:mimalloc", "dep:serde_json", "dep:is-terminal", "dep:rmp-serde"]
cursors = ["rpc", "dep:uuid"]
full = ["rpc", "ipc", "broker", "broker-rpc", "ipc-sync"]
ipc = ["dep:log", "dep:async-trait", "dep:parking_lot", "dep:tokio"]
ipc-sync = ["dep:log", "dep:parking_lot", "dep:rtsc"]
openssl-vendored = []
rpc = ["dep:log", "dep:serde", "dep:async-trait", "dep:serde-value", "dep:parking_lot", "dep:regex", "dep:tokio-task-pool", "dep:tokio"]
rpc-sync = ["dep:rtsc", "dep:parking_lot", "dep:log", "dep:regex"]
rt = ["dep:parking_lot_rt"]
server = ["dep:log", "dep:syslog", "dep:chrono", "dep:colored", "dep:clap", "dep:lazy_static", "dep:mimalloc", "dep:fork", "broker-rpc"]
std-alloc = []
tracing = ["tokio/tracing", "dep:console-subscriber"]

[lib]
name = "busrt"
path = "src/lib.rs"

[package]
authors = ["Serhij S. <div@altertech.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
description = "Local and network IPC bus"
edition = "2021"
keywords = ["bus", "rt", "ipc", "pubsub"]
license = "Apache-2.0"
name = "busrt"
readme = "README.md"
repository = "https://github.com/alttch/busrt"
version = "0.5.0"

[package.metadata.docs.rs]
features = ["broker", "ipc", "rpc", "ipc-sync", "rpc-sync", "cursors"]
rustdoc-args = ["--cfg", "docsrs"]

[package.metadata.playground]
features = ["broker", "ipc", "rpc", "ipc-sync", "rpc-sync", "cursors"]

[profile.dev]
overflow-checks = false

[profile.release]
strip = true