Skip to content
  1. Apr 10, 2024
    • Serban Iorga's avatar
      Replace `BATCH_CALL_SUPPORTED` (#1733) · e47f1e42
      Serban Iorga authored and Bastian Köcher's avatar Bastian Köcher committed
      * Simplify submit_and_watch_signed_extrinsic
      
      The way submit_and_watch_signed_extrinsic is used now, we can always
      derive the SignParam from other params. If in the future we need more
      customization possibilities, we can define a new method.
      
      * Simplify submit_signed_extrinsic
      
      * Send maybe_batch_tx as a parameter
      
      Send `maybe_batch_tx` as a parameter to `submit_proof()`. This way we
      can deduplicate the logic that submits the extrinsic for
      `messages_source and `messages_target` and we can simplify the logic in
      the race loop a bit.
      
      * Define BatchProofTransaction
      
      Deduplicate BatchConfirmationTransaction and BatchDeliveryTransaction by
      replacing both of them with BatchProofTransaction
      
      * Define ChainWithUtilityPallet and BatchCallBuilderConstructor
      
      - Define `ChainWithUtilityPallet` in order to be able to associate the
        batching functionality with chains
      - Defining `BatchCallBuilderConstructor` in order to have a more reliable
        way of checking whether an end of a messages pipeline supports batching
        or no. `BatchCallBuilderConstructor::new_builder()` returns an
        `Option<BatchCallBuilder>`.This is a bit safer because each time a caller
        tries to start creating a batch call, it will call `new_builder()` and
        will be required to handle the returned `Option`. Before we only had a
        bool `BATCH_CALL_SUPPORTED` the caller could have forgetten to check.
      e47f1e42
    • Svyatoslav Nikolsky's avatar
      Batch transactions in complex relays (#1669) · be27bd5e
      Svyatoslav Nikolsky authored and Bastian Köcher's avatar Bastian Köcher committed
      * batch transactions in message relay: API prototype
      
      * get rid of Box<dyn BatchTransaction> and actually submit it
      
      * test batch transactions
      
      * message_lane_loop_works_with_batch_transactions
      
      * removed logger
      
      * BatchConfirmationTransaction + BatchDeliveryTransaction
      
      * more prototyping
      
      * fmt
      
      * continue with batch calls
      
      * impl BatchCallBuilder for ()
      
      * BatchDeliveryTransaction impl
      
      * BundledBatchCallBuilder
      
      * proper impl of BundledBatchCallBuilder + use it in RialtoParachain -> Millau
      
      * impl prove_header in OnDemandHeadersRelay
      
      * impl OnDemandParachainsRelay::prove_header (needs extensive tests)
      
      * added a couple of TODOs
      
      * return Result<Option<BatchTx>> when asking for more headers
      
      * prove headers when reauire_* is called && return proper headers from required_header_id
      
      * split parachains::prove_header and test select_headers_to_prove
      
      * more traces and leave TODOs
      
      * use finality stream in SubstrateFinalitySource::prove_block_finality
      
      * prove parachain head at block, selected by headers relay
      
      * const ANCIENT_BLOCK_THRESHOLD
      
      * TODO -> proof
      
      * clippy and spelling
      
      * BatchCallBuilder::build_batch_call() returns Result
      
      * read first proof from two streams
      
      * FailedToFindFinalityProof -> FinalityProofNotFound
      
      * changed select_headers_to_prove to version from PR review
      be27bd5e
    • Branislav Kontur's avatar
      `dry-run` mode for init bridge command (#1690) · 9cea6934
      Branislav Kontur authored and Bastian Köcher's avatar Bastian Köcher committed
      * `dry-run` mode for init bridge command
      
      * fix clippy
      9cea6934
    • Svyatoslav Nikolsky's avatar
      refactor transaction sign scheme (#1621) · a979340e
      Svyatoslav Nikolsky authored and Bastian Köcher's avatar Bastian Köcher committed
      a979340e
    • Serban Iorga's avatar
      Finality loop: get block justification and authorities change by consensus engine ID (#1619) · 01538bc5
      Serban Iorga authored and Bastian Köcher's avatar Bastian Köcher committed
      * SignedBlock: get justification by consensus engine id
      
      * Define ConsensusLogReader
      
      Making the check for authority changes more generic
      
      * cod review changes
      01538bc5
    • Svyatoslav Nikolsky's avatar
      fixes for nightly clippy (#1618) · f58e076c
      Svyatoslav Nikolsky authored and Bastian Köcher's avatar Bastian Köcher committed
      f58e076c
    • Serban Iorga's avatar
      Define SubstrateBeefy RPC client (#1615) · 4f796ce8
      Serban Iorga authored and Bastian Köcher's avatar Bastian Köcher committed
      4f796ce8
    • Svyatoslav Nikolsky's avatar
      Read extrinsic dispatch result for mined transaction (#1582) · 43afa023
      Svyatoslav Nikolsky authored and Bastian Köcher's avatar Bastian Köcher committed
      * read extrinsic dispatch result for mined transaction
      
      * commit for the history
      
      * Revert "commit for the history"
      
      This reverts commit 99341b04750639db296172cc1432bd70e458ef4b.
      
      * Revert "read extrinsic dispatch result for mined transaction"
      
      This reverts commit 662b776cbf992be9f1637e52f023b782e8c441d1.
      
      * check for successfult transaction in finality relay
      
      * check for successful transaction in parachains relay
      
      * TrackedTransactionStatus ->TrackedTransactionStatus<HeaderId>
      
      * check for successful transaction in messages relay
      
      * fix compilation
      
      * message_lane_loop_is_able_to_recover_from_unsuccessful_transaction
      
      * fixed too-complex-type clippy error
      
      * aaand compilation
      43afa023
    • Svyatoslav Nikolsky's avatar
      TransactionInvalidationTracker (#1544) · 70d6e91f
      Svyatoslav Nikolsky authored and Bastian Köcher's avatar Bastian Köcher committed
      * TransactionInvalidationTracker
      
      * TransacitonInvalidationTracker -> TransactionTracker
      
      * change sign_transaction method
      
      * clippy and spelling
      
      * removed comment
      
      * more transactiontracker tests
      
      * stalls_when_transaction_tracker_returns_error
      
      * remove test code
      
      * remove "impl TransactionTracker for ()"
      
      * enum TrackedTransactionStatus
      
      * test TransactionTracker in on_transaction_status
      
      * do_wait
      70d6e91f
    • Svyatoslav Nikolsky's avatar
      Extract unsigned tx from the SignParam structure (#1561) · f35b4f48
      Svyatoslav Nikolsky authored and Bastian Köcher's avatar Bastian Köcher committed
      * change sign_transaction method
      
      * clippy
      
      * rustup update && clippy
      
      * remove redudnant clone
      f35b4f48
    • Serban Iorga's avatar
      Follow-up on #1419 (#1531) · 77af92b1
      Serban Iorga authored and Bastian Köcher's avatar Bastian Köcher committed
      
      
      * Parachains source cosmetic changes
      
      - Make `ParaHashAtSource` more generic
      - Modify `on_chain_parachain_header` to return `HeaderId`
      - Shortening variable names
      
      Signed-off-by: default avatarSerban Iorga <[email protected]>
      
      * Change ParachainsSource::max_head_id type
      
      Change ParachainsSource::max_head_id to Arc<Mutex<NoopOption>>
      
      Signed-off-by: default avatarSerban Iorga <[email protected]>
      
      * code review changes
      77af92b1
    • Serban Iorga's avatar
      Remove unneeded error conversion (#1527) · 01a1cab8
      Serban Iorga authored and Bastian Köcher's avatar Bastian Köcher committed
      01a1cab8
    • Serban Iorga's avatar
      Unify the operating mode for bridge pallets (#1483) · f8ff3c91
      Serban Iorga authored and Bastian Köcher's avatar Bastian Köcher committed
      
      
      Unify the operating mode for bridge pallets
      
      - define the OperationMode trait and BasicOperatingMode enum
      - use the OperationMode trait in all the bridge pallets
      - use BasicOperatingMode instead of IsHalted for the Grandpa pallet
      - use BasicOperatingMode as part of MessagesOperatingMode
      
      Signed-off-by: default avatarSerban Iorga <[email protected]>
      f8ff3c91
    • Svyatoslav Nikolsky's avatar
      Store both block number and hash in best finalized storage value (#1475) · a97dedb5
      Svyatoslav Nikolsky authored and Bastian Köcher's avatar Bastian Köcher committed
      * store both block number and hash in BestFinalized
      
      * also fix relay code
      
      * spelling
      a97dedb5
    • Svyatoslav Nikolsky's avatar
      Fix on-different-forks metrics during initialization (#1468) · 31a2be84
      Svyatoslav Nikolsky authored and Bastian Köcher's avatar Bastian Köcher committed
      * fix on-different-forks metrics during initialization
      
      * "initialize" parachain finality pallet in on-demand parachains relay
      
      * decrease converstion rate requests count
      
      * more error logging
      
      * fix compilation
      
      * clippy
      31a2be84
    • Svyatoslav Nikolsky's avatar
    • Svyatoslav Nikolsky's avatar
      FinalityEngine in substrate relay (#1374) · b3c8852b
      Svyatoslav Nikolsky authored and Bastian Köcher's avatar Bastian Köcher committed
      
      
      * introduce FinalityEngine in relay code
      
      * add FinalityEngine to relay
      
      * spelling
      
      * fix test compilation
      
      * Update relays/lib-substrate-relay/src/finality/source.rs
      
      Co-authored-by: default avatarAdrian Catangiu <[email protected]>
      
      Co-authored-by: default avatarAdrian Catangiu <[email protected]>
      b3c8852b