chore(deps): update rust crate jsonrpsee to 0.24.0 - autoclosed #247
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.20.2
->0.24.0
Release Notes
paritytech/jsonrpsee (jsonrpsee)
v0.24.0
Compare Source
A breaking release that mainly changes:
tls
feature for the client has been divided intotls
andtls-platform-verifier
where thetls
featurewill only include
rustls
and no specific certificate store but the default one is stilltls-rustls-platform-verifier
.This is useful if one wants to avoid bring on openssl dependencies.
anyhow
andbeef
from the codebase.[Changed]
id
inResponse
beforeresult
/error
fields (#1421)tls
intotls
andtls-rustls-platform-verifier
features (#1419)v0.23.2
Compare Source
This a small patch release that fixes a couple of bugs and adds a couple of new APIs.
The bug fixes are:
server::ws::on_connect
was not working properly due to a merge nit when upgrading to hyper v1.0This impacts only users that are using the low-level API and not the server itself.
WsTransport::build_with_stream
shouldn't not resolve the socket addresses and it's fixed now, see #1411 for further info.This impacts users that are inject their own TcpStream directly into the
WsTransport
.[Added]
RpcModule::remove
(#1416)capacity and max_capacity
to the subscription API (#1414)PendingSubscriptionSink::method_name
(#1413)[Fixed]
ws::on_connect
work again (#1418)WsTransport::build_with_stream
don't resolve sockaddrs (#1412)v0.23.1
Compare Source
This is a patch release that injects the ConnectionId in
the extensions when using a RpcModule without a server. This impacts
users that are using RpcModule directly (e.g., unit testing) and not the
server itself.
[Changed]
[Fixed]
v0.23.0
Compare Source
This is a new breaking release, and let's go through the changes.
hyper v1.0
jsonrpsee has been upgraded to use hyper v1.0 and this mainly impacts users that are using
the low-level API and rely on the
hyper::service::make_service_fn
which has been removed, and from now on you need to manage the socket yourself.
The
hyper::service::make_service_fn
can be replaced by the following example template:Also, be aware that
tower::service_fn
andhyper::service::service_fn
are different and it's recommended to usetower::service_fn
from now.Extensions
Because it was not possible/easy to share state between RPC middleware layers
jsonrpsee has added
Extensions
to the Request and Response.To allow users to inject arbitrary data that can be accessed in the RPC middleware
and RPC handlers.
Please be careful when injecting large amounts of data into the extensions because
It's cloned for each RPC call, which can increase memory usage significantly.
The connection ID from the jsonrpsee-server is injected in the extensions by default.
and it is possible to fetch it as follows:
In addition the
Extensions
is not added in the proc-macro API by default andone has to enable
with_extensions
attr for that to be available:client - TLS certificate store changed
The default TLS certificate store has been changed to
rustls-platform-verifier
to decide the best certificatestore for each platform.
In addition it's now possible to inject a custom certificate store
if one wants need some special certificate store.
client - Subscription API modified
The subscription API has been modified:
serde_json::Error
to indicate that error can only occur if the decoding of T fails.
Now it's possible to call
Subscription::close_reason
after the subscription closed (i.e. has return None) to know why.If one wants to replace old messages in case of lagging it is recommended to write your own adaptor on top of the subscription:
[Added]
serve
andserve_with_graceful_shutdown
helpers (#1382)extensions
from http layer (#1389)with_extensions
(#1380)Extensions
to Request/MethodResponse (#1306)Subscription::close_reason
(#1320)[Changed]
ConnectionId
in subscription APIs (#1392)ws ping/pong
(#1386)authorization header
from the URL (#1384)v0.22.5
Compare Source
A small bug-fix release, see each commit below for further information.
[Fixed]
feature server-core
compiles withoutfeature server
(#1360)max_buffer_capacity_per_subscription
that the buffer size > (#1358)v0.22.4
Compare Source
Yet another rather small release that fixes a cancel-safety issue that
could cause an unexpected panic when reading disconnect reason from the background task.
Also this makes the API
Client::disconnect_reason
cancel-safe.[Added]
[Changed]
[Fixed]
v0.22.3
Compare Source
Another small release that adds a new API for RpcModule if one already has the state in an
Arc
and a couple of bug fixes.
[Added]
RpcModule::from_arc
(#1324)[Fixed]
AlreadyStoppedError
(#1325)Thanks to the external contributors @mattsse and @aatifsyed who contributed to this release.
v0.22.2
Compare Source
This is a small patch release that exposes the connection details in server method implementations without breaking changes.
We plan to extend this functionality in jsonrpsee v1.0, although this will necessitate a breaking change.
[Added]
[Changed]
v0.22.1
Compare Source
This is a small patch release that internally changes
AtomicU64
toAtomicUsize
to support more targets.
[Fixed]
AtomicU64
toAtomicUsize
(#1293)v0.22.0
Compare Source
Another breaking release where a new
ResponsePayload
type is introduced in orderto make it possible to determine whether a response has been processed.
Unfortunately, the
IntoResponse trait
was modified to enable thatand some minor changes were made to make more fields private to avoid further
breakage.
Example of the async
ResponsePayload API
Roadmap
We are getting closer to releasing jsonrpsee v1.0 and
the following work is planned:
Thanks to the external contributor @dan-starkware who contributed to this release.
[Added]
TowerService::on_session_close
(#1284)Response
has been processed. (#1281)[Changed]
v0.21.0
Compare Source
This release contains big changes and let's go over the main ones:
JSON-RPC specific middleware
After getting plenty of feedback regarding a JSON-RPC specific middleware,
this release introduces a composable "tower-like" middleware that applies per JSON-RPC method call.
The new middleware also replaces the old
RpcLogger
which may break some use-cases, such as ifJSON-RPC was made on a WebSocket or HTTP transport, but it's possible to implement that by
using
jsonrpsee as a tower service
orthe low-level server API
.An example how write such middleware:
jsonrpsee server as a tower service
For users who want to get full control of the HTTP request, it's now possible to utilize jsonrpsee as a tower service
example here
jsonrpsee server low-level API
For users who want to get low-level access and for example to disconnect
misbehaving peers that is now possible as well example here
Logging in the server
Logging of RPC calls has been disabled by default,
but it's possible to enable that with the RPC logger middleware or provide
your own middleware for that.
WebSocket ping/pong API
The WebSocket ping/pong APIs have been refactored to be able
to disconnect inactive connections both by from the server and client-side.
Thanks to the external contributors @oleonardolima
and @venugopv who contributed to this release.
[Changed]
tcp_nodelay == true
by default ([#1263])(https://github.com/paritytech/jsonrpsee/pull/1263)[Added]
disconnect_reason
API (#1246)service
andlow-level API for more fine-grained API to disconnect peers etc
(#1224)HostFilterLayer::disable
(#1213)[Fixed]
Configuration
📅 Schedule: Branch creation - "before 6am on Monday" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.