Skip to content
  1. Oct 27, 2023
    • juangirini's avatar
      feat: FRAME umbrella crate. (#1337) · 43415ef5
      juangirini authored
      
      
      ### Original PR https://github.com/paritytech/substrate/pull/14137
      
      This PR brings in the first version of the "_`frame` umbrella crate_".
      This crate is intended to serve two purposes:
      
      1. documentation
      2. easier development with frame. Ideally, we want most users to be able
      to build a frame-based pallet and runtime using just `frame` (plus
      `scale-codec` and `scale-info`).
      
      The crate is not finalized and is not yet intended for external use.
      Therefore, the version is set to `0.0.1-dev`, this PR is `silent`, and
      the entire crate is hidden behind the `experimental` flag. The main
      intention in merging it early on is to be able to iterate on it in the
      rest of
      [`developer-hub`](https://github.com/paritytech/polkadot-sdk-docs/)
      efforts.
      
      The public API of the `frame` crate is at the moment as follows: 
      
      ```
      pub mod frame
      pub use frame::log
      pub use frame::pallet
      pub mod frame::arithmetic
      pub use frame::arithmetic::<<sp_arithmetic::*>>
      pub use frame::arithmetic::<<sp_arithmetic::traits::*>>
      pub mod frame::deps
      pub use frame::deps::codec
      pub use frame::deps::frame_executive
      pub use frame::deps::frame_support
      pub use frame::deps::frame_system
      pub use frame::deps::scale_info
      pub use frame::deps::sp_api
      pub use frame::deps::sp_arithmetic
      pub use frame::deps::sp_block_builder
      pub use frame::deps::sp_consensus_aura
      pub use frame::deps::sp_consensus_grandpa
      pub use frame::deps::sp_core
      pub use frame::deps::sp_inherents
      pub use frame::deps::sp_io
      pub use frame::deps::sp_offchain
      pub use frame::deps::sp_runtime
      pub use frame::deps::sp_std
      pub use frame::deps::sp_version
      pub mod frame::derive
      pub use frame::derive::CloneNoBound
      pub use frame::derive::Debug
      pub use frame::derive::Debug
      pub use frame::derive::DebugNoBound
      pub use frame::derive::Decode
      pub use frame::derive::Decode
      pub use frame::derive::DefaultNoBound
      pub use frame::derive::Encode
      pub use frame::derive::Encode
      pub use frame::derive::EqNoBound
      pub use frame::derive::PartialEqNoBound
      pub use frame::derive::RuntimeDebug
      pub use frame::derive::RuntimeDebugNoBound
      pub use frame::derive::TypeInfo
      pub use frame::derive::TypeInfo
      pub mod frame::prelude
      pub use frame::prelude::<<frame_support::pallet_prelude::*>>
      pub use frame::prelude::<<frame_system::pallet_prelude::*>>
      pub use frame::prelude::<<sp_std::prelude::*>>
      pub use frame::prelude::CloneNoBound
      pub use frame::prelude::Debug
      pub use frame::prelude::Debug
      pub use frame::prelude::DebugNoBound
      pub use frame::prelude::Decode
      pub use frame::prelude::Decode
      pub use frame::prelude::DefaultNoBound
      pub use frame::prelude::Encode
      pub use frame::prelude::Encode
      pub use frame::prelude::EqNoBound
      pub use frame::prelude::PartialEqNoBound
      pub use frame::prelude::RuntimeDebug
      pub use frame::prelude::RuntimeDebugNoBound
      pub use frame::prelude::TypeInfo
      pub use frame::prelude::TypeInfo
      pub use frame::prelude::frame_system
      pub mod frame::primitives
      pub use frame::primitives::BlakeTwo256
      pub use frame::primitives::H160
      pub use frame::primitives::H256
      pub use frame::primitives::H512
      pub use frame::primitives::Hash
      pub use frame::primitives::Keccak256
      pub use frame::primitives::U256
      pub use frame::primitives::U512
      pub mod frame::runtime
      pub mod frame::runtime::apis
      pub use frame::runtime::apis::<<frame_system_rpc_runtime_api::*>>
      pub use frame::runtime::apis::<<sp_api::*>>
      pub use frame::runtime::apis::<<sp_block_builder::*>>
      pub use frame::runtime::apis::<<sp_consensus_aura::*>>
      pub use frame::runtime::apis::<<sp_consensus_grandpa::*>>
      pub use frame::runtime::apis::<<sp_offchain::*>>
      pub use frame::runtime::apis::<<sp_session::runtime_api::*>>
      pub use frame::runtime::apis::<<sp_transaction_pool::runtime_api::*>>
      pub use frame::runtime::apis::ApplyExtrinsicResult
      pub use frame::runtime::apis::CheckInherentsResult
      pub use frame::runtime::apis::InherentData
      pub use frame::runtime::apis::OpaqueMetadata
      pub use frame::runtime::apis::impl_runtime_apis
      pub use frame::runtime::apis::sp_api
      pub mod frame::runtime::prelude
      pub use frame::runtime::prelude::<<frame_executive::*>>
      pub use frame::runtime::prelude::ConstBool
      pub use frame::runtime::prelude::ConstI128
      pub use frame::runtime::prelude::ConstI16
      pub use frame::runtime::prelude::ConstI32
      pub use frame::runtime::prelude::ConstI64
      pub use frame::runtime::prelude::ConstI8
      pub use frame::runtime::prelude::ConstU128
      pub use frame::runtime::prelude::ConstU16
      pub use frame::runtime::prelude::ConstU32
      pub use frame::runtime::prelude::ConstU64
      pub use frame::runtime::prelude::ConstU8
      pub use frame::runtime::prelude::NativeVersion
      pub use frame::runtime::prelude::RuntimeVersion
      pub use frame::runtime::prelude::construct_runtime
      pub use frame::runtime::prelude::create_runtime_str
      pub use frame::runtime::prelude::derive_impl
      pub use frame::runtime::prelude::frame_support
      pub use frame::runtime::prelude::ord_parameter_types
      pub use frame::runtime::prelude::parameter_types
      pub use frame::runtime::prelude::runtime_version
      pub mod frame::runtime::testing_prelude
      pub use frame::runtime::testing_prelude::BuildStorage
      pub use frame::runtime::testing_prelude::Storage
      pub mod frame::runtime::types_common
      pub type frame::runtime::types_common::AccountId = <<frame::runtime::types_common::Signature as sp_runtime::traits::Verify>::Signer as sp_runtime::traits::IdentifyAccount>::AccountId
      pub type frame::runtime::types_common::BlockNumber = u32
      pub type frame::runtime::types_common::BlockOf<T, Extra> = sp_runtime::generic::block::Block<sp_runtime::generic::header::Header<frame::runtime::types_common::BlockNumber, sp_runtime::traits::BlakeTwo256>, sp_runtime::generic::unchecked_extrinsic::UncheckedExtrinsic<sp_runtime::multiaddress::MultiAddress<frame::runtime::types_common::AccountId, ()>, <T as frame_system::pallet::Config>::RuntimeCall, frame::runtime::types_common::Signature, Extra>>
      pub type frame::runtime::types_common::OpaqueBlock = sp_runtime::generic::block::Block<sp_runtime::generic::header::Header<frame::runtime::types_common::BlockNumber, sp_runtime::traits::BlakeTwo256>, sp_runtime::OpaqueExtrinsic>
      pub type frame::runtime::types_common::Signature = sp_runtime::MultiSignature
      pub type frame::runtime::types_common::SystemSignedExtensionsOf<T> = (frame_system::extensions::check_non_zero_sender::CheckNonZeroSender<T>, frame_system::extensions::check_spec_version::CheckSpecVersion<T>, frame_system::extensions::check_tx_version::CheckTxVersion<T>, frame_system::extensions::check_genesis::CheckGenesis<T>, frame_system::extensions::check_mortality::CheckMortality<T>, frame_system::extensions::check_nonce::CheckNonce<T>, frame_system::extensions::check_weight::CheckWeight<T>)
      pub mod frame::testing_prelude
      pub use frame::testing_prelude::<<frame_executive::*>>
      pub use frame::testing_prelude::<<frame_system::mocking::*>>
      pub use frame::testing_prelude::BuildStorage
      pub use frame::testing_prelude::ConstBool
      pub use frame::testing_prelude::ConstI128
      pub use frame::testing_prelude::ConstI16
      pub use frame::testing_prelude::ConstI32
      pub use frame::testing_prelude::ConstI64
      pub use frame::testing_prelude::ConstI8
      pub use frame::testing_prelude::ConstU128
      pub use frame::testing_prelude::ConstU16
      pub use frame::testing_prelude::ConstU32
      pub use frame::testing_prelude::ConstU64
      pub use frame::testing_prelude::ConstU8
      pub use frame::testing_prelude::NativeVersion
      pub use frame::testing_prelude::RuntimeVersion
      pub use frame::testing_prelude::Storage
      pub use frame::testing_prelude::TestState
      pub use frame::testing_prelude::assert_err
      pub use frame::testing_prelude::assert_err_ignore_postinfo
      pub use frame::testing_prelude::assert_error_encoded_size
      pub use frame::testing_prelude::assert_noop
      pub use frame::testing_prelude::assert_ok
      pub use frame::testing_prelude::assert_storage_noop
      pub use frame::testing_prelude::construct_runtime
      pub use frame::testing_prelude::create_runtime_str
      pub use frame::testing_prelude::derive_impl
      pub use frame::testing_prelude::frame_support
      pub use frame::testing_prelude::frame_system
      pub use frame::testing_prelude::if_std
      pub use frame::testing_prelude::ord_parameter_types
      pub use frame::testing_prelude::parameter_types
      pub use frame::testing_prelude::runtime_version
      pub use frame::testing_prelude::storage_alias
      pub mod frame::traits
      pub use frame::traits::<<frame_support::traits::*>>
      pub use frame::traits::<<sp_runtime::traits::*>>
      ```
      
      ---
      
      The road to full stabilization is
      
      - [ ] https://github.com/paritytech/polkadot-sdk/issues/127
      - [ ] have a more intentional version bump, as opposed to the current bi
      weekly force-major-bump
      - [ ] revise the internal API of `frame`, especially what goes into the
      `prelude`s.
      - [ ] migrate all internal pallets and runtime to use `frame`
      
      ---------
      
      Co-authored-by: default avatarkianenigma <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      Co-authored-by: default avatarOliver Tale-Yazdi <[email protected]>
      Co-authored-by: default avatarFrancisco Aguirre <[email protected]>
      43415ef5
  2. Oct 24, 2023
  3. Oct 22, 2023
    • Bastian Köcher's avatar
      sc-executor: Increase maximum instance count (#1856) · e2b21d00
      Bastian Köcher authored
      
      
      Changes the maximum instances count for `wasmtime` to `64`. It also
      allows to only pass in maximum `32` for `--max-runtime-instances` as
      `256` was way too big. With `64` instances in total and `32` that can be
      configured in maximum, there should be enough space to accommodate for
      extra instances that are may required to be allocated adhoc.
      
      ---------
      
      Co-authored-by: default avatarKoute <[email protected]>
      e2b21d00
  4. Oct 20, 2023
    • Dmitry Markin's avatar
      Revert "Check for parent of first ready block being on chain (#1812)" (#1950) · 69c986f4
      Dmitry Markin authored
      This reverts https://github.com/paritytech/polkadot-sdk/pull/1812 until
      we know why it causes syncing issues reported in
      https://github.com/subspace/subspace/issues/2122.
      69c986f4
    • Bastian Köcher's avatar
      `xcm`: Change `TypeInfo::path` to not include `staging` (#1948) · f3bf5c1a
      Bastian Köcher authored
      
      
      The `xcm` crate was renamed to `staging-xcm` to be able to publish it to
      crates.io as someone as squatted `xcm`. The problem with this rename is
      that the `TypeInfo` includes the crate name which ultimately lands in
      the metadata. The metadata is consumed by downstream users like
      `polkadot-js` or people building on top of `polkadot-js`. These people
      are using the entire `path` to find the type in the type registry. Thus,
      their code would break as the type path would now be [`staging_xcm`,
      `VersionedXcm`] instead of [`xcm`, `VersionedXcm`]. This pull request
      fixes this by renaming the path segment `staging_xcm` to `xcm`.
      
      This requires: https://github.com/paritytech/scale-info/pull/197
      
      ---------
      
      Co-authored-by: default avatarFrancisco Aguirre <[email protected]>
      f3bf5c1a
  5. Oct 16, 2023
    • Adrian Catangiu's avatar
      sc-consensus-beefy: fix initialization when state is unavailable (#1888) · 646ecd0e
      Adrian Catangiu authored
      
      
      Fix situation where BEEFY initial validator set could not be determined.
      
      If state is unavailable at BEEFY genesis block to get initial validator
      set, get the info from header digests. For this, we need to walk back
      the chain starting from BEEFY genesis looking for the BEEFY digest
      announcing the active validator set for that respective session.
      
      This commit fixes a silly bug where walking back the chain was stopped
      when reaching BEEFY genesis block, which is incorrect when BEEFY genesis
      is not session boundary block. When BEEFY genesis is set to some random
      block within a session, we need to walk back to the start of the session
      to see the validator set announcement.
      
      Added regression test for this fix.
      
      Fixes https://github.com/paritytech/polkadot-sdk/issues/1885
      
      Signed-off-by: default avatarAdrian Catangiu <[email protected]>
      646ecd0e
  6. Oct 13, 2023
    • Adrian Catangiu's avatar
      sc-consensus-beefy: improve gossip logic (#1852) · 83206000
      Adrian Catangiu authored
      - Remove cached messages used for deduplication in `GossipValidator`
      since they're already deduplicated in upper layer `NetworkGossip`.
      - Add cache for "justified rounds" to quickly discard any further (even
      if potentially different) justifications at the gossip level, once a
      valid one (for a respective round) is submitted to the worker.
      - Add short-circuit in worker `finalize()` method to not attempt to
      finalize same block multiple times (for example when we get
      justifications for same block from multiple components like
      block-import, gossip or on-demand).
      - Change a test which had A LOT of latency in syncing blocks for some
      weird reason and would only run after ~150seconds. It now runs
      instantly.
      
      Fixes https://github.com/paritytech/polkadot-sdk/issues/1728
      83206000
  7. Oct 11, 2023
  8. Oct 10, 2023
  9. Oct 09, 2023
    • David Emett's avatar
      Mixnet integration (#1346) · a808a3a0
      David Emett authored
      
      
      See #1345, <https://github.com/paritytech/substrate/pull/14207>.
      
      This adds all the necessary mixnet components, and puts them together in
      the "kitchen-sink" node/runtime. The components added are:
      
      - A pallet (`frame/mixnet`). This is responsible for determining the
      current mixnet session and phase, and the mixnodes to use in each
      session. It provides a function that validators can call to register a
      mixnode for the next session. The logic of this pallet is very similar
      to that of the `im-online` pallet.
      - A service (`client/mixnet`). This implements the core mixnet logic,
      building on the `mixnet` crate. The service communicates with other
      nodes using notifications sent over the "mixnet" protocol.
      - An RPC interface. This currently only supports sending transactions
      over the mixnet.
      
      ---------
      
      Co-authored-by: default avatarDavid Emett <[email protected]>
      Co-authored-by: default avatarJavier Viola <[email protected]>
      a808a3a0
  10. Oct 06, 2023
    • dependabot[bot]'s avatar
      Bump the known_good_semver group with 1 update (#1802) · ddf5e5c0
      dependabot[bot] authored
      
      
      Bumps the known_good_semver group with 1 update:
      [syn](https://github.com/dtolnay/syn).
      
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/dtolnay/syn/releases">syn's
      releases</a>.</em></p>
      <blockquote>
      <h2>2.0.38</h2>
      <ul>
      <li>Fix <em>&quot;method 'peek' has an incompatible type for
      trait&quot;</em> error when defining <code>bool</code> as a custom
      keyword (<a
      href="https://redirect.github.com/dtolnay/syn/issues/1518">#1518</a>,
      thanks <a
      href="https://github.com/Vanille-N"><code>@​Vanille-N</code></a>)</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/dtolnay/syn/commit/43632bfb6c78ee1f952645a268ab1ac4af162977"><code>43632bf</code></a>
      Release 2.0.38</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/abd2c214b44da64a5e420d72919308300eebc23d"><code>abd2c21</code></a>
      Merge pull request <a
      href="https://redirect.github.com/dtolnay/syn/issues/1518">#1518</a>
      from Vanille-N/master</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/6701e6077e15013ef34b15e3ffdae2657e499d83"><code>6701e60</code></a>
      Absolute path to <code>bool</code> in
      <code>custom_punctuation.rs</code></li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/7313d242398111423f046386aa0a75548f63d236"><code>7313d24</code></a>
      Resolve single_match_else pedantic clippy lint in code generator</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/67ab64f3c09e17b23493c7cda498e7edb8830f21"><code>67ab64f</code></a>
      Include unexpected token in the test failure message</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/137ae33486de3f2652487f8f64436ad1429df496"><code>137ae33</code></a>
      Check no remaining token after the first literal</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/258e9e8a11d188c1ee1ffb2b069819239999f9ac"><code>258e9e8</code></a>
      Ignore single_match_else pedantic clippy lint in test</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/92fd50ee8cb52968d9c66fbe6d67638c1f838e26"><code>92fd50e</code></a>
      Test docs.rs documentation build in CI</li>
      <li>See full diff in <a
      href="https://github.com/dtolnay/syn/compare/2.0.37...2.0.38">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      [![Dependabot compatibility
      score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=syn&package-manager=cargo&previous-version=2.0.37&new-version=2.0.38)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore <dependency name> major version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's major version (unless you unignore this specific
      dependency's major version or upgrade to it yourself)
      - `@dependabot ignore <dependency name> minor version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's minor version (unless you unignore this specific
      dependency's minor version or upgrade to it yourself)
      - `@dependabot ignore <dependency name>` will close this group update PR
      and stop Dependabot creating any more for the specific dependency
      (unless you unignore this specific dependency or upgrade to it yourself)
      - `@dependabot unignore <dependency name>` will remove all of the ignore
      conditions of the specified dependency
      - `@dependabot unignore <dependency name> <ignore condition>` will
      remove the ignore condition of the specified dependency and ignore
      conditions
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <[email protected]>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      ddf5e5c0
  11. Oct 05, 2023
    • dependabot[bot]'s avatar
      Bump the known_good_semver group with 1 update (#1752) · 0c592329
      dependabot[bot] authored
      
      
      Bumps the known_good_semver group with 1 update:
      [clap](https://github.com/clap-rs/clap).
      
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/clap-rs/clap/releases">clap's
      releases</a>.</em></p>
      <blockquote>
      <h2>v4.4.6</h2>
      <h2>[4.4.6] - 2023-09-28</h2>
      <h3>Internal</h3>
      <ul>
      <li>Upgrade <code>anstream</code></li>
      </ul>
      <h2>v4.4.5</h2>
      <h2>[4.4.5] - 2023-09-25</h2>
      <h3>Fixes</h3>
      <ul>
      <li><em>(parser)</em> When inferring subcommand <code>name</code> or
      <code>long_flag</code>, allow ambiguous-looking matches that
      unambiguously map back to the same command</li>
      <li><em>(parser)</em> When inferring subcommand <code>long_flag</code>,
      don't panic</li>
      <li><em>(assert)</em> Clarify what action is causing a positional that
      doesn't set values which is especially useful for derive users</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Changelog</summary>
      <p><em>Sourced from <a
      href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's
      changelog</a>.</em></p>
      <blockquote>
      <h2>[4.4.6] - 2023-09-28</h2>
      <h3>Internal</h3>
      <ul>
      <li>Upgrade <code>anstream</code></li>
      </ul>
      <h2>[4.4.5] - 2023-09-25</h2>
      <h3>Fixes</h3>
      <ul>
      <li><em>(parser)</em> When inferring subcommand <code>name</code> or
      <code>long_flag</code>, allow ambiguous-looking matches that
      unambiguously map back to the same command</li>
      <li><em>(parser)</em> When inferring subcommand <code>long_flag</code>,
      don't panic</li>
      <li><em>(assert)</em> Clarify what action is causing a positional that
      doesn't set values which is especially useful for derive users</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/clap-rs/clap/commit/39f5e807af1c08acedbf7343ce9ec379a4308636"><code>39f5e80</code></a>
      chore: Release</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/a5cb6bb988bbacb02e8cf98b6156c860d0801e08"><code>a5cb6bb</code></a>
      docs: Update changelog</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/418c0017a654e9859adfa9b051815f20e4583e31"><code>418c001</code></a>
      Merge pull request <a
      href="https://redirect.github.com/clap-rs/clap/issues/5146">#5146</a>
      from epage/update</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/485b957c4b90aa010276f813dbd429e1071f8fd9"><code>485b957</code></a>
      chore: Upgrade anstream</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/a1af8d9ad8f81eb2d71203b50c370a78ce3ec9f3"><code>a1af8d9</code></a>
      chore: Update from '_rust/main'</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/ac51f0925003597dec21529538597dbd7872d1ac"><code>ac51f09</code></a>
      chore(ci): Normalize json5 syntax</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/86c29dea384c7392a2b682fa0150f52c0f4c7f00"><code>86c29de</code></a>
      chore(ci): Updaet Renovate schema</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/204552890d316ec9ae0b21f85298ba1d5d0786f8"><code>2045528</code></a>
      chore: Release</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/55d223001682bc668f5e4db91afd5e76c2a36597"><code>55d2230</code></a>
      docs: Update changelog</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/492ee03b325ff98c7702295e024576b52b71358d"><code>492ee03</code></a>
      Merge pull request <a
      href="https://redirect.github.com/clap-rs/clap/issues/5140">#5140</a>
      from epage/dyn</li>
      <li>Additional commits viewable in <a
      href="https://github.com/clap-rs/clap/compare/v4.4.4...v4.4.6">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      [![Dependabot compatibility
      score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=4.4.4&new-version=4.4.6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore <dependency name> major version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's major version (unless you unignore this specific
      dependency's major version or upgrade to it yourself)
      - `@dependabot ignore <dependency name> minor version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's minor version (unless you unignore this specific
      dependency's minor version or upgrade to it yourself)
      - `@dependabot ignore <dependency name>` will close this group update PR
      and stop Dependabot creating any more for the specific dependency
      (unless you unignore this specific dependency or upgrade to it yourself)
      - `@dependabot unignore <dependency name>` will remove all of the ignore
      conditions of the specified dependency
      - `@dependabot unignore <dependency name> <ignore condition>` will
      remove the ignore condition of the specified dependency and ignore
      conditions
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <[email protected]>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      0c592329
    • Sebastian Kunert's avatar
      Delete full db directory with `purge-chain` subcommand (#1786) · d21113c1
      Sebastian Kunert authored
      Closes #1767 
      
      Until now the `purge-chain` command would only remove the `full`
      subfolder of the db folder. However there is also the `parachains` db
      that currently remains and can cause problems on node restart.
      
      Example wiht old code:
      ```
      polkadot purge-chain --database paritydb --base-path /tmp/some-folder
      Are you sure to remove "/tmp/some-folder/chains/polkadot/paritydb/full"? [y/N]: y
      "/tmp/some-folder/chains/polkadot/paritydb/full" removed.
      ```
      In this case `/tmp/some-folder/chains/polkadot/paritydb/parachains`
      would remain and might cause problem on node restart because of version
      conflicts as described in #1767. After this PR the whole
      `/tmp/some-folder/chains/polkadot/paritydb` folder will be deleted.
      d21113c1
  12. Oct 03, 2023
  13. Sep 30, 2023
  14. Sep 29, 2023
    • Sebastian Kunert's avatar
      9485b0b4
    • Dmitry Markin's avatar
      Move import queue from `ChainSync` to `SyncingEngine` (#1736) · 0691c91e
      Dmitry Markin authored
      This PR is part of [Sync
      2.0](https://github.com/paritytech/polkadot-sdk/issues/534) refactoring
      aimed at making `ChainSync` a pure state machine.
      
      Resolves https://github.com/paritytech/polkadot-sdk/issues/501.
      0691c91e
    • Tadeo Hepperle's avatar
      [RPC-Spec-V2] chainHead: use integer for block index and adjust RuntimeVersion JSON format (#1666) · 379be3d7
      Tadeo Hepperle authored
      This PR adjusts the serialized format of the the returned RuntimeVersion
      in the rpc-spec-v2 methods. This is done to match the format defined
      here:
      https://paritytech.github.io/json-rpc-interface-spec/api/chainHead_unstable_follow.html#about-the-runtime
      
      - ##### `apis` field as object
      `apis` field of `RuntimeVersion` is now returned as an object, e.g. 
      ```
      "apis": {
            "0xdf6acb689907609b": 3,
            "0x37e397fc7c91f5e4": 1,
      }
      ```
      instead of 
      ```
      "apis": [
            ["0xdf6acb689907609b", 3],
            ["0x37e397fc7c91f5e4", 1],
      ]
      ```
      - ##### removed `stateVersion` and `authoringVersion`
      `stateVersion` and `authoringVersion` are no longer returned in the
      `RuntimeVersion` JSON Object.
      
      - ##### block index in chain head events as integer
      
      ### Related Issues
      
      Closes: #1507
      Closes: #1146
      
      ### Testing Done
      Adjusted existing tests to make sure data is returned in the correct
      format.
      379be3d7
  15. Sep 28, 2023
    • btwiuse's avatar
      Fix `subkey inspect` output text padding (#1744) · 7b9861a2
      btwiuse authored
      
      
      This pull request is to fix the output text misalignment of `subkey
      inspect` command:
      
      (the `Network ID` line has an extra space at the end, and the `Secret
      seed` line lacks a leading space)
      
      ```
      [btwiuse@railway ~]$ subkey inspect '' | cat -A
      Secret Key URI `` is account:$
        Network ID:        substrate $
       Secret seed:       0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e$
        Public key (hex):  0x46ebddef8cd9bb167dc30878d7113b7e168e6f0646beffd77d69d39bad76b47a$
        Account ID:        0x46ebddef8cd9bb167dc30878d7113b7e168e6f0646beffd77d69d39bad76b47a$
        Public key (SS58): 5DfhGyQdFobKM8NsWvEeAKk5EQQgYe9AydgJ7rMB6E1EqRzV$
        SS58 Address:      5DfhGyQdFobKM8NsWvEeAKk5EQQgYe9AydgJ7rMB6E1EqRzV$
      ```
      
      The output should be in the same YAML-like format as `subkey generate`:
      
      ```
      [btwiuse@railway ~]$ subkey generate  | cat -A
      Secret phrase:       awkward eagle survey resemble novel resist modify memory pistol shed flower run$
        Network ID:        substrate$
        Secret seed:       0x20502f79366325b7dc7620664e8844ae69d441baf6e5b571a57d3b3ff28e9586$
        Public key (hex):  0x468874b9e5b6b77333fa702b9201b924d6834bf956e33e2bbe37d131134ca830$
        Account ID:        0x468874b9e5b6b77333fa702b9201b924d6834bf956e33e2bbe37d131134ca830$
        Public key (SS58): 5DfBkAMg5xQmsePFr3BWLZm99smiNyy9axWSgembvFgDKh9v$
        SS58 Address:      5DfBkAMg5xQmsePFr3BWLZm99smiNyy9axWSgembvFgDKh9v$
      ```
      
      This change will fix `subkey` as well as all binaries that embed it as
      the `key` subcommand, for example: `substrate key`, `polkadot key`, etc.
      
      ---------
      
      Co-authored-by: default avatarLiam Aharon <[email protected]>
      7b9861a2
    • Alexandru Vasile's avatar
      archive: Implement height, hashByHeight and call (#1582) · 945ebbbc
      Alexandru Vasile authored
      
      
      This PR implements:
      - `archive_unstable_finalized_height`: Get the height of the most recent
      finalized block
      - `archive_unstable_hash_by_height`: Get the hashes (possible empty) of
      blocks from the given height
      - `archive_unstable_call`: Call into the runtime of a block
      
      Builds on top of: https://github.com/paritytech/polkadot-sdk/pull/1560
      
      ### Testing Done
      - unit tests for the methods with custom block tree for different
      heights / forks
      
      Closes: https://github.com/paritytech/polkadot-sdk/issues/1510
      Closes: https://github.com/paritytech/polkadot-sdk/issues/1513
      Closes: https://github.com/paritytech/polkadot-sdk/issues/1511
      
      @paritytech/subxt-team
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <[email protected]>
      Co-authored-by: default avatarSebastian Kunert <[email protected]>
      945ebbbc
    • Alexandru Vasile's avatar
      rpc/client: Propagate `rpc_methods` method to reported methods (#1713) · b5a0708f
      Alexandru Vasile authored
      
      
      The PR exposes the `rpc_methods` name in the `rpc_methods` response.
      This feature is useful for servers that only forward requests to methods
      that are reported by the `rpc_methods`.
      
      Jsonrpsee exposes the available methods registered so far. Registering
      the `rpc_methods` requires a closure that already stores the result. As
      such, the `rpc_methods` method name is manually added to the available
      methods.
      
      Closes: https://github.com/paritytech/polkadot-sdk/issues/1627
      
      ### Testing Done
      
      ```
      $> curl -H "Content-Type: application/json" -d '{"id":1, "jsonrpc":"2.0", "method": "rpc_methods", "params":[]}' http://localhost:9944
      
      {"jsonrpc":"2.0","result":{"methods":["account_nextIndex",... "rpc_methods",..."unsubscribe_newHead"]},"id":1}⏎
      ```
      
      @paritytech/subxt-team
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <[email protected]>
      b5a0708f
  16. Sep 27, 2023
  17. Sep 26, 2023
    • dependabot[bot]'s avatar
      Bump directories from 4.0.1 to 5.0.1 (#1656) · a846b746
      dependabot[bot] authored
      
      
      Bumps [directories](https://github.com/soc/directories-rs) from 4.0.1 to
      5.0.1.
      <details>
      <summary>Commits</summary>
      <ul>
      <li>See full diff in <a
      href="https://github.com/soc/directories-rs/commits">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      [![Dependabot compatibility
      score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=directories&package-manager=cargo&previous-version=4.0.1&new-version=5.0.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore <dependency name> major version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's major version (unless you unignore this specific
      dependency's major version or upgrade to it yourself)
      - `@dependabot ignore <dependency name> minor version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's minor version (unless you unignore this specific
      dependency's minor version or upgrade to it yourself)
      - `@dependabot ignore <dependency name>` will close this group update PR
      and stop Dependabot creating any more for the specific dependency
      (unless you unignore this specific dependency or upgrade to it yourself)
      - `@dependabot unignore <dependency name>` will remove all of the ignore
      conditions of the specified dependency
      - `@dependabot unignore <dependency name> <ignore condition>` will
      remove the ignore condition of the specified dependency and ignore
      conditions
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <[email protected]>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      a846b746
    • Alexandru Vasile's avatar
      chainHead/storage: Fix storage iteration using the query key (#1665) · cc50eda0
      Alexandru Vasile authored
      
      
      This PR ensures that all storage keys under a prefix are returned by the
      `chainHead_storage` method.
      
      Before this PR, the `storage_keys` was used with just the `start_key`.
      Before the pagination event was generated, the last reported key
      `last_key` was saved internally.
      When the pagination is resumed, the `last_key` will serve as the next
      `start_key` to the `storage_keys` API.
      
      However, this behavior does not function properly for non-prefixed
      storage keys.
      
      Entry keys `a`, `ab`, `abc` share a common prefix and therefore the `ab`
      key leads to `abc`.
      However, for `a`, `ab`, `aB` and `abc`, the `aB` key does not
      immediately lead to `abc`.
      
      To mitigate this, the PR saves the start key of the query, together with
      the next pagination key.
      Improve testing to ensure we have a key entry that doesn't share the
      prefix with the descendant key.
      
      @paritytech/subxt-team
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <[email protected]>
      cc50eda0
  18. Sep 25, 2023
  19. Sep 20, 2023
    • dependabot[bot]'s avatar
      Bump the known_good_semver group with 2 updates (#1620) · 1517eb8d
      dependabot[bot] authored
      [//]: # (dependabot-start)
      ️  **Dependabot is rebasing this PR** 
      
      ️ 
      
      Rebasing might not happen immediately, so don't worry if this takes some
      time.
      
      Note: if you make any changes to this PR yourself, they will take
      precedence over the rebase.
      
      ---
      
      [//]: # (dependabot-end)
      
      Bumps the known_good_semver group with 2 updates:
      [clap](https://github.com/clap-rs/clap) and
      [syn](https://github.com/dtolnay/syn).
      
      Updates `clap` from 4.4.3 to 4.4.4
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/clap-rs/clap/releases">clap's
      releases</a>.</em></p>
      <blockquote>
      <h2>v4.4.4</h2>
      <h2>[4.4.4] - 2023-09-18</h2>
      <h3>Internal</h3>
      <ul>
      <li>Update <code>terminal_size</code> to 0.3</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Changelog</summary>
      <p><em>Sourced from <a
      href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's
      changelog</a>.</em></p>
      <blockquote>
      <h2>[4.4.4] - 2023-09-18</h2>
      <h3>Internal</h3>
      <ul>
      <li>Update <code>terminal_size</code> to 0.3</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/clap-rs/clap/commit/e6e539660f36487e3521ab6835ef1381a21785a4"><code>e6e5396</code></a>
      chore: Release</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/acbb60c11389d362e3b2d23a7b2a0a0523bd2fa8"><code>acbb60c</code></a>
      docs: Update changelog</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/f09d521450c50f56153f7246489666c71e3b4739"><code>f09d521</code></a>
      Merge pull request <a
      href="https://redirect.github.com/clap-rs/clap/issues/5129">#5129</a>
      from cgwalters/widen-terminal-size</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/84f99ff979d58e3fe94716144b1800fd81723ed7"><code>84f99ff</code></a>
      chore(builder): Bump terminal_size to 0.3</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/7f8df272d90afde89e40de086492e1c9f5749897"><code>7f8df27</code></a>
      Merge pull request <a
      href="https://redirect.github.com/clap-rs/clap/issues/5124">#5124</a>
      from devinherron/master</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/4dff87386a950d8dfa8e89906e9bf54d180d13de"><code>4dff873</code></a>
      fix(doc): Fix typo in 03_04_subcommands.md</li>
      <li>See full diff in <a
      href="https://github.com/clap-rs/clap/compare/v4.4.3...v4.4.4">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      Updates `syn` from 2.0.36 to 2.0.37
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/dtolnay/syn/releases">syn's
      releases</a>.</em></p>
      <blockquote>
      <h2>2.0.37</h2>
      <ul>
      <li>Work around incorrect future compatibility warning in rustc
      1.74.0-nightly</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/dtolnay/syn/commit/96810880f3acbb63415cf4684ab42c82edc31e2a"><code>9681088</code></a>
      Release 2.0.37</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/fbe3bc2ddcee4192f95697a953330d031030f5a1"><code>fbe3bc2</code></a>
      Work around unknown_lints warning on rustc older than 1.64</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/75cf912e061ef5a1d97c003f4988f43d7639f5a8"><code>75cf912</code></a>
      Ignore more repr_transparent_external_private_fields</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/299c782439823b868de4aea3682b41d03351d978"><code>299c782</code></a>
      Ignore false repr_transparent_external_private_fields FCW in generated
      code</li>
      <li>See full diff in <a
      href="https://github.com/dtolnay/syn/compare/2.0.36...2.0.37">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore <dependency name> major version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's major version (unless you unignore this specific
      dependency's major version or upgrade to it yourself)
      - `@dependabot ignore <dependency name> minor version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's minor version (unless you unignore this specific
      dependency's minor version or upgrade to it yourself)
      - `@dependabot ignore <dependency name>` will close this group update PR
      and stop Dependabot creating any more for the specific dependency
      (unless you unignore this specific dependency or upgrade to it yourself)
      - `@dependabot unignore <dependency name>` will remove all of the ignore
      conditions of the specified dependency
      - `@dependabot unignore <dependency name> <ignore condition>` will
      remove the ignore condition of the specified dependency and ignore
      conditions
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <[email protected]>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      1517eb8d
  20. Sep 19, 2023
    • Alexandru Vasile's avatar
      archive: Fetch body, genesisHash and header (#1560) · f3061c14
      Alexandru Vasile authored
      
      
      This PR lays the foundation for implementing the archive RPC methods.
      
      The methods implemented by this PR:
      - archive_unstable_body: Fetch the block's body (a vector of hex-encoded
      scale-encoded extrinsics) from a given block hash
      - archive_unstable_genesisHash: Fetch the genesis hash
      - archive_unstable_header: Fetch the header from a given block hash
      
      Added unit tests for the methods.
      
      This PR is implementing the methods without exposing them to the RPC
      layer; which are to be exposed by a follow-up PR.
      
      Closes: https://github.com/paritytech/polkadot-sdk/issues/1509 
      Closes: https://github.com/paritytech/polkadot-sdk/issues/1514
      
      @paritytech/subxt-team
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <[email protected]>
      f3061c14
  21. Sep 18, 2023
    • dependabot[bot]'s avatar
      Bump the known_good_semver group with 1 update (#1606) · 372929fa
      dependabot[bot] authored
      
      
      Bumps the known_good_semver group with 1 update:
      [syn](https://github.com/dtolnay/syn).
      
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/dtolnay/syn/releases">syn's
      releases</a>.</em></p>
      <blockquote>
      <h2>2.0.36</h2>
      <ul>
      <li>Restore compatibility with
      <code>--generate-link-to-definition</code> documentation builds (<a
      href="https://redirect.github.com/dtolnay/syn/issues/1514">#1514</a>)</li>
      </ul>
      <h2>2.0.35</h2>
      <ul>
      <li>Make rust-analyzer produce preferred brackets for invocations of
      <code>Token!</code> macro (<a
      href="https://redirect.github.com/dtolnay/syn/issues/1510">#1510</a>, <a
      href="https://redirect.github.com/dtolnay/syn/issues/1512">#1512</a>)</li>
      </ul>
      <h2>2.0.34</h2>
      <ul>
      <li>Documentation improvements</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/dtolnay/syn/commit/ef6476c76431da488720c8ee3fdfff57a199a848"><code>ef6476c</code></a>
      Release 2.0.36</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/6ae1a9756a128f18341a4cba56772ee1715a06e2"><code>6ae1a97</code></a>
      Merge pull request <a
      href="https://redirect.github.com/dtolnay/syn/issues/1514">#1514</a>
      from dtolnay/pubnotdoc</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/7bfef4b2befee954bc002724c8331612fed3d47f"><code>7bfef4b</code></a>
      Work around doc breakage in generate-link-to-definition mode</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/ce360ff4b1695311dcc569ade1fc9ff1ff6ac4d9"><code>ce360ff</code></a>
      Release 2.0.35</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/23736bdc48a964286ea032ea5c172574239119ef"><code>23736bd</code></a>
      Merge pull request <a
      href="https://redirect.github.com/dtolnay/syn/issues/1512">#1512</a>
      from dtolnay/tokendoc</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/6f6b0040d420abfda0b5504dc13b7c76319ebccd"><code>6f6b004</code></a>
      Improve docs of Token! macro</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/319433e12a0e13d1b549a189ae1ce1d3293a7ea9"><code>319433e</code></a>
      Merge pull request <a
      href="https://redirect.github.com/dtolnay/syn/issues/1510">#1510</a>
      from ModProg/patch-3</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/975ce0b7c4319166ff0ae5ea839d923410615dae"><code>975ce0b</code></a>
      Release 2.0.34</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/858e578d1e3aed3d7ac965a59b5044a1ca4eadf2"><code>858e578</code></a>
      Merge pull request <a
      href="https://redirect.github.com/dtolnay/syn/issues/1511">#1511</a>
      from dtolnay/notdoc</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/1b0d7f807862cb36256848a9f55a81a9aca41976"><code>1b0d7f8</code></a>
      Add cfg(not(doc)) to doc(hidden) functions</li>
      <li>Additional commits viewable in <a
      href="https://github.com/dtolnay/syn/compare/2.0.33...2.0.36">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      [![Dependabot compatibility
      score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=syn&package-manager=cargo&previous-version=2.0.33&new-version=2.0.36)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore <dependency name> major version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's major version (unless you unignore this specific
      dependency's major version or upgrade to it yourself)
      - `@dependabot ignore <dependency name> minor version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's minor version (unless you unignore this specific
      dependency's minor version or upgrade to it yourself)
      - `@dependabot ignore <dependency name>` will close this group update PR
      and stop Dependabot creating any more for the specific dependency
      (unless you unignore this specific dependency or upgrade to it yourself)
      - `@dependabot unignore <dependency name>` will remove all of the ignore
      conditions of the specified dependency
      - `@dependabot unignore <dependency name> <ignore condition>` will
      remove the ignore condition of the specified dependency and ignore
      conditions
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <[email protected]>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      372929fa
    • Alexandru Vasile's avatar
      chainHead: Add support for storage closest merkle descendant #14818 (#1153) · 5d346643
      Alexandru Vasile authored
      
      
      This PR adds support for fetching the closest merkle value of some key.
      
      
      Builds on top of
      - https://github.com/paritytech/trie/pull/199
      
      Migrates https://github.com/paritytech/substrate/pull/14818 to the
      monorepo.
      Closes: https://github.com/paritytech/substrate/issues/14550
      Closes: https://github.com/paritytech/polkadot-sdk/issues/1506
      
      // @paritytech/subxt-team
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <[email protected]>
      Co-authored-by: default avatarSebastian Kunert <[email protected]>
      5d346643
    • yjh's avatar
      Executor: Remove `LegacyInstanceReuse` strategy (#1486) · e3899880
      yjh authored
      
      
      It seems the old strategy have been depracted more than one year. 
      So maybe it's time to clean up old strategy for wasm executor.
      
      
      ---
      polkadot address: 15ouFh2SHpGbHtDPsJ6cXQfes9Cx1gEFnJJsJVqPGzBSTudr
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      Co-authored-by: default avatarKoute <[email protected]>
      e3899880
  22. Sep 17, 2023
    • Davide Galassi's avatar
      Babe epoch newtype (#1596) · c7dbfc21
      Davide Galassi authored
      Removal of verbatim duplication of BABE's `Epoch` struct in the client.
      
      I think is better to have one single definition and wrap the primitive
      `Epoch` in a newtype (required because we need to implement the `Epoch`
      trait).
      c7dbfc21
  23. Sep 15, 2023
    • Alexandru Vasile's avatar
      rpc-v2: Change method name for provided events (#1593) · 76c68ee2
      Alexandru Vasile authored
      
      
      This PR changes the method name of the subscription that provides
      JSON-RPC notifications (ie subscription events).
      This brings the raw JSON response in sync with the rpc-spec-v2 format.
      
      Changes:
      - `chainHead_unstable_follow` to `chainHead_unstable_followEvent`
      [spec/chainHead](https://github.com/paritytech/json-rpc-interface-spec/blob/main/src/api/chainHead_unstable_follow.md#notifications-format)
      - `transaction_unstable_submitAndWatch` to
      `transaction_unstable_watchEvent`
      [spec/tx](https://github.com/paritytech/json-rpc-interface-spec/blob/main/src/api/transaction_unstable_submitAndWatch.md#notifications-format)
      
      @paritytech/subxt-team
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <[email protected]>
      76c68ee2
    • dependabot[bot]'s avatar
      Bump the known_good_semver group with 2 updates (#1553) · 1882e9e4
      dependabot[bot] authored
      
      
      Bumps the known_good_semver group with 2 updates:
      [serde_json](https://github.com/serde-rs/json) and
      [syn](https://github.com/dtolnay/syn).
      
      Updates `serde_json` from 1.0.106 to 1.0.107
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/serde-rs/json/releases">serde_json's
      releases</a>.</em></p>
      <blockquote>
      <h2>v1.0.107</h2>
      <ul>
      <li>impl IntoDeserializer for &amp;RawValue (<a
      href="https://redirect.github.com/serde-rs/json/issues/1071">#1071</a>)</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/serde-rs/json/commit/b6e113f2036c52e994ca805e530ee4ffae791f71"><code>b6e113f</code></a>
      Release 1.0.107</li>
      <li><a
      href="https://github.com/serde-rs/json/commit/00626a0a95b3d4cee8d57709f0acc804c1296716"><code>00626a0</code></a>
      Merge pull request <a
      href="https://redirect.github.com/serde-rs/json/issues/1073">#1073</a>
      from dtolnay/rawvalue</li>
      <li><a
      href="https://github.com/serde-rs/json/commit/b9d296f87d6081afdd590d5a6006737db961302b"><code>b9d296f</code></a>
      IntoDeserializer for &amp;RawValue</li>
      <li><a
      href="https://github.com/serde-rs/json/commit/4ea34a2566ba82a2e602526d0919d23e88c9e5ef"><code>4ea34a2</code></a>
      Merge pull request <a
      href="https://redirect.github.com/serde-rs/json/issues/1072">#1072</a>
      from dtolnay/rawvalue</li>
      <li><a
      href="https://github.com/serde-rs/json/commit/fe30766ae5c79bfb670b2de1c5596e6e11e22f8c"><code>fe30766</code></a>
      Support deserializing from &amp;RawValue</li>
      <li><a
      href="https://github.com/serde-rs/json/commit/2c22077f0e2decfda5cdfd5821c5f9547d584b76"><code>2c22077</code></a>
      Merge pull request <a
      href="https://redirect.github.com/serde-rs/json/issues/1062">#1062</a>
      from osiewicz/remove_build_rs</li>
      <li><a
      href="https://github.com/serde-rs/json/commit/04f7758b6eae935237574b25a1e63cf5e281e19e"><code>04f7758</code></a>
      fixup! chore: Remove no_btreemap_get_key_value and
      no_btreemap_remove_entry.</li>
      <li><a
      href="https://github.com/serde-rs/json/commit/83bdc5fd4213d94201a3d9ad0f2943da7eba1dd6"><code>83bdc5f</code></a>
      Omit return keyword in <code>remove_entry</code></li>
      <li><a
      href="https://github.com/serde-rs/json/commit/89a274195680d3ea6a2b442ff633b81ccf60bbe4"><code>89a2741</code></a>
      Revert &quot;Remove limb_width32 and limb_width64 features&quot;</li>
      <li><a
      href="https://github.com/serde-rs/json/commit/16e04ceeddfdfad18fb1ae8530695a318fa9bc02"><code>16e04ce</code></a>
      fixup! Remove limb_width32 and limb_width64 features</li>
      <li>See full diff in <a
      href="https://github.com/serde-rs/json/compare/v1.0.106...v1.0.107">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      Updates `syn` from 2.0.32 to 2.0.33
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/dtolnay/syn/releases">syn's
      releases</a>.</em></p>
      <blockquote>
      <h2>2.0.33</h2>
      <ul>
      <li>Special handling for the <code>(/*ERROR*/)</code> placeholder that
      rustc uses for macros that fail to expand</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/dtolnay/syn/commit/5e3f55e684b7e33424b9f551105463418b196eb4"><code>5e3f55e</code></a>
      Release 2.0.33</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/3e04809f5218c6d5fb2b09a6c55933e785825c75"><code>3e04809</code></a>
      Pull in proc-macro2 error placeholder change</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/2cd5608a4c37810bb0947b0c161a20695b3ce487"><code>2cd5608</code></a>
      Merge pull request <a
      href="https://redirect.github.com/dtolnay/syn/issues/1508">#1508</a>
      from dtolnay/error</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/84cfe09484f6468bc85fb01db11c6a10fcb2d988"><code>84cfe09</code></a>
      Fall through to 'Unrecognized literal' error</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/a80570c81bf15c9afcf8e2470ab06f60f7a8183d"><code>a80570c</code></a>
      Parse rustc's representation of macro expansion error</li>
      <li>See full diff in <a
      href="https://github.com/dtolnay/syn/compare/2.0.32...2.0.33">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore <dependency name> major version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's major version (unless you unignore this specific
      dependency's major version or upgrade to it yourself)
      - `@dependabot ignore <dependency name> minor version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's minor version (unless you unignore this specific
      dependency's minor version or upgrade to it yourself)
      - `@dependabot ignore <dependency name>` will close this group update PR
      and stop Dependabot creating any more for the specific dependency
      (unless you unignore this specific dependency or upgrade to it yourself)
      - `@dependabot unignore <dependency name>` will remove all of the ignore
      conditions of the specified dependency
      - `@dependabot unignore <dependency name> <ignore condition>` will
      remove the ignore condition of the specified dependency and ignore
      conditions
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <[email protected]>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      1882e9e4
    • Rahul Subramaniyam's avatar
      Modular block request handler (#1524) · b35b28ca
      Rahul Subramaniyam authored
      
      
      Submit the outstanding PRs from the old repos(these were already
      reviewed and approved before the repo rorg, but not yet submitted):
      Main PR: https://github.com/paritytech/substrate/pull/14014
      Companion PRs: https://github.com/paritytech/polkadot/pull/7134,
      https://github.com/paritytech/cumulus/pull/2489
      
      The changes in the PR:
      1. ChainSync currently calls into the block request handler directly.
      Instead, move the block request handler behind a trait. This allows new
      protocols to be plugged into ChainSync.
      2. BuildNetworkParams is changed so that custom relay protocol
      implementations can be (optionally) passed in during network creation
      time. If custom protocol is not specified, it defaults to the existing
      block handler
      3. BlockServer and BlockDownloader traits are introduced for the
      protocol implementation. The existing block handler has been changed to
      implement these traits
      4. Other changes:
      [X] Make TxHash serializable. This is needed for exchanging the
      serialized hash in the relay protocol messages
      [X] Clean up types no longer used(OpaqueBlockRequest,
      OpaqueBlockResponse)
      
      ---------
      
      Co-authored-by: default avatarDmitry Markin <[email protected]>
      Co-authored-by: command-bot <>
      b35b28ca
  24. Sep 13, 2023
    • dependabot[bot]'s avatar
      Bump the known_good_semver group with 1 update (#1530) · 71630dfb
      dependabot[bot] authored
      
      
      Bumps the known_good_semver group with 1 update:
      [clap](https://github.com/clap-rs/clap).
      
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/clap-rs/clap/releases">clap's
      releases</a>.</em></p>
      <blockquote>
      <h2>v4.4.3</h2>
      <h2>[4.4.3] - 2023-09-12</h2>
      <h3>Documentation</h3>
      <ul>
      <li><em>(derive)</em> Clarify use of attributes within the tutorial</li>
      <li>Split sections in the builder and derive tutorials into separate
      modules</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Changelog</summary>
      <p><em>Sourced from <a
      href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's
      changelog</a>.</em></p>
      <blockquote>
      <h2>[4.4.3] - 2023-09-12</h2>
      <h3>Documentation</h3>
      <ul>
      <li><em>(derive)</em> Clarify use of attributes within the tutorial</li>
      <li>Split sections in the builder and derive tutorials into separate
      modules</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/clap-rs/clap/commit/e9668b364c5a0d259780a3e6d8352203d6f329f5"><code>e9668b3</code></a>
      chore: Release</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/bc4986e01e4a6c817e4af8dbd91f96c6aae97107"><code>bc4986e</code></a>
      docs: Update changelog</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/3d53641ca1696fdeafb8e1e87def6b27f1a7d79d"><code>3d53641</code></a>
      Merge pull request <a
      href="https://redirect.github.com/clap-rs/clap/issues/5122">#5122</a>
      from epage/docs</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/32586c7b6335f437e6f01a089e7664f9c88ddc09"><code>32586c7</code></a>
      docs(tutorial): Split into separate modules per section</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/5f6d4a3dadd436899923f27ea6ac62b26198ad91"><code>5f6d4a3</code></a>
      docs(tutorial): Split out into a module</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/20987de0bd2b9b2720771b0f0572745d2ee91433"><code>20987de</code></a>
      Merge pull request <a
      href="https://redirect.github.com/clap-rs/clap/issues/5121">#5121</a>
      from epage/docs</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/9e7404b5996128efcf4d6098b7d4af4eacb04fca"><code>9e7404b</code></a>
      docs(tutorial): Attempt to clarify attributes</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/db97a2c5be69fa81af80e9cee5d3943bcfc664c4"><code>db97a2c</code></a>
      docs(derive): Clarify value attributes are for PossibleValue</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/37ba6075a9e3c968a196e73e78e95a1e7c6e9326"><code>37ba607</code></a>
      chore: Release</li>
      <li><a
      href="https://github.com/clap-rs/clap/commit/3234c74a886fdb14abc94b34413d8604d2da0e93"><code>3234c74</code></a>
      docs: Update changelog</li>
      <li>Additional commits viewable in <a
      href="https://github.com/clap-rs/clap/compare/v4.4.2...v4.4.3">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      [![Dependabot compatibility
      score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=4.4.2&new-version=4.4.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore <dependency name> major version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's major version (unless you unignore this specific
      dependency's major version or upgrade to it yourself)
      - `@dependabot ignore <dependency name> minor version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's minor version (unless you unignore this specific
      dependency's minor version or upgrade to it yourself)
      - `@dependabot ignore <dependency name>` will close this group update PR
      and stop Dependabot creating any more for the specific dependency
      (unless you unignore this specific dependency or upgrade to it yourself)
      - `@dependabot unignore <dependency name>` will remove all of the ignore
      conditions of the specified dependency
      - `@dependabot unignore <dependency name> <ignore condition>` will
      remove the ignore condition of the specified dependency and ignore
      conditions
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <[email protected]>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      71630dfb
  25. Sep 12, 2023