1. Apr 01, 2021
  2. Mar 28, 2021
    • Gavin Wood's avatar
      Implement `fungible::*` for Balances (#8454) · d0eee4f1
      Gavin Wood authored
      
      
      * Reservable, Transferrable Fungible(s), plus adapters.
      
      * Repot into new dir
      
      * Imbalances for Fungibles
      
      * Repot and balanced fungible.
      
      * Clean up names and bridge-over Imbalanced.
      
      * Repot frame_support::trait. Finally.
      
      * Make build.
      
      * Docs
      
      * Good errors
      
      * Fix tests. Implement fungible::Inspect for Balances.
      
      * Implement additional traits for Balances.
      
      * Revert UI test "fixes"
      
      * Fix UI error
      
      * Fix UI test
      
      * More work on fungibles
      
      * Fixes
      
      * More work.
      
      * Update lock
      
      * Make fungible::reserved work for Balances
      
      * Introduce Freezer to Assets, ready for a reserve & locks pallet. Some renaming/refactoring.
      
      * Cleanup errors
      
      * Imbalances working with Assets
      
      * Test for freezer.
      
      * Grumbles
      
      * Grumbles
      
      * Fixes
      
      * Extra "side-car" data for a user's asset balance.
      
      * Fix
      
      * Fix test
      
      * Fixes
      
      * Line lengths
      
      * Comments
      
      * Update frame/assets/src/tests.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Update frame/support/src/traits/tokens/fungibles.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Update frame/assets/src/lib.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Update frame/support/src/traits/tokens/fungible.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Introduce `transfer_reserved`
      
      * Rename fungible Reserve -> Hold, add flag structs
      
      * Avoid the `melted` API - its too complex and gives little help
      
      * Repot Assets pallet
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      d0eee4f1
    • Peter Goodspeed-Niklaus's avatar
      make types within `generate_solution_type` macro explicit (#8447) · c2dd5e21
      Peter Goodspeed-Niklaus authored
      * make types within `generate_solution_type` macro explicit
      
      Closes #8444.
      
      Just changes the parsing logic for that macro; does not change any
      emitted code. The associated types associated with the macro now
      require explicit, keyword-style declaration.
      
      **Old**:
      
      ```rust
      sp_npos_elections::generate_solution_type!(
      	#[compact]
      	pub struct TestCompact::<VoterIndex, TargetIndex, PerU16>(16)
      );
      ```
      
      **New**:
      
      ```rust
      sp_npos_elections::generate_solution_type!(
      	#[compact]
      	pub struct TestCompact::<VoterIndex = VoterIndex, CandidateIndex = TargetIndex, Accuracy = PerU16>(16)
      );
      ```
      
      * un-ignore doc-tests
      
      * use new form in bin/node/runtime/
      
      * rename CandidateIndex -> TargetIndex
      
      * add tests demonstrating some potential compile failures
      c2dd5e21
  3. Mar 25, 2021
    • Kian Paimani's avatar
      Make the number of nominations configurable (#8368) · f571023d
      Kian Paimani authored
      
      
      * Base features and traits.
      
      * pallet and unsigned phase
      
      * Undo bad formattings.
      
      * some formatting cleanup.
      
      * Small self-cleanup.
      
      * Make it all build
      
      * self-review
      
      * Some doc tests.
      
      * Some changes from other PR
      
      * Fix session test
      
      * Update Cargo.lock
      
      * Update frame/election-provider-multi-phase/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Some review comments
      
      * Rename + make encode/decode
      
      * Do an assert as well, just in case.
      
      * Fix build
      
      * Update frame/election-provider-multi-phase/src/unsigned.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Las comment
      
      * fix staking fuzzer.
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_election_provider_multi_phase --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/election-provider-multi-phase/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Add one last layer of feasibility check as well.
      
      * Last fixes to benchmarks
      
      * Some more docs.
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_election_provider_multi_phase --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/election-provider-multi-phase/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_election_provider_multi_phase --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/election-provider-multi-phase/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Some nits
      
      * It all works
      
      * Some self cleanup
      
      * Update frame/staking/src/lib.rs
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <[email protected]>
      
      * remove most todos.
      
      * Round of self-review.
      
      * Fix migration
      
      * clean macro
      
      * Revert wrong merge
      
      * Make the number of nominations configurable
      
      * Self reivew
      
      * renmae.
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      Co-authored-by: default avatarParity Benchmarking Bot <[email protected]>
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <[email protected]>
      f571023d
  4. Mar 24, 2021
  5. Mar 23, 2021
    • Gavin Wood's avatar
      Fungibles trait and impl for Assets pallet (#8425) · b5b0ef59
      Gavin Wood authored
      * Fungibles trait and impl for Assets pallet
      
      * Comment & whitespace
      
      * Fixes
      
      * Fix up CI/CD for the new labels.
      
      * New labels.
      
      * Fix labels
      
      * Fix labels
      
      * Whitespace
      
      * Bump impl version.
      
      * Fix accidental change
      
      * Fixes
      
      * Questionable fix.
      
      * Better benchmark
      b5b0ef59
  6. Mar 20, 2021
    • Kian Paimani's avatar
      Decouple Staking and Election - Part 2.1: Unleash Multi Phase (#8113) · 0c696518
      Kian Paimani authored
      
      
      * Base features and traits.
      
      * pallet and unsigned phase
      
      * Undo bad formattings.
      
      * some formatting cleanup.
      
      * Small self-cleanup.
      
      * Make it all build
      
      * self-review
      
      * Some doc tests.
      
      * Some changes from other PR
      
      * Fix session test
      
      * Update Cargo.lock
      
      * Update frame/election-provider-multi-phase/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Some review comments
      
      * Rename + make encode/decode
      
      * Do an assert as well, just in case.
      
      * Fix build
      
      * Update frame/election-provider-multi-phase/src/unsigned.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Las comment
      
      * fix staking fuzzer.
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_election_provider_multi_phase --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/election-provider-multi-phase/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Add one last layer of feasibility check as well.
      
      * Last fixes to benchmarks
      
      * Some more docs.
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_election_provider_multi_phase --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/election-provider-multi-phase/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_election_provider_multi_phase --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/election-provider-multi-phase/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Some nits
      
      * It all works
      
      * Some self cleanup
      
      * Update frame/staking/src/lib.rs
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <[email protected]>
      
      * remove most todos.
      
      * Round of self-review.
      
      * Fix migration
      
      * clean macro
      
      * Revert wrong merge
      
      * remove fuzzer stuff.
      
      * Self review
      
      * Update frame/staking/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * review comments
      
      * add logs
      
      * Add tests to demonstrate the capacity of the snapshot.
      
      * Replace upgrade
      
      * Last touches
      
      * Fix benchmakrs
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/staking/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_election_provider_multi_phase --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/election-provider-multi-phase/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * remove unused stuff
      
      * Fix tests.
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      Co-authored-by: default avatarParity Benchmarking Bot <[email protected]>
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <[email protected]>
      0c696518
  7. Mar 18, 2021
    • Shaun Wang's avatar
      Replace 'Module' with 'Pallet' in construct_runtime macro (#8372) · 2e552244
      Shaun Wang authored
      * Use 'Pallet' struct in construct_runtime.
      
      * Fix genesis and metadata macro.
      
      * Fix 'Pallet' type alias.
      
      * Replace 'Module' with 'Pallet' for all construct_runtime use cases.
      
      * Replace more deprecated 'Module' struct.
      
      * Bring back AllModules and AllPalletsWithSystem type, but deprecate them.
      
      * Replace deprecated 'Module' struct from merge master.
      
      * Minor fix.
      
      * Fix UI tests.
      
      * Revert UI override in derive_no_bound.
      
      * Fix more deprecated 'Module' use from master branch.
      
      * Fix more deprecated 'Module' use from master branch.
      2e552244
  8. Mar 16, 2021
  9. Mar 12, 2021
    • André Silva's avatar
      im-online: use EstimateNextSessionRotation to get better estimates of session progress (#8242) · 51822097
      André Silva authored
      * frame-support: add method to estimate current session progress
      
      * im-online: use EstimateNextSessionRotation trait to delay heartbeats
      
      * node: fix im-online pallet instantiation
      
      * frame-support: fix docs
      
      * frame: fix tests
      
      * pallet-session: last block of periodic session means 100% session progress
      
      * pallet-session: add test for periodic session progress
      
      * pallet-babe: fix epoch progress and add test
      
      * frame-support: return weight with session estimates
      
      * pallet-im-online: add test for session progress logic
      51822097
  10. Mar 10, 2021
    • asynchronous rob's avatar
      more clear randomness API for BABE (#8180) · e2960c38
      asynchronous rob authored
      
      
      * more clear randomness API for BABE
      
      * babe: move randomness utilities to its own file
      
      * node: use babe::RandomnessFromOneEpochAgo in random_seed implementation
      
      * frame-support: annotate randomness trait with block number
      
      * pallet-randomness-collective-flip: fix for new randomness trait
      
      * pallet-society: fix randomness usage
      
      * pallet-lottery: fix randomness usage
      
      * pallet-contracts: fix randomness usage
      
      * pallet-babe: fix randomness usage
      
      we need to track when the current and previous epoch started so that we
      know the block number by each existing on-chain was known
      
      * node: fix random_seed
      
      * node-template: fix random_seed
      
      * frame-support: extend docs
      
      * babe: add test for epoch starting block number tracking
      
      * babe: fix epoch randomness docs
      
      * frame: add todos for dealing with randomness api changes
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      e2960c38
    • Tomasz Drwięga's avatar
      Custom RPC for Merkle Mountain Range pallet (#8137) · f3d4355a
      Tomasz Drwięga authored
      * Add MMR custom RPC.
      
      * Change RuntimeApi to avoid hardcoding leaf type.
      
      * Properly implement the new RuntimeAPI and wire up RPC.
      
      * Extract Offchain DB as separate execution extension.
      
      * Enable offchain DB access for offchain calls.
      
      * Fix offchain_election tests.
      
      * Skip block initialisation for proof generation.
      
      * Fix integration test setup.
      
      * Fix offchain tests. Not sure how I missed them earlier 🤷.
      
      * Fix long line.
      
      * One more test missing.
      
      * Update mock for multi-phase.
      
      * Address review grumbbles.
      
      * Address review grumbles.
      
      * Fix line width of a comment
      f3d4355a
    • Ashley's avatar
      Return babe configuration information in the babe api epoch functions (#8072) · 7ace5e21
      Ashley authored
      
      
      * Make changes
      
      * Add serialize/deserialize, copy babe epoch config defaults from node runtime
      
      * Fix line widths and turn default features off for serde
      
      * Remove ser/deser from Epoch, fix node-cli
      
      * Apply suggestions
      
      * Add comment to BABE_GENESIS_EPOCH_CONFIG in bin
      
      * Apply suggestions
      
      * Add a sketchy migration function
      
      * Add a migration test
      
      * Check for PendingEpochConfigChange as well
      
      * Make epoch_config in node-cli
      
      * Move updating EpochConfig out of the if
      
      * Fix executor tests
      
      * Calculate weight for add_epoch_configurations
      
      * Fix babe test
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      
      * Add more asserts to tests, remove unused changes to primitives/slots
      
      * Allow setting the migration pallet prefix
      
      * Rename to BabePalletPrefix
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      7ace5e21
  11. Mar 09, 2021
    • Gavin Wood's avatar
      Introduce IgnoredIssuance into Gilts (#8299) · a4921069
      Gavin Wood authored
      * IgnoredIssuance
      
      * Fixes
      
      * Fixes
      a4921069
    • Gavin Wood's avatar
      Assets: Remove zombies, introduce approvals (#8220) · 643a0ecd
      Gavin Wood authored
      
      
      * Initial work
      
      * Tests for frame system
      
      * Self-sufficient account ref-counting
      
      * Fixes
      
      * Benchmarks building.
      
      * Update frame/system/src/lib.rs
      
      Co-authored-by: default avatarJaco Greeff <[email protected]>
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Test approvals
      
      * Fixes
      
      * Report assets pallet tests
      
      * Tests for approvals & force_cancel_approval
      
      * Use structs rather than tuples for approval data
      
      * Add force_asset_status, force_set_metadata
      
      * Add clear_metadata.
      
      * approval benchmarks
      
      * force_asset_status benchmarks
      
      * final benchmarks
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_assets --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/assets/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Update frame/system/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Update frame/system/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Update frame/system/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Docs for new approval dispatches.
      
      * Docs for pallet.
      
      * Remove accidental code.
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_assets --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/assets/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_assets --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/assets/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Fixes
      
      * Update frame/assets/src/lib.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Grumbles.
      
      * Transfer zero works, use DispatchResult
      
      * fix test
      
      * Remove force_destroy
      
      * Remove TODO
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_assets --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/assets/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * transfer_keep_alive
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_assets --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/assets/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      Co-authored-by: default avatarJaco Greeff <[email protected]>
      Co-authored-by: default avatarParity Benchmarking Bot <[email protected]>
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      643a0ecd
  12. Mar 05, 2021
  13. Mar 03, 2021
  14. Mar 01, 2021
    • Bastian Köcher's avatar
      Init `RuntimeLogger` automatically for each runtime api call (#8128) · 68390d40
      Bastian Köcher authored
      
      
      * Init `RuntimeLogger` automatically for each runtime api call
      
      This pr change the runtime api in such a way to always and automatically
      enable the `RuntimeLogger`. This enables the user to use `log` or
      `tracing` from inside the runtime to create log messages. As logging
      introduces some extra code and especially increases the size of the wasm
      blob. It is advised to disable all logging completely with
      `sp-api/disable-logging` when doing the wasm builds for the on-chain
      wasm runtime.
      
      Besides these changes, the pr also brings most of the logging found in
      frame to the same format "runtime::*".
      
      * Update frame/im-online/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Update test-utils/runtime/Cargo.toml
      
      * Fix test
      
      * Don't use tracing in the runtime, as we don't support it :D
      
      * Fixes
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      68390d40
  15. Feb 27, 2021
    • Gavin Wood's avatar
      Gilts Pallet (#8139) · ed365da8
      Gavin Wood authored
      
      
      * Initial draft
      
      * Enlarge function drafted.
      
      * Thaw draft
      
      * Retract_bid draft
      
      * Final bits of draft impl.
      
      * Test mockup
      
      * Tests
      
      * Docs
      
      * Add benchmark scaffold
      
      * Integrate weights
      
      * All benchmarks done
      
      * Missing file
      
      * Remove stale comments
      
      * Fixes
      
      * Fixes
      
      * Allow for priority queuing.
      
      * Another test and a fix
      
      * Fixes
      
      * Fixes
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_gilt --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/gilt/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Grumble
      
      * Update frame/gilt/src/tests.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Update frame/gilt/src/tests.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Grumble
      
      * Update frame/gilt/src/tests.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Update frame/gilt/src/lib.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Update frame/gilt/src/lib.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Fix unreserve ordering
      
      * Grumble
      
      * Fixes
      
      Co-authored-by: default avatarParity Benchmarking Bot <[email protected]>
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      ed365da8
  16. Feb 23, 2021
    • Kian Paimani's avatar
      Decouple Staking and Election - Part 2 Unsigned Phase (#7909) · 7205eea4
      Kian Paimani authored
      
      
      * Base features and traits.
      
      * pallet and unsigned phase
      
      * Undo bad formattings.
      
      * some formatting cleanup.
      
      * Small self-cleanup.
      
      * Make it all build
      
      * self-review
      
      * Some doc tests.
      
      * Some changes from other PR
      
      * Fix session test
      
      * Update Cargo.lock
      
      * Update frame/election-provider-multi-phase/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Some review comments
      
      * Rename + make encode/decode
      
      * Do an assert as well, just in case.
      
      * Fix build
      
      * Update frame/election-provider-multi-phase/src/unsigned.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Las comment
      
      * fix staking fuzzer.
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_election_provider_multi_phase --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/election-provider-multi-phase/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Add one last layer of feasibility check as well.
      
      * Last fixes to benchmarks
      
      * Some more docs.
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_election_provider_multi_phase --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/election-provider-multi-phase/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_election_provider_multi_phase --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/election-provider-multi-phase/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Some nits
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/staking/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Fix doc
      
      * Mkae ci green
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      Co-authored-by: default avatarParity Benchmarking Bot <[email protected]>
      7205eea4
  17. Feb 22, 2021
  18. Feb 19, 2021
  19. Feb 16, 2021
  20. Feb 15, 2021
  21. Feb 10, 2021
  22. Feb 04, 2021
  23. Feb 02, 2021
    • Liu-Cheng Xu's avatar
      Decouple the session validators from im-online (#7127) · 9904267e
      Liu-Cheng Xu authored
      * Decouple the session validators from im-online
      
      * .
      
      * Add SessionInterface trait in im-online
      
      Add ValidatorId in im-online Trait
      
      Make im-online compile
      
      Make substrate binary compile
      
      * Fix merging issue
      
      * Make all compile
      
      * Fix tests
      
      * Avoid using frame dep in primitives via pallet-session-common
      
      * Merge ValidatorSet into SessionInterface trait
      
      Wrap a few too long lines
      
      Add some docs
      
      * Move pallet-sesion-common into pallet-session
      
      * Move SessionInterface to sp-session and impl it in session pallet
      
      Ref https://github.com/paritytech/substrate/pull/7127#discussion_r494892472
      
      
      
      * Split put historical::FullValidatorIdentification trait
      
      * Fix line width
      
      * Fix staking mock
      
      * Fix session doc test
      
      * Simplify <T as ValidatorIdentification<AccountId>>::ValidatorId as ValidatorId<T>
      
      * Nits
      
      * Clean up.
      
      * Make it compile by commenting out report_offence_im_online bench
      
      * Tests
      
      * Nits
      
      * Move OneSessionHandler to sp-session
      
      * Fix tests
      
      * Add some docs
      
      * .
      
      * Fix typo
      
      * Rename to ValidatorSet::session_index()
      
      * Add some more docs
      
      * .
      
      * Remove extra empty line
      
      * Fix line width check
      
      .
      
      * Apply suggestions from code review
      
      * Cleaup Cargo.toml
      
      * Aura has migrated to Pallet now
      
      Co-authored-by: default avatarTomasz Drwięga <[email protected]>
      9904267e
  24. Jan 28, 2021
    • Bastian Köcher's avatar
      Introduce a `Slot` type (#7997) · b6294418
      Bastian Köcher authored
      
      
      * Introduce a `Slot` type
      
      Instead of having some type definition that only was used in half of the
      code or directly using `u64`, this adds a new unit type wrapper `Slot`.
      This makes it especially easy for the outside api to know what type is
      expected/returned.
      
      * Change epoch duratioC
      
      * rename all instances of slot number to slot
      
      * Make the constructor private
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      b6294418
    • Tomasz Drwięga's avatar
      Merkle Mountain Range pallet improvements (#7891) · 6c2dd28d
      Tomasz Drwięga authored
      
      
      * Add stateless verification helper function.
      
      * Split MMR primitives.
      
      * Add RuntimeAPI
      
      * RuntimeAPI with OpaqueLeaves
      
      * Bump spec_version,.
      
      * Move primitives back to frame.
      
      * Fix OpaqueLeaf encoding.
      
      * Add block number to frame_system implementation of LeafDataProvider.
      
      * Relax leaf codec requirements and fix OpaqueLeaf
      
      * Add root to debug line.
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      
      * Typo.
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      6c2dd28d
  25. Jan 20, 2021
    • Kian Paimani's avatar
      Fix elections-phragmen and proxy issue (#7040) · e8307b7b
      Kian Paimani authored
      * Fix elections-phragmen and proxy issue
      
      * remove TODO
      
      * Update bond to be per-vote
      
      * Update frame/elections-phragmen/src/lib.rs
      
      * Fix benchmakrs
      
      * Fix weight as well.
      
      * Add license
      
      * Make weight interpreted wasm! 🤦🏻
      
      ‍♂️
      
      * Remove a bunch of TODOs
      
      * Add migration
      
      * Better storage version.
      
      * Functionify.
      
      * Fix deposit scheme.
      
      * remove legacy bond.
      
      * Master.into()
      
      * better logging.
      
      * Fix benchmarking test
      
      * Fix confused deposit collection.
      
      * Add fine
      
      * Better name for storage item
      
      * Fix name again.
      
      * remove unused
      
      * Update frame/elections-phragmen/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Update frame/elections-phragmen/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * cargo run --release --features runtime-benchmarks --manifest-path bin/node/cli/Cargo.toml -- benchmark --chain dev --steps 50 --repeat 20 --extrinsic * --execution=wasm --wasm-execution=compiled --output ./bin/node/runtime/src/weights --header ./HEADER --pallet pallet_elections_phragmen
      
      * new weight fns
      
      * Fix build
      
      * Fix line width
      
      * fix benchmakrs
      
      * fix warning
      
      * cargo run --release --features runtime-benchmarks --manifest-path bin/node/cli/Cargo.toml -- benchmark --chain dev --steps 50 --repeat 20 --extrinsic * --execution=wasm --wasm-execution=compiled --output ./bin/node/runtime/src/weights --header ./HEADER --pallet pallet_elections_phragmen
      
      * Tune the stake again
      
      * cargo run --release --features runtime-benchmarks --manifest-path bin/node/cli/Cargo.toml -- benchmark --chain dev --steps 50 --repeat 20 --extrinsic * --execution=wasm --wasm-execution=compiled --output ./bin/node/runtime/src/weights --header ./HEADER --pallet pallet_elections_phragmen
      
      * All tests work again.
      
      * A large number of fixes.
      
      * more fixes.
      
      * Fix node build
      
      * Some fixes to benchmarks
      
      * Fix some warnings.
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_elections_phragmen --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/elections-phragmen/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_elections_phragmen --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/elections-phragmen/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Update frame/elections-phragmen/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * a batch of review comments.
      
      * Fix a test.
      
      * Fix some more tests.
      
      * do migration with pallet version???
      
      * Final touches.
      
      * Remove unused storage.
      
      * another rounds of changes and fixes.
      
      * Update frame/elections-phragmen/src/lib.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Update frame/elections-phragmen/src/lib.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Review grumbles.
      
      * Fix a bit more.
      
      * Fix build
      
      * Experimental: independent migration.
      
      * WIP: isolated migration logics
      
      * clean up.
      
      * make migration struct private and move migration to own file
      
      * add doc
      
      * fix StorageInstance new syntax
      
      * Update frame/elections-phragmen/src/migrations_3_0_0.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * another round of self-review.
      
      * bit better formatting
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_elections_phragmen --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/elections-phragmen/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Fix tests.
      
      * Round of self-review
      
      * Clean migrations
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_elections_phragmen --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/elections-phragmen/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Revert unwanted change to construct-runtime
      
      Co-authored-by: default avatarGavin Wood <[email protected]>
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      Co-authored-by: default avatarParity Benchmarking Bot <[email protected]>
      e8307b7b
  26. Jan 19, 2021
    • Shawn Tabrizi's avatar
      Freeze Assets and Asset Metadata (#7346) · 748bdf65
      Shawn Tabrizi authored
      
      
      * Features needed for reserve-backed stablecoins
      
      * Builds & tests.
      
      * Double map for an efficient destroy.
      
      * Update frame/assets/src/lib.rs
      
      Co-authored-by: default avatarNikolay Volf <[email protected]>
      
      * ED/zombie-count/refs
      
      Feature: ED/minimum balance enforcement
      Feature: enforce zombie count
      Feature: allow system-alive accounts to exist, but add reference
      
      * Update frame/assets/src/lib.rs
      
      Co-authored-by: default avatarNikolay Volf <[email protected]>
      
      * Update frame/assets/Cargo.toml
      
      Co-authored-by: default avatarNiklas Adolfsson <[email protected]>
      
      * Docs
      
      * Some tests
      
      * More tests
      
      * Allow for max_zombies to be adjusted
      
      * Test for set_max_zombies
      
      * Tests and a couple of fixes
      
      * First few benchmarks
      
      * Benchmarks.
      
      * Fix error message in test
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * cargo run --release --features runtime-benchmarks --manifest-path bin/node/cli/Cargo.toml -- benchmark --chain dev --steps 50 --repeat 20 --extrinsic * --execution=wasm --wasm-execution=compiled --output ./bin/node/runtime/src/weights --header ./HEADER --pallet pallet_assets
      
      * Update frame/assets/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * cargo run --release --features runtime-benchmarks --manifest-path bin/node/cli/Cargo.toml -- benchmark --chain dev --steps 50 --repeat 20 --extrinsic * --execution=wasm --wasm-execution=compiled --output ./bin/node/runtime/src/weights --header ./HEADER --pallet pallet_assets
      
      * Fixes
      
      * Update default weight
      
      * Add proper verification to benchmarks
      
      * minor improvements to tests
      
      * Add `freeze_asset` and `thaw_asset`
      
      * Add metadata
      
      * fix build
      
      * Update benchmarks
      
      * fix line width
      
      * cargo run --release --features runtime-benchmarks --manifest-path bin/node/cli/Cargo.toml -- benchmark --chain dev --steps 50 --repeat 20 --extrinsic * --execution=wasm --wasm-execution=compiled --output ./bin/node/runtime/src/weights --header ./HEADER --pallet pallet_assets
      
      * update default weights
      
      * destroy cleans up metadata
      
      * more comprehensive lifecycle test
      
      * update docs
      
      * Update frame/assets/src/benchmarking.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Fix
      
      * New weights system
      
      * fix compile
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_assets --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/assets/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * fix compile
      
      * fix up
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_assets --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/assets/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * fixes to pallet compile
      
      * fix node build
      
      * remote diff artifacts
      
      * less diff
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_assets --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/assets/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Update frame/assets/src/lib.rs
      
      * Update frame/assets/src/lib.rs
      
      * usize to u32
      
      * missed some usize
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_assets --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/assets/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      Co-authored-by: default avatarGav Wood <[email protected]>
      Co-authored-by: default avatarNikolay Volf <[email protected]>
      Co-authored-by: default avatarNiklas Adolfsson <[email protected]>
      Co-authored-by: default avatarParity Benchmarking Bot <[email protected]>
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      748bdf65
  27. Jan 14, 2021
    • Liu-Cheng Xu's avatar
      Add payment_queryFeeDetails RPC (#7692) · 65569620
      Liu-Cheng Xu authored
      
      
      * Return FeeDetails in compute_fee_raw()
      
      * Add payment_queryDetails rpc
      
      * Simplify serde attribute a bit
      
      * Fix line width check
      
      * Use saturating_add()
      
      * Move transaction payment rpc types to types.rs
      
      * Add file header
      
      * Fix test
      
      * Update Cargo.lock
      
      * Nit
      
      * Apply the review suggestions
      
      * .
      
      * .
      
      * Fix serde
      
      * Fix rust doc
      
      * .
      
      * Update frame/transaction-payment/src/types.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Use NumberOrHex in fee details RPC
      
      * Address review feedback
      
      * Nits
      
      * Update some docs
      
      * Address review
      
      * Update frame/transaction-payment/src/types.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Happy 2021
      
      * Nit
      
      * Address code review
      
      * Remove needless bound
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      65569620
  28. Jan 06, 2021
  29. Jan 05, 2021
    • Shawn Tabrizi's avatar
      Participation Lottery Pallet (#7221) · 92f59682
      Shawn Tabrizi authored
      
      
      * Basic design
      
      * start adding tests
      
      * finish tests
      
      * clean up crates
      
      * use call index for match
      
      * finish benchmarks
      
      * add to runtime
      
      * fix
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_lottery --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/lottery/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * more efficient storage
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_lottery --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/lottery/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Update lib.rs
      
      * Update bin/node/runtime/src/lib.rs
      
      * trait -> config
      
      * add repeating lottery
      
      * new benchmarks
      
      * fix build
      
      * move trait for warning
      
      * feedback from @xlc
      
      * add stop_repeat
      
      * fix
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_lottery --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/lottery/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Support static calls
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_lottery --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/lottery/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * fix test
      
      * add loop to mitigate modulo bias
      
      * Update weights for worst case scenario loop
      
      * Initialize pot with ED
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_lottery --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/lottery/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      Co-authored-by: default avatarParity Benchmarking Bot <[email protected]>
      92f59682
  30. Jan 04, 2021
    • Alexander Theißen's avatar
      contracts: Lazy storage removal (#7740) · 3ba8fdfc
      Alexander Theißen authored
      * Do not evict a contract from within a call stack
      
      We don't want to trigger contract eviction automatically when
      a contract is called. This is because those changes can be
      reverted due to how storage transactions are used at the moment.
      More Information:
      https://github.com/paritytech/substrate/issues/6439#issuecomment-648754324
      
      It can be re-introduced once the linked issue is resolved. In the meantime
      `claim_surcharge` must be called to evict a contract.
      
      * Lazily delete storage in on_initialize instead of when removing the contract
      
      * Add missing documentation of new error
      
      * Make Module::claim_surcharge public
      
      It being the only dispatchable that is private is an oversight.
      
      * review: Add final newline
      
      * review: Simplify assert statement
      
      * Add test that checks that partial remove of a contract works
      
      * Premote warning to error
      
      * Added missing docs for seal_terminate
      
      * Lazy deletion should only take AVERAGE_ON_INITIALIZE_RATIO of the block
      
      * Added informational about the lazy deletion throughput
      
      * Avoid lazy deletion in case the block is already full
      
      * Prevent queue decoding in case of an already full block
      
      * Add test that checks that on_initialize honors block limits
      3ba8fdfc
    • Alexander Theißen's avatar
      contracts: Allow runtime authors to define a chain extension (#7548) · 51c37ecc
      Alexander Theißen authored
      * Make host functions return TrapReason
      
      This avoids the need to manually store any trap reasons
      to the `Runtime` from the host function. This adds the following
      benefits:
      
      * It properly composes with the upcoming chain extensions
      * Missing to set a trap value is now a compile error
      
      * Add chain extension
      
      The chain extension is a way for the contract author to add new
      host functions for contracts to call.
      
      * Add tests for chain extensions
      
      * Fix regression in set_rent.wat fixture
      
      Not all offsets where properly updated when changing the fixtures
      for the new salt on instantiate.
      
      * Pre-charge a weight amount based off the specified length
      
      * Improve fn write docs
      
      * Renamed state to phantom
      
      * Fix typo
      51c37ecc
    • Bastian Köcher's avatar
      Happy new year (#7814) · e3e651f7
      Bastian Köcher authored
      * Happy new year
      
      Updates the copyright years and fixes wrong license headers.
      
      * Fix the template
      
      * Split HEADER into HEADER-APACHE & HEADER-GPL
      e3e651f7