- May 07, 2021
-
-
Niklas Adolfsson authored
-
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
-
-
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
-
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 30, 2021
-
-
Chevdor authored
-
- Apr 29, 2021
-
-
Chevdor authored
* Fix clippy warning and enforce no warning in the CI * Fix clippy issue due to a pending TODO * Return an Err if attributes are equal * Remove clippy args * Fix typos and test names Co-authored-by: David Palm <[email protected]>
-
- Apr 28, 2021
-
-
Niklas Adolfsson authored
-
- Apr 27, 2021
-
-
Niklas Adolfsson authored
-
- 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
-
- Apr 24, 2021
-
-
Tomasz Drwięga authored
* Fix race conditions. * 🥵 * Use SeqCst ordering.
-
- Apr 21, 2021
-
-
David authored
-
David authored
* Use a constant to express max request body size Consistently use u32 in all crates * Review grumbles
-
David authored
-
Niklas Adolfsson authored
* prep to release 0.2.0-alpha.5 * fix features * update readme * add changelog * add metadata to the crates on crates.io
-
- Apr 20, 2021
-
-
Niklas Adolfsson authored
-
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 19, 2021
-
-
Svyatoslav Nikolsky authored
* reclaim request id for unsubscribe requests * fmt * cargo fmt * [tests]: ignore https and wss requests. Co-authored-by: Niklas Adolfsson <[email protected]>
-
- 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 13, 2021
-
-
Caio authored
-
dependabot[bot] authored
Bumps [actions/cache](https://github.com/actions/cache) from v2.1.4 to v2.1.5. - [Release notes](https://github.com/actions/cache/releases) - [Commits](https://github.com/actions/cache/compare/v2.1.4...1a9e2138d905efd099035b49d8b7a3888c653ca8 ) Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
-
- Apr 12, 2021
-
-
David authored
* Apease Clippy and some renames * Last clippy warning * fmt Co-authored-by: Niklas Adolfsson <[email protected]>
-
Niklas Adolfsson authored
* [utils]: use futures mpsc Use futures::channel::mpsc as it's already brought in as dependency and to avoid bring in tokio sync as an additional dependency. * remove unused deps/code * fix nit * [utils]: future mpsc works without alloc. * [http server]: future mpsc works without alloc.
-
Niklas Adolfsson authored
-
dependabot[bot] authored
* Update webpki requirement from 0.21 to 0.22 Updates the requirements on [webpki](https://github.com/briansmith/webpki) to permit the latest version. - [Release notes](https://github.com/briansmith/webpki/releases) - [Commits](https://github.com/briansmith/webpki/commits ) Signed-off-by: dependabot[bot] <[email protected]> * update webpki Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Niklas Adolfsson <[email protected]>
-
- Apr 02, 2021
-
-
Niklas Adolfsson authored
* prep for 0.2.0-alpha.4 * [http server]: reuse port unix only * skip `reuse_port` on socket
-
- 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
-
Niklas Adolfsson authored
* feat(http client): batch requests * fix(http batch request): request in any order. * Update src/types/jsonrpc/id.rs * tests(batch out-of-order): make it less confusing. * fix nit: `cloned` -> `copied` * fix bad merge * [client]: batch request generic response * wait with impl * [ws client]: add template for batch requests * remove jsonvalue * naive impl * fix make it work, The implemenation is quite inefficient because the responses might be unordered. Currently, a "digest" of a BTreeSet is stored to sort the requestIDs and don't have to try all combinations of requestIDs in the response. * fix nits * error handling * fix nits * more nits * use error msg pattern * add batch requests to client trait Keep it simple by require `Vec<(Method, Params)>` could be improved. * address review comments: use swap_remove Replace read values with `Vec::swap_remove` instead inserting dummy value. The reason is that `Vec::remove` is O(n) * address review grumbles: batch trait bound Default * don't be clever * [http client]: faster lookup for batch request. * fix: distguish request_id and batch_id * thanks clippy * fix: clarify bad response with a separate error * fix tests * add issue link to todo * Update types/src/error.rs Co-authored-by: David <[email protected]> Co-authored-by: David <[email protected]>
-
Niklas Adolfsson authored
* refactor benches * remove async-std * add new file * fix nits
-
Niklas Adolfsson authored
* docs: make readme more descriptive * Update README.md * Update README.md Co-authored-by: David <[email protected]> * Update README.md Co-authored-by: David <[email protected]> * Add more projects * Update README.md * Update README.md Co-authored-by: David <[email protected]>
-
Niklas Adolfsson authored
Request ID is just a counter and doesn't require any synchronization besides an atomic value.
-
- Mar 17, 2021
-
-
Niklas Adolfsson authored
-
- Mar 16, 2021
-
-
Niklas Adolfsson authored
* [ws client]: unsubscribe directly When a subscription is dropped because of `max_notifs_per_subscription` is exceeded the client didn't send an `unsubcribe request` until the subscription was dropped which this commit fixes. This causes the server to still send messages to the subscription and the client would get lots of error messages `InvalidRequestId` * address grumbles * fix: rephrase and not use request everywhere.
-
Greg Hill authored
* add shutdown receiver to ws-client Signed-off-by: Gregory Hill <[email protected]> * ws-client: no clone, use AtomicBool for shutdown signal Signed-off-by: Gregory Hill <[email protected]> * store not swap Signed-off-by: Gregory Hill <[email protected]> * doesn't need to be async, update doc comment Signed-off-by: Gregory Hill <[email protected]> * address review: use existing backgroud channel Co-authored-by: Niklas Adolfsson <[email protected]>
-
- Mar 15, 2021
-
-
Niklas Adolfsson authored
* fix clippy warns * [benches]: migrate to benchmark_group * cargo fmt * fix review comment
-
- Mar 12, 2021
-
-
Greg Hill authored
* ignore front-end receiver close on process_response Signed-off-by: Gregory Hill <[email protected]> * simplify errors on sending to front * fix import nit Co-authored-by: Niklas Adolfsson <[email protected]>
-