1. Nov 07, 2022
    • Niklas Adolfsson's avatar
      [client]: improve batch request API (#910) · 824c3691
      Niklas Adolfsson authored
      * better handling of batch requests
      
      * add test for untagged enum
      
      * remove annoying trait bounds
      
      * cleanup
      
      * more clear comments
      
      * simplify batch request code
      
      * bring back old API + a new one
      
      * refactor batches to work with String IDs again
      
      * refactor again: single batch response API
      
      * fix tests + cleanup
      
      * fix doc links
      
      * address grumbles
      
      * BatchRequestBuilder: add iterator API for the batch
      
      * revert bench
      
      * fix benches build
      
      * address grumbles: ok and into_ok
      
      * fix some nits
      
      * fix nits
      824c3691
  2. Sep 06, 2022
  3. Aug 17, 2022
  4. Aug 16, 2022
  5. Jun 21, 2022
  6. Apr 20, 2022
    • Niklas Adolfsson's avatar
      feat: WASM client via web-sys transport (#648) · 20e6e5de
      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: default avatarDavid <[email protected]>
      
      * Update core/src/client/async_client/mod.rs
      
      Co-authored-by: default avatarDavid <[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: default avatarDavid <[email protected]>
      20e6e5de
    • Niklas Adolfsson's avatar
      fix(rpc module): fail subscription calls with bad params (#728) · 9fa817d9
      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: default avatarJames 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: default avatarJames Wilson <[email protected]>
      
      * Update core/src/server/rpc_module.rs
      
      Co-authored-by: default avatarJames Wilson <[email protected]>
      
      * Update core/src/server/rpc_module.rs
      
      Co-authored-by: default avatarJames Wilson <[email protected]>
      
      * Update core/src/server/rpc_module.rs
      
      Co-authored-by: default avatarJames Wilson <[email protected]>
      
      * Update core/src/server/rpc_module.rs
      
      Co-authored-by: default avatarJames Wilson <[email protected]>
      
      * Update proc-macros/src/lib.rs
      
      Co-authored-by: default avatarJames Wilson <[email protected]>
      
      * address grumbles
      
      * remove faulty comment
      
      * Update core/src/server/rpc_module.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Update core/src/server/rpc_module.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Update core/src/server/rpc_module.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Update core/src/server/rpc_module.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Update core/src/server/rpc_module.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * fix: don't send `RPC Call failed: error`.
      
      * remove debug assert
      
      Co-authored-by: default avatarJames Wilson <[email protected]>
      Co-authored-by: default avatarDavid <[email protected]>
      9fa817d9
  7. Apr 01, 2022
  8. Mar 30, 2022
  9. Jan 21, 2022
    • 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
  10. Dec 22, 2021
  11. Dec 21, 2021
    • 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: default avatarDavid Palm <[email protected]>
      bc688cc2
  12. Dec 20, 2021
    • Niklas Adolfsson's avatar
      extract async client abstraction. (#580) · 292bd88a
      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: default avatarDavid <[email protected]>
      
      * Update client/core-client/src/lib.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * cargo fmt
      
      * Update client/ws-client/src/lib.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Update client/ws-client/src/lib.rs
      
      Co-authored-by: default avatarDavid <[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: default avatarDavid <[email protected]>
      292bd88a
  13. Dec 17, 2021
    • 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: default avatarNiklas Adolfsson <[email protected]>
      
      * fmt
      
      * Feature gate the Client trait
      
      * Move `Client` traits to `client` module
      
      Co-authored-by: default avatarNiklas Adolfsson <[email protected]>
      e159c449
  14. Dec 10, 2021
  15. Nov 30, 2021
  16. Oct 15, 2021
  17. Oct 11, 2021
    • 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
  18. Sep 16, 2021
  19. Sep 15, 2021
    • 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
  20. Sep 14, 2021
    • David's avatar
      Propagate cause of `InvalidParams` (#463) · b16568b4
      David authored
      * Add a test illustrating how to use the `call` convenience method
      
      * Extend test + review feedback
      
      * log
      
      * log
      
      * log
      
      * log
      
      * log
      
      * log
      
      * log
      
      * log
      
      * log
      
      * log
      
      * log
      
      * log
      
      * log
      
      * log
      
      * log
      
      * Add Methods::test_subscription
      Log more when params parsing fails
      
      * Add call_with test helper (ty @niklas!) + cleanup
      
      * Remove todo (part of https://github.com/paritytech/jsonrpsee/issues/457
      
      )
      
      * fmt
      
      * Let `test_subscription` be called from other crates
      
      * Manually fix indentation
      
      * fmt
      
      * SSself-review grumbles
      
      * CallError::InvalidParams carries an anyhow::Error
      
      * fmt
      
      * Tweak docs
      
      * Update utils/src/server/rpc_module.rs
      
      Co-authored-by: default avatarNiklas Adolfsson <[email protected]>
      
      * review grumble
      
      * Fix todos
      
      * fmt
      
      * Fixup error messages
      
      * Include source in the error message for `CallError`
      
      * fmt
      
      * Update proc-macros/src/render_server.rs
      
      Co-authored-by: default avatarMaciej Hirsz <[email protected]>
      
      * Mention needing jsonrpsee crate in scope
      
      * Resolve todo
      
      * Impl ToRpcParams for 0-sized array
      
      * optimized logging
      
      Co-authored-by: default avatarNiklas Adolfsson <[email protected]>
      Co-authored-by: default avatarMaciej Hirsz <[email protected]>
      b16568b4
  21. Aug 25, 2021
  22. Aug 13, 2021
  23. Jul 12, 2021
    • David's avatar
      Rexport types for servers (#409) · 0592442e
      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
      0592442e
  24. Jul 08, 2021
  25. Jun 24, 2021
  26. May 19, 2021
    • Niklas Adolfsson's avatar
      [types]: ID type instead of serde_json::RawValue (#325) · 4e95f436
      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
      4e95f436
  27. May 12, 2021
    • Billy Lindeman's avatar
      [ws client] RegisterNotification support (#303) · c7384471
      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
      c7384471
  28. Apr 20, 2021
    • 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