Skip to content
  1. Feb 21, 2023
  2. Feb 14, 2023
  3. Feb 09, 2023
    • Roman Useinov's avatar
      [Fix] Try-state feature-gated for BagsList (#13296) · 03e9f43f
      Roman Useinov authored
      
      
      * [Fix] Try-state feature-gated for BagsList
      
      * fix comment
      
      * fix try_state remote-tests
      
      * feature-gate try-state remote test for bags-list
      
      * remove try-state from a migration
      
      * more SortedListProvider fixes
      
      * more fixes
      
      * more fixes to allow do_try_state usage in other crates
      
      * do-try-state for fuzz
      
      * more fixes
      
      * more fixes
      
      * remove feature-flag
      
      * do-try-state
      
      * fix review comments
      
      * Update frame/bags-list/src/mock.rs
      
      Co-authored-by: default avatarAnton <[email protected]>
      
      ---------
      
      Co-authored-by: parity-processbot <>
      Co-authored-by: default avatarAnton <[email protected]>
      03e9f43f
  4. Jan 29, 2023
  5. Jan 27, 2023
  6. Jan 26, 2023
  7. Jan 09, 2023
    • Gonçalo Pestana's avatar
      EPM and staking events improvement (#13035) · fcdd8a88
      Gonçalo Pestana authored
      * EPM and staking events improvement
      
      * Uses RawOrigin in ElectionCompute event
      
      * Refactors new phase events to PhaseTransition event
      
      * PhaseTransitioned and remove RawOrigin from event
      
      * Adds helpers for epm phase transition and staking force new
      
      * addresses review comments
      
      * nit: removes unecessary clone
      
      * fixes benchmarks
      
      Co-authored-by: parity-processbot <>
      fcdd8a88
    • Ankan's avatar
      add note on usage of twox hash (#13089) · 8f7971dc
      Ankan authored
      8f7971dc
  8. Jan 07, 2023
  9. Jan 03, 2023
    • Ankan's avatar
      Use #[pallet::storage_version] for pallet staking (#12728) · 169cbc69
      Ankan authored
      * delete releases
      
      * use standard pallet storage version
      
      * migrate to standard storage version for staking
      
      * not compiling
      
      * keep old releases enum around for decoding
      
      * fix releases
      
      * rename old releases
      
      * retriggering ci
      
      * fix migration comments
      
      * doc update
      
      Co-authored-by: parity-processbot <>
      169cbc69
  10. Dec 26, 2022
  11. Dec 23, 2022
    • Kian Paimani's avatar
      Fix fast-unstake for accounts with slashing (#12963) · 70e9f8e9
      Kian Paimani authored
      
      
      * Fix fast-unstake for accounts with slashing
      
      * ".git/.scripts/fmt.sh" 1
      
      * fmt
      
      * fix
      
      * fix weight tracking
      
      * Adds tests for withdraw_unbonded with slashing
      
      * Removes tests for withdraw_unbonded with slashing
      
      * ".git/.scripts/fmt.sh"
      
      * Adds slash spans calculation test for withdraw_unbonded
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatargpestana <[email protected]>
      70e9f8e9
  12. Dec 15, 2022
    • Gonçalo Pestana's avatar
      Automatic `withdraw_unbonded` upon `unbond` (#12582) · 8e120489
      Gonçalo Pestana authored
      
      
      * Prevents max unbonding chunk slots from being filled when unbonding in the staking pallet
      
      * hardcode num_slashing to unlock chunks automatically
      
      * refactor withdraw logic to do_withdraw; idiomatic rust improvements
      
      * a
      
      * callable unbond() to return a DispatchWithPostInfo to dynamically update the consumed weight
      
      * refunds overpaid fees when unbond with withdraw
      
      * fetches real slashing spans before withdrawal call
      
      * nits
      
      * addresses PR comments
      
      * Adds more testing
      
      * fixes doc comments
      
      * Fixes weight refunding logic for fn unbond
      
      * generalizes  to return used weight or dispatch error
      
      * Update frame/staking/src/pallet/mod.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Update frame/staking/src/pallet/mod.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Addresses PR comments
      
      * Add comment to speculative num spans
      
      * adds missing add_slashing_spans in withdraw_unbonded_kill benchmarks
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_staking
      
      * fix publish
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      Co-authored-by: command-bot <>
      8e120489
  13. Dec 14, 2022
  14. Dec 13, 2022
    • Bastian Köcher's avatar
      Fixup some wrong dependencies (#12899) · c0c8d630
      Bastian Köcher authored
      * Fixup some wrong dependencies
      
      Dev dependencies should not appear in the feature list. If features are required, they should be
      directly enabled for the `dev-dependency`.
      
      * More fixups
      
      * Fix fix
      
      * Remove deprecated feature
      
      * Make all work properly and nice!!
      
      * FMT
      
      * Fix formatting
      c0c8d630
  15. Dec 12, 2022
  16. Dec 09, 2022
  17. Dec 08, 2022
    • Keith Yeung's avatar
      Introduce sensible weight constants (#12868) · 51db8c77
      Keith Yeung authored
      * Introduce sensible weight constants
      
      * cargo fmt
      
      * Remove unused import
      
      * Add missing import
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_lottery
      
      Co-authored-by: command-bot <>
      51db8c77
    • Anthony Alaribe's avatar
      Move LockableCurrency trait to fungibles::Lockable and deprecate LockableCurrency (#12798) · 9a014d1e
      Anthony Alaribe authored
      
      
      * WIP move LockableCurrency to fungibles
      
      * rename Lockable and LockIdentifier to funginbles::*
      
      * fix imports further
      
      * change Lockable from fungible to fungibles
      
      * reintroduce LockableCurrency but marked as deprecated
      
      * fix imports
      
      * fix imports
      
      * cargo fmt
      
      * add allow deprecated warnings
      
      * remove unused benchmark import
      
      * fix some of the docs
      
      * fix failing doctest check
      
      * reexport LockIdentifier and LockableCurrency from support/traits
      
      * reexport LockIdentifier and LockableCurrency from support/traits
      
      * allow using deprecated re-export
      
      * replace LockableCurrency and LockIdentifier with a module alias
      
      * Update frame/support/src/traits/tokens/fungibles/lockable.rs
      
      * Update frame/staking/src/pallet/mod.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Update frame/support/src/traits.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * REVERT removing fungibles::Lockable import
      
      Co-authored-by: parity-processbot <>
      Co-authored-by: default avatarSquirrel <[email protected]>
      9a014d1e
  18. Nov 21, 2022
  19. Nov 09, 2022
    • Ankan's avatar
      Bound Election and Staking by MaxActiveValidators (#12436) · 657d9920
      Ankan authored
      
      
      * bounding election provider with kian
      
      * multi phase implement bounded election provider
      
      * election provider blanket implementation
      
      * staking compiles
      
      * fix test for election provider support
      
      * fmt
      
      * fixing epmp tests, does not compile yet
      
      * fix epmp tests
      
      * fix staking tests
      
      * fmt
      
      * fix runtime tests
      
      * fmt
      
      * remove outdated wip tags
      
      * add enum error
      
      * sort and truncate supports
      
      * comment
      
      * error when unsupported number of election winners
      
      * compiling wip after kian's suggestions
      
      * fix TODOs
      
      * remove,fix tags
      
      * ensure validator count does not exceed maxwinners
      
      * clean up
      
      * some more clean up and todos
      
      * handle too many winners
      
      * rename parameter for mock
      
      * todo
      
      * add sort and truncate rule if there are too many winners
      
      * fmt
      
      * fail, not swallow emergency result bound not met
      
      * remove too many winners resolution as it can be guaranteed to be bounded
      
      * fix benchmark
      
      * give MaxWinners more contextual name
      
      * make ready solution generic over T
      
      * kian feedback
      
      * fix stuff
      
      * Kian's way of solvign this
      
      * comment fix
      
      * fix compile
      
      * remove use of BoundedExecution
      
      * fmt
      
      * comment out failing integrity test
      
      * cap validator count increment to max winners
      
      * dont panic
      
      * add test for bad data provider
      
      * Update frame/staking/src/pallet/impls.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * fix namespace conflict and add test for onchain max winners less than desired targets
      
      * defensive unwrap
      
      * early convert to bounded vec
      
      * fix syntax
      
      * fmt
      
      * fix doc
      
      * fix rustdoc
      
      * fmt
      
      * fix maxwinner count for benchmarking
      
      * add instant election for noelection
      
      * fmt
      
      * fix compile
      
      * pr feedbacks
      
      * always error at validator count exceeding max winners
      
      * add useful error message
      
      * pr comments
      
      * import fix
      
      * add checked_desired_targets
      
      * fmt
      
      * fmt
      
      * fix rust doc
      
      Co-authored-by: parity-processbot <>
      Co-authored-by: default avatarkianenigma <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      657d9920
  20. Nov 08, 2022
    • Shawn Tabrizi's avatar
      New Weights for All Pallets (#12325) · 78cddd76
      Shawn Tabrizi authored
      * new weights for everything
      
      * fix
      
      * fmt
      
      * new batch
      
      * fmt
      
      * new batch
      
      * Update run_all_benchmarks.sh
      
      * add headers
      
      * update weights
      
      * Update lib.rs
      
      * block and extrinsic weight
      78cddd76
  21. Oct 29, 2022
  22. Oct 17, 2022
    • Ankan's avatar
      Execute try-state at end of each test to ensure pallet data integrity (#12453) · ca15fe7e
      Ankan authored
      * execute try-state at end of tests
      
      * run post condition only with try runtime
      
      * Revert "run post condition only with try runtime"
      
      This reverts commit 7db0ecf7eaa2ee5afa5a995487b73d023ba3bcd9.
      
      * voterlist contains validators as well
      
      * fmt
      
      * simplify
      
      * fmt
      
      Co-authored-by: parity-processbot <>
      ca15fe7e
  23. Oct 07, 2022
  24. Sep 28, 2022
  25. Sep 27, 2022
  26. Sep 24, 2022
  27. Sep 23, 2022
    • Kian Paimani's avatar
      Fast Unstake Pallet (#12129) · b56c0e4c
      Kian Paimani authored
      * add failing test for itamar
      
      * an ugly example of fast unstake
      
      * Revert "add failing test for itamar"
      
      This reverts commit 16c4d8015698a0684c090c54fce8b470a2d2feb2.
      
      * fast unstake wip
      
      * clean it up a bit
      
      * some comments
      
      * on_idle logic
      
      * fix
      
      * comment
      
      * new working version, checks all pass, looking good
      
      * some notes
      
      * add mock boilerplate
      
      * more boilerplate
      
      * simplify the weight stuff
      
      * ExtBuilder for pools
      
      * fmt
      
      * rm bags-list, simplify setup_works
      
      * mock + tests boilerplate
      
      * make some benchmarks work
      
      * mock boilerplate
      
      * tests boilerplate
      
      * run_to_block works
      
      * add Error enums
      
      * add test
      
      * note
      
      * make UnstakeRequest fields pub
      
      * some tests
      
      * fix origin
      
      * fmt
      
      * add fast_unstake_events_since_last_call
      
      * text
      
      * rewrite some benchmes and fix them -- the outcome is still strange
      
      * Fix weights
      
      * cleanup
      
      * Update frame/election-provider-support/solution-type/src/single_page.rs
      
      * fix build
      
      * Fix pools tests
      
      * iterate teset + mock
      
      * test unfinished
      
      * cleanup and add some tests
      
      * add test successful_multi_queue
      
      * comment
      
      * rm Head check
      
      * add TODO
      
      * complete successful_multi_queue
      
      * + test early_exit
      
      * fix a lot of things above the beautiful atlantic ocean 🌊
      
      
      
      * seemingly it is finished now
      
      * Fix build
      
      * ".git/.scripts/fmt.sh" 1
      
      * Fix slashing amount as well
      
      * better docs
      
      * abstract types
      
      * rm use
      
      * import
      
      * Update frame/nomination-pools/benchmarking/src/lib.rs
      
      Co-authored-by: default avatarNitwit <[email protected]>
      
      * Update frame/fast-unstake/src/types.rs
      
      Co-authored-by: default avatarNitwit <[email protected]>
      
      * Fix build
      
      * fmt
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      
      * make bounded
      
      * feedback from code review with Ankan
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/mock.rs
      
      * update to master
      
      * some final review comments
      
      * fmt
      
      * fix clippy
      
      * remove unused
      
      * ".git/.scripts/fmt.sh" 1
      
      * make it all build again
      
      * fmt
      
      * undo fishy change
      
      Co-authored-by: default avatarRoss Bulat <[email protected]>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarNitwit <[email protected]>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      b56c0e4c
  28. Sep 21, 2022
    • Ankan's avatar
      Bound staking storage items (#12230) · c6a9abcc
      Ankan authored
      
      
      * replace pallet level unboundedness to individual storage items
      
      * bound structs
      
      * bounding history depth
      
      * defensive error
      
      * use the era history depth from config
      
      * clean up history depth from storage in v11
      
      * keep the name HistoryDepth for the new configuration value
      
      * use u32 for history depth in node runtime
      
      * improve doc comments
      
      * add HistoryDepth to mock runtimes with pallet-staking
      
      * rustfmt
      
      * refactor and doc improve
      
      * apply re-benchmarked weight for staking
      
      * pr feedback improvements
      
      * test for claimed rewards following the expected bounds
      
      * refactor test to calculate first and last reward era programmatically
      
      * verify previous eras cannot be claimed
      
      * add migration v12
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_staking
      
      * fix compiler error
      
      * corrupting history depth does not lead to catastrophic issue
      
      * fix new line
      
      * remove unused import
      
      * fmt
      
      * add test to document scenario where history depth is reduced without migration
      
      * fmt
      
      * Update frame/staking/src/lib.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Update frame/staking/src/migrations.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * doc for all storage items bounded by HistoryDepth
      
      * Update frame/staking/src/pallet/mod.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Update frame/staking/src/tests.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * pr feedback fixes
      
      * Update frame/staking/src/tests.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * remove extra checks
      
      * fix merge
      
      * fmt
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      Co-authored-by: default avatarkianenigma <[email protected]>
      c6a9abcc
  29. Sep 20, 2022
    • Sergej Sakac's avatar
      BREAKING: Rename Origin (#12258) · e4b6f4a6
      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
      e4b6f4a6
  30. Sep 19, 2022
  31. Sep 18, 2022
    • Roman Useinov's avatar
      [Fix] Benchmark issue in staking (#12290) · 63c2e288
      Roman Useinov authored
      63c2e288
    • Roman Useinov's avatar
      [Feature] Part 1: add TargetList for validator ranking (#12034) · 1b24f562
      Roman Useinov authored
      
      
      * [Feature] Part 1: add TargetList for validator ranking
      
      * remove redundant todo
      
      * remove typo
      
      * cleanup
      
      * implement score
      
      * more fixes
      
      * fix thresholds
      
      * fmt
      
      * Remove the stuff that has to come in the next PR, some fixes
      
      * extended balance import
      
      * Change all the references from VoteWeight to Self::Score
      
      * Add a migration for VoterBagsList
      
      * fix score
      
      * add targetList to nomination-pools tests
      
      * fix bench
      
      * address review comments
      
      * change get_npos_targets
      
      * address more comments
      
      * remove thresholds for the time being
      
      * fix instance reference
      
      * VoterBagsListInstance
      
      * reus
      
      * remove params that are not used yet
      
      * Introduced pre/post upgrade try-runtime checks
      
      * fix
      
      * fixes
      
      * fix migration
      
      * fix migration
      
      * fix post_upgrade
      
      * change
      
      * Fix
      
      * eloquent PhantomData
      
      * fix PD
      
      * more fixes
      
      * Update frame/staking/src/pallet/impls.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * is_nominator now works
      
      * fix test-staking
      
      * build fixes
      
      * fix remote-tests
      
      * Apply suggestions from code review
      
      Co-authored-by: parity-processbot <>
      Co-authored-by: default avatarkianenigma <[email protected]>
      Co-authored-by: default avatarSquirrel <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      1b24f562