Skip to content
  1. Apr 15, 2022
    • Georges's avatar
      Companion for Adding benchmarking for new `frame_election_provider_support` #11149 (#5241) · a74c527d
      Georges authored
      
      
      * `GenesisElectionOf` after changes to substrate
      
      * Benchmarking for `frame_election_provider_support`
      
      * Introducing `OnChainSeqPhragmen` after changes
      to substrate.
      Pallet renaming in substrate
      
      * Fixing `test-runtime`
      
      * Use `UnboundedExecution` after change to substrate
      
      * update lockfile for {"substrate"}
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark pallet --chain=polkadot-dev --steps=50 --repeat=20 --pallet=frame_election_provider_support --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/polkadot/src/weights/
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark pallet --chain=kusama-dev --steps=50 --repeat=20 --pallet=frame_election_provider_support --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark pallet --chain=westend-dev --steps=50 --repeat=20 --pallet=frame_election_provider_support --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
      
      Co-authored-by: parity-processbot <>
      Co-authored-by: default avatarParity Bot <[email protected]>
      a74c527d
  2. Apr 13, 2022
  3. Apr 12, 2022
    • Tsvetomir Dimitrov's avatar
      Add staging runtime api (#5048) · fd020c07
      Tsvetomir Dimitrov authored
      * Move `trait ParachainHost` to a separate version independent module
      
      `trait ParachainHost` is no longer part of a specific primitives
      version. Instead there is a single trait for stable and staging api
      versions. The trait contains stable AND staging methods. The latter are
      explicitly marked as unstable.
      
      * Fix `use` primitives
      
      `polkadot_primitives::v2` becomes `polkadot_primitives::runtime_api`
      
      * Staging API declaration and stubs
      
      Introduces the concept for 'staging functions' in runtime API. These
      functions are still in testing and they are meant to be used only
      within test networks (Westend).
      They coexist with the stable calls for technical reasons - maintaining
      different runtime APIs for different networks is hard to implement.
      
      Check the doc comments in source files for more details how the staging
      API should be used.
      
      * Add new staging method - get_session_disputes()
      
      Add `staging_get_session_disputes` to `ParachainHost` as the first
      method of the staging API.
      
      * Hide vstaging runtime api implementations  behind feature flag
      
      * Fix test runtime
      
      * fn staging_get_session_disputes() is renamed to fn staging_get_disputes()
      fd020c07
  4. Apr 08, 2022
  5. Apr 07, 2022
  6. Apr 01, 2022
  7. Mar 26, 2022
    • Georges's avatar
      Adding `Fallback` on election failure (#5093) · 7793796b
      Georges authored
      
      
      * Adding `Fallback` on election failure
      Use the newly introduced `BoundedOnChainSequentialPhragmen`
      and `UnboundedOnChainSequentialPhragmen`
      
      * Adding `BoundedOnchainExecution`
      after changes in substrate
      
      * Introducing `ExecutionConfig`
      from `frame_election_provider_support::onchain`
      
      * `OnChainSequentialPhragmen` > `OnChainSeqPhragmen`
      Renaming to have a shorter name
      
      * `BoundedOnchainExecution` -> `BoundedExecution`
      And `UnboundedOnchainExecution` -> `UnboundedExecution`
      
      * `Fallback` back to `NoFallback`
      `UnboundedExecution` for `GovernanceFallback`
      
      * Update runtime/test-runtime/src/lib.rs
      
      * update lockfile for {"substrate"}
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      Co-authored-by: parity-processbot <>
      7793796b
  8. Mar 23, 2022
  9. Mar 19, 2022
  10. Mar 16, 2022
  11. Mar 15, 2022
  12. Mar 14, 2022
  13. Mar 12, 2022
  14. Mar 11, 2022
  15. Mar 10, 2022
  16. Mar 09, 2022
    • asynchronous rob's avatar
      Finish migration to v2 primitives (#5037) · 49f7e5cc
      asynchronous rob authored
      * remove v0 primitives from polkadot-primitives
      
      * first pass: remove v0
      
      * fix fallout in erasure-coding
      
      * remove v1 primitives, consolidate to v2
      
      * the great import update
      
      * update runtime_api_impl_v1 to v2 as well
      
      * guide: add `Version` request for runtime API
      
      * add version query to runtime API
      
      * reintroduce OldV1SessionInfo in a limited way
      49f7e5cc
  17. Mar 08, 2022
    • Keith Yeung's avatar
      Add missing XCM benchmarks for ReserveAssetDeposited (#4923) · 5f349783
      Keith Yeung authored
      
      
      * Add missing XCM benchmarks for ReserveAssetDeposited
      
      * Check whether checking account is zero before minting
      
      * Try and prevent overflow
      
      * Remove minting currencies into the checking account
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::fungible --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/westend/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs
      
      * Use a smaller divisor
      
      * Mint a smaller amount still
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::fungible --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/westend/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs
      
      * Remove logic for minting assets to the checking account
      
      * Configure a smaller amount of reserve asset used for testing
      
      * Try unwrapping the result of an execution
      
      * Set the origin properly
      
      * Revert "Set the origin properly"
      
      This reverts commit c748a05733173fb7072878c19b10a583675a5f54.
      
      * Update license year
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::fungible --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/westend/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs
      
      * Update license year
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      5f349783
  18. Mar 07, 2022
    • ordian's avatar
      runtime/westend: add disputes (#5046) · dc25b326
      ordian authored
      
      
      * runtime/westend: add disputes
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=polkadot-dev --steps=50 --repeat=20 --pallet=runtime_parachains::disputes --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/polkadot/src/weights/runtime_parachains_disputes.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::disputes --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_disputes.rs
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      dc25b326
  19. Mar 02, 2022
  20. Feb 26, 2022
    • Falco Hirschenberger's avatar
      Add benchmarking for parachain runtime `ump` pallet (#3889) · fc919376
      Falco Hirschenberger authored
      
      
      * Claim grounds, not working yet.
      
      * still wip, nothing to see
      
      * Module visibility problem
      
      * Add benchmarks for all parachain-enabled chains
      
      * Add missing mock weights
      
      * Fix mock weight info
      
      * Add max-weight to extrinsic weight
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_ump.rs
      
      * sorting declarations
      
      * Use a maximum size message to benchmark worst-case
      
      * remove warning
      
      * Fix msg size overflow in tests
      
      * Use benchmarked weight in PostInfo
      
      * Update runtime/parachains/src/ump.rs
      
      Co-authored-by: default avatarAlexander Popiak <[email protected]>
      
      * Delete obsolete file
      
      * Compile fix
      
      * Fix spelling
      
      * Add benchmark for `UmpSink::process_upward_message`
      
      It benchmarks the time to process a message, mainly the size-dependent
      decoding time. This is used interally for refunding weight from
      `service_overweight`
      
      * Fix warning
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_ump.rs
      
      * Update runtime/parachains/src/ump.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Give mock weights for tests a name instead of ()
      
      * Add benchmark for `initializer_on_new_session` aka.
      `perform_outgoing_para_cleanup`
      
      * Remove unnescessary pub specifier and change folding to a for loop
      
      suggestions by @pepyakin
      
      
      
      * Update runtime/parachains/src/ump.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Update runtime/parachains/src/ump.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Add comment on weight calculation and expected slight overestimation
      
      * Introduce a size bound constant for upward messages
      
      * Use KiB not kB for message size bound
      
      * Enforce max-message size bound
      
      * Use a const for upward message size bound.
      
      * Decrease max_upward_message_sizes to 50KiB as suggested by @pepyakin
      
      * Fix creating overweight messages
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_ump.rs
      
      * Remove unused variable
      
      * Rename benchmark function to the function actually benchmarked and some
      code cleanup
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_ump.rs
      
      * Better variable naming
      
      * Fix build
      
      * Fix build
      
      * Fix some remarks from @pepyakin
      
      
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      Co-authored-by: default avatarAlexander Popiak <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      Co-authored-by: default avataremostov <[email protected]>
      fc919376
  21. Feb 22, 2022
  22. Feb 14, 2022
  23. Feb 12, 2022
    • Shawn Tabrizi's avatar
      Allow two Parachains to swap (#4772) · d5f51273
      Shawn Tabrizi authored
      
      
      * add support for parachain to parachain swap
      
      * enable swaps on kusama
      
      * sanity test in paras_registrar
      
      * express more errors
      
      * finish up tests
      
      * fmt
      
      * make fields pub
      
      * refactor integration tests to use real accounts
      
      * Update Crowdloan Account to FundIndex (#4824)
      
      * update fund account to use index
      
      * fix integration tests
      
      * Update runtime/common/src/crowdloan.rs
      
      * finish parachain swap test
      
      * format
      
      * fix warning
      
      * fix spacing
      
      * fix formatting
      
      * write migrations
      
      * add migration
      
      * fixes
      
      * more fixes to migration
      
      * Update runtime/common/src/crowdloan/mod.rs
      
      Co-authored-by: default avatarZeke Mostov <[email protected]>
      
      * Update runtime/common/src/paras_registrar.rs
      
      * Update migration.rs
      
      * extract swap function
      
      Co-authored-by: default avatarZeke Mostov <[email protected]>
      d5f51273
  24. Feb 11, 2022
  25. Feb 02, 2022
  26. Jan 27, 2022
  27. Jan 25, 2022
  28. Jan 21, 2022
    • Oliver Tale-Yazdi's avatar
      Use `define_benchmarks!` (#4760) · cc1201ef
      Oliver Tale-Yazdi authored
      
      
      Signed-off-by: default avatarOliver Tale-Yazdi <[email protected]>
      cc1201ef
    • Kian Paimani's avatar
      HRMP benchmarks (#3876) · 3cb2d626
      Kian Paimani authored
      
      
      * wip template for hrmp benchmarks
      
      * add all of the benchmarks, first draft
      
      * File was not saved :/
      
      * cargo +nightly fmt
      
      * Use configs
      
      * add configs
      
      * Fix rococo
      
      * Final touches
      
      * revert fmt changes, one last time
      
      * Fix wrappings
      
      * Fix a bunch of tests
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::hrmp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_hrmp.rs
      
      * add to westend
      
      * actually use everything
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::hrmp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_hrmp.rs
      
      * Update runtime/parachains/src/hrmp.rs
      
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      
      * use real weight in wnd
      
      * reorg
      
      * minor cleanup
      
      * weigh some of the internal stuff as well
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::hrmp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_hrmp.rs
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::hrmp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_hrmp.rs
      
      * add files
      
      * Master.into()
      
      * add validation
      
      * fmt
      
      * fmt
      
      * final fixes
      
      * all runtimes build
      
      * undo formatting
      
      * Update runtime/parachains/src/hrmp.rs
      
      Co-authored-by: default avatarZeke Mostov <[email protected]>
      
      * non-controversial changes
      
      * do it the parachain-way: use const instead of type configs for simplicity.
      
      * borrow assert_storage_consistency_exhaustive
      
      * move assert_storage_consistency_exhaustive to Pallet, so it can be reused for benchmarks as well.
      
      * fix typo
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      Co-authored-by: default avatarSergey Shulepov <[email protected]>
      Co-authored-by: default avatarZeke Mostov <[email protected]>
      3cb2d626
  29. Jan 17, 2022
  30. Jan 13, 2022
    • Alexander Popiak's avatar
      Add `fast-runtime` Cargo Feature for Quick Test Runs (#4332) · 401540ee
      Alexander Popiak authored
      
      
      * add fast-runtime feature for reduced session times
      
      * make democracy periods fast on fast-runtime
      
      * propagate fast-runtime feature through cargo.toml files
      
      * add fast motion and term durations to Kusama
      
      * Update runtime/westend/Cargo.toml
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * set session time to 2 minutes to avoid block production issues
      
      * formatting
      
      * update Substrate
      
      * set democracy fast periods back to 1min
      
      * set launch period and enactment period to 1 block in fast-runtime
      
      * remove unnecessary westend period configs
      
      * add prod_or_test macro to allow specifying prod, test and env values for parameter types
      
      * move prod_or_test macro into common module and use it consistently
      
      * rename macro to prod_or_fast
      
      * cargo +nightly fmt
      
      * bump impl_versions
      
      * newline
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * add note that env variable is evaluated at compile time
      
      * newline
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * newline
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * cargo fmt
      
      * impl_version: 0
      
      * impl_version: 0
      
      * use prod_or_fast macro for LeasePeriod and LeaseOffset
      
      * use prod_or_fast macro in WND and ROC constants
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      Co-authored-by: default avatarGiles Cope <[email protected]>
      401540ee
  31. Jan 11, 2022
  32. Jan 05, 2022
    • Kian Paimani's avatar
      Fully enable bags-list pallet in polkadot runtime (#4653) · 18532b67
      Kian Paimani authored
      
      
      * Fully enable bags-list pallet in polkadot runtime
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=polkadot-dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/polkadot/src/weights/
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      18532b67