zebra icon indicating copy to clipboard operation
zebra copied to clipboard

Replace `jsonrpc` in `zebra-rpc`

Open upbqdn opened this issue 1 year ago • 3 comments

zebra-rpc uses https://github.com/paritytech/jsonrpc as its JSON RPC server. However, the crate is no longer actively developed and has been superseded by https://github.com/paritytech/jsonrpsee. Another option would be https://github.com/google/tarpc.

upbqdn avatar Jul 15 '24 17:07 upbqdn

I seem to recall that zcashd uses a mix of JSON-RPC 1.0 and 2.0 and that we had to add some workarounds, so we'll need to check if one of those crates are compatible

conradoplg avatar Jul 16 '24 19:07 conradoplg

It looks like jsonrpsee supports middleware via set_http_middleware/set_rpc_middleware, though they require different traits.

We should try using tonic too, it seems more extensible if we get it working with a JSON codec .

arya2 avatar Jul 22 '24 20:07 arya2

I see having a single RPC framework as beneficial, so I'd go with tonic as well.

upbqdn avatar Jul 22 '24 22:07 upbqdn

blocked on #9006 and #9049

mpguerra avatar Dec 02 '24 14:12 mpguerra