- Apr 27, 2023
-
-
Oliver Tale-Yazdi authored
* First approach on pallet::call_weight Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Use attr on pallet::call instead Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Ui tests Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Rename to weight(prefix = ...)) Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Simplify to #[pallet::call(weight(T))] Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Add stray token error Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Cleanup Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Migrate remaining pallets Using script from https://github.com/ggwpez/substrate-scripts/blob/e1b5ea5b5b4018867f3e869fce6f448b4ba9d71f/frame-code-migration/src/call_weight.rs Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Try to add some docs Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Revert "Migrate remaining pallets" Lets do this as a follow-up, I dont want to bloat this small MR. This reverts commit 331d4b42d72de1dacaed714d69166fa1bc9c92dd. Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Renames Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Review fixes Co-authored-by: Sam Johnson <[email protected]> Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Test weights Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Update UI tests Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Update frame/support/procedural/src/pallet/parse/mod.rs Co-authored-by: Muharem Ismailov <[email protected]> * Remove old code Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Update docs Signed-off-by: Oliver Tale-Yazdi <[email protected]> --------- Signed-off-by: Oliver Tale-Yazdi <[email protected]> Co-authored-by: parity-processbot <> Co-authored-by: Muharem Ismailov <[email protected]>
-
- Apr 25, 2023
-
-
Qinxuan Chen authored
* frame-support: migrate some tests from decl macros to new pallet attribute macros * Remove useless type alias * Remove useless type alias * Work around for rust issue 52234 Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Fix tests Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Use polkadot-compatible paste version Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Fix crate access and add tests Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Typo Signed-off-by: Oliver Tale-Yazdi <[email protected]> --------- Signed-off-by: Oliver Tale-Yazdi <[email protected]> Co-authored-by: Oliver Tale-Yazdi <[email protected]> Co-authored-by: parity-processbot <>
-
- Apr 11, 2023
-
-
Alexandru Vasile authored
* impl_runtime_apis: Generate getters for `metadata_at` functions Signed-off-by: Alexandru Vasile <[email protected]> * runtime: Implement new `Metadata` runtime trait Signed-off-by: Alexandru Vasile <[email protected]> * runtime: Move `metadata_at` functions to construct_runtime macro Signed-off-by: Alexandru Vasile <[email protected]> * contruct_runtime: Use `OpaqueMetadata` from hidden imports Signed-off-by: Alexandru Vasile <[email protected]> * Adjust testing Signed-off-by: Alexandru Vasile <[email protected]> * frame/tests: Add tests for the new API Signed-off-by: Alexandru Vasile <[email protected]> * primitives/proc-macro: Helper to extract documentation literals Signed-off-by: Alexandru Vasile <[email protected]> * primitives/proc-macro: Helper to filter all `cfg` attributes Signed-off-by: Alexandru Vasile <[email protected]> * primitives/proc-macro: Generate documentation getters for metadata Signed-off-by: Alexandru Vasile <[email protected]> * primitives/proc-macro: Avoid trait collision with snake case methods Signed-off-by: Alexandru Vasile <[email protected]> * proc-macro/tests: Check doc getters Signed-off-by: Alexandru Vasile <[email protected]> * primitives/proc-macro: Generate metadata for runtime methods Signed-off-by: Alexandru Vasile <[email protected]> * primitives/api: Export scale-info and frame-metadata Signed-off-by: Alexandru Vasile <[email protected]> * primitives/proc-macro: Generate metadata for runtime traits Signed-off-by: Alexandru Vasile <[email protected]> * frame/runtime: Expose metadata v15 internally Signed-off-by: Alexandru Vasile <[email protected]> * test: Use metadata v15 from `lexnv/md_v15_test` branch Signed-off-by: Alexandru Vasile <[email protected]> * primitives/proc-macro: Generate crate access one module up Signed-off-by: Alexandru Vasile <[email protected]> * frame: Implement `runtime_metadata` for mocks and tests Signed-off-by: Alexandru Vasile <[email protected]> * primitives/proc-macro: Fix warnings Signed-off-by: Alexandru Vasile <[email protected]> * primitives/proc-macro: Add no-docs flag Signed-off-by: Alexandru Vasile <[email protected]> * frame: Adjust more tests Signed-off-by: Alexandru Vasile <[email protected]> * frame/tests: Check runtime metadata correctness Signed-off-by: Alexandru Vasile <[email protected]> * frame/benchmarking: Adjust benchmarks Signed-off-by: Alexandru Vasile <[email protected]> * frame/benchmarks: Adjust more benchmarks Signed-off-by: Alexandru Vasile <[email protected]> * primitives/api: Fix clippy Signed-off-by: Alexandru Vasile <[email protected]> * primitives/proc-macro: Generate runtime metadata on the `decl_runtime_apis` Signed-off-by: Alexandru Vasile <[email protected]> * frame: Abuse Deref to resolve `runtime_metadata` Signed-off-by: Alexandru Vasile <[email protected]> * Revert "frame: Implement `runtime_metadata` for mocks and tests" This reverts commit b7f41aa189218589392a6e713ea9488e93c4db45. Revert "frame: Adjust more tests" This reverts commit 3cba5982c7f45552e76335e96c430aecbc42d8c6. Revert "frame/benchmarking: Adjust benchmarks" This reverts commit 60b382ada486c791ffceeb65da587e949b90ec5d. Signed-off-by: Alexandru Vasile <[email protected]> Revert "frame/benchmarks: Adjust more benchmarks" This reverts commit eb75c477179b1a27347a5554c5732ef26a00d7e8. * primitives/proc-macro: Remove unused imports and function Signed-off-by: Alexandru Vasile <[email protected]> * frame/support: Adjust runtime metadata test Signed-off-by: Alexandru Vasile <[email protected]> * primitives/tests: Remove doc getter test Signed-off-by: Alexandru Vasile <[email protected]> * frame/support: Enable `no-metadata-docs` feature from `sp-api` Signed-off-by: Alexandru Vasile <[email protected]> * primitives/tests: Add `TypeInfo` for test::extrinsic Signed-off-by: Alexandru Vasile <[email protected]> * primitives/api: Expose scale-info and frame-metadata Signed-off-by: Alexandru Vasile <[email protected]> * Update frame-metadata to include v15 Signed-off-by: Alexandru Vasile <[email protected]> * Fix merge conflicts Signed-off-by: Alexandru Vasile <[email protected]> * frame/metadata_ir: Add IR for runtime API metadata Signed-off-by: Alexandru Vasile <[email protected]> * frame/metadata_ir: Convert IR to V15 Signed-off-by: Alexandru Vasile <[email protected]> * primitives/api: Collect IR metadata for runtime API Signed-off-by: Alexandru Vasile <[email protected]> * primitives/api: Move `metadata_ir` from frame/support Signed-off-by: Alexandru Vasile <[email protected]> * frame/tests: Adjust testing Signed-off-by: Alexandru Vasile <[email protected]> * frame/tests: Adjust `metadata_versions` test Signed-off-by: Alexandru Vasile <[email protected]> * primitives/runtime_metadata: Exclude default type parameters from methods Signed-off-by: Alexandru Vasile <[email protected]> * Update primitives/api/proc-macro/src/runtime_metadata.rs Co-authored-by: Bastian Köcher <[email protected]> * Update primitives/api/src/metadata_ir/types.rs Co-authored-by: Bastian Köcher <[email protected]> * Update primitives/api/src/metadata_ir/mod.rs Co-authored-by: Bastian Köcher <[email protected]> * Update primitives/api/proc-macro/src/utils.rs Co-authored-by: Bastian Köcher <[email protected]> * Update primitives/api/proc-macro/src/runtime_metadata.rs Co-authored-by: Bastian Köcher <[email protected]> * Update primitives/api/proc-macro/src/runtime_metadata.rs Co-authored-by: Bastian Köcher <[email protected]> * Update primitives/api/proc-macro/src/runtime_metadata.rs Co-authored-by: Bastian Köcher <[email protected]> * Update primitives/api/proc-macro/src/runtime_metadata.rs Co-authored-by: Bastian Köcher <[email protected]> * Update primitives/api/proc-macro/src/runtime_metadata.rs Co-authored-by: Bastian Köcher <[email protected]> * Update primitives/api/proc-macro/src/runtime_metadata.rs Co-authored-by: Bastian Köcher <[email protected]> * primitives: Fix build Signed-off-by: Alexandru Vasile <[email protected]> * primitives/metadata-ir: Move IR to dedicated crate Signed-off-by: Alexandru Vasile <[email protected]> * primitives: Reexport metadata-ir and frame-metadata Signed-off-by: Alexandru Vasile <[email protected]> * frame: Use apis field instead of runtime Signed-off-by: Alexandru Vasile <[email protected]> * Better documentation for the `Deref` abstraction Signed-off-by: Alexandru Vasile <[email protected]> * ui-tests: Check empty `impl_runtime_apis` Signed-off-by: Alexandru Vasile <[email protected]> * primitives: Remove unneeded bounds on generic params Signed-off-by: Alexandru Vasile <[email protected]> * primitives: Rename `collect_where_bounds` to `get_argument_type_param` Signed-off-by: Alexandru Vasile <[email protected]> * primitives: Generate crate access per fn call Signed-off-by: Alexandru Vasile <[email protected]> * Revert "primitives: Remove unneeded bounds on generic params" This reverts commit 5178e38cf21cfb481156eefd628d62989201d59a. * metadata-ir: Add no-std Signed-off-by: Alexandru Vasile <[email protected]> * primitives: Adjust where bounds Signed-off-by: Alexandru Vasile <[email protected]> * Change `frame-metadata` branch to "origin/main" Signed-off-by: Alexandru Vasile <[email protected]> * Update to `main` from origin Signed-off-by: Alexandru Vasile <[email protected]> * Update frame-metadata to crates.io v15.1 Signed-off-by: Alexandru Vasile <[email protected]> * Revert "ui-tests: Check empty `impl_runtime_apis`" This reverts commit cf78a7190ad9cba3c3bb2e78dc3d0dc382b2fea9. * Move ui test to primitives/ui Signed-off-by: Alexandru Vasile <[email protected]> * Update frame/support/test/tests/runtime_metadata.rs Co-authored-by: Bastian Köcher <[email protected]> * Update primitives/api/proc-macro/src/runtime_metadata.rs Co-authored-by: Bastian Köcher <[email protected]> * Test already covered by `empty_impl_runtime_apis_call.stderr` This reverts commit 3bafb294cbe9745569bf5e5a1a2e6b4a4c1aadc5. * Retriger CI Signed-off-by: Alexandru Vasile <[email protected]> * Import `TokenStream` as `TokenStream2` Signed-off-by: Alexandru Vasile <[email protected]> --------- Signed-off-by: Alexandru Vasile <[email protected]> Co-authored-by: parity-processbot <> Co-authored-by: Bastian Köcher <[email protected]>
-
- Apr 06, 2023
-
-
Liam Aharon authored
* new test for try-runtime tuple stuff * fix * remove development comment * formatting * remove todo comment * follow-chain working test * refactor common cli testing utils * fix comment * revert Cargo.lock changes * update Cargo.lock * improve doc comment * fix error typo * update Cargo.lock * feature gate try-runtime test * build_substrate cli test util * feature gate follow_chain tests * move fn start_node to test-utils * improve test pkg name * use tokio Child and Command * remove redundant import * fix ci * fix ci * don't leave hanging processes * improved child process cleanup * use existing KillChildOnDrop * remove redundant comment * Update test-utils/cli/src/lib.rs Co-authored-by: Koute <[email protected]> --------- Co-authored-by: kianenigma <[email protected]> Co-authored-by: Koute <[email protected]>
-
Keith Yeung authored
* Add HoldReason to the NIS pallet * Rename composable_enum to composite_enum * Add encoding test * Add more doc comments
-
- Apr 04, 2023
-
-
Keith Yeung authored
* Implement #[pallet::hold_reason] * Appease clippy * cargo fmt * Update test expectations * Update test expectations * Support composite_enum attribute instead * Update test expectations * Change hold_reason to composite_enum * Add UI test for unsupported identifier when using composite_enum * Fix comment * Add documentation for pallet::composable_enum * More docs * cargo fmt
-
- Mar 15, 2023
-
-
Alexandru Vasile authored
* impl_runtime_apis: Generate getters for `metadata_at` functions Signed-off-by: Alexandru Vasile <[email protected]> * runtime: Implement new `Metadata` runtime trait Signed-off-by: Alexandru Vasile <[email protected]> * runtime: Move `metadata_at` functions to construct_runtime macro Signed-off-by: Alexandru Vasile <[email protected]> * contruct_runtime: Use `OpaqueMetadata` from hidden imports Signed-off-by: Alexandru Vasile <[email protected]> * Adjust testing Signed-off-by: Alexandru Vasile <[email protected]> * frame/tests: Add tests for the new API Signed-off-by: Alexandru Vasile <[email protected]> * frame/tests: Adjust metdata naming Signed-off-by: Alexandru Vasile <[email protected]> * frame/support: Expose `metadata-v14` feature flag Signed-off-by: Alexandru Vasile <[email protected]> * frame/support: Expose metadata only under feature flags Signed-off-by: Alexandru Vasile <[email protected]> * frame/support: Expose v14 metadata by default Signed-off-by: Alexandru Vasile <[email protected]> * frame/support: Expose metadata feature for testing Signed-off-by: Alexandru Vasile <[email protected]> * frame/support: Test metadata under different feature flags Signed-off-by: Alexandru Vasile <[email protected]> * Update primitives/api/src/lib.rs Co-authored-by: Bastian Köcher <[email protected]> * Update primitives/api/src/lib.rs Co-authored-by: Bastian Köcher <[email protected]> * client/tests: Adjust testing to reflect trait Metadata change Signed-off-by: Alexandru Vasile <[email protected]> * frame/metadata-ir: Add intermediate representation types for metadata Signed-off-by: Alexandru Vasile <[email protected]> * frame/metadata-ir: Convert metadata to V14 Signed-off-by: Alexandru Vasile <[email protected]> * frame/metadata-ir: Add API to convert metadata to multiple versions Signed-off-by: Alexandru Vasile <[email protected]> * frame/metadata-ir: Expose V14 under feature flag Signed-off-by: Alexandru Vasile <[email protected]> * frame/support: Adjust to metadata IR Signed-off-by: Alexandru Vasile <[email protected]> * frame/support: More adjustments Signed-off-by: Alexandru Vasile <[email protected]> * frame/support: Guard v14 details under feature flag Signed-off-by: Alexandru Vasile <[email protected]> * frame/support: Adjust testing Signed-off-by: Alexandru Vasile <[email protected]> * CI: Ensure `quick-benchmarks` uses `metadata-v14` Signed-off-by: Alexandru Vasile <[email protected]> * frame/support: Use `metadata-v14` for benchmarks Signed-off-by: Alexandru Vasile <[email protected]> * Adjust cargo fmt Signed-off-by: Alexandru Vasile <[email protected]> * kitchensink-runtime: Add feature flag for `metadata-v14` Signed-off-by: Alexandru Vasile <[email protected]> * frame/support/test: Adjust testing Signed-off-by: Alexandru Vasile <[email protected]> * frame/support/test: Check crates locally Signed-off-by: Alexandru Vasile <[email protected]> * Activate metadata-v14 for pallets Signed-off-by: Alexandru Vasile <[email protected]> * Remove metadata-v14 feature flag Signed-off-by: Alexandru Vasile <[email protected]> * frame/metadata_ir: Move `api.rs` to `mod.rs` Signed-off-by: Alexandru Vasile <[email protected]> * frame/support: Handle latest metadata conversion via IR Signed-off-by: Alexandru Vasile <[email protected]> * frame/tests: Add constant for metadata version 14 Signed-off-by: Alexandru Vasile <[email protected]> * frame/support/test: Fix merge conflict Signed-off-by: Alexandru Vasile <[email protected]> * Update frame/support/Cargo.toml Co-authored-by: Bastian Köcher <[email protected]> * Update frame/support/src/metadata_ir/mod.rs Co-authored-by: Bastian Köcher <[email protected]> * Update frame/support/test/Cargo.toml Co-authored-by: Bastian Köcher <[email protected]> * Update primitives/api/src/lib.rs Co-authored-by: Bastian Köcher <[email protected]> * frame/metadata: Collect pallet documentation for MetadataIR Signed-off-by: Alexandru Vasile <[email protected]> * frame/tests: Check pallet documentation is propagated to MetadataIR Signed-off-by: Alexandru Vasile <[email protected]> * frame/support: Improve documentation Signed-off-by: Alexandru Vasile <[email protected]> --------- Signed-off-by: Alexandru Vasile <[email protected]> Co-authored-by: parity-processbot <> Co-authored-by: Bastian Köcher <[email protected]>
-
- Feb 27, 2023
-
-
Bastian Köcher authored
* `pallet-treasury`: Ensure we respect `max_amount` for spend across batch calls When calling `spend` the origin defines the `max_amount` of tokens it is allowed to spend. The problem is that someone can send a `batch(spend, spend)` to circumvent this restriction as we don't check across different calls that the `max_amount` is respected. This pull request fixes this behavior by introducing a so-called dispatch context. This dispatch context is created once per outer most `dispatch` call. For more information see the docs in this pr. The treasury then uses this dispatch context to attach information about already spent funds per `max_amount` (we assume that each origin has a different `max_amount` configured). So, a `batch(spend, spend)` is now checked to stay inside the allowed spending bounds. Fixes: https://github.com/paritytech/substrate/issues/13167 * Import `Box` for wasm * FMT
-
- Feb 21, 2023
-
-
Vivek Pandya authored
* Change copyright year to 2023 from 2022 * Fix incorrect update of copyright year * Remove years from copy right header * Fix remaining files * Fix typo in a header and remove update-copyright.sh
-
- Jan 27, 2023
-
-
Matteo Muraca authored
* mutate_exists for StorageValue with ValueQuery Signed-off-by: muraca <[email protected]> * added `#[crate::storage_alias]` to tests Signed-off-by: muraca <[email protected]> * added StorageEntryMetadata Signed-off-by: muraca <[email protected]> * Update frame/support/src/lib.rs --------- Signed-off-by: muraca <[email protected]> Co-authored-by: Oliver Tale-Yazdi <[email protected]>
-
Sam Johnson authored
migrate new benchmarking syntax from `frame_support::benchmarking` to `frame_benchmarking::v2` (#13235) * * re-export frame_support::benchmarking in frame_benchmarking:: * prefer use frame_benchmarking::*; in examples, etc * switch to frame_benchmarking::v2 * completely migrate new benchmarking code out of frame_support * fix doc links * remove unneeded return Co-authored-by: Bastian Köcher <[email protected]> * remove another unneeded return Co-authored-by: Bastian Köcher <[email protected]> * properly export all macros in v1 * refactor existing frame_benchmarking imports to use ::v1 --------- Co-authored-by: Bastian Köcher <[email protected]>
-
- Jan 23, 2023
-
-
Sam Johnson authored
* add stub for new benchmark macro * benchmark syntax * add #[extrinsic call] separator * parse #[benchmark] item as a function * proper emission of error when #[extrinsic_call] annotation is missing * clean up * enclosing module via benchmarks! { } working * use an attribute macro on the module instead of benchmarks! { } * cargo fmt * working component implementation * WIP * working * add syntax for Linear<A, B> * parsing of param ranges (still need to build tuple though) * params parsing WIP * clean up (don't need extrinsic call name) * use proper Result syntax for BenchmarkDef parsing * proper parsing of Linear<0, 1> style args * successfully parse and make use of linear component ranges
💥 * rename support variable => home because eventually will be moved * compile-time check that param range types implement ParamRange * switch to using balances as example, failing on instance pallet * successfully set up __origin and __call with balances💥 * clean up * use a module * don't need a variable for transfer * rename benchmark_transfer -> transfer because no longer conflicts * clean up * working with transfer_increasing_users as well💥 * re-add BareBlock * add comments for undocumented structs+functions+traits * refactor in preparation for removing module requirements * switch to a block instead of a module * use the outer macro pattern to to enable #[benchmarks] aggregation * successfully generate SelectedBenchmark💥 * implement components for SelectedBenchmark * implement instance for SelectedBenchmark * properly track #[extra] * working impl for fn benchmarks() * run_benchmarks WIP * finish run_benchmark! impl💥 * import balances transfer_best_case benchmark * import transfer_keep_alive balances pallet benchmark * import set_balance_creating balances pallet benchmark * import set_balance_killing balances pallet benchmark * import force_transfer balances pallet benchmark * add #[extra] annotation and docs to transfer_increasing_users * import transfer_all balances pallet benchmark * import force_unreserve balances pallet benchmark * prepare to implement impl_benchmark_test_suite! * ensure tests cover #[extra] before and after #[benchmark] tag * refactor * clean up * fix * move to outer * switch to benchmarks/instance_benchmarks * test impl almost done, strange compiler error * benchmark test suites working💥 * clean up * add stub and basic parsing for where_clause * working except where clause and extrinsic calls containing method chains * assume option (2) for now wrt https://github.com/paritytech/substrate/pull/12924#issuecomment-1372938718 * clean up * switch to attribute-style * properly handle where clauses * fix subtle missing where clause, now just MessageQueue issues * fix block formatting in message-queue pallet * switch to block vs non-block parsing of extrinsic call * working now but some benchmark tests failing * message-queue tests working (run order issue fixed)🎉 * add comments and internal docs for fame_support_procedural::benchmark * fix license years * docs for lib.rs * add docs to new support procedural macros * don't allow #[benchmark] outside of benchmarking module * add docs * use benchmark(extra, skip_meta) style args * update docs accordingly * appease clippy * bump ci * add notes about `extra` and `skip_meta` * fix doc tests * re-run CI * use `ignore` instead of `no_run` on doc examples * bump CI * replace some if-lets with if-elses * more refactoring of if-let statements * fix remaining if-lets in BenchmarkDef::from() * fix if-lets in benchmarks() * fix remaining if-lets, use nested find_map for extrinsic call * switch to use #[extrinsic_call] or #[block] situationally * refactor ExtrinsicCallDef => BenchmarkCallDef * update docs with info about #[block] * add macro stub for #[extrinsic_call] * fix docs and add stub for #[block] as well * remove unused extern crate line * fix clippy nits * Use V2 bench syntax in pallet-example-basic Just testing the dev-ex... Signed-off-by: Oliver Tale-Yazdi <[email protected]> * carry over comment * use curly-brace style for impl_benchmark_test_suite! * remove unneeded parenthesis * proper handling of _() extrinsic call style * add docs for _() syntax * fix crate access * simplify keyword access Co-authored-by: Keith Yeung <[email protected]> * simplify module content destructuring Co-authored-by: Keith Yeung <[email protected]> * fix crate access "frame_benchmarking" => "frame-benchmarking", compiles * use _() extrinsic call syntax where possible in balances * simplify attr.path.segments.last() Co-authored-by: Keith Yeung <[email protected]> * fix compile error being suppressed * simplify extrinsic call keyword parsing Co-authored-by: Keith Yeung <[email protected]> * use ? operator instead of return None Co-authored-by: Keith Yeung <[email protected]> * rename generics => type_use_generics rename full_generics => type_impl_generics * simplify extrinsic call extraction with transpose * bump CI * nit * proper handling of too many + too few block/extrinsic call annotations * change to B >= A Co-authored-by: Oliver Tale-Yazdi <[email protected]> * remove unneeded ignore Co-authored-by: Oliver Tale-Yazdi <[email protected]> * remove another ignore Co-authored-by: Oliver Tale-Yazdi <[email protected]> * add ui tests * use _() style extrinsic call on accumulate_dummy Co-authored-by: Oliver Tale-Yazdi <[email protected]> * add range check to ParamRange * ui test for bad param ranges * fix failing example * add ignore back to other failing example * tweak expr_call span Co-authored-by: Keith Yeung <[email protected]> * fix typo * eliminate a match Co-authored-by: Keith Yeung <[email protected]> * change pub fn benchmarks to return Result<TokenStream> * fix origin error span * more informative error for invalid benchmark parameter name * fix spans on a few benchmark errors * remove unneeded clone * refactor inner loop of benchmark function parsing * preserve mod attributes * refactor outer loop of benchmark def parsing code, greatly simplified * simplify to use a ? operator when parsing benchmark attr path * fix another ? operator * further simplify benchmark function attr parsing with more ? ops * refactor extrinsic call handling to use if let rather than match * replace is_ok => is_err Co-authored-by: Keith Yeung <[email protected]> * re-use name during expansion of benchmark def * remove unneeded clone * fix span for origin missing error * fix missing semi Signed-off-by: Oliver Tale-Yazdi <[email protected]> Co-authored-by: Oliver Tale-Yazdi <[email protected]> Co-authored-by: Keith Yeung <[email protected]> Co-authored-by: parity-processbot <>
-
- Jan 11, 2023
-
-
Bastian Köcher authored
* `IntegrityTest` implementation should be feature gated The initial implementation for the old declarative macros is still feature gating the implementation. As we only call this in a test, there is no need to have this compiled for wasm. * Don't assume that all "consumers" have a `std` feature
-
- Nov 25, 2022
-
-
benluelo authored
fix derive for empty enums Update derive & ui tests clean up Apply suggestions from code review Co-authored-by: Bastian Köcher <[email protected]> rename variable formatting & clippy formatting Co-authored-by: parity-processbot <>
-
- Nov 07, 2022
-
-
Sam Johnson authored
* stub for construct_dev_runtime! * revert * stub for dev_mode proc macro * preliminary docs for pallet::dev_mode (attribute) proc macro * add dev_mode to pallet_macros module * add docs item for dev_mode to frame_support * parsing of #[pallet(dev_mode)] * strip out dev_mode stub since it will be an arg for pallet instead * make pallet Def struct aware of dev mode * WIP * revert changes to call.rs * pass dev_mode to pallet parsing code * auto-specify default weights when in dev mode if not specified * add proof / expect for syn::parse in dev mode weight processing * set all storages to unbounded when in dev mode * just use 0 Co-authored-by: Shawn Tabrizi <[email protected]> * add invalid pallet arg test * add passing dev mode pallet test * add test confirming that dev mode features only work in dev mode * cargo fmt + clean up * bump CI * fix pallet ui test * add docs for dev mode * add warning about using dev mode in production circumstances * remove comment about no other attributes being supported * fix unneeded assignment * make warning more explicit * more explicit warning about using dev mode in production * simpler assignment for dev_mode boolean Co-authored-by: Oliver Tale-Yazdi <[email protected]> * add note about MEL requirement Co-authored-by: Oliver Tale-Yazdi <[email protected]> * add comment specifying why weights can be omitted in example Co-authored-by: Oliver Tale-Yazdi <[email protected]> * tweak wording of comments * bump ci Co-authored-by: Shawn Tabrizi <[email protected]> Co-authored-by: Oliver Tale-Yazdi <[email protected]>
-
- Oct 06, 2022
-
-
Sam Johnson authored
macro stubs for all pallet:: macros to improve documentation visibility and discovery + revamp of pallet macro documentation (#12334) * proof of concept working for pallet::whitelist_storage * fix comments * pallet macros docs rewrite WIP * fix issue with cargo fmt cobbling links * tweak capitalization * fix docs for storage_version * fix docs for pallet::hooks * fix several comments * fix invalid link * fix wrapping and add missing links for pallet::hooks docs * run rewrap on all text blocks in frame_support::pallet docs * cargo fmt * fix up pallet::call_index docs * fix docs for pallet::extra_constants * fix docs for pallet::error * fix docs for pallet::event * fix docs for pallet::event * * fix docs for pallet::storage * fix docs for pallet::getter * fix docs for pallet::storage_prefix * fix docs for pallet::unbounded * fix docs for pallet::whitelist_storage * fix docs for #[cfg(..)] (for storage items and attributes) * fix docs for pallet::storage macro expansion * fix docs for pallet::type_value * fix docs for pallet::genesis_config * fix docs for pallet::genesis_build * fix docs for pallet::inherent * fix docs for pallet::validate_unsigned * fix docs for pallet::origin * fix docs for general notes on instantiable pallets * fix docs for example of a non-instantiable pallet * fix docs for example of an instantiable pallet * fix docs for upgrade guidelines * fix docs for upgrade guidelines * fix docs for upgrade checking and final notes * fix some examples near the beginning * extract docs for `pallet::whitelist_storage` * add docs for pallet_macro_stub * fix order of pallet::config and pallet::constant * set up stub for pallet::config * set up stub for pallet::constant * fix * set up stub for pallet::disable_frame_system_supertrait_check * set up stub for pallet::generate_storage_info * set up stub for pallet::storage_version * set up stub for pallet::hooks * set up stub for pallet::weight * set up stub for pallet::compact * set up stub for pallet::call_index * set up stub for pallet::extra_constants * set up stub for pallet::error * set up stub for pallet::event * set up stub for pallet::generate_deposit * set up stub for pallet::storage * set up stub for pallet::getter * set up stub for pallet::storage_prefix * set up stub for pallet::unbounded * set up stub for pallet::type_value * set up stub for pallet::genesis_config * set up stub for pallet::genesis_build * set up stub for pallet::inherent * set up stub for pallet::validate_unsigned * set up stub for pallet::origin * fix comment * cargo fmt * tweak error message * Update frame/support/procedural/src/lib.rs Co-authored-by: Keith Yeung <[email protected]> * Update frame/support/procedural/src/lib.rs Co-authored-by: Keith Yeung <[email protected]> * switch order of derives Co-authored-by: Squirrel <[email protected]> * tweak wording Co-authored-by: Squirrel <[email protected]> * add more context info about `MAX_MODULE_ERROR_ENCODED_SIZE` Co-authored-by: Squirrel <[email protected]> * tweak wording about where clause Co-authored-by: Squirrel <[email protected]> * clarify wording about system/events key Co-authored-by: Squirrel <[email protected]> * use "The Event enum" instead of "item" Co-authored-by: Squirrel <[email protected]> * fix bad wording Co-authored-by: Squirrel <[email protected]> * use enum instead of type Co-authored-by: Squirrel <[email protected]> * expect => expects Co-authored-by: Squirrel <[email protected]> * add additional note about storage prefix Co-authored-by: Squirrel <[email protected]> * clearer note about GenesisConfig Co-authored-by: Squirrel <[email protected]> * Use "The impl" instead of "The item" Co-authored-by: Squirrel <[email protected]> * add note and link to tight-coupling docs Co-authored-by: Squirrel <[email protected]> * cargo fmt * remove spaces around parenthesis * fix missing text for pallet::config * fix issue with pallet::constant intro * fix wording about codec index * fix pallet::error wording * fix comment about 1 byte => 256 errors * fix where clause comment * fix comment about where pallet events are stored * rewrap some text * fix pallet::storage docs * fix pallet::storage_prefix docs * tweak docs for pallet::genesis_build * tweak docs for pallet::config * specify that pallet::event must be present if pallet::config is present * add note about why we would want to bypass the supertrait check * mention that pallet::generate_store attribute is only valid on pallet struct * add note about adding new calls to the end to maintain existing order * add note about pallet::type_value and pallet::storage Co-authored-by: Squirrel <[email protected]> * add note about using pallet::type_value alongside pallet::storage * include warning about modifying disaptchables on other pallet::call_index docs page * fix incorrect comment * add much more information for pallet::inherent * move pallet::pallet macro expansion notes back to their rightful place * re-run CI * fix macro expansion appearing in wrong place for pallet::pallet * replicate pallet::pallet docs on the pallet::pallet macro stub * force CI re-run Co-authored-by: Keith Yeung <[email protected]> Co-authored-by: Squirrel <[email protected]> Co-authored-by: parity-processbot <>
-
- Sep 23, 2022
-
-
Roman Useinov authored
* [Fix] parameter_types! dead code errors * mark the whole impl allow(unused)
-
- Sep 20, 2022
-
-
Sergej Sakac authored
* BREAKING: Rename Origin * more renaming * a bit more renaming * fix * more fixing * fix in frame_support * even more fixes * fix * small fix * ... * update .stderr * docs * update docs * update docs * docs
-
- Sep 19, 2022
-
-
NingLin-P authored
* update interfaces of OnRuntimeUpgrade & Hooks Signed-off-by: linning <[email protected]> * remove try-runtime for PreStateDigest Signed-off-by: linning <[email protected]> * remove the Default bound of PreStateDigest Signed-off-by: linning <[email protected]> * remove try-runtime for PreStateDigest & pre_upgrade Signed-off-by: linning <[email protected]> * remove tmp storage between upgrade hooks Signed-off-by: linning <[email protected]> * ensure hooks are storage noop Signed-off-by: linning <[email protected]> * remove OnRuntimeUpgradeHelpersExt Signed-off-by: linning <[email protected]> * cargo check & fmt Signed-off-by: linning <[email protected]> * rename PreStateDigest to PreUpgradeState Signed-off-by: linning <[email protected]> * replace associate type with codec & vec Signed-off-by: linning <[email protected]> * add helper strcut to help encode/decode tuple Signed-off-by: linning <[email protected]> * update comment Signed-off-by: linning <[email protected]> * fix Signed-off-by: linning <[email protected]> * add test Signed-off-by: linning <[email protected]> * address comment Signed-off-by: linning <[email protected]> * fix doc Signed-off-by: linning <[email protected]> * fix ci Signed-off-by: linning <[email protected]> * address comment Signed-off-by: linning <[email protected]> * add more test cases Signed-off-by: linning <[email protected]> * make clippy happy Signed-off-by: linning <[email protected]> * fmt Signed-off-by: linning <[email protected]> * update comment Signed-off-by: linning <[email protected]> * fmt Signed-off-by: linning <[email protected]> Signed-off-by: linning <[email protected]>
-
- Sep 16, 2022
-
-
Sam Johnson authored
* initial setup * add WhitelistedStorageKeys trait * add (A, B) tuple implementation for whitelisted_storage_keys() * fix formatting * implement WhitelistedStorageKeys for all tuple combinations * impl_for_tuples up to 128 for WhitelistedStorageKeys * refactor to #[benchmarking(cached)] * tweak error message and mark BlockNumber as cached * add benchmarking(cached) to the other default types * add docs for benchmarking(cached) * properly parse storage type declaration * make storage_alias structs public so we can use them in this macro * use BTreeMap since TrackedStorageKey missing Ord outside of std * make WhitelistedStorageKeys accessible * basic detection of benchmarking(cached)
💥 * proper parsing of #[benchmarking(cached)] from pallet parse macro * store presence of #[benchmarking(cached)] macro on StorageDef * will be used for later expansion * compiling blank impl for WhitelistedStorageKeys * move impl to expand_pallet_struct * use frame_support::sp_std::vec::Vec properly * successfully compiling with storage info loaded into a variable💥 * plausible implementation for whitelisted_storage_keys() * depends on the assumption that storage_info.encode() can be loaded into TrackedStorageKey::new(..) * use Pallet::whitelisted_storage_keys() instead of hard-coded list * AllPallets::whitelisted_storage_keys() properly working💥 * collect storage names * whitelisted_storage_keys() impl working💥 * clean up * fix compiler error * just one compiler error * fix doc compiler error * use better import path * fix comment * whoops * whoops again * fix macro import issue * cargo fmt * mark example as ignore * use keyword tokens instead of string parsing * fix keyword-based parsing of benchmarking(cached) * preliminary spec for check_whitelist() * add additional test for benchmarking whitelist * add TODO note * remove irrelevant line from example * use filter_map instead of filter and map * simplify syntax Co-authored-by: Keith Yeung <[email protected]> * clean up * fix test * fix tests * use keyword parsing instead of string parsing * use collect() instead of a for loop Co-authored-by: Kian Paimani <[email protected]> * fix compiler error * clean up benchmarking(cached) marking code * use cloned() * refactor to not use panic! and remove need for pub types in storage_alias * remove unneeded use Co-authored-by: Bastian Köcher <[email protected]> * remove unneeded visibility changes * don't manually hard code hash for treasury account as hex * proper Ord, PartialOrd, and Hash impls for TrackedStorageKey * now based just on key, and available in no-std * use BTreeSet instead of BTreeMap * fix comments * cargo fmt * switch to pallet::whitelist and re-do it basti's way :D * make PartialOrd for TrackedStorageKey consistent with Ord * more correct implementation of hash-related traits for TrackedStorageKey * fix integration test * update TODO * remove unused keyword * remove more unused keywords * use into_iter() Co-authored-by: Keith Yeung <[email protected]> * Update frame/support/procedural/src/pallet/parse/mod.rs Co-authored-by: Bastian Köcher <[email protected]> * add docs for whitelisted * fix comment Co-authored-by: Keith Yeung <[email protected]> Co-authored-by: Kian Paimani <[email protected]> Co-authored-by: Bastian Köcher <[email protected]>
-
- Sep 13, 2022
-
-
Keith Yeung authored
* Create sp-weights crate to store weight primitives * Fix templates * Fix templates * Fixes * Fixes * cargo fmt * Fixes * Fixes * Use deprecated type alias instead of deprecated unit types * Use deprecated subtraits instead of deprecated hollow new traits * Fixes * Allow deprecation in macro expansion * Add missing where clause during call macro expansion * cargo fmt * Fixes * cargo fmt * Fixes * Fixes * Fixes * Fixes * Move FRAME-specific weight files back to frame_support * Fixes * Update frame/support/src/dispatch.rs Co-authored-by: Kian Paimani <[email protected]> * Update frame/support/src/dispatch.rs Co-authored-by: Kian Paimani <[email protected]> * Update frame/support/src/dispatch.rs Co-authored-by: Kian Paimani <[email protected]> * Add missing header * Rewrite module docs * Fixes * Fixes * Fixes * Fixes * cargo fmt Co-authored-by: Shawn Tabrizi <[email protected]> Co-authored-by: Kian Paimani <[email protected]>
-
- Sep 12, 2022
-
-
Sergej Sakac authored
* rename Event to RuntimeEvent * rename Call * rename in runtimes * small fix * rename Event * small fix & rename RuntimeCall back to Call for now * small fixes * more renaming * a bit more renaming * fmt * small fix * commit * prep for renaming associated types * fix * rename associated Event type * rename to RuntimeEvent * commit * merge conflict fixes & fmt * additional renaming * fix. * fix decl_event * rename in tests * remove warnings * remove accidental rename * . * commit * update .stderr * fix in test * update .stderr * TRYBUILD=overwrite * docs * fmt * small change in docs * rename PalletEvent to Event * rename Call to RuntimeCall * renamed at wrong places :P * rename Call * rename * rename associated type * fix * fix & fmt * commit * frame-support-test * passing tests * update docs * rustdoc fix * update .stderr * wrong code in docs * merge fix * fix in error message * update .stderr * docs & error message * . * merge fix * merge fix * fmt * fmt * merge fix * more fixing * fmt * remove unused * fmt * fix Co-authored-by: Shawn Tabrizi <[email protected]>
-
- Sep 08, 2022
-
-
Boluwatife Bakre authored
* Edit to Assets. parameter_types * fixes * Test Fixes. WIP * Edits to pallet-aura * Camel Case Co-authored-by: Kian Paimani <[email protected]> * Implementation of mutate fn * update to pallet-aura * Update to frame-system. Fixes * Update to frame-support-test. CamelCases * Updates to frame- contracts, offences, staking, bounties, child bounties * Edit to mutate fn. Changes to frame-contracts. CamelCase pallet-aura * Edits to frame-contracts & executive * cargo +nightly fmt * unused import removed * unused import removed * cargo +nightly fmt * minor adjustment * updates * updates * cargo +nightly fmt * cargo +nightly fmt * take fn implemented * update * update * Fixes to CallFilter * cargo +nightly fmt * final fixes * Default changed to $value * Update frame/support/src/lib.rs Co-authored-by: Kian Paimani <[email protected]>
-
- Sep 02, 2022
-
-
Shawn Tabrizi authored
* update api * update * remove unused * remove `one` api * fix unused * fmt * add saturating accrue * remove `Weight::new()` * use some macros * div makes no sense * Update weight_v2.rs * missed some * more patch * fixes * more fixes * more fix * more fix * remove RefTimeWeight * Update frame/contracts/src/storage.rs Co-authored-by: Alexander Theißen <[email protected]> * not needed * Fixes Co-authored-by: Alexander Theißen <[email protected]> Co-authored-by: Keith Yeung <[email protected]>
-
- Sep 01, 2022
-
-
Oliver Tale-Yazdi authored
* Add StorageNoopGuard Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Fix import Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Fix feature gate Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Fix feature gate Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Use sp-std Signed-off-by: Oliver Tale-Yazdi <[email protected]> Signed-off-by: Oliver Tale-Yazdi <[email protected]>
-
- Aug 31, 2022
-
-
Shawn Tabrizi authored
* initial idea * update frame_support * update a bunch more * add ord * adjust RuntimeDbWeight * frame_system builds * re-export * frame_support tests pass * frame_executive compile * frame_executive builds * frame_system tests passing * pallet-utility tests pass * fix a bunch of pallets * more * phragmen * state-trie-migration * scheduler and referenda * pallet-election-provider-multi-phase * aura * staking * more * babe * balances * bunch more * sudo * transaction-payment * asset-tx-payment * last pallets * fix alliance merge * fix node template runtime * fix pallet-contracts cc @athei * fix node runtime * fix compile on runtime-benchmarks feature * comment * fix frame-support-test * fix more tests * weight regex * frame system works * fix a bunch * more * more * more * more * more * more fixes * update templates * fix contracts benchmarks * Update lib.rs * Update lib.rs * fix ui * make scalar saturating mul const * more const functions * scalar div * refactor using constant functions * move impl * fix overhead template * use compactas * Update lib.rs
-
- Aug 24, 2022
-
-
Keith Yeung authored
* Implement ResultQuery * Fix test expectations * Add more tests * Fix test expectations * Clean up some names * Silence warnings * Specify error type when supplying error type to ResultQuery * cargo fmt * Add support for type parameters in parameter_types macro * Reduce deeply indented code * Fixes * Update test expectation * Rewrite and document formula for calculating max storage size * More docs * cargo fmt * formatting Co-authored-by: parity-processbot <>
-
- Aug 14, 2022
-
-
Kian Paimani authored
* flratten AllPallets types * feature flag it * fix * fix * fmt * remove todo * Update frame/support/src/traits/metadata.rs Co-authored-by: Bastian Köcher <[email protected]> * Update frame/support/src/migrations.rs Co-authored-by: Bastian Köcher <[email protected]> * fix * mark as deprecated * add docs * fix ui test? * fmt Co-authored-by: parity-processbot <> Co-authored-by: Bastian Köcher <[email protected]>
-
- Jul 17, 2022
-
-
lumir-mrkva authored
-
- Jun 13, 2022
-
-
Keith Yeung authored
* Move bounded type definitions to sp-runtime * cargo fmt * Fix compile error Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Move TryCollect to sp-runtime * Write some docs * Import missing types Co-authored-by: Oliver Tale-Yazdi <[email protected]>
-
Oliver Tale-Yazdi authored
* MEL bound state-trie-migration Signed-off-by: Oliver Tale-Yazdi <[email protected]> * wip Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Add tests Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Use sp_std Co-authored-by: cheme <[email protected]> * Add doc Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Set MaxKeyLen default to 512 Just to be sure that it will work. There is also no real penalty from over-estimating it. Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Add more doc Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Clippy Signed-off-by: Oliver Tale-Yazdi <[email protected]> * fmt Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Fix assert_err_with_weight macro Looks like I'm the only one using it anyway... Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Fix tests that use env macro Signed-off-by: Oliver Tale-Yazdi <[email protected]> * Fix test Signed-off-by: Oliver Tale-Yazdi <[email protected]> Co-authored-by: cheme <[email protected]>
-
- May 31, 2022
-
-
Gavin Wood authored
* Add stepped curve for referenda * Treasury SpendOrigin * Add tests * Better Origin Or-gating * Reciprocal curve * Tests for reciprical and rounding in PerThings * Tweaks and new quad curve * Const derivation of reciprocal curve parameters * Remove some unneeded code * Actually useful linear curve * Fixes * Provisional curves * Rejig 'turnout' as 'support' * Use TypedGet * Fixes * Enable curve's ceil to be configured * Formatting * Fixes * Fixes * Fixes * Remove EnsureOneOf * Fixes * Fixes * Fixes * Formatting * Fixes * Update frame/support/src/traits/dispatch.rs Co-authored-by: Kian Paimani <[email protected]> * Grumbles * Formatting * Fixes * APIs of VoteTally should include class * Fixes * Fix overlay prefix removal result * Second part of the overlay prefix removal fix. * Formatting * Fixes * Add some tests and make clear rounding algo * Fixes * Formatting * Revert questionable fix * Introduce test for kill_prefix * Fixes * Formatting * Fixes * Fix possible overflow * Docs * Add benchmark test * Formatting * Update frame/referenda/src/types.rs Co-authored-by: Keith Yeung <[email protected]> * Docs * Fixes * Use latest API in tests * Formatting * Whitespace * Use latest API in tests Co-authored-by: Kian Paimani <[email protected]> Co-authored-by: Keith Yeung <[email protected]>
-
- May 29, 2022
-
-
Gavin Wood authored
* Fix overlay prefix removal result * Second part of the overlay prefix removal fix. * Report only items deleted from storage in clear_prefix * Fix kill_prefix * Formatting * Remove unused code * Fixes * Fixes * Introduce clear_prefix host function v3 * Formatting * Use v2 for now * Fixes * Formatting * Docs * Child prefix removal should also hide v3 for now * Fixes * Fixes * Formatting * Fixes * apply_to_keys_whle takes start_at * apply_to_keys_whle takes start_at * apply_to_keys_whle takes start_at * Cursor API; force limits * Use unsafe deprecated functions * Formatting * Fixes * Grumbles * Fixes * Docs * Some nitpicks
🙈 * Update primitives/externalities/src/lib.rs Co-authored-by: Bastian Köcher <[email protected]> * Formatting * Fixes * cargo fmt * Fixes * Update primitives/io/src/lib.rs Co-authored-by: Keith Yeung <[email protected]> * Formatting * Fixes Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Keith Yeung <[email protected]>
-
- May 23, 2022
-
-
Keith Yeung authored
* Introduce #[pallet::call_index] attribute to dispatchables * cargo fmt * Add more docs and prevent duplicates of call indices * Add UI test for conflicting call indices * cargo fmt Co-authored-by: parity-processbot <>
-
- May 17, 2022
-
-
Bastian Köcher authored
* generate_storage_alias: Rewrite as proc macro attribute This rewrites the `generate_storage_alias!` declarative macro as proc-macro attribute. While doing this the name is changed to `storage_alias`. The prefix can now also be the name of a pallet. This makes storage aliases work in migrations for all kind of chains and not just for the ones that use predefined prefixes. * Fix compilation and FMT * Moare fixes *
🤦 * ...... * Rework the syntax and support instancing * FMT * Prefix variants with `Storage` * Make it compile * Fix where clause on rust stable -
Qinxuan Chen authored
* frame_support::pallet_prelude: reexport StorageVersion Signed-off-by: koushiro <[email protected]> * cargo fmt Signed-off-by: koushiro <[email protected]>
-
- Apr 30, 2022
-
-
Falco Hirschenberger authored
* Apply some clippy hints * Revert clippy ci changes * Update client/cli/src/commands/generate.rs Co-authored-by: Bastian Köcher <[email protected]> * Update client/cli/src/commands/inspect_key.rs Co-authored-by: Bastian Köcher <[email protected]> * Update client/db/src/bench.rs Co-authored-by: Bastian Köcher <[email protected]> * Update client/db/src/bench.rs Co-authored-by: Bastian Köcher <[email protected]> * Update client/service/src/client/block_rules.rs Co-authored-by: Bastian Köcher <[email protected]> * Update client/service/src/client/block_rules.rs Co-authored-by: Bastian Köcher <[email protected]> * Update client/network/src/transactions.rs Co-authored-by: Bastian Köcher <[email protected]> * Update client/network/src/protocol.rs Co-authored-by: Bastian Köcher <[email protected]> * Revert due to missing `or_default` function. * Fix compilation and simplify code * Undo change that corrupts benchmark. * fix clippy * Update client/service/test/src/lib.rs Co-authored-by: Bastian Köcher <[email protected]> * Update client/state-db/src/noncanonical.rs Co-authored-by: Bastian Köcher <[email protected]> * Update client/state-db/src/noncanonical.rs remove leftovers! * Update client/tracing/src/logging/directives.rs Co-authored-by: Bastian Köcher <[email protected]> * Update utils/fork-tree/src/lib.rs Co-authored-by: Bastian Köcher <[email protected]> * added needed ref * Update frame/referenda/src/benchmarking.rs * Simplify byte-vec creation * let's just not overlap the ranges * Correction * cargo fmt * Update utils/frame/benchmarking-cli/src/shared/stats.rs Co-authored-by: Bastian Köcher <[email protected]> * Update utils/frame/benchmarking-cli/src/pallet/command.rs Co-authored-by: Bastian Köcher <[email protected]> * Update utils/frame/benchmarking-cli/src/pallet/command.rs Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Giles Cope <[email protected]>
-
- Apr 27, 2022
-
-
Zeke Mostov authored
* Update frame/nomination-pools/src/lib.rs Co-authored-by: Kian Paimani <[email protected]> * Add admin roles and make some calls permissionless * Destroy pool in withdraw unbonded * Add docs on pool admin * Fixup tests * Test unbond_other permissionless scenarios * Test withdraw unbonded permissionless * Test only can join open pools * Move unsafe set state to mock * Test: nominate_works * Add bounds: MinJoinBond, MinCreateBond, MaxPools * Test MinCreateBond, MinJoinBond, MaxPools * Add post checks to tests * Remove some TODOs * Setup weight infrastructure * Benchmark claim_payout * Benchmark create * Benchmark nominate * Benchmark join * Benchmark unbond_other * Refactor join benchmark to use scenario setup * Clean up and address warnings * Basic withdraw unbonded benchmarks * Refactor nominate benchmark * Refactor claim payout * Add feature sp-staking/runtime-benchmarks * Get node runtime to compile * Get node to run * Make claim_payout bench work with node * Make pool_withdraw_unbonded bench work with node * Make withdraw_unbonded_other work with node runtime' * Make create benchmark work with node * Make nominate benchmark work with node runtime * WiP new benchmark crate * Implement initial mock for benchmarks * Establish benchmark setup logic * Get claim payout and nominate benchmarks working * Remove pool bench utils; make struct fields pub insteaad * Get more benchmarks to work; trim interface trait * Some more top level docs * Finish tranistion benchmarks to crate * Hook up benchmark pallet to node runtime * Get benches to work with node runtime * cargo run --quiet --profile=production --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_nomination_pools --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/nomination-pools/src/weights.rs --template=./.maintain/frame-weight-template.hbs * Benchmark withdraw_unbonded_other_kill * Delete old benchmarking files * Refunds for withdraw_unbonded * Remove some TODOs * 'Don't return an option for the current_era' * Streamline extrinsic docs * small docs tweaks * Refactor ledger::slash * Add on_slash impl for nomination pools * slash refactor wip * WIP slash working * DRY Ledger::stash * Fix slash saturation * Remove unused param from slash * Docs and warnings * Test ledger::slash * save progress * Introduce counter for delegators * Add tests for max delegator errors * Reproducible account ids * Adapt tests to new account id format * Simplify create_accounts api * Fix staking tests * Save PerBill slash impl before removing * Rever ledger slash test * Get node runtime to work * Organize sub pools by unbond era, not curren era * staking: Proportional ledger slashing * Some comment cleanup * Add more test post checks * Update frame/staking/src/pallet/mod.rs Co-authored-by: Kian Paimani <[email protected]> * Tests: account for storing unbond era * Improve docs for staking interface * Add events Created, Destroyed * withdraw_unbonded: Remove useless withdraw dust check * Test: withdraw_unbonded_other_handles_faulty_sub_pool_accounting * Add extrinsics: set_state_other, set_metadata * Test: set_state_other_works * Test: set_metadata_works * Add benchmarks for set_state_other, set_metadata * Fix benchmarks * Add weight info for new extrinsics * Some feedback * duo feedback * Incorporate some more feedback * integrate more kian feedback * integrate more kian feedback * More improvements * Add destroying_mul * Make do_reward_payout take refs * Remove some TODOs * Add test for saturating * feedback * Fix join test * use `inner` for nested types in nomination pools (#11030) * Use nested inner type for pool * make tests and benchmarks work * remove feat * all tests work now * fix node-runtime * nomination-pools: update benches for new account format (#11033) * Update benches to new account format * More sensible seeds * bring back rward account sanity check * Comment * Add extrinsic set_configs (#11038) * Better sanity checks for nomination pools (#11042) * new sanity checks, few other changes * Update frame/nomination-pools/src/lib.rs Co-authored-by: Zeke Mostov <[email protected]> * nomination-pools: Fix state event regression + benches (#11045) * new sanity checks, few other changes * Fix benches, improve sanity check * Remove useless clear storage in benchmarking * Set state * Save * Doc * Update frame/nomination-pools/src/lib.rs Co-authored-by: kianenigma <[email protected]> * FMT * Try fill in all staking configs * Fix build * More changes to nomination pools (#11050) * new sanity checks, few other changes * some last touches as a whole * Apply suggestions from code review * Remove redundant event * Improve unbond_other error handling * Remove comment Co-authored-by: Zeke Mostov <[email protected]> Co-authored-by: emostov <[email protected]> * Remove sanity module and some TODOs * round of feedback and imp from kian * Add TODO for ED QoL at reward pool creation * Make sure reward pool never gets dusted * Improve error type * demonstrate per_thing usage * Update sanity check & fix create_works * Improve test ext pool creation & fix some more tests * Try revert * Revert "Try revert" This reverts commit c044c94730e1a370eecd8f5b2c4f632835913063. * Revert "Improve test ext pool creation & fix some more tests" This reverts commit 1e862a64a7423479260c6e5ad1bd4c8c95651f3a. * Revert "Update sanity check & fix create_works" This reverts commit 568a7b727687e4d585e2796afc638df97b83c632. Roll back reward account funding * Revert "Improve error type" This reverts commit 4b993ee601a037e7a44e4a49bbfd60cf45b38b78. * Revert "Make sure reward pool never gets dusted" This reverts commit e7a3eb45bdfd156d3f6d94d194e988032ebbc593. revert * Update some tests * FMT * Test that era offset works correctly * Update mocks * Remove unnescary docs * Doc updates * Update calculate_delegator_payout_works_with_a_pool_of_1 * Fix test: claim_payout_works * do_reward_payout_correctly_sets_pool_state_to_destroying * Remove test do_reward_payout_errors_correctly * Fix test: do_reward_payout_works * Fix test: create_errors_correctly * Fix test: create works * Fix test: unbond_other_of_3_works * Ensure that ED is transferred into reward pool upon creation * WIP pool lifecycle test * Fix benchmarks * Add sanity check for ED + reward pools * `bond_extra` for nomination pools (#11100) * bond_extra for nomination pools * Update frame/nomination-pools/src/lib.rs * Update frame/nomination-pools/src/lib.rs * Update frame/nomination-pools/src/lib.rs Co-authored-by: Zeke Mostov <[email protected]> * Update frame/nomination-pools/src/lib.rs Co-authored-by: Zeke Mostov <[email protected]> * add benchmarks * remove the min logic of bond_extra Co-authored-by: Zeke Mostov <[email protected]> * FMT * Update frame/nomination-pools/src/lib.rs Co-authored-by: Kian Paimani <[email protected]> * Update frame/nomination-pools/src/lib.rs Co-authored-by: Kian Paimani <[email protected]> * Update frame/nomination-pools/src/lib.rs Co-authored-by: Kian Paimani <[email protected]> * Update frame/nomination-pools/src/lib.rs Co-authored-by: Kian Paimani <[email protected]> * make it compile end to end * Update some type viz * Update kick terminology * Update frame/nomination-pools/src/lib.rs Co-authored-by: Kian Paimani <[email protected]> * Update frame/nomination-pools/src/lib.rs * Cache bonded account when creating pool * Add bond extra weight stuff * Update frame/nomination-pools/src/lib.rs Co-authored-by: Kian Paimani <[email protected]> * Update docs for pool withdraw unbonded * Update docs for unbond * Improve Doc * Update frame/nomination-pools/src/lib.rs Co-authored-by: Oliver Tale-Yazdi <[email protected]> * Update frame/nomination-pools/Cargo.toml Co-authored-by: Oliver Tale-Yazdi <[email protected]> * Update frame/nomination-pools/src/lib.rs Co-authored-by: Oliver Tale-Yazdi <[email protected]> * Update frame/nomination-pools/src/lib.rs Co-authored-by: Oliver Tale-Yazdi <[email protected]> * Update frame/nomination-pools/src/lib.rs Co-authored-by: Oliver Tale-Yazdi <[email protected]> * Improve Docs * Some docs improvements * fmt * Remove unlock_era * Fix accidental frame-support regression * Fix issue with transactions in tests * Fix doc links * Make sure result in test is used * Update frame/nomination-pools/src/lib.rs Co-authored-by: Oliver Tale-Yazdi <[email protected]> * Fix can toggle state * Account for new_funds in ok to be open * Update docs: ok_to_withdraw_unbonded_other_with * Update frame/nomination-pools/src/lib.rs Co-authored-by: Oliver Tale-Yazdi <[email protected]> * Update frame/nomination-pools/src/lib.rs Co-authored-by: Oliver Tale-Yazdi <[email protected]> * Remove some staking comments * Rename SubPoolsWithEra to UnbondingPoolsWithEra * Use validators length for benchmarks * Use metadata length for benchmarks * Remove debug assert eq * docs * Fix test: withdraw_unbonded_other_errors_correctly * Fix check for having enough balance to create the pool * Bond event for pool creation * Ok to be open * FMT * Remove _other postfix * Update frame/staking/src/lib.rs * Adjust tests to account for only remove when < ED * Remove stale TODOs * Remove dupe test * Fix build * Make sure to convert to u256 so we don't saturate * Refund depositor with reward pool fee * FMT * Remove reachable defensive * Use compact encoding for relevant extrinsics * Remove unnescary make_free_be for cleaning reward account * Add not to maintainers for reward account accounting * Remove note to maintainers from public doc * Make sure all configs have currency balance * Avoid saturation in balance_to_unbond * Partial Unbonding for Nomination Pools (#11212) * first draft of partial unbonding for pools * remove option * Add some more tests and fix issues * Fix all tests * simplify some tests * Update frame/nomination-pools/src/mock.rs * remove clone * rename to delegator_unbonding_eras * Update frame/nomination-pools/src/tests.rs Co-authored-by: Zeke Mostov <[email protected]> * Update frame/nomination-pools/src/tests.rs Co-authored-by: Zeke Mostov <[email protected]> * Update frame/nomination-pools/src/tests.rs Co-authored-by: Zeke Mostov <[email protected]> * remove pub * Update frame/nomination-pools/src/lib.rs Co-authored-by: Zeke Mostov <[email protected]> * Update frame/nomination-pools/src/lib.rs Co-authored-by: Zeke Mostov <[email protected]> * undo * Update frame/nomination-pools/src/lib.rs Co-authored-by: Zeke Mostov <[email protected]> * Update frame/nomination-pools/src/lib.rs Co-authored-by: Zeke Mostov <[email protected]> * leftovers * fix invariant * Fix the depositor assumption * round of self-review * little bit more cleanup * Update frame/nomination-pools/src/mock.rs * Apply suggestions from code review * Update frame/nomination-pools/src/lib.rs Co-authored-by: Zeke Mostov <[email protected]> * Fix interpretation of MinCreateBond * controvesial refactor * rename * make everything build * add TODO about killing the reward account * Update frame/nomination-pools/src/lib.rs Co-authored-by: Zeke Mostov <[email protected]> * Update frame/nomination-pools/src/lib.rs * last self-review Co-authored-by: Zeke Mostov <[email protected]> * Update Cargo.lock * Rename Delegator to PoolMember * fmt * Get runtime to build with runtime-benchmarks feature * Update Cargo.lock * Fix asserts to work in more scenarios * gte not gt * cargo run --quiet --profile=production --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark pallet --chain=dev --steps=50 --repeat=20 --pallet=pallet_nomination_pools --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/nomination-pools/src/weights.rs --template=./.maintain/frame-weight-template.hbs * Update frame/staking/src/mock.rs * Update frame/nomination-pools/src/lib.rs * Update frame/staking/src/slashing.rs * Apply suggestions from code review * fmt * Fix some tests Co-authored-by: Kian Paimani <[email protected]> Co-authored-by: Parity Bot <[email protected]> Co-authored-by: kianenigma <[email protected]> Co-authored-by: Oliver Tale-Yazdi <[email protected]> Co-authored-by: Shawn Tabrizi <[email protected]>
-
- Apr 16, 2022
-
-
Sasha Gryaznov authored
Add `frame_support::crypto::ecdsa::Public.to_eth_address()` (`k256`-based) and use it in pallets (#11087) * `ecdsa::Public::to_eth_address` + test, beefy-mmr `convert()` to use it, contracts Ext interface * `seal_ecdsa_to_eth_address` all but benchmark done * `seal_ecdsa_to_eth_address` + wasm test * `seal_ecdsa_to_eth_address` + benchmark * fixed dependencies * Apply suggestions from code review Co-authored-by: Alexander Theißen <[email protected]> * fixes from review #1 * ecdsa::Public(*pk).to_eth_address() moved to frame_support and contracts to use it * beefy-mmr to use newly added frame_support function for convertion * a doc fix * import fix * benchmark fix-1 (still fails) * benchmark fixed * Apply suggestions from code review Co-authored-by: Alexander Theißen <[email protected]> * fixes on Alex T feedback * to_eth_address() put into extension trait for sp-core::ecdsa::Public * Update frame/support/src/crypto/ecdsa.rs Co-authored-by: Alexander Theißen <[email protected]> * Update frame/contracts/src/wasm/mod.rs Co-authored-by: Alexander Theißen <[email protected]> * fixes on issues pointed out in review * benchmark errors fixed * fmt fix * EcdsaRecoverFailed err docs updated * Apply suggestions from code review Co-authored-by: Bastian Köcher <[email protected]> * make applied suggestions compile * get rid of unwrap() in runtime * Remove expect Co-authored-by: Alexander Theißen <[email protected]> Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Bastian Köcher <[email protected]>
-
- Apr 03, 2022
-
-
Qinxuan Chen authored
Because `TryInto`/`TryFrom` are in prelude by default from edition 2021 Signed-off-by: koushiro <[email protected]>
-