mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-27 04:41:07 +00:00
f9f69b8c3b387993115afff21322c52a804eb37f
* Initial Staking API * Add more staking types * Reformat * Remove dead code * Fix missing documentation * Reformat * Staking: use proc macros * Add partial session support * Reformat * Try to implement nomination This currently fails with compilation errors I do not understand. * Use the #[module] macro This fixes a compile error * Explain undefined method diagnostics * Use ‘#[module]’ and implement session for Kusama * Don’t impl ‘Staking’ for all ‘T: System’ * Add staking payout support * Fix compilation errors and remove useless lifetimes * Respond to code review This fixes most of the issues found during review, with the exception of tests. * Make signing fallable and asynchronous This is needed for hardware wallets, which require human confirmation to sign transactions. Blocking on a human to sign transactions is not a good idea, and the signing might fail for many reasons (device unplugged, authorization not granted, etc). * Reformat * Refactor as suggested by Andrew Jones (@ascjones). * Reformat * Refactor as suggested by Andrew Jones (@ascjones). * Trait cleanups * Make the `Signer` impl require Send + Sync This is what Ledgeracio needs. * Use the correct key for staking maps They use the key type, not ‘PhantomData’. * Implement set_payee call * Switch to associated types for Staking * Implement `set_keys` This is needed for Ledgeracio. * Remove impl of Signer for Box<dyn Signer + Send + Sync> It isn’t needed, since Box implements Deref. * Fix Polkadot and Kusama ‘SessionKey’ structs I had failed to include the ‘Parachains’ component, which the default Substrate runtime doesn’t have. * Include a copy of `ValidatorId` This avoids needing to depend on Polkadot. * Fix syntax error in Cargo.toml * Fix compile errors * Add Debug impls * Fix return type of `BondedStore` * Use some upstream type definitions Also add `Default` impls. * Bump deps and fix build * Remove last reference to Kusama feature * Fix compilation errors * Implement the `concat` in `twox_64_concat` * Expose properties and per-era preferences * Era rewards point support I also did some refactoring. * Expose clipped exposure * Era reward points support * Make `PayoutStakersCall` public * Add in all default features for debugging * Chill support and update to latest Substrate * If property fetch fails, use dummy values * Fix tests * Fix header * Remove some code Ledgeracio does not need * More deletions * Remove more code not needed for Ledgeracio * Remove a pointless change in Cargo.toml w.r.t. upstream. * Remove more junk * Revert contracts put_code test to pure code (not using the macro) * Test contract instantiate * Fmt * WIP * Add some more submission tests * Reformat * More tests * Cleanup * Hopefully fix CI * Remove dead code * Test chill * Add missing docs * Remove unnecessary use * Revert "Remove unnecessary use" This reverts commit bc8bc36bde581f1892ea88a778dfe0fe5bff24d7. * Retry on temporary failures * Ignore the staking tests on CI * Obey the fmt * Run CI with at most one test thread * Implement tests for staking * More tests * Remove unhelpful println! * Revert changes in contract tests * Reformat * Remove spurious diff * More tests Co-authored-by: Demi M. Obenour <demiobenour@gmail.com> Co-authored-by: David Palm <dvdplm@gmail.com> Co-authored-by: Andrew Jones <ascjones@gmail.com>
subxt ·

A library to submit extrinsics to a substrate node via RPC.
Usage
See examples.
If you use #[derive(Call)] without #[module] in the same module, you will get errors
complaining about an undefined method with a name starting with with_.
Alternatives
substrate-api-client provides similar functionality.
Subxt Client
By default the client builder will connect to a full node via rpc. The subxt-client helps
embedding a light client directly. It can also be used to embed a full node. This is especially
useful for testing and ci.
License
The entire code within this repository is licensed under the GPLv3. Please contact us if you have questions about the licensing of our products.Description
Languages
Rust
99.8%
Shell
0.2%