Newer
Older
# Changelog
The format is based on [Keep a Changelog].
[Keep a Changelog]: http://keepachangelog.com/en/1.0.0/
## [Unreleased]
## [v0.4.1] – 2021-10-12
The v0.4.1 release is a bug fix.
### [Fixed]
- fix: nit in ServerBuilder::custom_tokio_runtime [#512](https://github.com/paritytech/jsonrpsee/pull/512)
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
## [v0.4.0] – 2021-10-12
The v0.4 release is a breaking change.
### [Added]
- Document resource limiting (#510)
- Resource limiting [#500](https://github.com/paritytech/jsonrpsee/pull/500)
- Support http redirects when doing the ws handshake [#397](https://github.com/paritytech/jsonrpsee/pull/397)
- Add convenience `rpc_params` macro to build params in http and ws clients [#498](https://github.com/paritytech/jsonrpsee/pull/498)
- Method alias attribute for proc macros [#442](https://github.com/paritytech/jsonrpsee/pull/442)
- Add benchmarks for concurrent connections [#430](https://github.com/paritytech/jsonrpsee/pull/430)
- Support generic type params in the proc macro [#436](https://github.com/paritytech/jsonrpsee/pull/436)
### [Changed]
- use tokio::spawn internally in `HttpServer::start` and return `StopHandle` [#402](https://github.com/paritytech/jsonrpsee/pull/402)
- remove `ParamsSer::NoParams` [#501](https://github.com/paritytech/jsonrpsee/pull/501)
- http server uses similar API for host and origin filtering as `WS` [#473](https://github.com/paritytech/jsonrpsee/pull/473)
- `SubscriptionClosed` errors carry more information [#504](https://github.com/paritytech/jsonrpsee/pull/504)
- Improve feature configuration for faster builds and leaner build artifacts [#494](https://github.com/paritytech/jsonrpsee/pull/494)
- Unbox async futures [#495](https://github.com/paritytech/jsonrpsee/pull/495)
- WS clients default subscription buffer set to 1024 items [#475](https://github.com/paritytech/jsonrpsee/pull/475)
- Re-export `v2` submodules [#469](https://github.com/paritytech/jsonrpsee/pull/469)
- Replace internal `array_impl macro` with const generics [#470](https://github.com/paritytech/jsonrpsee/pull/470)
- Rename and reorganize many public types [#462](https://github.com/paritytech/jsonrpsee/pull/462)
- Export acl types [#466](https://github.com/paritytech/jsonrpsee/pull/466)
- Propagate cause of `InvalidParams` [#463](https://github.com/paritytech/jsonrpsee/pull/463)
- Reject overflowing connection with status code 429 [#456](https://github.com/paritytech/jsonrpsee/pull/456)
- Test helper for calling and converting types to JSON-RPC params [#458](https://github.com/paritytech/jsonrpsee/pull/458)
- Make it possible to treat empty JSON response as no params [#446](https://github.com/paritytech/jsonrpsee/pull/446)
- Methods generated by the proc macro return `Result` [#435](https://github.com/paritytech/jsonrpsee/pull/435)
- Concurrent polling on async methods [#424](https://github.com/paritytech/jsonrpsee/pull/424)
- Sniff the first byte to glean if the incoming request is a single or batch request [#419](https://github.com/paritytech/jsonrpsee/pull/419)
- Upgrade hyper to ^0.14.10 [#427](https://github.com/paritytech/jsonrpsee/pull/427)
- Proc macro params optimizations and tests. [#421](https://github.com/paritytech/jsonrpsee/pull/421)
### [Fixed]
- Proc macro Argument parsing should permit commas inside angle brackets [#509](https://github.com/paritytech/jsonrpsee/pull/509)
- Fix http client bench with request limit [#506](https://github.com/paritytech/jsonrpsee/pull/506)
- Fixed flaky test on windows [#491](https://github.com/paritytech/jsonrpsee/pull/491)
- Share the request id code between the http and websocket clients [#490](https://github.com/paritytech/jsonrpsee/pull/490)
- WS server terminates subscriptions when connection is closed by the client. [#483](https://github.com/paritytech/jsonrpsee/pull/483)
- Subscription code generated by the proc macro generated returns `Result` [#455](https://github.com/paritytech/jsonrpsee/pull/455)
- Proc macro generates documentation for trait methods. [#453](https://github.com/paritytech/jsonrpsee/pull/453)
- Fix errors with generics when using the proc macro [#433](https://github.com/paritytech/jsonrpsee/pull/433)
- WS client uses query part of the URL [#429](https://github.com/paritytech/jsonrpsee/pull/429)
### [Removed]
- Remove rustls [#502](https://github.com/paritytech/jsonrpsee/pull/502)
- Remove cors_max_age [#466](https://github.com/paritytech/jsonrpsee/pull/466)
- Remove support for tokio 0.2 runtimes [#432](https://github.com/paritytech/jsonrpsee/pull/432)
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
## [v0.3.0] – 2021-07-12
[changed] Module API refactor [#412](https://github.com/paritytech/jsonrpsee/pull/412)
[changed] Pass owned `RpcParams` to async methods [#410](https://github.com/paritytech/jsonrpsee/pull/410)
[changed] Re-work re-exported types for clarity and consistency [#409](https://github.com/paritytech/jsonrpsee/pull/409)
[changed] All requests time out [#406](https://github.com/paritytech/jsonrpsee/pull/406)
[changed] Streaming `RpcParams` parsing for optional arguments [#401](https://github.com/paritytech/jsonrpsee/pull/401)
[changed] Set allowed Host header values [#399](https://github.com/paritytech/jsonrpsee/pull/399)
[changed] Terminate already established ws connection(s) when the server is stopped [#396](https://github.com/paritytech/jsonrpsee/pull/396)
[added] Customizable JSON-RPC error codes via new enum variant on `CallErrror` [#394](https://github.com/paritytech/jsonrpsee/pull/394)
[changed] Unify a few types and more tests [#389](https://github.com/paritytech/jsonrpsee/pull/389)
[changed] Synchronization-less async connections in ws-server [#388](https://github.com/paritytech/jsonrpsee/pull/388)
[added] Server proc macros [#387](https://github.com/paritytech/jsonrpsee/pull/387)
[added] Add a way to stop servers [#386](https://github.com/paritytech/jsonrpsee/pull/386)
[changed] Refactor benchmarks to use Criterion's async bencher [#385]https://github.com/paritytech/jsonrpsee/pull/385)
[added] Support RPC method aliases and make `RpcModule` be `Clone` [#383]https://github.com/paritytech/jsonrpsee/pull/383)
[added] CORS support and use `soketto` v0.6 [#375](https://github.com/paritytech/jsonrpsee/pull/375)
[changed] Ws switch from sending TEXT instead of BINARY [#374](https://github.com/paritytech/jsonrpsee/pull/374)
[added] Benchmarks for async methods and subscriptions [#372](https://github.com/paritytech/jsonrpsee/pull/372)
## [v0.2.0] – 2021-06-04
[changed] The crate structure changed to several smaller crates, enabling users to pick and choose. The `jsonrpsee` crate works as a façade crate for users to pick&chose what components they wish to use.
[changed] Starting with this release, the project is assuming `tokio` is the async executor.
[changed] Revamped RPC subscription/method definition: users now provide closures when initializing the server and it is no longer possible to register new methods after the server started.
[changed] Refactored the internals from the ground up.
[added] Support for async methods
[added] Support for batch requests (http/ws)
[changed] the proc macros are currently limited to client side.
[added] crate publication script
## [v0.1.0] - 2020-02-28