Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bridges V2 - dynamic lanes #4427

Closed
wants to merge 16 commits into from
Closed

Commits on Jul 1, 2024

  1. Add state to message lanes (#2214)

    * add LaneState enum and a field to lanes data
    
    * use OptionQuery in InboundLanes and OutboundLanes
    
    * ensure that lanes are opened when accessing them
    
    * an option to specify opened lanes in genesis config + fixed tests
    
    * added PR reference to TODO
    
    * fix failing benchmarks
    
    * spelling
    
    * get_or_init_data -> data
    
    bump Substrate, Polkadot and Cumulus (#2223)
    svyatonik authored and bkontur committed Jul 1, 2024
    Configuration menu
    Copy the full SHA
    d93e3a8 View commit details
    Browse the repository at this point in the history
  2. Change LaneId underlying type from [u8; 4] to H256 (#2221)

    * change LaneId underlying type from [u8; 4] to H256
    
    * fixed typo
    
    * added some tests
    
    * spelling
    
    * started fixing testnets
    
    * uncommented call size test
    
    * changed RewardsAccountParams encoding + added values separator when computing LaneId
    
    * review suggestions
    svyatonik authored and bkontur committed Jul 1, 2024
    Configuration menu
    Copy the full SHA
    f6063e8 View commit details
    Browse the repository at this point in the history
  3. Introduce MessagesLaneManager (#2227)

    * some useful stuff like LanesManager
    
    * clippy
    
    * more clippy
    
    * Error::LanesManager
    
    * {in, out}bound_lane -> active_{in, out}bound_lane
    
    * merge two impl blocks in one
    
    * fmt
    svyatonik authored and bkontur committed Jul 1, 2024
    Configuration menu
    Copy the full SHA
    9c931ee View commit details
    Browse the repository at this point in the history
  4. Backport from staging (#2243)

    * Updated version according to Cumulus
    
    * Updated docs
    bkontur committed Jul 1, 2024
    Configuration menu
    Copy the full SHA
    9f543a5 View commit details
    Browse the repository at this point in the history
  5. Allow delivery confirmations on closed outbound lanes (#2257)

    * allow delivery confirmations on closed outbound lanes
    
    * fix benchmarks compilation
    svyatonik authored and bkontur committed Jul 1, 2024
    Configuration menu
    Copy the full SHA
    46abe48 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    706eae5 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    dbc8b49 View commit details
    Browse the repository at this point in the history
  8. XCM bridge hub pallet (will be deployed at bridge hubs) (#2213)

    * XCM over bridge pallet (won't ever be merged to this repo): initial commit
    
    * try both bridge-id and lane-id
    
    * flush
    
    * flush
    
    * flush
    
    * flush
    
    * first prototype
    
    * started working on xcm-over-bridge tests
    
    * proper open_bridge_works test
    
    * more open_bridge tests
    
    * request_bridge_closure tests
    
    * tests for close_bridge
    
    * report_misbehavior tests
    
    * renaming xcm-over-bridge ad xcm-bridge-hub: we'll have two similar pallets for dynamic lanes/fees support. One will be deployed at the bridge hub (xcm-bridge-hub) and another one (xcm-bridge-hub-router) at sibling/parent chains to send messages to remote network over the bridge hub
    
    * added couple of TODOs
    
    * moved BridgeQueuesState here + TODO for implementing report_bridge_queues_state + fmt
    
    * fixing TODOs
    
    * fixing TODOs
    
    * moved bridge locations to primitives
    
    * added a couple of TODOs
    
    * ref issue from TODO
    
    * clippy and spelling
    
    * fix tests
    
    * another TODOs
    
    * typo
    
    * LaneState -> force_close_bridge
    
    * start_closing_the_bridge -> start_closing_bridge
    
    * removed Closing bridge state, so now we only have the Opened -> optional temporary Closed state -> None
    
    * spelling
    
    * started prototyping suspend+resume on misbehavior
    
    * continue prototyping
    
    * more tests for open_bridge
    
    * more tests for close_bridge
    
    * more tests for report_misbehavior
    
    * started tests for resume_misbehaving_bridges
    
    * implemented tests for resume_misbehaving_bridges
    
    * remove UnsuspendedChannelWithMisbehavingOwner because now, when all bridges are resumed at once + we assume that the inbound XCM channel is suspended immediately it is no longer actual
    
    * added TODO
    
    * add comment re misbehavior reporter if he's associated with the bridge owner
    
    * ignored clippy
    
    * fmt
    
    * use versioned XCM structs in public interfaces and storage + Box XCM locations where possible
    
    * spelling
    
    * removed TODO in favor of paritytech/parity-bridges-common#2257
    
    * LocalChannelManager -> LocalXcmChannelManager
    
    * removed code specific to #2233, because it isn't the only option now
    
    * removemisbehavior mentions
    
    * also temporary (?) remove BridgesByLocalOrigin because the storage format will likely change to be able to resume bridges from the on_iniitalize/on_idle
    
    * AllowedOpenBridgeOrigin -> OpenBridgeOrigin
    
    * - TooManyBridgesForLocalOrigin
    
    * use bridge_destination_relative_location in args
    
    * better impl of strip_low_level_junctions
    
    * get rid of xcm_into_latest
    
    * clippy
    
    * added #![warn(missing_docs)] to new crates
    svyatonik authored and bkontur committed Jul 1, 2024
    Configuration menu
    Copy the full SHA
    c640cd0 View commit details
    Browse the repository at this point in the history
  9. Implement ExportXcm and MessageDispatch for pallet-xcm-bridge-hub (#2285

    )
    
    * implement ExportXcm and MessageDispatch for pallet-xcm-bridge-hub
    
    * spelling
    svyatonik authored and bkontur committed Jul 1, 2024
    Configuration menu
    Copy the full SHA
    9e9a2f1 View commit details
    Browse the repository at this point in the history
  10. Implement additional require primitives for dynamic fees directly for…

    … pallet-xcm-bridge-hub (#2261)
    
    Xcm bridge hub router v2 (backport to master branch) (#2312)
    
    * copy new pallet (palle-xcm-bridge-hub-router) from dynamic-fees-v1 branch
    
    * added remaining traces of pallet-xcm-bridge-hub-router
    
    * added comment about sharing delivery fee factor between all bridges, opened by this chain
    
    * spelling
    
    * clippy
    
    Implement additional require primitives for dynamic fees directly for pallet-xcm-bridge-hub (#2261)
    
    * added backoff mechanism to inbound bridge queue
    
    * impl backpressure in the XcmBlobHaulerAdapter
    
    * leave TODOs
    
    * BridgeMessageProcessor prototype
    
    * another TODO
    
    * Revert "also temporary (?) remove BridgesByLocalOrigin because the storage format will likely change to be able to resume bridges from the on_iniitalize/on_idle"
    
    This reverts commit bdd7ae11a8942b58c5db6ac6d4e7922aa28cece4.
    
    * prototype for QueuePausedQuery
    
    * implement ExportXcm and MessageDispatch for pallet-xcm-bridge-hub
    
    * spelling
    
    * flush
    
    * small comments to myself
    
    * more backports from dynamic-fees-v1
    
    * use new pallet as exporter and dispatcher in Millau
    
    * use new pallet as exporter and dispatcher in Rialto
    
    * use new pallet as exporter and dispatcher in RialtoParachain
    
    * flush
    
    * fix remaining compilation issues
    
    * warnings + fmt
    
    * fix tests
    
    * LocalXcmChannelManager
    
    * change lane ids
    
    * it works!
    
    * remove bp-xcm-bridge-hub-router and use LocalXcmChannelManager everywhere
    
    * removed commented code
    
    * cleaning up
    
    * cleaning up
    
    * cleaning up
    
    * - separated BridgeId and LaneId
    - BridgeId now uses versioned universal locations
    - added missing stuff to exporter.rs
    
    * OnMessagesDelivered is back
    
    * start using bp-xcm-bridge-hub as OnMessagesDelivered
    
    * cleaning up
    
    * spelling
    
    * fix stupid issues
    
    * Backport latest relevant dynamic fees changes from v1 to v2 (#2372)
    
    * backport latest relevant dynamic fees changes from v1 to v2
    
    * fix comment
    
    Added remaining unit tests for pallet-xcm-bridge-hub (#2499)
    
    * added backoff mechanism to inbound bridge queue
    
    * impl backpressure in the XcmBlobHaulerAdapter
    
    * leave TODOs
    
    * BridgeMessageProcessor prototype
    
    * another TODO
    
    * Revert "also temporary (?) remove BridgesByLocalOrigin because the storage format will likely change to be able to resume bridges from the on_iniitalize/on_idle"
    
    This reverts commit bdd7ae11a8942b58c5db6ac6d4e7922aa28cece4.
    
    * prototype for QueuePausedQuery
    
    * implement ExportXcm and MessageDispatch for pallet-xcm-bridge-hub
    
    * spelling
    
    * flush
    
    * small comments to myself
    
    * more backports from dynamic-fees-v1
    
    * use new pallet as exporter and dispatcher in Millau
    
    * use new pallet as exporter and dispatcher in Rialto
    
    * use new pallet as exporter and dispatcher in RialtoParachain
    
    * flush
    
    * fix remaining compilation issues
    
    * warnings + fmt
    
    * fix tests
    
    * LocalXcmChannelManager
    
    * change lane ids
    
    * it works!
    
    * remove bp-xcm-bridge-hub-router and use LocalXcmChannelManager everywhere
    
    * removed commented code
    
    * cleaning up
    
    * cleaning up
    
    * cleaning up
    
    * - separated BridgeId and LaneId
    - BridgeId now uses versioned universal locations
    - added missing stuff to exporter.rs
    
    * OnMessagesDelivered is back
    
    * start using bp-xcm-bridge-hub as OnMessagesDelivered
    
    * cleaning up
    
    * spelling
    
    * fix stupid issues
    
    * added remaining unit tests for pallet-xcm-bridge-hub
    
    fixed benchmarks (#2504)
    
    Remove pallet_xcm_bridge_hub::SuspendedBridges (#2505)
    
    * remove pallet_xcm_bridge_hub::SuspendedBridges
    
    * apply review suggestions
    svyatonik authored and bkontur committed Jul 1, 2024
    Configuration menu
    Copy the full SHA
    0d5872c View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    47ef5b0 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    c30dc90 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    0fded69 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    ec68493 View commit details
    Browse the repository at this point in the history
  15. Move refund extension to relayers pallet (#2584)

    * moved all call-related definitions to primitives
    
    * moving refund extension to relayers pallet
    
    * cleaning up
    
    * fix compilation + spelling
    
    fix compilation
    
    remove priority_calculator.rs
    
    fix extensions
    svyatonik authored and bkontur committed Jul 1, 2024
    Configuration menu
    Copy the full SHA
    c5fe9bb View commit details
    Browse the repository at this point in the history
  16. Backport recent changes from polkadot staging (#2590)

    * fiox overflow when computing priority boost (#2587)
    
    * Backport changes from polkadot-sdk (#2588)
    
    * backport #1543
    
    * another backport
    
    * https://gitlab.parity.io/parity/mirrors/polkadot-sdk/-/jobs/3833103
    svyatonik authored and bkontur committed Jul 1, 2024
    Configuration menu
    Copy the full SHA
    cacd21b View commit details
    Browse the repository at this point in the history