Cargo Features

hRPC has no features set by default.

hrpc = { version = "0.33.29", features = ["server", "client", "mock_client", "mock_server", "http_server", "http_hyper_client", "http_wasm_client", "websocket_tokio_tungstenite", "websocket_wasm"] }
server http_server? mock_server? = _common, hrpc-proc-macro, matchit

Enable common server code

Affects hrpc::server

client _common_http_client? _common_mock? mock_client? = _common

Enable common client code

Affects hrpc::client

_common client? server? = pin-project-lite, tower

Internal feature used to indicate common server / client is enabled

Enables async-await-macro, bilock, sink and unstable of futures-util

Affects common::layer, common::socket, common::transport

mock_client = _common_mock, client

Enables the mock client

Affects transport::mock, layer::backoff

mock_server = _common_mock, server

Enables the mock server

Affects transport::mock

_common_mock mock_client? mock_server? = client, futures-channel, tokio

Internal feature used in mock transport features

Enables sink and std of futures-channel

used by mock client

and rt and sync of tokio

Used by http server impl in ws handling

Affects transport::mock

http_server = _common_http, axum-server, base64, hyper, server, sha-1, websocket_tokio_tungstenite

Enables the HTTP server

Enables rt of tokio

Affects transport::http

http_hyper_client = _common_http_client, hyper, hyper-rustls, websocket_tokio_tungstenite

Enables the hyper HTTP client

Enables client of hyper ^0.14

Used by hyper client

Affects http::hyper, layer::backoff

http_wasm_client = _common_http_client, gloo-timers, js-sys, reqwasm, wasm-bindgen, wasm-streams, websocket_wasm

Enables the HTTP client that can compile to WASM

Affects http::wasm, layer::backoff

_common_http_client http_hyper_client? http_wasm_client? = _common_http, client

Internal feature used to indicate that a HTTP client is enabled

Affects transport::http

_common_http _common_http_client? http_server? = http, http-body

Internal feature used to indicate that HTTP is enabled

Affects transport::http

websocket_tokio_tungstenite http_hyper_client? http_server? = tokio, tokio-tungstenite

Enable the tokio_tungstenite websocket implementation

Affects transport::tokio_tungstenite

websocket_wasm http_wasm_client? = ws_stream_wasm

Enable the wasm websocket implementation

Affects transport::ws_wasm

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

pin-project-lite _common?
hrpc-proc-macro server?

Enables hrpc-proc-macro

Re-exported by server

tower _common?

Enables tower

Used by server for it's incredible Service trait and other utilities

http _common_http?

Enables http ^0.2

Http transport deps

http-body _common_http?

Enables http-body ^0.4

matchit server?

Enables matchit ^0.5

Used by server for routing

sha-1 http_server?

Enables sha-1

Used by server to implement WS request handling

base64 http_server?

Enables base64 ^0.13

tokio _common_mock? http_server? websocket_tokio_tungstenite?
hyper http_hyper_client? http_server?

Enables hyper ^0.14

hyper-rustls http_hyper_client?

Enables hyper-rustls ^0.23

tokio-tungstenite websocket_tokio_tungstenite?

Enables tokio-tungstenite ^0.17

axum-server http_server?

Enables axum-server ^0.4

reqwasm http_wasm_client?

Enables reqwasm

Used by wasm client

ws_stream_wasm websocket_wasm?
js-sys http_wasm_client?
wasm-bindgen http_wasm_client?
wasm-streams http_wasm_client?

Enables wasm-streams ^0.2

gloo-timers http_wasm_client?

Enables gloo-timers ^0.2

futures-channel _common_mock?