Skip to content
Snippets Groups Projects
  1. Mar 16, 2021
    • Benjamin Kampmann's avatar
      Release missing 3.0 crates: pallet-node-authorization sc-finality-grandpa-warp-sync (#8360) · e64e4b24
      Benjamin Kampmann authored
      * bump pallet-node-authorization
      
      * prepping sc-finality-grandpa-warp-sync for release
      
      * bump Cargo.lock
      e64e4b24
    • Bastian Köcher's avatar
      Update diener to enable polkadot companions that use new crates (#8371) · 2cc9329b
      Bastian Köcher authored
      
      * Update diener to enable polkadot companions that use new crates
      
      Diener will be updated in the CI image to make it possible to have
      companions that add new crates from Substrate.
      
      Besides that the wasm-bindgen is updated, because `0.2.70` is not
      available anymore on crates.io.
      
      * update lock
      
      Co-authored-by: default avatarkianenigma <kian@parity.io>
      2cc9329b
    • Gavin Wood's avatar
      Document a pub item (#8374) · cf108722
      Gavin Wood authored
      cf108722
    • gabriel klawitter's avatar
    • Gavin Wood's avatar
      staking: Flexible generation of reward curve and associated tweaks (#8327) · 363db4f0
      Gavin Wood authored
      
      * Initial abstraction
      
      * Alter rest of APIs
      
      * Fixes
      
      * Some extra getters in Gilt pallet.
      
      * Refactor Gilt to avoid u128 conversions
      
      * Simplify and improve pow in per_things
      
      * Add scalar division to per_things
      
      * Renaming from_fraction -> from_float, drop _approximation
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Make stuff build
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Update .gitignore
      
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      
      * Update frame/gilt/src/lib.rs
      
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      
      * Update frame/gilt/src/mock.rs
      
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      363db4f0
    • Kian Paimani's avatar
      Audit fixes for election/staking decoupling part 2 (#8167) · b6c62639
      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 <gui.thiolliere@gmail.com>
      
      * 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 <gui.thiolliere@gmail.com>
      
      * 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
      
      * Audit fixes for election-provider: part 2 signed phase.
      
      * Fix weight
      
      * Some grumbles.
      
      * Try and weigh to get_npos_voters
      
      * Fix build
      
      * Fix line width
      
      * 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 tests.
      
      * Fix build
      
      * Reorg some stuff
      
      * More reorg.
      
      * Reorg done.
      
      * Fix build
      
      * Another rename
      
      * Fix build
      
      * Update frame/election-provider-multi-phase/src/mock.rs
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
      
      * nit
      
      * better doc
      
      * Line width
      
      * Fix build
      
      * Self-review
      
      * Self-review
      
      * Fix wan
      
      * 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_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/staking/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * fix build and review comments.
      
      * Update frame/election-provider-multi-phase/src/lib.rs
      
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * add comment
      
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      Co-authored-by: default avatarParity Benchmarking Bot <admin@parity.io>
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
      b6c62639
    • Peter Goodspeed-Niklaus's avatar
      NPoS Challenge Mode (#8236) · 49be0579
      Peter Goodspeed-Niklaus authored
      
      * Add PJR challenge functions
      
      - Updates the PJR check to return a counterexample if one exists
      - Adds functions to cheaply check counterexamples
      
      This is in support of off-chain PJR challenges: if a miner discovers
      that an accepted election solution does not satisfy PJR, it will be
      eligible for substantial rewards. This helps ensure that validator
      elections have an absolute quality floor, so even if someone manages
      to censor well-behaved solutions to give themselves unfair representation,
      we can catch them in the act and penalize them.
      
      * counterexample -> counter_example
      
      * reorganize: high -> low abstraction
      
      * reorganize challenges high -> low abstraction
      
      * add note justifying linear search
      
      * Simplify max_pre_score validation
      
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      
      * add minor test of pjr challenge validation
      
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      49be0579
    • Shaun Wang's avatar
      Support pallet::storage conditional compilation (#8324) · 844e2552
      Shaun Wang authored
      
      * Support pallet::storage conditional compilation.
      
      * Add docs for cfg attributes.
      
      * Keep strong types for get cfg attrs return.
      
      * Update frame/support/procedural/src/pallet/parse/helper.rs
      
      * Update frame/support/procedural/src/pallet/parse/storage.rs
      
      Co-authored-by: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      844e2552
  2. Mar 15, 2021
  3. Mar 12, 2021
    • Robert Klotzner's avatar
    • Kian Paimani's avatar
      remove whitespaces. (#8341) · f7259758
      Kian Paimani authored
      f7259758
    • 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
    • Alexander Theißen's avatar
      contracts: Expose rent parameter to contracts (#8231) · a4e88758
      Alexander Theißen authored
      
      * contracts: Expose rent parameter to contracts
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_contracts --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/contracts/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Fix typos
      
      * Improve comments
      
      * Add rent parameter weights
      
      * Allow deploying a new schedule with the same version
      
      * Add storage migration for new schedule
      
      * Only decode the schedule version in storage migration
      
      * Remove confusing docs
      
      * Replace original_code_len() by aggregate_code_len()
      
      Co-authored-by: default avatarParity Benchmarking Bot <admin@parity.io>
      a4e88758
    • Bastian Köcher's avatar
      Do not ban peers for sending multiple valid requests (#8325) · 3743cec9
      Bastian Köcher authored
      We introduced banning of peers who spam us with the same request (more
      than 2 times). However, we missed that it is completely legal to send
      the same request multiple times as long as we did not provide any
      answer. An example for that is the justification request. This request
      is send multiple times until we could fetch the justification from one
      of our peers. So, the solution to this problem is to tag requests as
      fulfilled and to start counting these fulfilled requests. If the number
      is higher than what we allow, the peer should be banned.
      3743cec9
  4. Mar 11, 2021
  5. 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 <andrerfosilva@gmail.com>
      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 :shrug:.
      
      * 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
    • Denis_P's avatar
      CI: return docs jobs (#8307) · 9637faae
      Denis_P authored
      * CI: return docs jobs allowing them to fail
      
      * CI: refrain from Dwarnings for now
      
      * CI: pass RUSTFLAGS directly; no need removing what wasn't there
      9637faae
    • 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 <123550+andresilva@users.noreply.github.com>
      
      * 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 <123550+andresilva@users.noreply.github.com>
      7ace5e21
  6. Mar 09, 2021
    • Bastian Köcher's avatar
      c33235ac
    • Bastian Köcher's avatar
      Introduce new concept of "slot portion for proposing" (#8280) · 7599e0d6
      Bastian Köcher authored
      * Introduce new concept of "slot portion for proposing"
      
      Currently when building a block we actually give the proposer all of the
      time in the slot, while this is wrong. The slot is actually split in at
      least two phases proposing and propagation or in the polkadot case into
      three phases validating pov's, proposing and propagation. As we don't
      want to bring that much polkadot concepts into Substrate, we only
      support splitting the slot into proposing and propagation. The portion
      can now be passed as parameter to AuRa and BABE to configure this value.
      However, this slot portion for propagation doesn't mean that the
      proposer can not go over this limit. When we miss slots we still apply
      the lenience factor to increase the proposing time, so that we have
      enough time to build a heavy block.
      
      Besides all what was said above, this is especially required for
      parachains. Parachains have a much more constraint proposing window.
      Currently the slot duration is at minimum 12 seconds, but we only have
      around 500ms for proposing. So, this slot portion for proposing is
      really required to make it working without hacks.
      
      * Offgit feedback
      
      * Cast cast cast
      7599e0d6
    • Alexander Theißen's avatar
      Fix typo in generated docs. (#8300) · 7f170820
      Alexander Theißen authored
      7f170820
    • Liu-Cheng Xu's avatar
      Simplify the code a little bit (#8295) · ed7e4853
      Liu-Cheng Xu authored
      ed7e4853
    • Bastian Köcher's avatar
      Decrease the peer reputation on invalid block requests (#8260) · 85f32e88
      Bastian Köcher authored
      * Decrease the peer reputation on invalid block requests
      
      This pr changes the block request handler to decrease the reputation of
      peers when they send the same request multiple times or they send us an
      invalid block request.
      
      * Review feedback
      
      * Change log target
      
      * Remove unused code
      85f32e88
    • Niklas Adolfsson's avatar
    • 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 <jacogr@gmail.com>
      
      * 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 <gui.thiolliere@gmail.com>
      
      * Update frame/system/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      
      * Update frame/system/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      
      * 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 <shawntabrizi@gmail.com>
      
      * 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 <jacogr@gmail.com>
      Co-authored-by: default avatarParity Benchmarking Bot <admin@parity.io>
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      643a0ecd
  7. Mar 08, 2021