Skip to content
Snippets Groups Projects
  1. May 21, 2024
    • Alin Dima's avatar
      Remove the prospective-parachains subsystem from collators (#4471) · 278486f9
      Alin Dima authored
      Implements https://github.com/paritytech/polkadot-sdk/issues/4429
      
      Collators only need to maintain the implicit view for the paraid they
      are collating on.
      In this case, bypass prospective-parachains entirely. It's still useful
      to use the GetMinimumRelayParents message from prospective-parachains
      for validators, because the data is already present there.
      
      This enables us to entirely remove the subsystem from collators, which
      consumed resources needlessly
      
      Aims to resolve https://github.com/paritytech/polkadot-sdk/issues/4167 
      
      TODO:
      - [x] fix unit tests
  2. May 20, 2024
  3. May 19, 2024
  4. May 17, 2024
    • PG Herveou's avatar
    • Ankan's avatar
      Allow pool to be destroyed with an extra (erroneous) consumer reference on the pool account (#4503) · 2e36f571
      Ankan authored
      addresses https://github.com/paritytech/polkadot-sdk/issues/4440 (will
      close once we have this in prod runtimes).
      related: https://github.com/paritytech/polkadot-sdk/issues/2037.
      
      An extra consumer reference is preventing pools to be destroyed. When a
      pool is ready to be destroyed, we
      can safely clear the consumer references if any. Notably, I only check
      for one extra consumer reference since that is a known bug. Anything
      more indicates possibly another issue and we probably don't want to
      silently absorb those errors as well.
      
      After this change, pools with extra consumer reference should be able to
      destroy normally.
    • Clara van Staden's avatar
      Snowbridge - Ethereum Client - Public storage items (#4501) · 65c52484
      Clara van Staden authored
      Changes the Ethereum client storage scope to public, so it can be set in
      a migration.
      
      When merged, we should backport to the all other release branches:
      
      - [ ] release-crates-io-v1.7.0 - patch release the fellows BridgeHubs
      runtimes https://github.com/paritytech/polkadot-sdk/pull/4504
      - [ ] release-crates-io-v1.8.0 -
      https://github.com/paritytech/polkadot-sdk/pull/4505
      - [ ] release-crates-io-v1.9.0 -
      https://github.com/paritytech/polkadot-sdk/pull/4506
      - [ ] release-crates-io-v1.10.0 -
      https://github.com/paritytech/polkadot-sdk/pull/4507
      - [ ] release-crates-io-v1.11.0 -
      https://github.com/paritytech/polkadot-sdk/pull/4508
      - [ ] release-crates-io-v1.12.0 (commit soon)
    • Bastian Köcher's avatar
      pallet_balances: Add `try_state` for checking `Holds` and `Freezes` (#4490) · ca0fb0d9
      Bastian Köcher authored
      Co-authored-by: command-bot <>
    • Svyatoslav Nikolsky's avatar
      Bridge: fixed relayer version metric value (#4492) · 2c48b9dd
      Svyatoslav Nikolsky authored
      Before relayer crates have been moved + merged, the `MetricsParams` type
      has been created from a `substrate-relay` crate (binary) and hence it
      has been setting the `substrate_relay_build_info` metic value properly -
      to the binary version. Now it is created from the
      `substrate-relay-helper` crate, which has the fixed (it isn't published)
      version `0.1.0`, so our relay provides incorrect metric value. This
      'breaks' our monitoring tools - we see that all relayers have that
      incorrect version, which is not cool.
      
      The idea is to have a global static variable (shame on me) that is
      initialized by the binary during initialization like we do with the
      logger initialization already. Was considering some alternative options:
      - adding a separate argument to every relayer subcommand and propagating
      it to the `MetricsParams::new()` causes a lot of changes and introduces
      even more noise to the binary code, which is supposed to be as small as
      possible in the new design. But I could do that if team thinks it is
      better;
      - adding a `structopt(skip) pub relayer_version: RelayerVersion`
      argument to all subcommand params won't work, because it will be
      initialized by default and `RelayerVersion` needs to reside in some util
      crate (not the binary), so it'll have the wrong value again.
    • PG Herveou's avatar
      Contracts: remove kitchensink dynamic parameters (#4489) · f86f2131
      PG Herveou authored
      Using Dynamic Parameters for contracts seems like a bad idea for now.
      
      Given that we have benchmarks for each host function (in addition to our
      extrinsics), parameter storage reads will be counted multiple times. We
      will work on updates to the benchmarking framework to mitigate this
      issue in future iterations.
      
      ---------
      
      Co-authored-by: command-bot <>
  5. May 16, 2024
    • Jesse Chejieh's avatar
      Adds `MaxRank` Config in `pallet-core-fellowship` (#3393) · d5fe478e
      Jesse Chejieh authored
      
      resolves #3315
      
      ---------
      
      Co-authored-by: default avatardoordashcon <jessechejieh@doordashcon.local>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
    • Clara van Staden's avatar
      Snowbridge - Ethereum Client - Reject finalized updates without a sync... · 943eb46e
      Clara van Staden authored
      Snowbridge - Ethereum Client - Reject finalized updates without a sync committee in next store period (#4478)
      
      While syncing Ethereum consensus updates to the Snowbridge Ethereum
      light client, the syncing process stalled due to error
      `InvalidSyncCommitteeUpdate` when importing the next sync committee for
      period `1087`.
      
      This bug manifested specifically because our light client checkpoint is
      a few weeks old (submitted to governance weeks ago) and had to catchup
      until a recent block. Since then, we have done thorough testing of the
      catchup sync process.
      
      ### Symptoms
      - Import next sync committee for period `1086` (essentially period
      `1087`). Light client store period = `1086`.
      - Import header in period `1087`. Light client store period = `1087`.
      The current and next sync committee is not updated, and is now in an
      outdated state. (current sync committee = `1086` and current sync
      committee = `1087`, where it should be current sync committee = `1087`
      and current sync committee = `None`)
      - Import next sync committee for period `1087` (essentially period
      `1088`) fails because the expected next sync committee's roots don't
      match.
      
      ### Bug
      The bug here is that the current and next sync committee's didn't
      handover when an update in the next period was received.
      
      ### Fix
      There are two possible fixes here:
      1. Correctly handover sync committees when a header in the next period
      is received.
      2. Reject updates in the next period until the next sync committee
      period is known.
      
      We opted for solution 2, which is more conservative and requires less
      changes.
      
      ### Polkadot-sdk versions
      This fix should be backported in polkadot-sdk versions 1.7 and up.
      
      Snowfork PR: https://github.com/Snowfork/polkadot-sdk/pull/145
      
      ---------
      
      Co-authored-by: default avatarVincent Geddes <117534+vgeddes@users.noreply.github.com>
    • polka.dom's avatar
      Remove pallet::getter usage from the democracy pallet (#4472) · 04f88f5b
      polka.dom authored
      As per #3326, removes usage of the pallet::getter macro from the
      democracy pallet. The syntax `StorageItem::<T, I>::get()` should be used
      instead.
      
      cc @muraca
    • Dmitry Markin's avatar
      Demote per-peer validation slots warning to debug (#4480) · 8d293970
      Dmitry Markin authored
      Demote `Ignored block announcement because all validation slots for this
      peer are occupied.` message to debug level.
      
      This is mostly an indicator of somebody spamming the node or (more
      likely) some node actively keeping up with the network but not
      recognizing it's in a major sync mode, so sending zillions of block
      announcements (have seen this on Versi).
      
      This warning shouldn't be considered an error by the end user, so let's
      make it debug.
      
      Ref. https://github.com/paritytech/polkadot-sdk/issues/1929.
    • Svyatoslav Nikolsky's avatar
      Bridge: drop subscriptions when they are no longer required (#4481) · 453bb18c
      Svyatoslav Nikolsky authored
      The bridge relay is **not** using `tokio`, while `jsonrpsee` does. To
      make it work together, we are spawning a separate tokio task for every
      jsonrpsee subscription, which holds a subscription reference. It looks
      like we are not stopping those tasks when we no longer need it and when
      there are more than `1024` active subscriptions, `jsonrpsee` stops
      opening new subscriptions. This PR adds an `cancel` signal that is sent
      to the background task when we no longer need a subscription.
    • Alexandru Vasile's avatar
      network/discovery: Add to DHT only peers that support genesis-based protocol (#3833) · 3399bc09
      Alexandru Vasile authored
      
      This PR adds to the DHT only the peers that support the genesis/fork/kad
      protocol.
      Before this PR, any peer that supported the legacy `/kad/[id]` protocol
      was added to the DHT.
      
      This is the first step in removing the support for the legacy kad
      protocols.
      
      While I have adjusted unit tests to validate the appropriate behavior,
      this still needs proper testing in our stack.
      
      Part of https://github.com/paritytech/polkadot-sdk/issues/504.
      
      cc @paritytech/networking
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
    • Oliver Tale-Yazdi's avatar
      [Runtime] Bound XCMP queue (#3952) · 4adfa37d
      Oliver Tale-Yazdi authored
      Re-applying #2302 after increasing the `MaxPageSize`.  
      
      Remove `without_storage_info` from the XCMP queue pallet. Part of
      https://github.com/paritytech/polkadot-sdk/issues/323
      
      Changes:
      - Limit the number of messages and signals a HRMP channel can have at
      most.
      - Limit the number of HRML channels.
      
      A No-OP migration is put in place to ensure that all `BoundedVec`s still
      decode and not truncate after upgrade. The storage version is thereby
      bumped to 5 to have our tooling remind us to deploy that migration.
      
      ## Integration
      
      If you see this error in your try-runtime-cli:  
      ```pre
      Max message size for channel is too large. This means that the V5 migration can be front-run and an
      attacker could place a large message just right before the migration to make other messages un-decodable.
      Please either increase `MaxPageSize` or decrease the `max_message_size` for this channel. Channel max:
      102400, MaxPageSize: 65535
      ```
      
      Then increase the `MaxPageSize` of the `cumulus_pallet_xcmp...
    • polka.dom's avatar
      Remove pallet::getter usage from the bounties and child-bounties pallets (#4392) · 6487ac1e
      polka.dom authored
      
      As per #3326, removes pallet::getter usage from the bounties and
      child-bounties pallets. The syntax `StorageItem::<T, I>::get()` should
      be used instead.
      
      Changes to one pallet involved changes in the other, so I figured it'd
      be best to combine these two.
      
      cc @muraca
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
    • Oliver Tale-Yazdi's avatar
      Deprecate `dmp-queue` pallet (#4475) · 76230a15
      Oliver Tale-Yazdi authored
      `cumulus-pallet-dmp-queue` is not needed anymore since
      https://github.com/paritytech/polkadot-sdk/pull/1246.
      
      The only logic that remains in the pallet is a lazy migration in the
      [`on_idle`](https://github.com/paritytech/polkadot-sdk/blob/8d62c13b
      
      /cumulus/pallets/dmp-queue/src/lib.rs#L158)
      hook.
      
      ---------
      
      Signed-off-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
    • Alexander Samusev's avatar
      [ci] Fix publish-subsystem-benchmarks (#4479) · 717eb2c4
      Alexander Samusev authored
      Fix after https://github.com/paritytech/polkadot-sdk/pull/4449
    • Francisco Aguirre's avatar
      XCM Cookbook (#2633) · 289f5bbf
      Francisco Aguirre authored
      # Context
      
      XCM docs are currently an md book hosted with github pages:
      https://paritytech.github.io/xcm-docs/.
      While that's fine, it's not in line with the work being done in the
      polkadot-sdk docs.
      
      # Main addition
      
      This PR aims to fix that by bringing the docs back to this repo.
      This does not have all the information currently present in the mdbook
      xcm-docs but aims to be a good chunk of it and fully replace it over
      time.
      
      I also added the sections `guides` and `cookbook` which will be very
      useful for users wanting to get into XCM.
      For now I only added one example to the cookbook, but have ideas for
      guides and more examples.
      Having this docs be in rust docs is very useful for the cookbook.
      
      # TODO
      
      - [x] Use `FungibleAdapter`
      - [x] Improve and relocate mock message queue
      - [x] Fix license issue. Why does docs/sdk/ not have this problem? (Just
      added the licenses)
      
      # Next steps
      
      - More examples in the cookbook
      - End-to-end XCM guide with zombienet testing
      
      ---------
      
      Co-authored-by: co...
  6. May 15, 2024
    • Milos Kriz's avatar
      Add IBP bootnodes to `coretime-westend` and `coretime-kusama` and others (#4276) · d237adfb
      Milos Kriz authored
      
      Dear team, hello, 
      
      Please consider this request to add bootnode endpoints to the chainspecs
      of `coretime-westend` and `coretime-kusama`.
      
      These bootnodes are operated by the Infrastructure Builders Programme as
      part of the commitments of their members.
      
      All these endpoints have been tested according to the procedure
      indicated
      [here](https://wiki.ibp.network/docs/consumers/bootnodes#testing-a-bootnode).
      
      Additionally, please also consider some maintenance changes to
      Gatotech's bootnode endpoint in several other chains.
      
      Many thanks!!
      
      Best regrds!
      
      **_Milos_**
      
      ---------
      
      Co-authored-by: default avatarhitchhooker <tommi@niemi.lol>
      Co-authored-by: default avatarBastian Köcher <info@kchr.de>
    • Eugen Snitko's avatar
      Include RUNTIME_METADATA_HASH in cache key (#4476) · 3a202323
      Eugen Snitko authored
      Add RUNTIME_METADATA_HASH variable to
      [`cache.extraEnv`](https://github.com/paritytech/forklift/tree/0.12.4?tab=readme-ov-file#cache)
      in config.toml (setting available from forklift 0.12.4)
    • Alexander Samusev's avatar
      [ci] Use default gh runners for small workloads (#4473) · 23c5bbc8
      Alexander Samusev authored
      `ubuntu-latest` are free for public repo so it's better (and cheaper) to
      use them for small jobs
    • Alexandru Gheorghe's avatar
      Make vscode rustanalyzer fast again (#4470) · e31fcffb
      Alexandru Gheorghe authored
      
      This bump of versions:
      
      https://github.com/paritytech/polkadot-sdk/pull/4409/files#diff-13ee4b2252c9e516a0547f2891aa2105c3ca71c6d7a1e682c69be97998dfc87eR11936
      
      reintroduced a dependency to proc-macro-crate 2.0.0 which is suffering
      from: https://github.com/bkchr/proc-macro-crate/pull/42 this, so bump
      parity-scale-codec to a newer version to eliminate the bad
      proc-macro-crate 2.0.0 dependency.
      
      ---------
      
      Signed-off-by: default avatarAlexandru Gheorghe <alexandru.gheorghe@parity.io>
      Co-authored-by: command-bot <>
    • Dastan's avatar
      Export all public functions of `sc-service` (#4457) · 59d7e037
      Dastan authored
      
      https://github.com/paritytech/polkadot-sdk/pull/3166 made private
      functions used in `spawn_tasks()` public but forgot to add them in
      exported functions of the crate.
      
      ---------
      
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
    • Liu-Cheng Xu's avatar
      Fix extrinsics count logging in frame-system (#4461) · 404027e5
      Liu-Cheng Xu authored
      
      The storage item ExtrinsicIndex is already taken before the `finalize()`
      in `note_finished_extrinsics()`, rendering it's always 0 in the log.
      This commit fixes it by using the proper API for extrinsics count.
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
    • Alex Wang's avatar
      Add OnFinality kusama bootnode (#4458) · f2b367ee
      Alex Wang authored
      This is for adding onfinality polkadot bootnode. Please correct me if
      this is not the right place for adding a new bootnode
    • Ankan's avatar
      Introduces: Delegated Staking Pallet (#3904) · 4d47b443
      Ankan authored
      This is the second PR in preparation for
      https://github.com/paritytech/polkadot-sdk/issues/454.
      
      ## Also see
      - **Precursor** https://github.com/paritytech/polkadot-sdk/pull/3889.
      - **Follow up** https://github.com/paritytech/polkadot-sdk/pull/3905.
      
      Overall changes are documented here (lot more visual :heart_eyes:
      
      ):
      https://hackmd.io/@ak0n/454-np-governance
      
      ## Changes
      ### Delegation Interface
      Provides delegation primitives for staking. 
      
      Introduces two new roles:
      - Agent: These are accounts who receive delegation from other accounts
      (delegators) and stakes on behalf of them. The funds are held in
      delegator accounts.
      - Delegator: Accounts who delegate their funds to an agent authorising
      them to use it for staking.
      
      Supports
      - A way for delegators to add or withdraw delegation to an agent.
      - A way for an agent to slash a delegator during a slashing event.
      
      ### Pallet Delegated Staking
      - Implements `DelegationInterface`.
      - Lazy slashing: Any slashes to an Agent is posted in a ledger but not
      immediately slashed. The agent can call
      `DelegationInterface::delegator_slash` to slash the member and clear the
      corresponding slash from its ledger.
      - Consumes `StakingInterface` to provide `CoreStaking` features. In
      reality, this will be `pallet-staking`.
      - Ensures bookkeeping for agent and delegator are correct but leaves the
      management of reward and slash logic upto the consumer of this pallet.
      - While it does not expose any calls yet, it is written with the intent
      of exposing these primitives via extrinsics.
      
      ## TODO
      - [x] Improve unit tests in the pallet.
      - [x] Separate slash reward perbill for rewarding the slash reporters?
      - [x] Review if we should add more events.
      
      ---------
      
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      Co-authored-by: default avatarGonçalo Pestana <g6pestana@gmail.com>
      Co-authored-by: default avatargeorgepisaltu <52418509+georgepisaltu@users.noreply.github.com>
    • drewstone's avatar
      Update BABE README.md (#4138) · e6d934c9
      drewstone authored
      
      Link was dead
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
    • Javier Viola's avatar
      chore: update zombienet version (#4463) · 3fcdada3
      Javier Viola authored
      Add small fixes, reorg debug definition and add more verbose debug logs
      in k8s logs reading.
      Thx!
    • RadiumBlock's avatar
      Please consider adding RadiumBlock bootnodes for Westend People and Westend Coretime (#3936) · 005e3a77
      RadiumBlock authored
      
      Please add RadiumBlock bootnodes to the spec files for Westend Coretime
      and Westend People
      
      ---------
      
      Co-authored-by: default avatarDónal Murray <donal.murray@parity.io>
    • Alexandru Gheorghe's avatar
      Bump fatality crate to 0.1.1 (#4464) · 494f1231
      Alexandru Gheorghe authored
      
      ... to get rid of the macro debug logs like this from build output
      ```
      [/home/alexggh/.cargo/registry/src/index.crates.io-6f17d22bba15001f/fatality-proc-macro-0.1.0/src/types.rs:171:23] input = TokenStream [
          Literal {
              kind: Str,
              symbol: "Error while accessing runtime information",
              suffix: None,
              span: #0 bytes(6943..6986),
          },
      ]
      ```
      
      Signed-off-by: default avatarAlexandru Gheorghe <alexandru.gheorghe@parity.io>
    • shamil-gadelshin's avatar
      Change forks pruning algorithm. (#3962) · 9c69bb98
      shamil-gadelshin authored
      
      This PR changes the fork calculation and pruning algorithm to enable
      future block header pruning. It's required because the previous
      algorithm relied on the block header persistence. It follows the
      [related
      discussion](https://github.com/paritytech/polkadot-sdk/issues/1570)
      
      The previous code contained this comment describing the situation:
      ```
      	/// Note a block height finalized, displacing all leaves with number less than the finalized
      	/// block's.
      	///
      	/// Although it would be more technically correct to also prune out leaves at the
      	/// same number as the finalized block, but with different hashes, the current behavior
      	/// is simpler and our assumptions about how finalization works means that those leaves
      	/// will be pruned soon afterwards anyway.
      	pub fn finalize_height(&mut self, number: N) -> FinalizationOutcome<H, N> {
      ```
      
      The previous algorithm relied on the existing block headers to prune
      forks later and to enable block header pruning we need to clear all
      obsolete forks right after the block finalization to not depend on the
      related block headers in the future.
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
  7. May 14, 2024
    • Kian Paimani's avatar
      make polkadot-parachain chain-spec extension more relaxed (#4452) · 12ab3150
      Kian Paimani authored
      
      A small step towards
      https://forum.polkadot.network/t/polkadot-parachain-omni-node-gathering-ideas-and-feedback/7823
      and #4352.
      
      Many parachains use `camelCase` and/or `PascalCase`ing for their chain
      spec extension. Sometimes the only reason polkadot-parachain cannot sync
      them is because it cannot parse the chain spec extension. This PR
      relaxes the requirement for the extension to be camel case.
      
      ---------
      
      Co-authored-by: default avatarBranislav Kontur <bkontur@gmail.com>
    • dependabot[bot]'s avatar
      Bump nix from 0.27.1 to 0.28.0 (#4438) · 712a750a
      dependabot[bot] authored
      
      Bumps [nix](https://github.com/nix-rust/nix) from 0.27.1 to 0.28.0.
      <details>
      <summary>Changelog</summary>
      <p><em>Sourced from <a
      href="https://github.com/nix-rust/nix/blob/master/CHANGELOG.md">nix's
      changelog</a>.</em></p>
      <blockquote>
      <h2>[0.28.0] - 2024-02-24</h2>
      <h3>Added</h3>
      <ul>
      <li>
      <p>Added <code>mkdtemp</code> wrapper (<a
      href="https://redirect.github.com/nix-rust/nix/pull/1297">#1297</a>)</p>
      </li>
      <li>
      <p>Add associated constants <code>UTIME_OMIT</code>
      <code>UTIME_NOW</code> for <code>TimeSpec</code>
      (<a
      href="https://redirect.github.com/nix-rust/nix/pull/1879">#1879</a>)</p>
      </li>
      <li>
      <p>Added <code>EventFd</code> type. (<a
      href="https://redirect.github.com/nix-rust/nix/pull/1945">#1945</a>)</p>
      </li>
      <li>
      <ul>
      <li>Added <code>impl From&lt;Signal&gt; for SigSet</code>.</li>
      <li>Added <code>impl std::ops::BitOr for SigSet</code>.</li>
      <li>Added <code>impl std::ops::BitOr for Signal</code>.</li>
      <li>Added <code>impl std::ops::BitOr&lt;Signal&gt; for
      SigSet</code></li>
      </ul>
      <p>(<a
      href="https://redirect.github.com/nix-rust/nix/pull/1959">#1959</a>)</p>
      </li>
      <li>
      <p>Added <code>TlsGetRecordType</code> control message type and
      corresponding enum for
      linux (<a
      href="https://redirect.github.com/nix-rust/nix/pull/2065">#2065</a>)</p>
      </li>
      <li>
      <p>Added <code>Ipv6HopLimit</code> to
      <code>::nix::sys::socket::ControlMessage</code> for Linux,
      MacOS, FreeBSD, DragonflyBSD, Android, iOS and Haiku.
      (<a
      href="https://redirect.github.com/nix-rust/nix/pull/2074">#2074</a>)</p>
      </li>
      <li>
      <p>Added <code>Icmp</code> and <code>IcmpV6</code> to
      <code>SockProtocol</code>
      (<a
      href="https://redirect.github.com/nix-rust/nix/pull/2103">#2103</a>)</p>
      </li>
      <li>
      <p>Added rfork support for FreeBSD in <code>unistd</code>
      (<a
      href="https://redirect.github.com/nix-rust/nix/pull/2121">#2121</a>)</p>
      </li>
      <li>
      <p>Added <code>MapFlags::map_hugetlb_with_size_log2</code> method for
      Linux targets
      (<a
      href="https://redirect.github.com/nix-rust/nix/pull/2125">#2125</a>)</p>
      </li>
      <li>
      <p>Added <code>mmap_anonymous</code> function
      (<a
      href="https://redirect.github.com/nix-rust/nix/pull/2127">#2127</a>)</p>
      </li>
      <li>
      <p>Added <code>mips32r6</code> and <code>mips64r6</code> support for
      signal, ioctl and ptrace
      (<a
      href="https://redirect.github.com/nix-rust/nix/pull/2138">#2138</a>)</p>
      </li>
      <li>
      <p>Added <code>F_GETPATH</code> FcntlFlags entry on
      Apple/NetBSD/DragonflyBSD for
      <code>::nix::fcntl</code>. (<a
      href="https://redirect.github.com/nix-rust/nix/pull/2142">#2142</a>)</p>
      </li>
      <li>
      <p>Added <code>F_KINFO</code> FcntlFlags entry on FreeBSD for
      <code>::nix::fcntl</code>.
      (<a
      href="https://redirect.github.com/nix-rust/nix/pull/2152">#2152</a>)</p>
      </li>
      <li>
      <p>Added <code>F_GETPATH_NOFIRMLINK</code> and
      <code>F_BARRIERFSYNC</code> FcntlFlags entry
      on Apple for <code>::nix::fcntl</code>.
      (<a
      href="https://redirect.github.com/nix-rust/nix/pull/2155">#2155</a>)</p>
      </li>
      <li>
      <p>Added newtype <code>Flock</code> to automatically unlock a held flock
      upon drop.
      Added <code>Flockable</code> trait to represent valid types for
      <code>Flock</code>.
      (<a
      href="https://redirect.github.com/nix-rust/nix/pull/2170">#2170</a>)</p>
      </li>
      <li>
      <p>Added <code>SetSockOpt</code> impls to enable Linux Kernel TLS on a
      TCP socket and to
      import TLS parameters. (<a
      href="https://redirect.github.com/nix-rust/nix/pull/2175">#2175</a>)</p>
      </li>
      <li>
      <ul>
      <li>Added the <code>::nix::sys::socket::SocketTimestamp</code> enum for
      configuring the
      <code>TsClock</code> (a.k.a <code>SO_TS_CLOCK</code>) sockopt</li>
      <li>Added FreeBSD's <code>ScmRealtime</code> and
      <code>ScmMonotonic</code> as new options in
      <code>::nix::sys::socket::ControlMessageOwned</code></li>
      </ul>
      <p>(<a
      href="https://redirect.github.com/nix-rust/nix/pull/2187">#2187</a>)</p>
      </li>
      <li>
      <p>Added new fanotify API: wrappers for <code>fanotify_init</code> and
      <code>fanotify_mark</code>
      (<a
      href="https://redirect.github.com/nix-rust/nix/pull/2194">#2194</a>)</p>
      </li>
      </ul>
      <!-- raw HTML omitted -->
      </blockquote>
      <p>... (truncated)</p>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/nix-rust/nix/commit/21ab06ef23de214174ddb039be5b5f08750d19e6"><code>21ab06e</code></a>
      chore: release 0.8.0</li>
      <li><a
      href="https://github.com/nix-rust/nix/commit/595c6eb2515723eae1f1db1b9103c95f339380ec"><code>595c6eb</code></a>
      chore: changelog for 0.28.0 (<a
      href="https://redirect.github.com/nix-rust/nix/issues/2303">#2303</a>)</li>
      <li><a
      href="https://github.com/nix-rust/nix/commit/79b86a7dff071a2a59858d1c98e202fdf38ebd06"><code>79b86a7</code></a>
      mmsg revert signature simplification (<a
      href="https://redirect.github.com/nix-rust/nix/issues/2227">#2227</a>)</li>
      <li><a
      href="https://github.com/nix-rust/nix/commit/08e05a5f66d14d4f06288c9a725e87f473eba41a"><code>08e05a5</code></a>
      refactor: remove redundant imports to fix CI (<a
      href="https://redirect.github.com/nix-rust/nix/issues/2320">#2320</a>)</li>
      <li><a
      href="https://github.com/nix-rust/nix/commit/197f55b3ccbce3273bf6ce119d1a8541b5df5d66"><code>197f55b</code></a>
      refactor: update nix (<a
      href="https://redirect.github.com/nix-rust/nix/issues/2311">#2311</a>)</li>
      <li><a
      href="https://github.com/nix-rust/nix/commit/f34d00d353a8ebcb16eb8810b00d613e4a294925"><code>f34d00d</code></a>
      chore(deps): try libc 0.2.153 (<a
      href="https://redirect.github.com/nix-rust/nix/issues/2309">#2309</a>)</li>
      <li><a
      href="https://github.com/nix-rust/nix/commit/062f6c0f0306743a401138fc2612d59e818d5768"><code>062f6c0</code></a>
      test: clean clippy needless_borrow false positive issue (<a
      href="https://redirect.github.com/nix-rust/nix/issues/2310">#2310</a>)</li>
      <li><a
      href="https://github.com/nix-rust/nix/commit/ca173ff30cc42e0fc7a7ba2cf7c1fcbe61dccfa5"><code>ca173ff</code></a>
      Fix the mount tests (<a
      href="https://redirect.github.com/nix-rust/nix/issues/2269">#2269</a>)</li>
      <li><a
      href="https://github.com/nix-rust/nix/commit/0dfcf3228489a5060a53e69783a1eea6f43b11a9"><code>0dfcf32</code></a>
      test: tweak test_fanotify to monitor ONLY 1 file (<a
      href="https://redirect.github.com/nix-rust/nix/issues/2294">#2294</a>)</li>
      <li><a
      href="https://github.com/nix-rust/nix/commit/0fb346031f6ddc87a57377101a6063133a25e443"><code>0fb3460</code></a>
      Temporarily disable CI on GNU hurd (<a
      href="https://redirect.github.com/nix-rust/nix/issues/2307">#2307</a>)</li>
      <li>Additional commits viewable in <a
      href="https://github.com/nix-rust/nix/compare/v0.27.1...v0.28.0">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      [![Dependabot compatibility
      score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=nix&package-manager=cargo&previous-version=0.27.1&new-version=0.28.0)](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 this major version` will close this PR and stop
      Dependabot creating any more for this major version (unless you reopen
      the PR or upgrade to it yourself)
      - `@dependabot ignore this minor version` will close this PR and stop
      Dependabot creating any more for this minor version (unless you reopen
      the PR or upgrade to it yourself)
      - `@dependabot ignore this dependency` will close this PR and stop
      Dependabot creating any more for this dependency (unless you reopen the
      PR or upgrade to it yourself)
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <support@github.com>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    • Svyatoslav Nikolsky's avatar
      Bridge: add subcommand to relay messages range (#4383) · 5ac18747
      Svyatoslav Nikolsky authored
      related to
      https://github.com/paritytech/parity-bridges-common/issues/2962
      Usage example:
      ```sh
      RUST_LOG=runtime=trace,rpc=trace,bridge=trace \
              ./target/release/substrate-relay relay-messages-range bridge-hub-rococo-to-bridge-hub-westend \
              --source-host localhost \
              --source-port 8943 \
              --source-version-mode Auto \
              --source-signer //Eve \
              --source-transactions-mortality 4 \
              --target-host localhost \
              --target-port 8945 \
              --target-version-mode Auto \
              --target-signer //Eve \
              --target-transactions-mortality 4 \
              --lane 00000002 \
              --at-source-block 34 \
              --messages-start 1 \
              --messages-end 1
      INFO bridge Connecting to BridgeHubRococo node at ws://localhost:8943
      INFO bridge Connecting to BridgeHubWestend node at ws://localhost:8945
      TRACE bridge Refined weight of BridgeHubRococo->BridgeHubWestend message [0, 0, 0, 2]/1: at-source: Weight(ref_time: 0, proof_size: 0), at-target: Weight(ref_time: 452953993, proof_size: 0)
      TRACE bridge Sent transaction to BridgeHubWestend node: 0x38552f4db6bc78baecb52ebd2f7d103b1c919c16b83129dc083bf01b7281955b
      TRACE bridge BridgeHubWestend transaction 0x38552f4db6bc78baecb52ebd2f7d103b1c919c16b83129dc083bf01b7281955b has been included in block: (0x29a20bdca8726df0b32af9067290b7fc0a886908da3a30f3db60a6ea52be4604, 0)
      TRACE bridge BridgeHubWestend transaction 0x38552f4db6bc78baecb52ebd2f7d103b1c919c16b83129dc083bf01b7281955b has been finalized at block: 0x29a20bdca8726df0b32af9067290b7fc0a886908da3a30f3db60a6ea52be4604
      ```
    • Alexander Samusev's avatar
      [ci] Cleanup and order GHA workflows (#4449) · cedb1d43
      Alexander Samusev authored
      Github currently [doesn't support creating
      subfolders](https://github.com/orgs/community/discussions/18055) in
      `.github/workflows` folder. PR unifies naming in this folder. The idea
      is that all files ideally should have naming
      `<stage>-<short_descriptive_name>.yml`. The stage names are taken from
      gitlab and needed only for logical division.
      Changes in actions:
       - `check-licences` runs on self-hosted runners
      - `check-workspace` and `check-markdown` are moved to `checks-quick.yml`
       - `test-linux-stable-int` moved to a new file `tests-linux-stable.yml`
      - `fmt-check.yml` file is removed, formatting is checked in
      `checks-quick.yml`
    • Svyatoslav Nikolsky's avatar
      Bridge: use *-uri CLI arguments when starting relayer (#4451) · 115c2477
      Svyatoslav Nikolsky authored
      `*-host` and `*-port` are obsolete and we'll hopefully remove them in
      the future (already WIP for Rococo <> Westend relayer)
  8. May 13, 2024