- Jun 20, 2022
-
-
Alexandru Vasile authored
Signed-off-by: Alexandru Vasile <[email protected]>
-
- Apr 20, 2022
-
-
Niklas Adolfsson authored
* fix(rpc module): fail subscription with bad params * draft; show my point * fix tests * fix build * add tests for proc macros too * add tests for bad params in proc macros * fix nits * commit all files * add ugly fix for proc macro code * add more user friendly API * make SubscriptionSink::close take mut self * fix grumbles * show james some code * Update core/src/server/rpc_module.rs Co-authored-by: James Wilson <[email protected]> * remove needless clone * fix build * client fix docs + error type * simplify code: merge connect reset and unsubscribe close reason * remove unknown close reason * refactor: remove Error::SubscriptionClosed * add some nice APIs to ErrorObjectOwned * unify api * address grumbles * remove redundant methods for close and reject * proc macro: compile err when subscription -> Result * rpc module: fix test subscription test * Update core/src/server/rpc_module.rs Co-authored-by: James Wilson <[email protected]> * Update core/src/server/rpc_module.rs Co-authored-by: James Wilson <[email protected]> * Update core/src/server/rpc_module.rs Co-authored-by: James Wilson <[email protected]> * Update core/src/server/rpc_module.rs Co-authored-by: James Wilson <[email protected]> * Update core/src/server/rpc_module.rs Co-authored-by: James Wilson <[email protected]> * Update proc-macros/src/lib.rs Co-authored-by: James Wilson <[email protected]> * address grumbles * remove faulty comment * Update core/src/server/rpc_module.rs Co-authored-by: David <[email protected]> * Update core/src/server/rpc_module.rs Co-authored-by: David <[email protected]> * Update core/src/server/rpc_module.rs Co-authored-by: David <[email protected]> * Update core/src/server/rpc_module.rs Co-authored-by: David <[email protected]> * Update core/src/server/rpc_module.rs Co-authored-by: David <[email protected]> * fix: don't send `RPC Call failed: error`. * remove debug assert Co-authored-by: James Wilson <[email protected]> Co-authored-by: David <[email protected]>
-
- Apr 01, 2022
-
-
Niklas Adolfsson authored
* unify servers; use tokio::TcpListener * add API to build server from tcp socket * build_from_tcp nit: not async * fix nits * change `build_from_tcp` force users configure hyper The hyper settings might contradict to settings on the provided socket, force users of this API to configure that avoid confusion and unexpected settings. * Update http-server/src/server.rs * fix doc links * add separate APIs `build_from_tcp` and `build_from_hyper` * fix clippy * remove dead code * fix build * fix nit in example code
-
- Feb 18, 2022
-
-
Niklas Adolfsson authored
* [proc macros]: only generate unsub if not provided * Update proc-macros/src/rpc_macro.rs Co-authored-by: David <[email protected]> * Update proc-macros/src/lib.rs Co-authored-by: David <[email protected]> * fix grumbles * Update proc-macros/src/lib.rs Co-authored-by: David <[email protected]> * Update proc-macros/src/lib.rs Co-authored-by: David <[email protected]> * Update proc-macros/src/lib.rs Co-authored-by: David <[email protected]> * Update proc-macros/tests/ui/correct/alias_doesnt_use_namespace.rs Co-authored-by: David <[email protected]> Co-authored-by: David <[email protected]>
-
- Dec 17, 2021
-
-
Maciej Hirsz authored
* Nuke V2 * fmt * Formatting and imports * Updated benches * Fix doc comment link * Brace imports in ws-server * Reworking imports * std first * fmt * std on top * Update to match changed line numbers * Rename jsonrpsee_utils -> jsonrpsee_core * Migrating things types -> core * RpcError -> ErrorResponse * Merge types::client into core::client * Continued move types -> core * Removing features to make checks pass * Move rpc_module tests to tests crate * Fixed doc comment links * Add futures-util dependency for client * Remove dead code Co-authored-by: Niklas Adolfsson <[email protected]> * fmt * Feature gate the Client trait * Move `Client` traits to `client` module Co-authored-by: Niklas Adolfsson <[email protected]>
-
- Dec 10, 2021
-
-
Niklas Adolfsson authored
* rpc module: refactor calls/subs without a server * Update utils/src/server/rpc_module.rs * Update utils/src/server/rpc_module.rs * Update utils/src/server/rpc_module.rs * rpc module: add raw_json_requests + rename test_subscribe * Update utils/src/server/rpc_module.rs Co-authored-by: David <[email protected]> * add rustdoc examples * fix tabs * no more tabs in docs * address grumbles * Update utils/src/server/rpc_module.rs Co-authored-by: David <[email protected]>
-
James Wilson authored
* get the tests passing * cargo fmt * tweak comment wording * point to StreamExt in the next() method impl just so that people know to import it if desired * ignore clippy lint on next() Iterator-like method * Fix an example * actually, unwrap instead of transpose
-
- 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
-
-
David authored
Closes https://github.com/paritytech/jsonrpsee/issues/448 This PR adds an implementation for `SubscriptionClient` to the `HttpClient` struct, which makes it possible for http clients to use macro-generated RPC servers. If an http client tries to set up a subscription it will fail with a `HttpNotImplemented` error.
-
- Nov 11, 2021
-
-
Maciej Hirsz authored
* Array syntax aliases * fmt
-
- 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 15, 2021
-
-
Maciej Hirsz authored
* Re-introduce object param parsing * fmt and unnecessary collect
-
Maciej Hirsz authored
* register_blocking_method * Support `blocking` flag in `#[method]` * Macro support and tests * MacOS CI fails if there are too many blocking tasks * conn_id is never used in async callbacks * Dry-run blocking callbacks to maybe satisfy MacOS CI * Make tokio optional behind server feature flag * Document `blocking` flag use in `#[method]` * Comment why the test is disabled on mac * Fix warnings on macos tests
-
- Oct 11, 2021
-
-
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]>
-
- Sep 24, 2021
-
-
Niklas Adolfsson authored
* fix: server should not send to closed subscription Closing #481 * add a test * rewrite me * remove faulty server close * fix tests * fix tests * remove needless code * Update ws-client/src/client.rs * fix: remove atomic flag; use `close_sender` * remove terminate message; use close channel * remove faulty subscription closed error msg * fix tests * fix grumbles * fix build
-
- 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
-
- Sep 14, 2021
-
-
David authored
* Add a test illustrating how to use the `call` convenience method * Extend test + review feedback * log * log * log * log * log * log * log * log * log * log * log * log * log * log * log * Add Methods::test_subscription Log more when params parsing fails * Add call_with test helper (ty @niklas!) + cleanup * Remove todo (part of https://github.com/paritytech/jsonrpsee/issues/457 ) * fmt * Let `test_subscription` be called from other crates * Manually fix indentation * fmt * SSself-review grumbles * CallError::InvalidParams carries an anyhow::Error * fmt * Tweak docs * Update utils/src/server/rpc_module.rs Co-authored-by: Niklas Adolfsson <[email protected]> * review grumble * Fix todos * fmt * Fixup error messages * Include source in the error message for `CallError` * fmt * Update proc-macros/src/render_server.rs Co-authored-by: Maciej Hirsz <[email protected]> * Mention needing jsonrpsee crate in scope * Resolve todo * Impl ToRpcParams for 0-sized array * optimized logging Co-authored-by: Niklas Adolfsson <[email protected]> Co-authored-by: Maciej Hirsz <[email protected]>
-
- Sep 09, 2021
-
-
Niklas Adolfsson authored
Similar to #435 that adds the same restrictions to subscriptions too. To avoid having faulty trait bounds on when the subcription actually returns Result.
-
- Sep 01, 2021
-
-
Niklas Adolfsson authored
* feat: alias attribute for proc macros * implement David's suggested no more unsub field * keep aliases outside namespace * revert example * fix build * Update proc-macros/src/attributes.rs Co-authored-by: David <[email protected]> * grumbles: alias -> aliases * grumbles v2: alias -> aliases Co-authored-by: David <[email protected]>
-
- Aug 27, 2021
-
-
Niklas Adolfsson authored
* PoC support generic type params * more annoying example * add trait bounds for generic params in proc macros * add compile-time test for complicated trait * smarter trait bounds in proc macros * add non-working example for now * revert nits * Update examples/proc_macro.rs Co-authored-by: David <[email protected]> * Update proc-macros/src/helpers.rs Co-authored-by: David <[email protected]> * add messy code but works * cleanup * add some simple compile check in tests * fix doc link * fix doc link last time * address grumbles * docs * Update proc-macros/src/helpers.rs * Update proc-macros/src/helpers.rs * Update proc-macros/src/helpers.rs * Update proc-macros/src/helpers.rs * Update proc-macros/src/visitor.rs * fix nit: | -> || * Update proc-macros/src/helpers.rs Co-authored-by: David <[email protected]> * Update proc-macros/src/helpers.rs Co-authored-by: David <[email protected]> * Update proc-macros/src/helpers.rs Co-authored-by: David <[email protected]> * add issues to introduced TODOs * generics support where clause on trait * Update proc-macros/src/helpers.rs Co-authored-by: David <[email protected]> * Update proc-macros/src/helpers.rs * address grumbles * add more docs Co-authored-by: David <[email protected]>
-
- Aug 25, 2021
-
-
David authored
* Add license headers where missing and update year * Update examples/http.rs Co-authored-by: Niklas Adolfsson <[email protected]> Co-authored-by: Niklas Adolfsson <[email protected]>
-
- Aug 18, 2021
-
-
Niklas Adolfsson authored
* rewrite me * require proc macro API to return result * send unknown message when error is not CallError * show example that auto cast StdError doesn't work * register_*_method Into<Error> * clippy * replace generic errors with anyhow::Error * fix nits * example that anyhow::Error in register_method works * CallError: add missing From impl * [types]: add helper methods for Error types The rationale is to make it possible for users to either use anyhow::Error or use the helper methods. * fmt * Revert "register_*_method Into<Error>" This reverts commit 33b4fa28730b72647ba150659d3c0ab1937e524a. * add better comment * fix nit
-
- Aug 13, 2021
-
-
Niklas Adolfsson authored
* fix: update example to new proc macros * remove unused code * remove client builder
-
- Jul 12, 2021
-
-
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 24, 2021
-
-
Niklas Adolfsson authored
* [jsonrpsee types]: unify types + more tests * address grumbles
-
- 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 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 12, 2021
-
-
Niklas Adolfsson authored
* implement background error reporting * introduce new error variant * [ws client]: remove `Clone` Breaking change which removes the `Clone` on the `WsClient`. It's better that users explictly makes it clone if that's desired, for example by putting it in `Arc<Mutex>`. * fix build * Update ws-client/src/client.rs * remove unused arc * Update ws-client/src/client.rs Co-authored-by: David <[email protected]> * Update ws-client/src/client.rs Co-authored-by: David <[email protected]> * Update ws-client/src/client.rs Co-authored-by: David <[email protected]> * fix rustdoc link Co-authored-by: David <[email protected]>
-
- 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]>
-