Rust JSON-RPC library on top of async/await
v0.16.0 is a breaking release and the major changes are:
jsonrpsee-http-server
and jsonrpsee-ws-server
crates are moved to the jsonrpsee-server
crate instead.tower middleware
support.tower middleware
.types
to server feature (#891)RpcModule::call
decode response correctly (#839)transport protocol details
to the logger trait (#886)notify_on_disconnect
(#837)bytes_len()
to Params (#848)WS and HTTP servers
with a server that supports both WS and HTTP
(#863)tower
support (#831)Middleware
to Logger
(#845)SubscriptionSink::pipe_from_stream
(#901)This release fixes some incorrect tracing spans.
v0.15.0 is a breaking release. The main changes are:
examples/examples/proc_macro_bounds.rs
for examples.PendingSink
concept (you can still manually accept or reject a sink, but otherwise it'll be accepted automatically if you send a message down it) (#799).Middleware
trait has been split into HttpMiddleware
and WsMiddleware
to better capture the differences between the two. if you use custom middleware, you'll need to implement one or the other trait on it depending on your used transport method (#793). We also provide params and the method type to middleware calls now, too (#820).Here's the full list of changes:
v0.14.0 is breaking release which changes the health and access control APIs
and a bunch of bug fixes.
*
in host and origin filtering #781
unsubscribe calls
in middleware #792
fn call
#774
ping-pong
for WebSocket clients #772
ping-pong
for WebSocket server #782
v0.12.0 is mainly a patch release with some minor features added.
unsubscribed
via the unsubscribe call
#743
v0.11.0 is a breaking release that reworks how subscriptions are handled by the servers where the users have to explicitly reject or accept each subscription. The reason for this is that the actual params in the subscription is passed to the callback and if the application decides the params are invalid and the server can't know if the call is going to fail or pass when dispatching the call. Thus, the actual subscription method call is only answered when the subscription is accepted or rejected.
Additionally, the servers before sent a SubscriptionClosed message
which is now disabled by default because it might break other implementations.
It is still possible to respond with a SubscriptionClosed message
but one has to match on the result from SubscriptionSink::pipe_from_stream
.
This release also adds support for JSON-RPC WASM client
using web-sys bindings.
v0.10.1 is a release that fixes a regression in the HTTP server where the backlog was hardcoded to 128 (this is now set to 1024 by default but also configurable), introduces a couple of new APIs and a few minor bug fixes.
If your usage expects a high rate of new HTTP connections you are encouraged to update or manually configure the socket based on the traffic characteristics.
Error::Request
variant #717
SubscriptionClosed
notification #721
ws server
#703