1. 12 Aug, 2022 1 commit
  2. 21 Jan, 2022 1 commit
    • Niklas Adolfsson's avatar
      feat(client): support request id as Strings. (#659) · 708d4213
      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
      708d4213
  3. 22 Dec, 2021 1 commit
  4. 21 Dec, 2021 1 commit
    • Niklas Adolfsson's avatar
      feat: server configurable subscriptionID (#604) · bc688cc2
      Niklas Adolfsson authored
      
      
      * PoC
      
      * introduce IdProvider trait
      
      * revert Cow stuff
      
      * Update ws-server/src/server.rs
      
      * fix tests
      
      * cargo fmt
      
      * use 'static lifetime in SubscriptionId
      
      * fix tests
      
      * fmt
      
      * make tests compile again
      
      * fix tests
      
      * Fix tests
      
      * Move IdProvider impls to own module
      
      * move `sub-id gen` types to `core`
      
      * fix doc links
      
      * make rand non-optional dep
      
      * feature gate: id provider
      
      Co-authored-by: David's avatarDavid Palm <dvdplm@gmail.com>
      bc688cc2
  5. 17 Dec, 2021 1 commit
    • Maciej Hirsz's avatar
      Crate restructuring (#590) · e159c449
      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's avatarNiklas Adolfsson <niklasadolfsson1@gmail.com>
      
      * fmt
      
      * Feature gate the Client trait
      
      * Move `Client` traits to `client` module
      
      Co-authored-by: Niklas Adolfsson's avatarNiklas Adolfsson <niklasadolfsson1@gmail.com>
      e159c449
  6. 10 Dec, 2021 2 commits
  7. 30 Nov, 2021 1 commit
  8. 15 Oct, 2021 1 commit
  9. 11 Oct, 2021 1 commit
    • Niklas Adolfsson's avatar
      remove `ParamsSer::NoParams` (#501) · b3e4297b
      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
      b3e4297b
  10. 15 Sep, 2021 1 commit
    • David's avatar
      Rename and reorg types (#462) · 635142e3
      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
      635142e3
  11. 14 Sep, 2021 1 commit
  12. 01 Sep, 2021 1 commit
    • Niklas Adolfsson's avatar
      Make it possible to treat empty JSON response as no params (#446) · bf211cb2
      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's avatarDavid <dvdplm@gmail.com>
      
      * 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's avatarDavid <dvdplm@gmail.com>
      bf211cb2
  13. 25 Aug, 2021 1 commit
  14. 13 Aug, 2021 1 commit
  15. 27 Jul, 2021 1 commit
    • Maciej Hirsz's avatar
      Proc macro params optimizations and tests. (#421) · 3d52c6ac
      Maciej Hirsz authored
      * WIP
      
      * Feature-complete-ish
      
      * WIP
      
      * Cleaner replace marker
      
      * Inject lifetimes in elided `Cow`s
      
      * Use a single static &str for all injected lifetimes
      
      * Working lifetimes
      
      * Add the `call` method to `Methods`
      
      * Testing proc macro with optional params
      
      * Remove internal loop
      
      * fmt
      
      * Fix grumbles
      3d52c6ac
  16. 10 Jul, 2021 1 commit
    • David's avatar
      Pass OwnedRpcParams to async methods (#410) · d5d67e98
      David authored
      
      
      * Pass OwnedRpcParams to async methods
      
      * Cow-ified RpcParams
      
      * fmt
      
      * Separate `RpcParamsSequence` parser from `RpcParams`
      
      * Remove OwnedId, use Id<'static> instead
      
      * Ensure that parsed `Id` is borrowing from input slice
      
      * Tweak/add some docs
      Test that parse() works after calling sequence()
      
      * Fix rustdoc link
      
      Co-authored-by: default avatarMaciej Hirsz <hello@maciej.codes>
      d5d67e98
  17. 01 Jul, 2021 2 commits
    • Igor Aleksanov's avatar
      New proc macro (#387) · ddb50806
      Igor Aleksanov authored
      
      
      * Start working on the new proc macro system
      
      * Add skeleton for rendering
      
      * Improve error reporting
      
      * Main part of 'render_client'
      
      * Implement RPC client generation
      
      * Client successfully rendered
      
      * Add doc-comment generation for the API client
      
      * Check that all the methods have receiver
      
      * Start working on the server impl
      
      * Add helper method to find server crate
      
      * Fix usage of client rpc path
      
      * Decent progress on the server macro implementation
      
      * Server macro compiled successfully
      
      * Remove unneeded re-export
      
      * Insert SubscriptionSink argument to the subscription server signatures
      
      * Add basic doc-comment for the macro
      
      * no_run -> ignore
      
      * Trait with subscription compiles
      
      * Extend the example
      
      * Add integration test for client/server impl
      
      * Add trybuild setup
      
      * Set correct span for attribute parsing related errors
      
      * Add basic set of trybuild tests
      
      * Add tests for client and server generated separately
      
      * Improve proc-macro documentation
      
      * Update proc-macros/src/lib.rs
      
      Co-authored-by: Niklas Adolfsson's avatarNiklas Adolfsson <niklasadolfsson1@gmail.com>
      
      * Fix a couple of bugs in docs
      
      * Fix rendering subscription with params
      
      Co-authored-by: Niklas Adolfsson's avatarNiklas Adolfsson <niklasadolfsson1@gmail.com>
      ddb50806
    • Maciej Hirsz's avatar
      Streaming RpcParams parsing (#401) · 095db9b2
      Maciej Hirsz authored
      * Streaming RpcParams parsing
      
      * DRY RpcParams::one again
      
      * Fix doc comments
      095db9b2
  18. 24 Jun, 2021 1 commit
  19. 02 Jun, 2021 1 commit
  20. 01 Jun, 2021 1 commit
  21. 28 May, 2021 1 commit
  22. 19 May, 2021 2 commits
  23. 18 May, 2021 1 commit
  24. 04 May, 2021 2 commits
    • Niklas Adolfsson's avatar
      [servers] return error if context or params fails (#295) · b51abeca
      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
      b51abeca
    • David's avatar
      [http server] Batch requests (#292) · 2cae10b6
      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: default avatarAndrew Plaza <aplaza@liquidthink.net>
      
      * Update http-server/src/server.rs
      
      Co-authored-by: default avatarAndrew Plaza <aplaza@liquidthink.net>
      
      * 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: default avatarAndrew Plaza <aplaza@liquidthink.net>
      2cae10b6
  25. 28 Apr, 2021 1 commit
  26. 20 Apr, 2021 1 commit
    • 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