1. Apr 27, 2021
  2. Apr 26, 2021
    • Niklas Adolfsson's avatar
      [types]: allow `data` field in jsonrpc error obj. (#286) · 187ee5e9
      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
      187ee5e9
    • David's avatar
      Use SeqCst everywhere (#289) · fb6b34be
      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`.
      fb6b34be
    • Niklas Adolfsson's avatar
      [ci]: bring back rustdoc check. (#287) · c450f106
      Niklas Adolfsson authored
      c450f106
  3. Apr 24, 2021
  4. Apr 21, 2021
  5. Apr 20, 2021
    • Niklas Adolfsson's avatar
      prep to release 0.2.0-alpha.5 (#278) · 09d6df17
      Niklas Adolfsson authored
      09d6df17
    • Niklas Adolfsson's avatar
      [client] use types v2 (less alloc) (#269) · 31153ac7
      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
      31153ac7
  6. Apr 19, 2021
  7. Apr 16, 2021
  8. Apr 15, 2021
  9. Apr 13, 2021
  10. Apr 12, 2021
  11. Apr 02, 2021
  12. Apr 01, 2021
    • Niklas Adolfsson's avatar
      [ws client]: client builder for uniform API with the HTTP client (#258) · 4c9ced88
      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
      4c9ced88
    • Niklas Adolfsson's avatar
      HTTP server refactor (#253) · 49899740
      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
      49899740
  13. Mar 31, 2021
    • Niklas Adolfsson's avatar
      7028dc41
    • Niklas Adolfsson's avatar
      [client] batch requests (#216) · b8bd715d
      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: default avatarDavid <[email protected]>
      
      Co-authored-by: default avatarDavid <[email protected]>
      b8bd715d
    • Niklas Adolfsson's avatar
      refactor benches (#247) · 7abcb1e9
      Niklas Adolfsson authored
      * refactor benches
      
      * remove async-std
      
      * add new file
      
      * fix nits
      7abcb1e9
    • Niklas Adolfsson's avatar
      docs: make readme more descriptive (#252) · 3807e276
      Niklas Adolfsson authored
      
      
      * docs: make readme more descriptive
      
      * Update README.md
      
      * Update README.md
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Update README.md
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Add more projects
      
      * Update README.md
      
      * Update README.md
      
      Co-authored-by: default avatarDavid <[email protected]>
      3807e276
    • Niklas Adolfsson's avatar
      [http client]: request ID `Ordering::Relaxed` (#245) · 75c3fe24
      Niklas Adolfsson authored
      Request ID is just a counter and doesn't require any synchronization besides an atomic value.
      75c3fe24
  14. Mar 17, 2021
  15. Mar 16, 2021
  16. Mar 15, 2021
  17. Mar 12, 2021
  18. Mar 09, 2021
  19. Mar 05, 2021
  20. Mar 04, 2021