[package] name = "workflow-rpc" authors.workspace = true edition.workspace = true license.workspace = true repository.workspace = true version.workspace = true # version = "0.3.11" keywords = ["websocket","rpc","wasm","browser"] categories = ["web-programming::websocket","web-programming::http-client"] exclude = ["/.*", "/test"] description = """ Workflow RPC (wRPC) framework based on the workflow-websocket crate offering native & in-browser (WASM32) clients and a native server (based on tokio & tungstenite). wRPC supports custom Borsh and JSON protocols with use of generics for RPC method declarations. """ [lib] crate-type = ["cdylib", "lib"] doctest = false [features] wasm32-sdk = ["workflow-websocket/wasm32-sdk"] native-tls = ["workflow-websocket/native-tls"] native-tls-vendored = ["workflow-websocket/native-tls-vendored"] rustls-tls-native-roots = ["workflow-websocket/rustls-tls-native-roots"] rustls-tls-webpki-roots = ["workflow-websocket/rustls-tls-webpki-roots"] default = ["native-tls"] [dependencies] ahash.workspace = true async-std.workspace = true async-trait.workspace = true borsh.workspace = true downcast-rs.workspace = true futures.workspace = true futures-util.workspace = true manual_future.workspace = true rand.workspace = true serde_json.workspace = true serde.workspace = true thiserror.workspace = true wasm-bindgen.workspace = true workflow-core.workspace = true workflow-log.workspace = true workflow-rpc-macros.workspace = true workflow-task.workspace = true workflow-wasm.workspace = true workflow-websocket.workspace = true [target.'cfg(target_arch = "wasm32")'.dependencies] getrandom.workspace = true [target.'cfg(not(target_arch = "wasm32"))'.dependencies] futures-util.workspace = true tokio.workspace = true tungstenite.workspace = true [lints.clippy] multiple_bound_locations = "allow"