- Aug 12, 2022
-
-
Niklas Adolfsson authored
* fix(client): adjust TransportSenderT This is trait contains `WebSocket` specific details and it's difficult to fix it properly with an extension trait in the current design. So this PR documents and marks it clearly that these methods are optional to implement, kind of ugly but better. * fix build * Update core/src/client/mod.rs Co-authored-by: Alexandru Vasile <[email protected]> * Update core/src/client/mod.rs Co-authored-by: Alexandru Vasile <[email protected]> * increase margin for failing test * Update core/src/client/mod.rs Co-authored-by: James Wilson <[email protected]> * remove optional prefix in trait Co-authored-by: Alexandru Vasile <[email protected]> Co-authored-by: James Wilson <[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]>
-
- Jul 29, 2022
-
-
Patrick Kuo authored
* add id to tracing span * Revert "add id to tracing span" This reverts commit 5e01e6be. * Avoid using Span::enter() in async functions, following tracing's doc instruction https://docs.rs/tracing/latest/tracing/struct.Span.html#in-asynchronous-code * * fixed all Span::enter() * clean up * fix fmt * changed RpcTracing::span -> into_span instead of cloning the span
-
- Jul 06, 2022
-
-
Niklas Adolfsson authored
-
- Jun 21, 2022
-
-
Niklas Adolfsson authored
* less verbose logging + tracing based on method name * add tracing per rpc call * fix nits * remove unsed feature * fix build * http make logging more human friendly * unify logging format * deps: make tracing hard dependency * fix tests * fix nit * fix build * fix nits * Update core/src/client/async_client/mod.rs * Update core/Cargo.toml * Update core/src/lib.rs
-
- Jun 01, 2022
-
-
Alexandru Vasile authored
* ws: Implement ping for `TransportSenderT` trait Signed-off-by: Alexandru Vasile <[email protected]> * ws/client: Receive pong frames Signed-off-by: Alexandru Vasile <[email protected]> * core/client: Use `select!` macro for the background task Signed-off-by: Alexandru Vasile <[email protected]> * client: Propagate ping interval to background task Signed-off-by: Alexandru Vasile <[email protected]> * async_client: Submit ping requests Signed-off-by: Alexandru Vasile <[email protected]> * async_client: Handle pong replies Signed-off-by: Alexandru Vasile <[email protected]> * client: Handle frontend messages to dedicated fn Signed-off-by: Alexandru Vasile <[email protected]> * client: Handle backend messages in dedicated fn Signed-off-by: Alexandru Vasile <[email protected]> * client: Add terminated fuse for opt-out pings Signed-off-by: Alexandru Vasile <[email protected]> * Set opt-out behavior for client pings Signed-off-by: Alexandru Vasile <[email protected]> * client: Move imports Signed-off-by: Alexandru Vasile <[email protected]> * client: Handle handle_frontend_messages errors Signed-off-by: Alexandru Vasile <[email protected]> * client: Add custom error related to byteslice conversions Signed-off-by: Alexandru Vasile <[email protected]> * client: Modify `send_ping` to send empty slices Signed-off-by: Alexandru Vasile <[email protected]> * Fix `cargo hack check` and use `select_biased` Signed-off-by: Alexandru Vasile <[email protected]> * Handle sending pings with lowest priority Signed-off-by: Alexandru Vasile <[email protected]> * core: Add proper number of params to `background_task` Signed-off-by: Alexandru Vasile <[email protected]> * Fix wasm client Signed-off-by: Alexandru Vasile <[email protected]> * Handle raw bytes and string received messages Signed-off-by: Alexandru Vasile <[email protected]> * Fix Cargo.toml feature Signed-off-by: Alexandru Vasile <[email protected]> * Panic when empty slice does not fit into `ByteSlice125` Signed-off-by: Alexandru Vasile <[email protected]> * wasm: Add operation not supported for pings Signed-off-by: Alexandru Vasile <[email protected]> * Rename `ReceivedMessage` from Data to Text Signed-off-by: Alexandru Vasile <[email protected]> * Rename test variable Signed-off-by: Alexandru Vasile <[email protected]> * Add documentation Signed-off-by: Alexandru Vasile <[email protected]> * client: Use `future::select` for cancel safety Signed-off-by: Alexandru Vasile <[email protected]> * client: Remove `pong` handling logic Signed-off-by: Alexandru Vasile <[email protected]> * client: Update ping documentation Signed-off-by: Alexandru Vasile <[email protected]> * Update core/src/client/async_client/mod.rs Co-authored-by: Tarik Gul <[email protected]> * Update core/src/client/async_client/mod.rs Co-authored-by: Tarik Gul <[email protected]> * Update core/src/client/async_client/mod.rs Co-authored-by: Tarik Gul <[email protected]> * Update core/src/client/async_client/mod.rs Co-authored-by: Tarik Gul <[email protected]> * Update core/src/client/async_client/mod.rs Co-authored-by: Tarik Gul <[email protected]> * Update core/Cargo.toml Co-authored-by: Niklas Adolfsson <[email protected]> * Update core/Cargo.toml Co-authored-by: Niklas Adolfsson <[email protected]> * logs: Keep debug log for submitting `Ping` frames Signed-off-by: Alexandru Vasile <[email protected]> * Print debug logs when receiving `Pong` frames Signed-off-by: Alexandru Vasile <[email protected]> * Update core/src/client/async_client/mod.rs Co-authored-by: Tarik Gul <[email protected]> Co-authored-by: Niklas Adolfsson <[email protected]>
-
- May 06, 2022
-
-
Niklas Adolfsson authored
* fix: generate docs behind features * address grumbles
-
- Apr 20, 2022
-
-
Niklas Adolfsson authored
* feat: untested web-sys transport * rewrite me * make it work * add hacks and works :) * add subscription test too * revert StdError change; still works * cleanup * remove hacks * more wasm tests outside workspace * kill mutually exclusive features * merge nits * remove unsafe hack * fix nit * core: fix features and deps * ci: add WASM test * test again * work work * comeon * work work * revert unintentional change * Update core/Cargo.toml Co-authored-by: David <[email protected]> * Update core/src/client/async_client/mod.rs Co-authored-by: David <[email protected]> * revert needless change: std hashmap + fxhashmap works * cleanup * extract try_connect_until fn * remove todo * fix bad merge * add wasm client wrapper crate * fix nits * use gloo-net dependency * fix build * grumbles CI: rename to `wasm_tests` * fix bad merge * fix grumbles * fix nit * comeon CI Co-authored-by: David <[email protected]>
-
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]>
-
- Jan 21, 2022
-
-
Niklas Adolfsson authored
* feat(client): support request id as Strings. * add tests for Id::String * address grumbles: move id_kind to RequestManager * Update client/http-client/src/client.rs * types: take ref to `ID` get rid of some `Clone` * remove more clone * grumbles: rename tests
-
- 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]>
-
- Nov 05, 2021
-
-
Niklas Adolfsson authored
* request ID as RAII guard * clippify * fmt * address grumbles: naming `RequestIdGuard` -> `RequestIdManager` `RequestId` -> `RequestIdGuard`
-
- Oct 29, 2021
-
-
dependabot[bot] authored
* Update tokio-rustls requirement from 0.22 to 0.23 Updates the requirements on [tokio-rustls](https://github.com/tokio-rs/tls) to permit the latest version. - [Release notes](https://github.com/tokio-rs/tls/releases) - [Commits](https://github.com/tokio-rs/tls/commits ) --- updated-dependencies: - dependency-name: tokio-rustls dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]> * push fixes but requires rustls-native-certs v0.6 * update native certs to 0.6.0 * fix clippy warnings * remove webpki roots support * Revert "remove webpki roots support" This reverts commit 1144d567b343049ab7c967d320fc2fe162ba0f7c. * support both native cert store and webpki * sort deps in Cargo.toml * Update ws-client/src/transport.rs Co-authored-by: David <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Niklas Adolfsson <[email protected]> Co-authored-by: David <[email protected]>
-
- Oct 21, 2021
-
-
Niklas Adolfsson authored
* feat(ws client): support custom headers. Closing #531 * remove empty line * address grumbles: more user-friendly API * 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]> * address grumbles Co-authored-by: David <[email protected]>
-
- Oct 15, 2021
-
-
Niklas Adolfsson authored
-
- Oct 11, 2021
-
-
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
-
- Oct 05, 2021
-
-
Niklas Adolfsson authored
* feat(ws client): support redirections * reuse socket * reuse socket * add hacks * fix build * remove hacks * fix bad merge * address grumbles * fix grumbles * fix grumbles * fix nit * add redirection test * Update test-utils/src/types.rs * Resolved todo * Check that redirected client actually works * Rename test-utils "types" to "mocks" * Fix windows test (?) * fmt * What is wrong with you windows? * Ignore redirect test on windows * fix bad transport errors * debug windows tests * update soketto * maybe fix windows test * add config flag for max redirections * revert faulty change. Relative reference must start with either `/` or `//` * revert windows path * use manual join paths * remove url dep * Update ws-client/src/tests.rs * default max redirects 5 * remove needless clone vec * fix bad merge * cmon CI run Co-authored-by: David Palm <[email protected]>
-
- Sep 30, 2021
-
-
David authored
* Move RequestIdGuard to types::client * Use the RequestIdGuard type for the http client as well * Fix batch request ID handling (one batch uses one slot) * Add a few tests to check that max_concurrent_requests work for http clients * Docs
-
- 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 17, 2021
-
-
Niklas Adolfsson authored
-
- 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
-
- Sep 11, 2021
-
-
David authored
-
- 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
Co-authored-by: David Palm <[email protected]>
-
- 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
-
- Jul 08, 2021
-
-
David authored
* [clients]: use request timeout by-default * add timeout for notif * more feature flag mess * rexport tokio types * Update ws-client/src/client.rs Co-authored-by: Maciej Hirsz <[email protected]> * Impose a timeout on all requests Variant of #367 This PR takes a more opinionated stance than #367, where timeouts are optional. In this PR I suggest we make a all requests use a timeout and only let users choose the length. * fmt * Address review grumbles * fmt * Use tokio::select! for cleaner code Co-authored-by: Niklas Adolfsson <[email protected]> Co-authored-by: Maciej Hirsz <[email protected]> Co-authored-by: Maciej Hirsz <[email protected]>
-
- Jun 24, 2021
-
-
Niklas Adolfsson authored
* [jsonrpsee types]: unify types + more tests * address grumbles
-
- Jun 03, 2021
-
-
Niklas Adolfsson authored
* [client types]: fix #349 Subscription::next() propogate error when parsing the response fails * unify subscription and notification * rename again * Update types/src/traits.rs * fix bad merge * Update types/src/client.rs Co-authored-by: David <[email protected]> * grumbles: subscribe_method -> subscribe_to_method * Update tests/tests/integration_tests.rs Co-authored-by: David <[email protected]> * grumbles: doc links Co-authored-by: David <[email protected]>
-
Igor Aleksanov authored
* Stick test code to a single runtime * Replace async-std in ws-client with tokio * Replace std::thread::sleep with tokio::time::sleep in test * Add compatibility layer for tokio v0.2 * Add check for both features being enabled + some improvements * Update ws-client/src/tokio.rs Co-authored-by: Niklas Adolfsson <[email protected]>
-
- May 25, 2021
-
-
Niklas Adolfsson authored
* [ws client]: parse `path` from the URL This commit changes that the path/HTTP resource path is parsed from the URL and removes that option from WsClientBuilder. * address grumbles: introduce `RemoteWsTarget` type. * grumbles: RemoteWsTarget -> Target * cargo fmt
-
- May 19, 2021
-
-
Niklas Adolfsson authored
* get started * add additional test * fix nits * cargo fmt * [types]: write some tests. * [http server]: send empty response on notifs * [http server]: fix tests * [rpc module]: send subscription response * Update types/src/v2/error.rs * fix nits * cargo fmt * Update types/src/v2/params.rs * remove needless clone * remove dead code * [types]: impl PartialEq for JsonErrorObject + test * use beef::Cow * Update http-server/src/tests.rs
-
- May 17, 2021
-
-
Albin Hedman authored
* Add custom_certificate to WsClientBuilder * Use system certs instead of specified file * Cache client_config * Move client_config logic to fn build * Default use_system_certificates to true * Move out connector * Add CertificateStore type * cargo fmt * cargo clippy * Resolve comment: Rename variable * Resolved comments
-
- May 12, 2021
-
-
Billy Lindeman authored
* Rename NotifResponse to SubscriptionResponse to make room for new impl * Add support for on_notification Subscription<T> types * Fix handling of NotificationHandler in manager * cleanup * Implement NotificationHandler to replace Subscription<T> and clean up plumbing * More cleanup * impl Drop for NotificationHandler * Address pr feedback #1 * ws client register_notification pr feedback 2 * Fix doc * fix typo * Add tests, get NH working * More cleanup of String/&str * fix doc * Drop notification handler on send_back_sink error * ws client notification auto unsubscribe when channel full test
-
- May 04, 2021
-
-
Niklas Adolfsson authored
* ret err if context/params fails * address grumbles: specific error_code context fail * address grumbles: make env_logger dev-dependency * address grumbles: add tests * chore(deps): remove unused deps * address grumbles: rename types and docs * address grumbles: more renaming. * fix build
-
- Apr 26, 2021
-
-
Niklas Adolfsson authored
* [types]: allow `data` field in jsonrpc error obj. * fmt * revert change to make fail * remove redundant test * [types]: bring back `data` and `message` in error. Basically deducing the error message from server defined error doesn't work and we should not strip out this information from to user which might be useful. * remove boiler plate code * [types]: impl From<ErrorCode> for JsonRpcError * address grumbles * remove more boiler plate
-
David authored
I went over all the atomic operations and realised I could not convince myself that all uses of `Relaxed` were ok, so better safe than sorry: let's switch to `SeqCst`.
-
Niklas Adolfsson authored
-