- Remove artificial frame size limit for Bincode transport.
- Restructure async clients to match more modern paradigms. New
dependence on Tokio (when the
async
feature is enabled).
- Bincode and JSON transports flush the underlying channel when transmitting
- Upgrade to futures-rs 0.3 and std::Future
- Upgrade proc-macro2/syn/quote to 1.0
- Fix serde derive dependency: Use derive feature of serde crate.
- Add RPCErrorKind::TransportEOF, intended to be used by a Transport when a client disconnects (likely detected through reading an EOF)
- Add support for an async client returning futures
- Split transport into
ClientTransport
,AsyncClientTransport
, andServerTransport
tx_finalize
consumes theTXState
tx_finalize
now returns state, consume by rx_response- Make macro-generated types (
RPCClient
,RPCServer
) public - Allow retrieving the underlying channel from built-in transports
JSONAsyncClientTransport
is an async version ofJSONTransport
BincodeAsyncClientTransport
is an async version ofBincodeTransport