1. Dec 05, 2022
  2. Dec 04, 2022
    • Bastian Köcher's avatar
      frame-executive: Reject invalid inherents in the executive (#12365) · 1943e25c
      Bastian Köcher authored
      
      
      * frame-executive: Reject invalid inherents in the executive
      
      We already had support for making a block fail if an inherent returned, but it was part of the
      signed extension `CheckWeight`. Rejecting blocks with invalid inherents should happen on the
      `frame-executive` level without requiring any special signed extension. This is crucial to prevent
      any kind of spamming of the network that could may happen with blocks that include failing inherents.
      
      * FMT
      
      * Update frame/executive/src/lib.rs
      
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      
      * Update primitives/runtime/src/transaction_validity.rs
      
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      
      Co-authored-by: parity-processbot <>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      1943e25c
  3. Dec 03, 2022
  4. Dec 02, 2022
  5. Dec 01, 2022
  6. Nov 30, 2022
  7. Nov 29, 2022
  8. Nov 28, 2022
    • joe petrowski's avatar
      Remove Default, HasCompact, and TypeInfo trait bounds on AssetId (#12740) · d56214c2
      joe petrowski authored
      * Remove Default, HasCompact, and TypeInfo trait bounds on AssetId
      
      * don't use default in benchmarking
      
      * add helper trait
      
      * add helper to assets tx payment test
      
      * docs fixes
      
      * i'm confused
      
      * aha, cargo
      
      * move affected dispatchable calls into new indices
      
      * Helper -> BenchmarkHelper
      
      * benchmark use of helper
      
      * actually, don't break every call interface
      
      * use into on AssetIdParameter
      
      * Remove From from AssetIdParameter and use it in BenchmarkHelper
      
      * include from
      
      Co-authored-by: parity-processbot <>
      d56214c2
    • Adrian Catangiu's avatar
      client/beefy: fix on-demand justifications sync for old blocks (#12767) · 2d4126d2
      Adrian Catangiu authored
      
      
      * client/beefy: fix on-demand justif sync for old blocks
      
      When receiving BEEFY justifications for old blocks the state might
      be pruned for them, in which case justification verification fails
      because BEEFY validator set cannot be retrieved from runtime state.
      
      Fix this by having the voter give the validator set to the
      `OnDemandJustificationsEngine` as request information. On receiving
      a BEEFY justification for requested block, the provided validator
      set will be used to validate the justification.
      
      Signed-off-by: default avataracatangiu <[email protected]>
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * impl review suggestions
      
      * client/beefy: fail initialization if state unavailable
      
      * beefy: remove spammy log
      
      Signed-off-by: default avataracatangiu <[email protected]>
      Co-authored-by: parity-processbot <>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      2d4126d2
  9. Nov 27, 2022
    • Bastian Köcher's avatar
      ed25519_verify: Support using dalek for historical blocks (#12661) · 0c934a93
      Bastian Köcher authored
      
      
      * ed25519_verify: Support using dalek for historical blocks
      
      The switch from `ed25519-dalek` to `ed25519-zebra` was actually a breaking change. `ed25519-zebra`
      is more permissive. To support historical blocks when syncing a chain this pull request introduces
      an externalities extension `UseDalekExt`. This extension is just used as a signaling mechanism to
      `ed25519_verify` to use `ed25519-dalek` when it is present. Together with `ExtensionBeforeBlock` it
      can be used to setup a node in way to sync historical blocks that require `ed25519-dalek`, because
      they included a transaction that verified differently as when using `ed25519-zebra`.
      
      This feature can be enabled in the following way. In the chain service file, directly after the
      client is created, the following code should be added:
      
      ```
      use sc_client_api::ExecutorProvider;
      client.execution_extensions().set_extensions_factory(
      	sc_client_api::execution_extensions::ExtensionBeforeBlock::<Block, sp_io::UseDalekExt>::new(BLOCK_NUMBER_UNTIL_DALEK_SHOULD_BE_USED)
      );
      ```
      
      * Fix doc
      
      * More fixes
      
      * Update client/api/src/execution_extensions.rs
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      
      * Fix merge and warning
      
      * Fix docs
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      0c934a93
    • Alexander Theißen's avatar
      contracts: Don't put unstable functions in special module (#12781) · 0068716b
      Alexander Theißen authored
      
      
      * Don't put unstable functions in special module
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarSasha Gryaznov <[email protected]>
      
      * cargo fmt
      
      Co-authored-by: default avatarSasha Gryaznov <[email protected]>
      0068716b
  10. Nov 25, 2022
  11. Nov 24, 2022
    • Alexander Theißen's avatar
      contracts: Replace `sp-sandbox` and `wasmi-validation` by newest wasmi (#12501) · 08657f14
      Alexander Theißen authored
      
      
      * Replace sp-sandbox and wasmi-validation by just wasmi
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_contracts
      
      * Re-check original code on re-instrumentation
      
      * Fix clippy
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_contracts
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarRobin Freyler <[email protected]>
      
      * Replace wasmi by ::wasmi
      
      * Bump wasmi to 0.20
      
      * Add explanation for `unreachable`
      
      * Change proof
      
      * Fixup master merge
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_contracts
      
      * Fixup naming inconsistencies introduced by reentrancy PR
      
      * Fix `scan_imports` docs
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarSasha Gryaznov <[email protected]>
      
      * Fixup suggestions
      
      * Remove unnecessary &mut
      
      * Fix test
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_contracts
      
      * Fix benchmark merge fail
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_contracts
      
      * Fix docs as suggested by code review
      
      * Improve docs for `CodeRejected`
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarSasha Gryaznov <[email protected]>
      
      * Fix logic bug when setting `deterministic_only`
      
      * Don't panic when module fails to compile
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarRobin Freyler <[email protected]>
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarRobin Freyler <[email protected]>
      Co-authored-by: default avatarSasha Gryaznov <[email protected]>
      08657f14
    • João Paulo Silva de Souza's avatar
      Sort crates before splitting them into groups (+ some improvements) (#12755) · e69c3649
      João Paulo Silva de Souza authored
      * sort crates before splitting them into groups
      
      this is useful so that crates always get routed to a specific group for a given version of the source code, which means that jobs for each batch can be reliably retried individually
      
      * more verbose output
      
      * misc improvements
      
      * put uniq after sort
      
      uniq filters by adjacent lines
      
      * shellcheck
      
      * rm useless backlashes
      
      * handle edge case of no crates detected
      e69c3649
  12. Nov 23, 2022
  13. Nov 22, 2022
  14. Nov 21, 2022
    • Roman Useinov's avatar
      [Fix] Get target count from TargetList instead of storage (#12748) · 4cb24da8
      Roman Useinov authored
      Co-authored-by: parity-processbot <>
      4cb24da8
    • Adrian Catangiu's avatar
      client/beefy: persist voter state (#12712) · 3e7a2778
      Adrian Catangiu authored
      
      
      * client/beefy: prepare worker for persisting state
      
      * client/beefy: persist voter state
      
      * client/beefy: initialize persistent state
      
      * client/beefy: try to vote from the very beginning
      
      Now that voter is initialized from persistent state, it makes
      sense that it can attempt voting right away. This also helps
      the genesis case when we consider block `One` as mandatory.
      
      * client/beefy: add tests for voter state db
      * client/beefy: persist voter state as soon as initialized
      * client/beefy: make sure min-block-delta is at least 1
      * client/beefy: persist state after voting
      
      Persist state after handling self vote to avoid double voting in case
      of voter restarts.
      
      * client/beefy: persist state after handling mandatory block vote
      
      For mandatory blocks we want to make sure we're not losing votes
      in case of crashes or restarts, since voter will not make further
      progress without finalizing them.
      
      * frame/beefy: use GENESIS_AUTHORITY_SET_ID on pallet genesis
      
      * client/beefy: initialize voter at either genesis or last finalized
      To guarantee unbroken chain of mandatory blocks justifications, voter
      will always resume from either last BEEFY-justified block or
      `pallet-beefy` genesis, whichever is more recent.
      
      Initialization walks back the chain from latest GRANDPA finalized
      block looking for one of the above. Along the way, it also records
      and enqueues for processing any BEEFY mandatory blocks that have
      been already GRANDPA finalized but not BEEFY finalized.
      
      * client/beefy: decouple voter init from aux db state load
      * client/beefy: fix voter init tests
      * remove debug prints
      * gadget future must be type ()
      * fix init from last justification
      
      Signed-off-by: default avatarAdrian Catangiu <[email protected]>
      3e7a2778
    • João Paulo Silva de Souza's avatar
      Check all crates (#12709) · eae3299b
      João Paulo Silva de Souza authored
      * check all crates individually
      
      It's relevant to check workspace crates individually because otherwise their compilation problems
      due to feature misconfigurations won't be caught, as exemplified by
      https://github.com/paritytech/substrate/issues/12705
      
      * adapt to lack of multiple macos runners
      
      https://github.com/paritytech/substrate/pull/12709#discussion_r1022868752
      
      * fix cancel-pipeline-cargo-check-each-crate-macos
      
      * fix cargo-check-each-crate-macos again
      
      * time command execution
      
      * fix YAML anchors
      
      * add explanation for rounding division
      
      * ensure the minimum of one crate per group
      
      * collect artifacts for pipeline stopper
      
      * revert hardcoded crates_per_group
      
      * re-add crates_per_group=1
      eae3299b
  15. Nov 18, 2022
    • Fredrik Simonsson's avatar
      Update template to remove clippy warnings (#12670) · 69c64416
      Fredrik Simonsson authored
      * Update template to remove clippy warnings
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_lottery
      
      * Update templates from child project
      
      This should remove clippy warnings on generated files
      
      * Update after review
      
      * Update frame-weight-template.hbs
      
      Commit suggestion
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_lottery
      
      * Rerun linter on linked project
      
      Updates from child project
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_lottery
      
      Co-authored-by: command-bot <>
      69c64416
    • Pierre Krieger's avatar
      Fix the light client protocol protobuf schema (#12732) · b52e64d6
      Pierre Krieger authored
      * Fix the light client protocol protobuf schema
      
      * Add another test
      
      * Remove unused protobuf struct
      
      * Ok you have to use the nightly rustfmt apparently
      b52e64d6
    • Koute's avatar
      Remove the `wasmtime` feature flag (#12684) · 4214bc52
      Koute authored
      * Remove the `wasmtime` feature flag
      
      * rustfmt
      4214bc52