* WIP generalising RPC client
* WIP: non-object-safe RpcClientT.. aah generics everywhere
* WIP object-safe RpcClientT trait and no more extra generics
* Get core things compiling again with object-safe RpcClientT trait
* Make jsonrpsee optional and get test-runtime working again
* cargo fmt
* add RpcParams object to enforce correct formatting of rps params
* Wee tweaks
* clippy fixes
* cargo fmt
* TWeak a few types
* make sure we get jsonrpsee-types, too
* Add examples for rpc_params/RpcParams
* more doc tweaks
* remove a now unneeded dev note
* Option<Box<RawValue>> instead to avoid allocations in some cases
* update docs
* tweak RpcClientT trait docs
* Tweak docs around RpcClient and RpcClientT. Don't expose RpcClientT directly
* more doc tweaking about RpcParams and undo decision not to expose RpcParamsT
* Doc tweak
Co-authored-by: Alexandru Vasile <60601340+lexnv@users.noreply.github.com>
* more doc tweaks
* Fix doc thing
* Add an example of injecting a custom RPC client
* Fix a typo
* Address clippy things in example
* Fix a silly typo
* another clippy fix
* rpc_params to panic instead of returning a result, like serde_json::json, and deref on Rpc<T>
* fix docs
Co-authored-by: Alexandru Vasile <60601340+lexnv@users.noreply.github.com>
* WIP API changes
* debug impls
* Get main crate compiling with first round of changes
* Some tidy up
* Add WithExtrinsicParams, and have SubstrateConfig + PolkadotConfig, not DefaultConfig
* move transaction into extrinsic folder
* Add runtime updates back to OnlineClient
* rework to be 'client first' to fit better with storage + events
* add support for events to Client
* tidy dupe trait bound
* Wire storage into client, but need to remove static reliance
* various tidy up and start stripping codegen to remove bits we dont need now
* First pass updating calls and constants codegen
* WIP storage client updates
* First pass migrated runtime storage over to new format
* pass over codegen to generate StorageAddresses and throw other stuff out
* don't need a Call trait any more
* shuffle things around a bit
* Various proc_macro fixes to get 'cargo check' working
* organise what's exposed from subxt
* Get first example working; balance_transfer_with_params
* get balance_transfer example compiling
* get concurrent_storage_requests.rs example compiling
* get fetch_all_accounts example compiling
* get a bunch more of the examples compiling
* almost get final example working; type mismatch to look into
* wee tweaks
* move StorageAddress to separate file
* pass Defaultable/Iterable info to StorageAddress in codegen
* fix storage validation ne, and partial run through example code
* Remove static iteration and strip a generic param from everything
* fix doc tests in subxt crate
* update test utils and start fixing frame tests
* fix frame staking tests
* fix the rest of the test compile issues, Borrow on storage values
* cargo fmt
* remove extra logging during tests
* Appease clippy and no more need for into_iter on events
* cargo fmt
* fix dryRun tests by waiting for blocks
* wait for blocks instead of sleeping or other test hacks
* cargo fmt
* Fix doc links
* Traitify StorageAddress
* remove out-of-date doc comments
* optimise decoding storage a little
* cleanup tx stuff, trait for TxPayload, remove Err type param and decode at runtime
* clippy fixes
* fix doc links
* fix doc example
* constant address trait for consistency
* fix a typo and remove EncodeWithMetadata stuff
* Put EventDetails behind a proper interface and allow decoding into top level event, too
* fix docs
* tweak StorageAddress docs
* re-export StorageAddress at root for consistency
* fix clippy things
* Add support for dynamic values
* fix double encoding of storage map key after refactor
* clippy fix
* Fixes and add a dynamic usage example (needs new scale_value release)
* bump scale_value version
* cargo fmt
* Tweak event bits
* cargo fmt
* Add a test and bump scale-value to 0.4.0 to support this
* remove unnecessary vec from dynamic example
* Various typo/grammar fixes
Co-authored-by: Alexandru Vasile <60601340+lexnv@users.noreply.github.com>
* Address PR nits
* Undo accidental rename in changelog
* Small PR nits/tidyups
* fix tests; codegen change against latest substrate
* tweak storage address util names
* move error decoding to DecodeError and expose
* impl some basic traits on the extrinsic param builder
Co-authored-by: Alexandru Vasile <60601340+lexnv@users.noreply.github.com>
* examples: Use tokio instead of std async
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* test-runtime: Use tokio instead of std async
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* subxt: Use tokio instead of std async
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* examples: Use only necessary tokio features
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* move into subfolder step 1
* Make folders a workspace again
* Move examples into their own workspace crate to make them more visible and easier to run
* clippy fix
* newline
* tweak releasing steps for folder move
* reference exampels more clearly in top level readme