- Dec 01, 2021
-
-
Niklas Adolfsson authored
-
- Nov 26, 2021
-
-
Niklas Adolfsson authored
-
- Nov 24, 2021
-
-
David authored
* Bump version –> 0.5 Fix try-build tests * Changelog * Update CHANGELOG.md Co-authored-by: Niklas Adolfsson <[email protected]> * Update CHANGELOG.md Co-authored-by: Niklas Adolfsson <[email protected]>
-
- Nov 19, 2021
-
-
Niklas Adolfsson authored
* feat: override `method` subscription notif * Arrow syntax for overwrites (#569) * check that unique notifs are used * check that custom sub name is unique * cargo fmt * address grumbles * Update proc-macros/src/rpc_macro.rs * commit added tests * Update proc-macros/src/render_server.rs Co-authored-by: David <[email protected]> * Update proc-macros/src/render_server.rs Co-authored-by: David <[email protected]> * Update proc-macros/src/rpc_macro.rs Co-authored-by: David <[email protected]> * Update proc-macros/src/rpc_macro.rs Co-authored-by: David <[email protected]> * Update utils/src/server/rpc_module.rs Co-authored-by: David <[email protected]> * grumbles * fix long lines * Update utils/src/server/rpc_module.rs Co-authored-by: David <[email protected]> * Update utils/src/server/rpc_module.rs Co-authored-by: David <[email protected]> * Update proc-macros/src/rpc_macro.rs Co-authored-by: David <[email protected]> * Update proc-macros/src/render_server.rs Co-authored-by: David <[email protected]> * Update proc-macros/src/render_server.rs Co-authored-by: David <[email protected]> * more grumbles Co-authored-by: Maciej Hirsz <[email protected]> Co-authored-by: David <[email protected]>
-
- Nov 17, 2021
-
-
Niklas Adolfsson authored
* fix: enable several sockaddress when starting servers * nits * more verbose asserts in rustdoc tests * fix tests * fix tests again
-
- Nov 08, 2021
-
-
Chris Sosnin authored
* Implement Future for server handles * Explicitly assert timeout errors in tests
-
- Nov 01, 2021
-
-
Niklas Adolfsson authored
* reproduce Kian's issue * fix ws server wait until batches has completed * fix nit * clippify * enable benches for ws batch requests * use stream instead of futures::join_all * clippify * address grumbles: better assert
-
- Oct 17, 2021
-
-
Niklas Adolfsson authored
* fix http client bench with request limit * benches for jsonrpc servers * workaround; dont use max request limit * add subscriptions * revert unintentional change * ignore batch request bench for ws * fmt * log -> tracing * test bench CI * test bench v0.3 * wtf; run CI * work plz * remove test CI bench * fix compile warn on macos
-
- Oct 12, 2021
-
-
Niklas Adolfsson authored
-
Niklas Adolfsson authored
* update CHANGELOG * bump version number * fix nit * Update CHANGELOG.md Co-authored-by: David <[email protected]> * bullet list in CHANGELOG * add last item to CHANGELOG Co-authored-by: David <[email protected]>
-
- Oct 11, 2021
-
-
Niklas Adolfsson authored
* [ws server]: refactor start() * remove needless clone * fix http server too * fmt * unify stop APIs * fix bad merge * add API to use custom tokio runtime * use futures oneshot * fix unintentional change * Revert "use futures oneshot" This reverts commit 0432f6ba41d49a3494943458657a31f8afd79160. * Update http-server/src/server.rs Co-authored-by: Maciej Hirsz <[email protected]> Co-authored-by: Maciej Hirsz <[email protected]>
-
Niklas Adolfsson authored
* fix(ParamsSer): serialize to empty array Serialize `ParamsSer::NoParams` to an empty array inorder to comply with the jsonrpc v2 spec. * fix tests * remove ParamsSer::NoParams * address grumbles: adjust rpc params macro
-
Maciej Hirsz authored
* Squash post merge * RAII claims and some comments * Adding resources to Methods * Use arrays for claiming all resources at once * Register resources on ws-server * Return MethodResourcesBuilder from register_method * Return MethodResourcesBuilder from register_async_method * fmt and comments * Add `verify_and_insert` to get rid of `or_insert` in order to get mut ref to value * Resources initialization * No need for ResourceBuilder * Comment all the things * Handle errors on ws-server `start` method * Passing ResourceGuard to method execution * Start ws-server in background, simplify all the tests! * Claiming resources on runtime * Do checked math on resource claiming * Clearer error path for resources at limit * Resource limiting tests WIP * Unbox async futures * fmt * Cleaner proc macro * Fix lifetime issues with ResourceGuard with internal Arc * Remove unnecessary lifetime generic * Working tests * Use turbofish in tests * fmt * Fixed (?) benches * Apply suggestions from code review Co-authored-by: David <[email protected]> * Tweak more grumbles * Adding a test for resource limiting with proc macros (WIP) * Reworking attribute macros for resource limiting (#507) * Squashed macros WIP * bae-less macros! * Make things simpler and more readable * Some comments and DRY aliases parsing * Naming things is hard * Respan is no longer needed * Simpler Arguments * Remove stale code * Apply suggestions from code review Co-authored-by: Niklas Adolfsson <[email protected]> * syn-up all the things, handle resources on methods Co-authored-by: Niklas Adolfsson <[email protected]> * Resource limiting on the http server * Test two resources at once * Test the HTTP server for resource limiting * Apply suggestions from code review Co-authored-by: David <[email protected]> Co-authored-by: Niklas Adolfsson <[email protected]> * Comment tweaks * More explicit error type for `AttributeMeta::retain` * Remove generic from ResourceTable; derive Default on ws Builder * Make the macros shorter Co-authored-by: David <[email protected]> Co-authored-by: Niklas Adolfsson <[email protected]>
-
- Oct 08, 2021
-
-
Niklas Adolfsson authored
-
- Oct 01, 2021
-
-
Maciej Hirsz authored
* Unbox async futures * fmt * Cleaner proc macro * Remove unnecessary parens around async blocks
-
- Sep 16, 2021
-
-
David authored
* Re-export v2::params, error, request and response types * Use shallow type paths
-
- Sep 15, 2021
-
-
David authored
* Renames * More renames * fmt * s/RpcParams/Params/ * Add a type alias `SubscriptionResponse` to `Notification` which is parametrized to `SubscriptionPayload` Move `SubscriptionResponse` to the `response` module * Fix doc links * Cleanup and some docs * Review feedback * cleanup
-
- Aug 31, 2021
-
-
Niklas Adolfsson authored
* benches: add benchmark for concurrent connections * address grumbles: use array into_iter
-
- Jul 12, 2021
-
-
Maciej Hirsz authored
* Do not register methods on servers * fmt * Infallible `to_rpc` proc macro * Remove dead code * Check for duplicate names at compile time * Add a UI test for name conflicts * Apply suggestions from code review Co-authored-by: David <[email protected]> Co-authored-by: David Palm <[email protected]>
-
David authored
* Include "macros" in the "server" feature * Re-export SubscriptionSink * Include the "types" feature in both the "client" and "server" features Export types::* from façade when the "types" is active Export types::* from servers * fmt * Export jsonrpsee_types under types * fmt * broken doc link * fix benches * fmt * Fix test imports
- Jun 16, 2021
-
-
Igor Aleksanov authored
* Use criterion's async bencher * Rewrite concurrent roundtrip in functional style
-
- Jun 14, 2021
-
-
Igor Aleksanov authored
* Add benches for async methods * Benches for subscriptions
-
- Jun 03, 2021
-
-
David authored
* Add a builder to the ws server * Use the WsServerBuilder in tests&examples * cleanup * fmt * Fix benches * fix error message * Add connection count limiting and associated config item * Use the strong_count to `methods` to know how many connections we currently have * Fix test
-
- Jun 01, 2021
-
-
Igor Aleksanov authored
-
David authored
* Remove register_* from Server * Tests pass * Some cleanup * more cleanup * Less bounds * Remove the `RpcMethod` trait – I don't think we need it. * fmt * Fix benches * Enable merging two modules with different contexts * Module registration returns number of methods on the server and checks for dupes Tests for module registration and some cleanup * Export `RpcModule` from façade crate fmt * Revert to return error from `Server::register_module` * Remove Server::methods * Remove TODO * Fix tests Fix http server to work the same as ws-server * Server::method_names * fmt * fix clippy warnings Co-authored-by: Niklas Adolfsson <[email protected]>
-
- May 27, 2021
-
-
Niklas Adolfsson authored
The reason is that `Receiver::next` won't panic polling after `Ok(None)` has been received.
-
- May 07, 2021
-
-
David authored
* Batch requests over the websocket * Use same call signature for both http and ws server * Use CallError instead of InvalidParams Add a draft batch request test * Sort out formatting of batch responses Cleanup Use CallError * Add test for slow method calls * Update utils/src/server.rs Co-authored-by: Niklas Adolfsson <[email protected]> * Add benchmark for batched websocket requests * rename * Rename batch channels * Sort out the InvalidParams situation * Remove one level of InvalidParams Return app-level error when call fails * Update ws-server/src/server.rs Co-authored-by: Andrew Plaza <[email protected]> * Update ws-server/src/server.rs Co-authored-by: Andrew Plaza <[email protected]> Co-authored-by: Niklas Adolfsson <[email protected]> Co-authored-by: Andrew Plaza <[email protected]>
-
- May 04, 2021
-
-
David authored
* WIP * Implement draft of batch requests * fmt * cleanup * Explain why we don't use an untagged enum * Avoid allocating a Vec for single requets * Add comment * Add a benchmark for batch requests * Add more tests, noting where we diverge from the spec Fix empty batch case, i.e. `[]` * Obey the fmt * Update benches/bench.rs Co-authored-by: Andrew Plaza <[email protected]> * Update http-server/src/server.rs Co-authored-by: Andrew Plaza <[email protected]> * Add link to issue * Explain why we're closing the receiving end of the channel. * Limit logging of requests and response to 1kb Add more comments Factor out batch response collection * Wrap comment * tweak log line * Benchmark batch request over different batch sizes * fmt Co-authored-by: Andrew Plaza <[email protected]>
-
- Apr 20, 2021
-
-
Niklas Adolfsson authored
* rewrite me * v2 * PoC works without batch request * remove `PartialEq` bounds * add naive benches types * misc * remove useless lifetime * [ws client]: move request ID generation to client * make tests compile again * [client transport]: kill leaky abstractions. * [http client transport]: minor changes in the API. * [ws client]: fix batch requests. * fix nits * [ws client]: generate two request IDs for subscrib * fix tests * remove unused types + less alloc for params. * fix nits * more tweaks. * remove unused code * fix more nits * remove unused legacy types * reorg types_v2 mod * port macros to new types * fix tests again; more jsonvalue * [proc macros]: bring back impl Into for params. * fix build * [proc macros]: make it work for external crates. * [types]: remove weird From<Option<T>> to impl. * cleanup again * [examples]: remove unused async-std dep * Update types/src/v2/mod.rs * [types]: remove unsed dep smallvec * rewrite me * [types]: error code impl ser/deser Manual implementation of serialize/deserialize to get rid of duplicated message string * [types v2]: re-org with explicit mods * fix faulty test * add missed files * [ws client]: req_manager reserve unsubscribe slot. * simplify test code * add tracking issue for TODO * remove unused deps
-
- Apr 16, 2021
-
-
Niklas Adolfsson authored
* [deps futures]: remove unused features I got annoyed that we bring in `futures-executor` as a dependency however `soketto` does this too, so doesn't help for the `WS` stuff. * cargo fmt
-
- Apr 15, 2021
-
-
Niklas Adolfsson authored
* add wrapper crate * add jsonrpsee crate back * [jsonrpsee]: feature gate modules * [proc macros]: support crate renaming of `types` * Update proc-macros/src/lib.rs Co-authored-by: David <[email protected]> * re-export types * [proc macros]: remove unused features * Update proc-macros/Cargo.toml * fix bad merge Co-authored-by: David <[email protected]>
-
- Apr 01, 2021
-
-
Niklas Adolfsson authored
* [ws client]: client builder for uniform API * Update ws-client/src/transport.rs * Update ws-client/src/client.rs * Update ws-client/src/client.rs * Update ws-client/src/client.rs
-
Niklas Adolfsson authored
* refactor benches * start * fix build: enable `raw value` feature serde_json * start * port it * make tests compile * fix bench * fix bench * introduce builder pattern * tweaks * remove unused code * cleanup * [http server]: configure tcp socket manually. The major reason is to provide a uniform API with the WebSocket server to return the local address. * remove unused deps * [examples]: remove needless sleep * chore: add docs and refactor noise. * Update types/src/jsonrpc/error.rs * http server use constants
-
- Mar 31, 2021
-
-
Niklas Adolfsson authored
* refactor benches * remove async-std * add new file * fix nits
-
- Mar 15, 2021
-
-
Niklas Adolfsson authored
* fix clippy warns * [benches]: migrate to benchmark_group * cargo fmt * fix review comment
-
- Mar 02, 2021
-
-
Niklas Adolfsson authored
* draft: client trait sketch... * use async_trait instead of `Box<Future>` * refactor client trait * [types]: shared client types. * integrate with `jsonrpsee_proc_macros::rpc_api` * Update proc-macros/src/lib.rs * integrate with proc macros * fix: hacky support for generic types in proc macro * fix: make the examples work. * trait: error associated type * Update types/src/traits.rs * client trait: make object safe. Make the trait usable as a trait object i.e, `Box<dyn Trait>` * client trait: remove `Self::Sized` * add tests for proc macros. * fix build * fmt * [client trait]: remove unused associated error typ * [proc macros]: separate enum variant each return_t * add tracking issue to `TODO` * doc(client trait): improve documentation. * separate trait for subscribing client * add documentation * proc macros: remove debug impl * fix compile warns * address grumbles: remove fn process_response * Update types/src/client.rs Co-authored-by: David <[email protected]> * Update types/src/client.rs Co-authored-by: David <[email protected]> * Update types/src/client.rs Co-authored-by: David <[email protected]> * Update types/src/client.rs Co-authored-by: David <[email protected]> * Update types/src/client.rs Co-authored-by: David <[email protected]> * remove old proc macro tests * address grumbles: shorter lines Co-authored-by: David <[email protected]>
-
- Feb 23, 2021
-
-
Maciej Hirsz authored
* Re-apply changes * Fixed tests * 3 to go * Passing tests! * Fix formatting * Fix formatting in tests * Fixed examples * Bind listener when server starts * Formatting, disable deadlock test to check CI * Fixed deadlock test * Fix benches * Remove dead code * Restoring unit tests * Restored all unit tests * Missing unwraps Co-authored-by: Niklas Adolfsson <[email protected]> * Missing unwraps Co-authored-by: Niklas Adolfsson <[email protected]> * Typo :) Co-authored-by: Niklas Adolfsson <[email protected]> * Remove broken connections from subscriptions * Tweak tests * Add some doc comments Co-authored-by: Niklas Adolfsson <[email protected]>
-
- Feb 02, 2021
-
-
Niklas Adolfsson authored
* fix examples * [ws client]: transport use `max_payload_size` * fix nits * fix more nits * Update ws-client/src/client.rs * fix doc tests * [ws client]: all transport config configurable * Update ws-client/src/client.rs Co-authored-by: David <[email protected]> * Update ws-client/src/manager.rs Co-authored-by: David <[email protected]> * address grumbles * grumbles: WsDnsError -> WsHandshakeError * grumbles: remove needless clone * fix lint: remove explicit lifetime * fix nits: channel capacity + docs * clippy nits * clippy nits * fix grumbles: channel capacity 256 As Maciej pointed out the capacity is the number of messages (not bytes) and each message is 96 bytes. Thus, 256 * 96 = ~24kB which is reasonable default value. * Update ws-client/src/client.rs Co-authored-by: David <[email protected]> * grumbles: docs Co-authored-by: David <[email protected]>
-
- Jan 21, 2021
-
-
Niklas Adolfsson authored
* [ci]: fix benchmark workflow * test * make ready for review
-