- Sep 30, 2022
-
-
Niklas Adolfsson authored
-
- Sep 13, 2022
-
-
Niklas Adolfsson authored
* ws server: support both http and ws * clean things up * ws server: add http logger and ws logger * more cleanup * fix nits * middleware example * remove http and ws server crates * move things around * some minor fixes * fix stop in http context * fix tests * fix features * use header constants * remove access_control & expose only host filtering CORS has been removed to tower middleware and doesn't need to supported anymore * fix merge logging traits + move to server * supress warnings faulty dead code * remove unwrap * support http2 * doesnt work * feat: simpler stop handling * Update server/src/future.rs * some cleanup * Update server/src/future.rs Co-authored-by: Alexandru Vasile <[email protected]> * Update server/src/future.rs Co-authored-by: Alexandru Vasile <[email protected]> * fix nits * address grumbles * commit examples and nits * clarify comment * remove noise * remove impl Future for ServerHandle * remove needless async {} * add http2 test * add ServerBuilder::build_from_tcp * fix super nit: no more Option<SocketAddr> * fix Option<SocketAddr> * Update server/src/future.rs Co-authored-by: Alexandru Vasile <[email protected]> * Update server/src/future.rs Co-authored-by: Alexandru Vasile <[email protected]> Co-authored-by: Alexandru Vasile <[email protected]>
-
- Sep 06, 2022
-
-
Alexandru Vasile authored
* core: Fix doc typo Signed-off-by: Alexandru Vasile <[email protected]> * types: Implement generic `ParamBuilder` for RPC parameters Signed-off-by: Alexandru Vasile <[email protected]> * types: Add specialized RPC parameter builder for arrays and maps Signed-off-by: Alexandru Vasile <[email protected]> * types: Implement parameter builder for batch requests Signed-off-by: Alexandru Vasile <[email protected]> * types: Implement `rpc_params` in the `types` crate Signed-off-by: Alexandru Vasile <[email protected]> * core: Adjust `ClientT` for generic efficient parameters Signed-off-by: Alexandru Vasile <[email protected]> * proc-macro: Render clients using the parameter builders Signed-off-by: Alexandru Vasile <[email protected]> * Adjust testing to the `ToRpcParams` interface Signed-off-by: Alexandru Vasile <[email protected]> * core: Move `rpc_params` to core and simplify testing Signed-off-by: Alexandru Vasile <[email protected]> * core: Rename server's trait to `ToRpcServerParams` Signed-off-by: Alexandru Vasile <[email protected]> * bench: Adjust benches to the `ToRpcParams` interface Signed-off-by: Alexandru Vasile <[email protected]> * Fix clippy Signed-off-by: Alexandru Vasile <[email protected]> * types: Rename batch builder to `BatchRequestBuilder` Signed-off-by: Alexandru Vasile <[email protected]> * examples: Re-enable proc-macro example Signed-off-by: Alexandru Vasile <[email protected]> * types: Fix doc tests and add panic documentation Signed-off-by: Alexandru Vasile <[email protected]> * core: Fix documentation link Signed-off-by: Alexandru Vasile <[email protected]> * client: Use BatchRequestBuilder as parameter for batch requests Signed-off-by: Alexandru Vasile <[email protected]> * Update core/src/server/rpc_module.rs Co-authored-by: Niklas Adolfsson <[email protected]> * Update core/src/server/rpc_module.rs Co-authored-by: Niklas Adolfsson <[email protected]> * types: Add specialized constructors for internal `ParamsBuilder` Signed-off-by: Alexandru Vasile <[email protected]> * types: Implement `EmptyParams` for client's parameters Signed-off-by: Alexandru Vasile <[email protected]> * tests: Fix macos disabled test Signed-off-by: Alexandru Vasile <[email protected]> * types: Improve comment Signed-off-by: Alexandru Vasile <[email protected]> * Fix clippy Signed-off-by: Alexandru Vasile <[email protected]> * benches: Rename functions Signed-off-by: Alexandru Vasile <[email protected]> * types: Rename param types to `ArrayParams` and `ObjectParams` Signed-off-by: Alexandru Vasile <[email protected]> * Move paramters to core crate Signed-off-by: Alexandru Vasile <[email protected]> * core: Return `core::Error` from `ToRpcParams` trait Signed-off-by: Alexandru Vasile <[email protected]> * Fix doc link Signed-off-by: Alexandru Vasile <[email protected]> * Fix `ArrayParamsBuilder` doc links Signed-off-by: Alexandru Vasile <[email protected]> * Remove `ToRpcServerParams` trait Signed-off-by: Alexandru Vasile <[email protected]> * core: Fix `ToRpcParams` docs Signed-off-by: Alexandru Vasile <[email protected]> * Remove `ParamsSer` and extend benchmarking Signed-off-by: Alexandru Vasile <[email protected]> * core: Optimise `rpc_params` to avoid allocation on error Signed-off-by: Alexandru Vasile <[email protected]> * params: zero allocation for empty params Signed-off-by: Alexandru Vasile <[email protected]> * examples: Add copyright back Signed-off-by: Alexandru Vasile <[email protected]> * traits: Remove empty doc line Signed-off-by: Alexandru Vasile <[email protected]> * Update core/src/traits.rs Co-authored-by: James Wilson <[email protected]> * Update core/src/traits.rs Co-authored-by: James Wilson <[email protected]> * examples: Restore `proc_macro` example to origin/master Signed-off-by: Alexandru Vasile <[email protected]> * core: Remove empty case for `rpc_params` macro Signed-off-by: Alexandru Vasile <[email protected]> Signed-off-by: Alexandru Vasile <[email protected]> Co-authored-by: Niklas Adolfsson <[email protected]> Co-authored-by: James Wilson <[email protected]>
-
- Jul 06, 2022
-
-
Niklas Adolfsson authored
-
- Jul 04, 2022
-
-
Alexandru Vasile authored
* Parse user defined client_bounds and server_bounds Signed-off-by: Alexandru Vasile <[email protected]> * Use custom user defined bounds if provided Signed-off-by: Alexandru Vasile <[email protected]> * Add provided where clause to the custom bounds Signed-off-by: Alexandru Vasile <[email protected]> * Add proc_macro with bounds example Signed-off-by: Alexandru Vasile <[email protected]> * Check against client_bounds wihtout client implementation Signed-off-by: Alexandru Vasile <[email protected]> * tests: Add ui test for empty bounds Signed-off-by: Alexandru Vasile <[email protected]> * tests: Add ui test to check bounds without implementation Signed-off-by: Alexandru Vasile <[email protected]> * Add bounds documentation Signed-off-by: Alexandru Vasile <[email protected]> * rpc_macro: Remove `WherePredicate` from parsing Signed-off-by: Alexandru Vasile <[email protected]> * ui: Add test that compiles Signed-off-by: Alexandru Vasile <[email protected]> * Rename rendered `T` to avoid collision with user provided generic Signed-off-by: Alexandru Vasile <[email protected]> * tests: Modify UI correct rpc_bounds test to call server's methods Signed-off-by: Alexandru Vasile <[email protected]>
-
- Jun 29, 2022
-
-
Alexandru Vasile authored
* subscription: Allow errors in subscription callbacks Signed-off-by: Alexandru Vasile <[email protected]> * subscription: Remove the need to own the error Signed-off-by: Alexandru Vasile <[email protected]> * error: Build `ErrorObject` from `CallError` for improved ergonomics Signed-off-by: Alexandru Vasile <[email protected]> * Update examples for the new subscription API Signed-off-by: Alexandru Vasile <[email protected]> * Add alias for subscription result Signed-off-by: Alexandru Vasile <[email protected]> * macros: Render server subscription method with `ResultSubscription` Signed-off-by: Alexandru Vasile <[email protected]> * Port `proc_macro` example to new API Signed-off-by: Alexandru Vasile <[email protected]> * Rename `ResultSubscription` to `ReturnTypeSubscription` to avoid confusion Signed-off-by: Alexandru Vasile <[email protected]> * Port all tests to new subscription API Signed-off-by: Alexandru Vasile <[email protected]> * Update documentation Signed-off-by: Alexandru Vasile <[email protected]> * Port benches Signed-off-by: Alexandru Vasile <[email protected]> * Replace tabs with spaces & add documentation Signed-off-by: Alexandru Vasile <[email protected]> * Add dummy error for subscriptions Signed-off-by: Alexandru Vasile <[email protected]> * Implement `From` for `SubscriptionError` Signed-off-by: Alexandru Vasile <[email protected]> * Return `SubscriptionError` when parsing params Signed-off-by: Alexandru Vasile <[email protected]> * Rename `SubscriptionError` to `SubscriptionEmptyError` Signed-off-by: Alexandru Vasile <[email protected]> * Change `accept` signature Signed-off-by: Alexandru Vasile <[email protected]> * Port tests to new `accept` api Signed-off-by: Alexandru Vasile <[email protected]> * Implement `pipe_from_try_stream` and `pipe_from_stream` for `PendingSubscription` Signed-off-by: Alexandru Vasile <[email protected]> * Modify examples to ilustrate new API Signed-off-by: Alexandru Vasile <[email protected]> * Fix docs tests Signed-off-by: Alexandru Vasile <[email protected]> * Rename previously `SubscriptionResult` -> `InnerSubscriptionResult` Signed-off-by: Alexandru Vasile <[email protected]> * Rename `ReturnTypeSubscription` -> `SubscriptionResult` Signed-off-by: Alexandru Vasile <[email protected]> * Remove documentation line Signed-off-by: Alexandru Vasile <[email protected]> * Implement `PipeFromStreamResult` Signed-off-by: Alexandru Vasile <[email protected]> * Add comment for empty error Signed-off-by: Alexandru Vasile <[email protected]> * Update proc-macros/src/lib.rs Co-authored-by: Niklas Adolfsson <[email protected]> * Update proc-macros/src/lib.rs Co-authored-by: Niklas Adolfsson <[email protected]> * Update proc-macros/src/lib.rs Co-authored-by: Niklas Adolfsson <[email protected]> * Change `ReturnTypeSubscription` -> `SubscriptionResult` Signed-off-by: Alexandru Vasile <[email protected]> * Add `ResultConsumed` for `PipeFromStreamResult` Signed-off-by: Alexandru Vasile <[email protected]> * Update examples to use `PipeFromStreamResult` Signed-off-by: Alexandru Vasile <[email protected]> * Replace ConsumedResult with Options Signed-off-by: Alexandru Vasile <[email protected]> * Log warning when subscription callback fails Signed-off-by: Alexandru Vasile <[email protected]> * Change ubuntu test names Signed-off-by: Alexandru Vasile <[email protected]> * server: Make `pipe` methods of `SubscriptionSink` private Signed-off-by: Alexandru Vasile <[email protected]> * server: Remove `pipe_from_stream` method of `SubscriptionSink` Signed-off-by: Alexandru Vasile <[email protected]> * server: Update PipeFromStreamResult documentation Signed-off-by: Alexandru Vasile <[email protected]> * Adjust tests to `SubscriptionSink::pipe_from_stream` private interface Signed-off-by: Alexandru Vasile <[email protected]> * Add `accept-reject` API on `SubscriptionSink` Signed-off-by: Alexandru Vasile <[email protected]> * Make `pipe_from_try_stream` public Signed-off-by: Alexandru Vasile <[email protected]> * Maybe accept the subscription Signed-off-by: Alexandru Vasile <[email protected]> * Revert "server: Remove `pipe_from_stream` method of `SubscriptionSink`" This reverts commit d3c3ce9c . * Make `unsubscribe` channel optional on accepting the connection Signed-off-by: Alexandru Vasile <[email protected]> * Pass `SubscriptionSink` to subscription callbacks Signed-off-by: Alexandru Vasile <[email protected]> * Implement subscription sink state Signed-off-by: Alexandru Vasile <[email protected]> * Submit `InvalidParams` if sink was never accepted Signed-off-by: Alexandru Vasile <[email protected]> * Handle rejected sinks Signed-off-by: Alexandru Vasile <[email protected]> * Remove `PendingSubscription` Signed-off-by: Alexandru Vasile <[email protected]> * Fix doc tests Signed-off-by: Alexandru Vasile <[email protected]> * macro: Make subscription sink mutable Signed-off-by: Alexandru Vasile <[email protected]> * Fix tests and examples Signed-off-by: Alexandru Vasile <[email protected]> * macro: Return `sink.reject()` result Signed-off-by: Alexandru Vasile <[email protected]> * tests: Add test for `SubscriptionSinkState` Signed-off-by: Alexandru Vasile <[email protected]> * Test internal subscription sink state Signed-off-by: Alexandru Vasile <[email protected]> * Fix `send_error` to not always return `false` Signed-off-by: Alexandru Vasile <[email protected]> * Fix benches Signed-off-by: Alexandru Vasile <[email protected]> * Remove `PipeFromStreamResult` Signed-off-by: Alexandru Vasile <[email protected]> * Use valid Json-RPC return code for test errors Signed-off-by: Alexandru Vasile <[email protected]> * Remove `SubscriptionSinkState`" * Remodel state machine using `Option`s for `SubscriptionSink`s Signed-off-by: Alexandru Vasile <[email protected]> * tests: Double accept / reject API for `SubscriptionSink` Signed-off-by: Alexandru Vasile <[email protected]> * Implement `SubscriptionAcceptRejectError` for error propagation Signed-off-by: Alexandru Vasile <[email protected]> * Remove `maybe_accept` wrapper Signed-off-by: Alexandru Vasile <[email protected]> * Update comments and documentation Signed-off-by: Alexandru Vasile <[email protected]> * Update core/src/server/rpc_module.rs Co-authored-by: Niklas Adolfsson <[email protected]> * Update core/src/server/rpc_module.rs Co-authored-by: Niklas Adolfsson <[email protected]> * rpc_server: Add type alias for unsubscription calls Signed-off-by: Alexandru Vasile <[email protected]> * rpc_server: Improve comment regarding dropped error Signed-off-by: Alexandru Vasile <[email protected]> * style: Single line return errors Signed-off-by: Alexandru Vasile <[email protected]> * Make comment more verbose Co-authored-by: Niklas Adolfsson <[email protected]> Co-authored-by: James Wilson <[email protected]>
-
- Jun 23, 2022
-
-
Artem Vorotnikov authored
-
- Jun 14, 2022
-
-
Alexandru Vasile authored
* ws-server: Fix copyright for tests Signed-off-by: Alexandru Vasile <[email protected]> * rpc_module: Return a resource builder when subscribing Registering a subscription returns the subscription' callback wrapped into a `MethodResourcesBuilder` for resource limiting purposes. Signed-off-by: Alexandru Vasile <[email protected]> * tests: Fix `register_subscription` tests Signed-off-by: Alexandru Vasile <[email protected]> * server: Drop `ResourceGuard` with `SubscriptionSink` for resource limit Signed-off-by: Alexandru Vasile <[email protected]> * tests: Check resource limits for subscription Signed-off-by: Alexandru Vasile <[email protected]> * proc-macros: Render resource limits for subscription macro Signed-off-by: Alexandru Vasile <[email protected]> * tests: Extend subscription limiting test via macro generation Signed-off-by: Alexandru Vasile <[email protected]> * core: Check if the `unsubscribe` method was already inserted Signed-off-by: Alexandru Vasile <[email protected]> * tests: Fix unsupported fields for subscriptions Signed-off-by: Alexandru Vasile <[email protected]> * server: Verify subscription methods before registering them Signed-off-by: Alexandru Vasile <[email protected]> * Update test comment for subscription limiting Signed-off-by: Alexandru Vasile <[email protected]> * Modify tests comments 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]>
-
- Mar 29, 2022
-
-
Niklas Adolfsson authored
* fix(http client): set reuseaddr and nodelay. * configure socket for https too * http server: `set_reuse_port` * fix windows build * revert http server changes * fix build with latest syn
-
- Feb 22, 2022
-
-
Niklas Adolfsson authored
* fix(rpc module): unsubscribe ethereum pubsub spec * update docs * fix clippy * fix tests
-
- 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 20, 2021
-
-
Niklas Adolfsson authored
* extract ws client to async client * bring back jsonrpsee-ws-client crate * new crate core client * add missing file * jsonrpsee crate: add core client * rexport core client * more re-exports * downgrade trait bounds * update version * fix nits * send close reason * Update types/src/traits.rs * move 'TEN_MB_CONST' to core * Update client/core-client/Cargo.toml Co-authored-by: David <[email protected]> * Update client/core-client/src/lib.rs Co-authored-by: David <[email protected]> * cargo fmt * Update client/ws-client/src/lib.rs Co-authored-by: David <[email protected]> * Update client/ws-client/src/lib.rs Co-authored-by: David <[email protected]> * move `async-client` core The `async-client` is hidden behind a new feature flag `async-client` because it brings in additional dependecies such as tokio rt. * fix docs * add example how to use "core client" * fix build * Update http-server/Cargo.toml * Update client/transport/Cargo.toml 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 15, 2021
-
-
Maciej Hirsz authored
-
- Dec 14, 2021
-
-
David authored
* Better error messages for method arguments ignored with a `_` Relates to #609 * Fix typo * typo 2 * Update proc-macros/src/rpc_macro.rs Co-authored-by: Maciej Hirsz <[email protected]> * Use proper span * Use proper span (2) Co-authored-by: Maciej Hirsz <[email protected]>
-
- Dec 10, 2021
-
-
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 21, 2021
-
-
Alexandru Vasile authored
* proc-macros: Fix documentation typo of `rpc_identifier` * proc-macros: Support deprecated methods for rpc client (#564) Calling a deprecated method of the RPC client should warn the user at compile-time. Extract the `#[deprecated]` macro as is while parsing the RpcMethod, and pass through the macro to the RPC client rendering. * tests/ui: Check deprecated method for rpc client (#564) To ensure that the test will fail during compilation, warnings are denied. Check that the deprecate macro will generate warnings just for the methods that are utilized.
-
- 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 11, 2021
-
-
Maciej Hirsz authored
* Fix some clippy issues * Add an interval to periodically wake the SelectDriver Waker * Apply suggestions from code review Co-authored-by: David <[email protected]> * Naming grumbles Co-authored-by: David <[email protected]>
-
Maciej Hirsz authored
* Array syntax aliases * fmt
-
- Nov 10, 2021
-
-
Maciej Hirsz authored
-
- Nov 03, 2021
-
-
¯\_(ツ)_/¯ authored
* feat(proc_macro): add support for map arguments * feat(proc_macro): formatting * feat(proc_macro): fix issues with Into trait * feat(proc_macro): param_format for methods * feat(proc_macro): improve param_format checking - Addressed @niklasad1 's suggestion to use an Option instead of just defaulting to "array". * feat(proc_macro): apply suggestions, add test case - Use enum for param format. - Extract parsing logic into separate function. - Add ui test. * feat(proc_macro): run cargo fmt * feat(proc_macro): address suggestions * feat(proc_macro): document param_kind argument * feat(proc_macro): consistent spacing Apply @maciejhirsz formatting suggestion. Co-authored-by: Maciej Hirsz <[email protected]> * feat(proc_macro): apply suggestions - make parameter encoding DRY - remove strings from param_kind - return result from parse_param_kind * feat(proc_macro): formatting Co-authored-by: Maciej Hirsz <[email protected]>
-
- Oct 15, 2021
-
-
Niklas Adolfsson authored
-
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 12, 2021
-
-
Maciej Hirsz authored
* Document resource limiting * Formatting * More formatting * fmt * Doc comment wording Co-authored-by: David <[email protected]> * Cross-reference docs between servers and utils * Fix grumbles * More elaborate description * Update http-server/Cargo.toml Co-authored-by: Niklas Adolfsson <[email protected]> * Apply suggestions from code review Co-authored-by: David <[email protected]> * Allow for unlimited resources if cap is 0 * fmt * Update ws-server/Cargo.toml Co-authored-by: Niklas Adolfsson <[email protected]> * Clarify 8 resources, 0s in costs/limits, and runtime errors Co-authored-by: David <[email protected]> Co-authored-by: Niklas Adolfsson <[email protected]>
-
- Oct 11, 2021
-
-
Maciej Hirsz authored
* Remove unused import * Add a simple test for angle braces in arguments * Argument parsing should permit commas inside angle brackets * Add a comment, move test to trybuild
-
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 01, 2021
-
-
Maciej Hirsz authored
* Unbox async futures * fmt * Cleaner proc macro * Remove unnecessary parens around async blocks
-
- 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 11, 2021
-
-
David authored
-
- 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 08, 2021
-
-
Niklas Adolfsson authored
* cleanup * Update ws-server/src/tests.rs * Update http-server/src/tests.rs
-
Niklas Adolfsson authored
* fix(proc macros): generate documentation Fixes #449 * revert proc macro example * add test that docs are generated * use import * address grumbles * make the code less ugly * simplify more * fix grumbles: check ident before parse * more grumbles: filter_map -> filter
-
- 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]>
-
Niklas Adolfsson authored
* treat empty json as no params when optional * add test with nested array brackets * address grumbles: better tests * Update types/src/v2/params.rs Co-authored-by: David <[email protected]> * introduce RpcParams::sequence_ignore_empty * address grumbles: ignore empty json in RpcParams * Update proc-macros/src/render_server.rs * address grumbles: remove trim in next_inner() * address grumbles: trim_start after params.next() * address more grumbles * [proc macros]: add test for empty array * make proc macro kind of work * add hack to make it work in proc macros * add hack to make it work in proc macros * [] -> * revert cerebral palsy * Update proc-macros/tests/ui/correct/basic.rs * Update proc-macros/tests/ui/correct/basic.rs * address grumbles * improve is_option * add test for core::option::Option 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]>
-