1. Sep 01, 2021
  2. Aug 27, 2021
    • Niklas Adolfsson's avatar
      [proc macros]: support generic type params (#436) · 1045c785
      Niklas Adolfsson authored
      
      
      * PoC support generic type params
      
      * more annoying example
      
      * add trait bounds for generic params in proc macros
      
      * add compile-time test for complicated trait
      
      * smarter trait bounds in proc macros
      
      * add non-working example for now
      
      * revert nits
      
      * Update examples/proc_macro.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Update proc-macros/src/helpers.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * add messy code but works
      
      * cleanup
      
      * add some simple compile check in tests
      
      * fix doc link
      
      * fix doc link last time
      
      * address grumbles
      
      * docs
      
      * Update proc-macros/src/helpers.rs
      
      * Update proc-macros/src/helpers.rs
      
      * Update proc-macros/src/helpers.rs
      
      * Update proc-macros/src/helpers.rs
      
      * Update proc-macros/src/visitor.rs
      
      * fix nit: | -> ||
      
      * Update proc-macros/src/helpers.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Update proc-macros/src/helpers.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Update proc-macros/src/helpers.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * add issues to introduced TODOs
      
      * generics support where clause on trait
      
      * Update proc-macros/src/helpers.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Update proc-macros/src/helpers.rs
      
      * address grumbles
      
      * add more docs
      
      Co-authored-by: default avatarDavid <[email protected]>
      1045c785
  3. Aug 25, 2021
  4. Aug 18, 2021
    • Niklas Adolfsson's avatar
      [proc macros] force proc macro api to return `Result` (#435) · 09abbaaa
      Niklas Adolfsson authored
      * rewrite me
      
      * require proc macro API to return result
      
      * send unknown message when error is not CallError
      
      * show example that auto cast StdError doesn't work
      
      * register_*_method Into<Error>
      
      * clippy
      
      * replace generic errors with anyhow::Error
      
      * fix nits
      
      * example that anyhow::Error in register_method works
      
      * CallError: add missing From impl
      
      * [types]: add helper methods for Error types
      
      The rationale is to make it possible for users to either use anyhow::Error or use the helper methods.
      
      * fmt
      
      * Revert "register_*_method Into<Error>"
      
      This reverts commit 33b4fa28730b72647ba150659d3c0ab1937e524a.
      
      * add better comment
      
      * fix nit
      09abbaaa
  5. Aug 13, 2021
  6. Jul 12, 2021
  7. 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
  8. 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
  9. Apr 15, 2021
  10. Mar 05, 2021
  11. Mar 02, 2021
    • Niklas Adolfsson's avatar
      feat: client trait + porting client proc macros (#199) · 50d8bf78
      Niklas Adolfsson authored
      
      
      * draft: client trait sketch...
      
      * use async_trait instead of `Box<Future>`
      
      * refactor client trait
      
      * [types]: shared client types.
      
      * integrate with `jsonrpsee_proc_macros::rpc_api`
      
      * Update proc-macros/src/lib.rs
      
      * integrate with proc macros
      
      * fix: hacky support for generic types in proc macro
      
      * fix: make the examples work.
      
      * trait: error associated type
      
      * Update types/src/traits.rs
      
      * client trait: make object safe.
      
      Make the trait usable as a trait object i.e, `Box<dyn Trait>`
      
      * client trait: remove `Self::Sized`
      
      * add tests for proc macros.
      
      * fix build
      
      * fmt
      
      * [client trait]: remove unused associated error typ
      
      * [proc macros]: separate enum variant each return_t
      
      * add tracking issue to `TODO`
      
      * doc(client trait): improve documentation.
      
      * separate trait for subscribing client
      
      * add documentation
      
      * proc macros: remove debug impl
      
      * fix compile warns
      
      * address grumbles: remove fn process_response
      
      * Update types/src/client.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Update types/src/client.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Update types/src/client.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Update types/src/client.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * Update types/src/client.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * remove old proc macro tests
      
      * address grumbles: shorter lines
      
      Co-authored-by: default avatarDavid <[email protected]>
      50d8bf78
  12. Jan 18, 2021
    • Niklas Adolfsson's avatar
      merge v2 to master (#180) · 61656562
      Niklas Adolfsson authored
      * update http example
      
      * ungeneric crate
      
      * update dependencies
      
      * [client]: add WebSocket client again.
      
      * [deps]: remove needless dev dependencies
      
      * nits: forgot to commit new files
      
      * [ws client]: `send_text` instead of `send_binary`
      
      This is temporary fix to work with the `server` which assumes that
      `WebSocket` resonses are `text`
      
      * chore: add a bunch of more logging
      
      * [ws]: port tests but some are failing.
      
      * chore: fmt
      
      * [server API]: expose `fn local_addr` as public API.
      
      * [tests]: make them less ugly by using `127.0.0.1:0`
      
      * fix: a bunch of compiler warnings.
      
      * [api]: uniform naming, `bind -> new` in transport.
      
      * [websocket server]: reply when deserial fails
      
      When the server receives an request with invalid JSON
      `-32700, Parse error shall be returned`
      
      * chore: fmt
      
      * [tests]: fix remaining tests
      
      * [websocket server]: support `binary` and `text`
      
      * [ws server]: fix bug in subscription response.
      
      `.await` was missing in ...
      61656562
  13. Jun 29, 2020
  14. Jun 17, 2020
  15. Feb 28, 2020
    • Pierre Krieger's avatar
      Makes the crate's API way more understandable (#96) · d5c911a4
      Pierre Krieger authored
      * Move common to crate root
      
      * Move transport traits to own module
      
      * Hide transport::client and transport::server
      
      * Move ws and http to transport
      
      * Typo fix
      
      * Remove the shortcuts for raw client and servers
      
      * Rename core to raw
      
      * Remove commented-out code
      
      * Fix docs of raw module
      
      * Rustfmt
      
      * Force inline
      
      * Rustfmt
      v0.1.0
      d5c911a4
  16. Feb 24, 2020
  17. Jan 03, 2020
  18. Nov 22, 2019
  19. Nov 15, 2019
  20. Nov 14, 2019
  21. Oct 31, 2019
  22. Oct 30, 2019
  23. Oct 29, 2019
  24. Oct 24, 2019
  25. Oct 22, 2019
  26. Oct 02, 2019
    • Pierre Krieger's avatar
      Work on the Server subscriptions system (#30) · 827c588e
      Pierre Krieger authored
      * Rework the Client to support multiple concurrent requests
      
      * Restore proc-macro functionnality
      
      * More work
      
      * More work
      
      * Work on the Server subscriptions system
      
      * More work on design
      
      * More work
      
      * More work
      
      * Even more work
      
      * Subscriptions working
      
      * Dix docs
      
      * More test fix
      
      * Fix server-sent subscription notifications
      
      * Add some server tests
      
      * Subscriptions pending system working
      
      * Remove TODO from tests
      
      * Implement close() correctly
      
      * Add comment on close()
      
      * Fix proc macro
      
      * Fix doctest
      
      * Fix local doctest
      827c588e
  27. Oct 01, 2019
  28. Sep 23, 2019
  29. Sep 18, 2019
  30. Sep 17, 2019
  31. Sep 16, 2019