1. Jul 12, 2021
    • David's avatar
      Prepare v0.3.0 (#415) · 0f66093e
      David authored
      * Bump versions to 0.3.0
      
      * Add draft release checklist
      
      * Changelog for v0.3.0
      
      * Mention possibility of passing params to `publish.sh`
      
      * Added PR 412
      v0.3.0
      0f66093e
    • Maciej Hirsz's avatar
      Module API refactor (#412) · 8db65b42
      Maciej Hirsz authored
      
      
      * Do not register methods on servers
      
      * fmt
      
      * Infallible `to_rpc` proc macro
      
      * Remove dead code
      
      * Check for duplicate names at compile time
      
      * Add a UI test for name conflicts
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      Co-authored-by: default avatarDavid Palm <[email protected]>
      8db65b42
    • David's avatar
      Sort out type paths in proc macros (#414) · b8af4cc0
      David authored
      * Only return the crate name when the crate is `jsonrpsee` as well
      
      * Sort out the type paths in the macros, this time for real (?)
      
      * fmt
      b8af4cc0
    • David's avatar
      Fix type paths for client macros (#413) · b83be742
      David authored
      * type paths in client macros
      
      * Tweak more paths
      
      * Helpers as well
      b83be742
    • 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
  2. Jul 10, 2021
    • 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 <[email protected]>
      d5d67e98
  3. Jul 08, 2021
  4. Jul 01, 2021
    • 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: default avatarNiklas Adolfsson <[email protected]>
      
      * Fix a couple of bugs in docs
      
      * Fix rendering subscription with params
      
      Co-authored-by: default avatarNiklas Adolfsson <[email protected]>
      ddb50806
    • Maciej Hirsz's avatar
      Streaming RpcParams parsing (#401) · 095db9b2
      Maciej Hirsz authored
      * Streaming RpcParams parsing
      
      * DRY RpcParams::one again
      
      * Fix doc comments
      095db9b2
    • Maciej Hirsz's avatar
      Set allowed Host header values (#399) · f705e325
      Maciej Hirsz authored
      
      
      * Set allowed Host header values
      
      * Error if allowed hosts list is empty
      
      * Grammar
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      Co-authored-by: default avatarDavid <[email protected]>
      f705e325
  5. Jun 30, 2021
    • Maciej Hirsz's avatar
      Synchronization-less async connections in ws-server (#388) · 7496afe2
      Maciej Hirsz authored
      * WIP
      
      * More WIP
      
      * Simplify ConnDriver
      
      * Progress all connections on each poll
      
      * Make ConnDriver more opaque and less leaky
      
      * fmt
      
      * Spawn connections on tasks after handshake
      
      * WIP put connections on tasks
      
      * cargo fmt, naming clarity
      
      * Fix grumbles
      
      * Extra comment on swap_remove
      
      * Remove unwrap from the handshake
      
      * Restore the wrapping_add on connection id
      7496afe2
    • Niklas Adolfsson's avatar
      [ws server]: terminate already established connection(s) when the server is stopped (#396) · 7a33bf50
      Niklas Adolfsson authored
      
      
      * [ws server]: terminate connection when closed.
      
      * fix tests
      
      * add test
      
      * address grumbles: return Ok when server stopped
      
      * revert log
      
      * revert outdated documentation
      
      * use wrapping add for conn id
      
      * address grumbles: replace Mutex with AtomicBool
      
      * add comment to assertion
      
      * fix nits
      
      * address grumbles: naming of variables
      
      * address grumbles: RwLock to wait for tasks
      
      This commit introduces a RwLock instead of the Mutex to the shared by the background tasks
      and the stop handle won't signal until all readers has been dropped.
      
      * fix nit
      
      * Update ws-server/src/server.rs
      
      * remove AtomicBool; use stop_sender instead
      
      * Update ws-server/src/server.rs
      
      * Update ws-server/src/server.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * correct subscription err messages
      
      Co-authored-by: default avatarDavid <[email protected]>
      7a33bf50
  6. Jun 29, 2021
  7. Jun 25, 2021
    • Niklas Adolfsson's avatar
      [ci]: test each individual crate's manifest (#392) · 2ca8355a
      Niklas Adolfsson authored
      * [ci]: test each crate outside workspace
      
      We have bitten by these a few times now with that some features are leaked from the workspace
      which makes it compile in the workspace but not using it's own Cargo.toml.
      
      * [ci]: add tests for macos and windows
      
      * add missed `WsServer` and `HttpServer`
      
      * [ws server]: fix features
      
      * debug failure in CI
      
      * remove platform dependent assertion
      
      * fix nit; proc-macros is proc-macros
      
      * restore removed assertion
      
      * remove whitespaces
      2ca8355a
  8. Jun 24, 2021
  9. Jun 23, 2021
  10. Jun 18, 2021
  11. Jun 16, 2021
  12. Jun 14, 2021
  13. Jun 10, 2021
  14. Jun 08, 2021
  15. Jun 07, 2021
  16. Jun 04, 2021
    • David's avatar
      Add missing `rt` feature (#369) · 3f804de1
      David authored
      * Add missing `rt` feature
      
      * Use rt-multi-thread actually
      
      * More feature flag foo
      v0.2.0
      3f804de1
    • David's avatar
      Release prep for v0.2 (#368) · b3a0748b
      David authored
      * Release prep
      
      * Mention proc macro limitations
      
      * Mention publish script
      b3a0748b
    • Niklas Adolfsson's avatar
      chore(scripts): publish script (#354) · a3feec75
      Niklas Adolfsson authored
      * chore(scripts): publish script
      
      * use script from jsonrpc
      a3feec75
    • Niklas Adolfsson's avatar
      [rpc module]: server-side close subscription (#355) · b987b811
      Niklas Adolfsson authored
      
      
      * [rpc module]: server-side close subscription
      
      Add functionality that closes the subscription after the sink has been dropped.
      
      * [integration tests]: add timeout on futures
      
      * remove global subscriber mutex
      
      * fix nit
      
      * [client types]: fix #349
      
      Subscription::next() propogate error when parsing the response fails
      
      * [client types]: fix #349
      
      Subscription::next() propogate error when parsing the response fails
      
      * unify subscription and notification
      
      * rename again
      
      * send notif response when subscription is dropped
      
      * stray debug stuff
      
      * Update utils/src/server/rpc_module.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Revert "[client types]: fix #349"
      
      This reverts commit c4fefade719ebd8c964a62d0eb16f89db3346ccd.
      
      * Revert "[integration tests]: add timeout on futures"
      
      This reverts commit 21dfb99649aaaa8c847a693b4510e0202498fa2c.
      
      * show that actual edge-case
      
      * fix nit
      
      * Update types/src/traits.rs
      
      * fix bad merge
      
      * ugly; but works
      
      * complete solution
      
      * get rid of Option
      
      * Update tests/tests/integration_tests.rs
      
      * Update utils/src/server/rpc_module.rs
      
      * Update utils/src/server/rpc_module.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * grumbles: fix faulty early return
      
      * remove weird abstraction KeepAlive
      
      * fix nits
      
      * revert test timeouts
      
      * address grumbles
      
      * fix build
      
      Co-authored-by: default avatarDavid <[email protected]>
      b987b811
  17. Jun 03, 2021
  18. Jun 02, 2021
  19. Jun 01, 2021
    • Igor Aleksanov's avatar
      Fix clippy lints (#357) · 43ec342f
      Igor Aleksanov authored
      43ec342f
    • Igor Aleksanov's avatar
      Basic support for async methods (#327) · 2da9244b
      Igor Aleksanov authored
      
      
      * Add basic support for async methods
      
      * Add support of async methods into ws server
      
      * Add support of async methods to HTTP server
      
      * Fix subscriptions method lookup
      
      * Remove type that appeared to be unused
      
      * Add comment on safety of unwrap in OwnedJsonRpcRequest::borrowed
      
      * Update utils/src/server/rpc_module.rs
      
      Co-authored-by: default avatarNiklas Adolfsson <[email protected]>
      
      Co-authored-by: default avatarMaciej Hirsz <[email protected]>
      Co-authored-by: default avatarNiklas Adolfsson <[email protected]>
      2da9244b
    • David's avatar
      Unify RpcModule types (#350) · c2c66e1a
      David authored
      
      
      * Remove register_* from Server
      
      * Tests pass
      
      * Some cleanup
      
      * more cleanup
      
      * Less bounds
      
      * Remove the `RpcMethod` trait – I don't think we need it.
      
      * fmt
      
      * Fix benches
      
      * Enable merging two modules with different contexts
      
      * Module registration returns number of methods on the server and checks for dupes
      Tests for module registration and some cleanup
      
      * Export `RpcModule` from façade crate
      fmt
      
      * Revert to return error from `Server::register_module`
      
      * Remove Server::methods
      
      * Remove TODO
      
      * Fix tests
      Fix http server to work the same as ws-server
      
      * Server::method_names
      
      * fmt
      
      * fix clippy warnings
      
      Co-authored-by: default avatarNiklas Adolfsson <[email protected]>
      c2c66e1a
  20. May 31, 2021