- Oct 04, 2022
-
-
Niklas Adolfsson authored
* server: add protocol details to logger trait * fix tests
-
- 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]>
-
- Aug 12, 2022
-
-
Alexandru Vasile authored
* http: Add inner server data structure Signed-off-by: Alexandru Vasile <[email protected]> * http: Handle RPC messages Signed-off-by: Alexandru Vasile <[email protected]> * http: Implement equivalent of `service_fn` Signed-off-by: Alexandru Vasile <[email protected]> * http: Implement equivalent of `make_service_fn` Signed-off-by: Alexandru Vasile <[email protected]> * http: Expose `tower` compatible service Signed-off-by: Alexandru Vasile <[email protected]> * http: Prebuild http server with optional listener Signed-off-by: Alexandru Vasile <[email protected]> * examples: WIP tower service Signed-off-by: Alexandru Vasile <[email protected]> * http: Fix warnings Signed-off-by: Alexandru Vasile <[email protected]> * tower_http: Fix warnings Signed-off-by: Alexandru Vasile <[email protected]> * http: Ensure service works with tower Signed-off-by: Alexandru Vasile <[email protected]> * http: Remove `RPSeeServerMakeSvc` to allow further flexibility Signed-off-by: Alexandru Vasile <[email protected]> * tower_http: Fix warnings Signed-off-by: Alexandru Vasile <[email protected]> * tower_http: Resubmit the same request for testing Signed-off-by: Alexandru Vasile <[email protected]> * http: Transform builder into service directly Signed-off-by: Alexandru Vasile <[email protected]> * http: Rename `RPSeeServerSvc` into user friendly `TowerService` Signed-off-by: Alexandru Vasile <[email protected]> * http: Rely on internal TowerService to handle requests Signed-off-by: Alexandru Vasile <[email protected]> * Fix middleware typo Signed-off-by: Alexandru Vasile <[email protected]> * http-server: Improve API builder for tower service Signed-off-by: Alexandru Vasile <[email protected]> * Rename the inner service data and check comments Signed-off-by: Alexandru Vasile <[email protected]> * examples: Add comments Signed-off-by: Alexandru Vasile <[email protected]> * http-server: Receive tower service builder as param Signed-off-by: Alexandru Vasile <[email protected]> * examples: Adjust tower_http example Signed-off-by: Alexandru Vasile <[email protected]> * http-server: Add tower middleware on the HttpBuilder Signed-off-by: Alexandru Vasile <[email protected]> * http-server: Do not expose the internal `TowerService` for now Signed-off-by: Alexandru Vasile <[email protected]> * Update http-server/src/server.rs Co-authored-by: Niklas Adolfsson <[email protected]> * http-server: Use `std::error::Error` Signed-off-by: Alexandru Vasile <[email protected]> * Fix fmt Signed-off-by: Alexandru Vasile <[email protected]> * address some grumbles * fix more grumbles: no more Infallible * make clippy happy * Rename tower http example Signed-off-by: Alexandru Vasile <[email protected]> * Update http-server/src/server.rs * Update http-server/src/server.rs * Update http-server/src/server.rs * Update http-server/src/server.rs Signed-off-by: Alexandru Vasile <[email protected]> Co-authored-by: Niklas Adolfsson <[email protected]>
-
- Aug 11, 2022
-
-
Alexandru Vasile authored
* Fix cargo clippy Signed-off-by: Alexandru Vasile <[email protected]> * ci: Deny clippy warning Signed-off-by: Alexandru Vasile <[email protected]> * Replace clippy by `clippy-check` Signed-off-by: Alexandru Vasile <[email protected]>
-
- Aug 04, 2022
-
-
Alexandru Vasile authored
* Rename Middleware to Metrics Signed-off-by: Alexandru Vasile <[email protected]> * Change documentation to reflect the `Metrics` trait Signed-off-by: Alexandru Vasile <[email protected]> * Middleware name refactoring Signed-off-by: Alexandru Vasile <[email protected]> * Http middleware renaming Signed-off-by: Alexandru Vasile <[email protected]> * Rename examples Signed-off-by: Alexandru Vasile <[email protected]> * Update http-server/src/server.rs Co-authored-by: James Wilson <[email protected]> * http: Use `request` instead of `HeaderMap` for logging Signed-off-by: Alexandru Vasile <[email protected]> * Rename `Metrics` -> `Logger` Signed-off-by: Alexandru Vasile <[email protected]> * Fix cargo clippy Signed-off-by: Alexandru Vasile <[email protected]> * Fix examples Signed-off-by: Alexandru Vasile <[email protected]> * Fix tests Signed-off-by: Alexandru Vasile <[email protected]> * Fix cargo fmt Signed-off-by: Alexandru Vasile <[email protected]> * Fix hyper dependency Signed-off-by: Alexandru Vasile <[email protected]> Co-authored-by: James Wilson <[email protected]>
-
- Jul 20, 2022
-
-
Niklas Adolfsson authored
-
- Jul 06, 2022
-
-
Niklas Adolfsson authored
* WIP: refactoring * refactor http server * fix tests * Delete TODO.txt * fix tests again * add benches/src/lib.rs * remove bench changes; fast less deps * no more env_logger * update examples * ws server; expose headers in middleware * add back uncommented code * fix nits * make the code more readable * add back the tracing stuff * simplify code but one extra clone * fix tests again * revert async accept API * fix nits * different traits for WS and HTTP middleware * fix tests * revert benchmark change * Update core/src/server/helpers.rs * Update ws-server/Cargo.toml * add limit to batch responses as well * pre-allocate string for batches * small refactor
-
- May 13, 2022
-
-
Alexandru Vasile authored
* Move examples under dedicated folder to simplify `Cargo.toml` Signed-off-by: Alexandru Vasile <[email protected]> * Fix readme links for examples Signed-off-by: Alexandru Vasile <[email protected]> * Fix deadlinks Signed-off-by: Alexandru Vasile <[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 09, 2021
-
-
David authored
* Remove usage of the `palaver` crate in an example * fmt
-
- Dec 01, 2021
-
-
Maciej Hirsz authored
* Squashed MethodSink * Middleware WIP * Passing all the information through * Unnecessary `false` * Apply suggestions from code review Co-authored-by: David <[email protected]> * Add a setter for middleware (#577) * Fix try-build tests * Add a middleware setter and an example * Actually add the example * Grumbles * Use an atomic * Set middleware with a constructor instead * Resolve a todo * Update ws-server/src/server.rs Co-authored-by: Maciej Hirsz <[email protected]> * Update ws-server/src/server.rs Co-authored-by: Maciej Hirsz <[email protected]> * Update ws-server/src/server.rs Co-authored-by: Maciej Hirsz <[email protected]> Co-authored-by: Maciej Hirsz <[email protected]> * Middleware::on_response for batches * Middleware in HTTP * fmt * Server builder for HTTP * Use actual time in the example * HTTP example * Middleware to capture method not found calls * An example of adding multiple middlewares. (#581) * Add an example of adding multiple middlewares. * Update examples/multi-middleware.rs Co-authored-by: Maciej Hirsz <[email protected]> * Update examples/Cargo.toml Co-authored-by: Maciej Hirsz <[email protected]> Co-authored-by: Maciej Hirsz <[email protected]> * Move `Middleware` to jsonrpsee-types (#582) * Move `Middleware` to jsonrpsee-types * Move Middleware trait to jsonrpsee-types * Add some docs. * Link middleware to `with_middleware` methods in docs * Doctests * Doc comment fixed * Clean up a TODO * Switch back to `set_middleware` * fmt * Tests * Add `on_connect` and `on_disconnect` * Add note to future selves Co-authored-by: David <[email protected]>
-