[package]
name = "rapace"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
description = "High-performance RPC framework with shared memory transport"
readme = "README.md"
[package.metadata.docs.rs]
rustdoc-args = ["--html-in-header", "arborium-header.html"]
[package.metadata."docs.rs"]
rustdoc-args = ["--html-in-header", "arborium-header.html"]
[dependencies]
tracing = { workspace = true }
rapace-core = { workspace = true }
rapace-macros = { workspace = true }
rapace-registry = { workspace = true }
facet = { workspace = true }
facet-core = { workspace = true }
facet-postcard = { workspace = true }
futures = { workspace = true }
parking_lot.workspace = true
web-time.workspace = true
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
tokio = { workspace = true, features = ["net", "io-util"], optional = true }
[dev-dependencies]
tokio = { workspace = true, features = ["rt-multi-thread", "macros"] }
tokio-stream = { workspace = true }
[features]
default = ["mem", "stream", "shm"]
mem = ["rapace-core/mem"]
stream = ["rapace-core/stream", "dep:tokio"]
websocket = ["rapace-core/websocket"]
websocket-tungstenite = ["websocket"]
websocket-axum = ["rapace-core/websocket-axum"]
websocket-wasm = ["websocket"]
shm = ["rapace-core/shm"]
full = ["mem", "stream", "websocket", "shm"]