1. Dec 07, 2023
  2. Dec 06, 2023
  3. Dec 05, 2023
  4. Dec 04, 2023
  5. Dec 01, 2023
  6. Nov 30, 2023
  7. Nov 29, 2023
  8. Nov 28, 2023
    • Aaro Altonen's avatar
      Rework the event system of `sc-network` (#1370) · e71c484d
      Aaro Altonen authored
      This commit introduces a new concept called `NotificationService` which
      allows Polkadot protocols to communicate with the underlying
      notification protocol implementation directly, without routing events
      through `NetworkWorker`. This implies that each protocol has its own
      service which it uses to communicate with remote peers and that each
      `NotificationService` is unique with respect to the underlying
      notification protocol, meaning `NotificationService` for the transaction
      protocol can only be used to send and receive transaction-related
      notifications.
      
      The `NotificationService` concept introduces two additional benefits:
        * allow protocols to start using custom handshakes
        * allow protocols to accept/reject inbound peers
      
      Previously the validation of inbound connections was solely the
      responsibility of `ProtocolController`. This caused issues with light
      peers and `SyncingEngine` as `ProtocolController` would accept more
      peers than `SyncingEngine` could accept which caused peers to have
      differing views of their own states. `SyncingEngine` would reject excess
      peers but these rejections were not properly communicated to those peers
      causing them to assume that they were accepted.
      
      With `NotificationService`, the local handshake is not sent to remote
      peer if peer is rejected which allows it to detect that it was rejected.
      
      This commit also deprecates the use of `NetworkEventStream` for all
      notification-related events and going forward only DHT events are
      provided through `NetworkEventStream`. If protocols wish to follow each
      other's events, they must introduce additional abtractions, as is done
      for GRANDPA and transactions protocols by following the syncing protocol
      through `SyncEventStream`.
      
      Fixes https://github.com/paritytech/polkadot-sdk/issues/512
      Fixes https://github.com/paritytech/polkadot-sdk/issues/514
      Fixes https://github.com/paritytech/polkadot-sdk/issues/515
      Fixes https://github.com/paritytech/polkadot-sdk/issues/554
      Fixes https://github.com/paritytech/polkadot-sdk/issues/556
      
      ---
      These changes are transferred from
      https://github.com/paritytech/substrate/pull/14197
      
       but there are no
      functional changes compared to that PR
      
      ---------
      
      Co-authored-by: default avatarDmitry Markin <[email protected]>
      Co-authored-by: default avatarAlexandru Vasile <[email protected]>
      e71c484d
  9. Nov 27, 2023
  10. Nov 25, 2023
  11. Nov 24, 2023
  12. Nov 23, 2023
  13. Nov 22, 2023
  14. Nov 21, 2023
    • Sophia Gold's avatar
      Update tick collator for async backing (#1497) · 50811d6b
      Sophia Gold authored
      This updates the tick runtime and polkadot-parachain collator to use
      async backing.
      50811d6b
    • Francisco Aguirre's avatar
      Different XCM builders, default one requires fee payment (#2253) · b3841b6b
      Francisco Aguirre authored
      Adding on top of the new builder pattern for creating XCM programs, I'm
      adding some more APIs:
      
      ```rust
      let paying_fees: Xcm<()> = Xcm::builder() // Only allow paying for fees
        .withdraw_asset() // First instruction has to load the holding register
        .buy_execution() // Second instruction has to be `buy_execution`
        .build();
      
      let paying_fees_invalid: Xcm<()> = Xcm::builder()
        .withdraw_asset()
        .build(); // Invalid, need to pay for fees
      
      let not_paying_fees: Xcm<()> = Xcm::builder_unpaid()
        .unpaid_execution() // Needed
        .withdraw_asset()
        .deposit_asset()
        .build();
      
      let all_goes: Xcm<()> = Xcm::builder_unsafe() // You can do anything
        .withdraw_asset()
        .deposit_asset()
        .build();
      ```
      
      The invalid bits are because the methods don't even exist on the types
      that you'd want to call them on.
      
      ---------
      
      Co-authored-by: command-bot <>
      b3841b6b
    • Michal Kucharczyk's avatar
      `chain-spec-builder`: cleanup (#2174) · 2fd8c51e
      Michal Kucharczyk authored
      
      
      This PR removes:
      -  `New`, `Generate`, `Edit` commands,
      - `kitchensink` dependency
      from the `chain-spec-builder` util.
      
      New `convert-to-raw`, `update-code` commands were added.
      
      Additionally renames the `runtime` command (which was added in #1256) to
      `create`.
      
      ---------
      
      Co-authored-by: default avatarSebastian Kunert <[email protected]>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      Co-authored-by: command-bot <>
      2fd8c51e
  15. Nov 19, 2023
  16. Nov 18, 2023
  17. Nov 17, 2023