Skip to content

Commit

Permalink
Concurrency and various improvements (#58)
Browse files Browse the repository at this point in the history
* Improve handling of finished parallel tasks in JoinSet

* Update cgp crates

* Use the runner component from cgp-runner

* Remove the sync version of ibc-relayer-components

* Use main ibc-proto crate

* Remove direct path dependency from Cargo.toml

* Fix test
  • Loading branch information
soareschen authored Oct 5, 2023
1 parent 985de06 commit 5101e8c
Show file tree
Hide file tree
Showing 74 changed files with 384 additions and 207 deletions.
88 changes: 21 additions & 67 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 4 additions & 9 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,7 @@ resolver = "2"

members = [
"crates/relayer-components",
"crates/relayer-components-sync",
"crates/relayer-components-extra",
"crates/relayer-components-extra-sync",
"crates/relayer-subscription",
"crates/relayer-all-in-one",
"crates/relayer-mock",
Expand All @@ -28,21 +26,18 @@ overflow-checks = true

[patch.crates-io]
ibc-relayer-components = { path = "./crates/relayer-components" }
ibc-relayer-components-sync = { path = "./crates/relayer-components-sync" }
ibc-relayer-components-extra = { path = "./crates/relayer-components-extra" }
ibc-relayer-runtime = { path = "./crates/relayer-runtime" }
ibc-relayer-all-in-one = { path = "./crates/relayer-all-in-one" }
ibc-relayer-subscription = { path = "./crates/relayer-subscription" }
ibc-relayer-cosmos = { path = "./crates/relayer-cosmos" }

cgp-core = { git = "https://github.com/informalsystems/cgp.git", branch = "main" }
cgp-core-sync = { git = "https://github.com/informalsystems/cgp.git", branch = "main" }
cgp-component = { git = "https://github.com/informalsystems/cgp.git", branch = "main" }
cgp-component-sync = { git = "https://github.com/informalsystems/cgp.git", branch = "main" }
cgp-component-macro = { git = "https://github.com/informalsystems/cgp.git", branch = "main" }
cgp-error = { git = "https://github.com/informalsystems/cgp.git", branch = "main" }
cgp-error-sync = { git = "https://github.com/informalsystems/cgp.git", branch = "main" }
cgp-async = { git = "https://github.com/informalsystems/cgp.git", branch = "main" }
cgp-sync = { git = "https://github.com/informalsystems/cgp.git", branch = "main" }
cgp-strip-async = { git = "https://github.com/informalsystems/cgp.git", branch = "main" }
ibc-proto = { git = "https://github.com/cosmos/ibc-proto-rs.git", branch = "luca_joss/solomachine-lightclient-v3-from-v0.32" }
cgp-run = { git = "https://github.com/informalsystems/cgp.git", branch = "main" }
ibc-relayer-types = { git = "https://github.com/informalsystems/hermes.git", branch = "master" }
ibc-relayer = { git = "https://github.com/informalsystems/hermes.git", branch = "master" }
ibc-telemetry = { git = "https://github.com/informalsystems/hermes.git", branch = "master" }
Expand Down
4 changes: 2 additions & 2 deletions crates/relayer-all-in-one/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -21,5 +21,5 @@ all-features = true
cgp-core = { version = "0.1.0" }
futures-core = { version = "0.3", default-features = false, features = ["alloc"] }
futures-util = { version = "0.3", default-features = false, features = ["alloc"] }
ibc-relayer-components = { version = "0.1.0", path = "../relayer-components" }
ibc-relayer-components-extra = { version = "0.1.0", path = "../relayer-components-extra" }
ibc-relayer-components = { version = "0.1.0" }
ibc-relayer-components-extra = { version = "0.1.0" }
2 changes: 1 addition & 1 deletion crates/relayer-all-in-one/src/all_for_one/birelay.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use ibc_relayer_components::core::traits::run::CanRun;
use cgp_core::CanRun;
use ibc_relayer_components::logger::traits::level::HasLoggerWithBaseLevels;
use ibc_relayer_components::relay::traits::two_way::HasTwoWayRelay;

Expand Down
2 changes: 1 addition & 1 deletion crates/relayer-all-in-one/src/all_for_one/relay.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
use cgp_core::CanRun;
use ibc_relayer_components::chain::types::aliases::{IncomingPacket, OutgoingPacket};
use ibc_relayer_components::core::traits::run::CanRun;
use ibc_relayer_components::logger::traits::level::HasLoggerWithBaseLevels;
use ibc_relayer_components::relay::traits::chains::HasRelayChains;
use ibc_relayer_components::relay::traits::channel::open_handshake::CanRelayChannelOpenHandshake;
Expand Down
20 changes: 0 additions & 20 deletions crates/relayer-components-extra-sync/Cargo.toml

This file was deleted.

1 change: 0 additions & 1 deletion crates/relayer-components-extra-sync/src

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
use core::marker::PhantomData;

use cgp_core::delegate_component;
use cgp_core::RunnerComponent;
use ibc_relayer_components::components::default::birelay::DefaultBiRelayComponents;
use ibc_relayer_components::core::traits::run::RunnerComponent;

pub struct ExtraBiRelayComponents<BaseComponents>(pub PhantomData<BaseComponents>);

Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
use cgp_core::{Async, HasComponents};
use cgp_core::{Async, CanRun, HasComponents};
use ibc_relayer_components::chain::traits::event_subscription::HasEventSubscription;
use ibc_relayer_components::chain::traits::logs::event::CanLogChainEvent;
use ibc_relayer_components::chain::traits::types::chain_id::HasChainId;
use ibc_relayer_components::core::traits::run::CanRun;
use ibc_relayer_components::logger::traits::has_logger::{HasLogger, HasLoggerType};
use ibc_relayer_components::logger::traits::level::HasBaseLogLevels;
use ibc_relayer_components::relay::traits::chains::HasRelayChains;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
use core::marker::PhantomData;

use cgp_core::{delegate_component, delegate_components};
use cgp_core::{delegate_component, delegate_components, RunnerComponent};
use ibc_relayer_components::components::default::relay::DefaultRelayComponents;
use ibc_relayer_components::core::traits::run::RunnerComponent;
use ibc_relayer_components::relay::components::message_senders::chain_sender::SendIbcMessagesToChain;
use ibc_relayer_components::relay::components::message_senders::update_client::SendIbcMessagesWithUpdateClient;
use ibc_relayer_components::relay::components::packet_relayers::general::filter_relayer::FilterRelayer;
Expand Down
19 changes: 0 additions & 19 deletions crates/relayer-components-sync/Cargo.toml

This file was deleted.

1 change: 0 additions & 1 deletion crates/relayer-components-sync/src

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
use cgp_core::{async_trait, derive_component, HasErrorType};
use cgp_core::prelude::*;
use cgp_core::HasErrorType;

use crate::build::traits::birelay::HasBiRelayType;
use crate::build::types::aliases::{ChainIdA, ChainIdB, ClientIdA, ClientIdB};
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
use cgp_core::{async_trait, derive_component, HasErrorType};
use cgp_core::prelude::*;
use cgp_core::HasErrorType;

use crate::build::traits::birelay::HasBiRelayType;
use crate::build::types::aliases::{RelayAToB, RelayBToA};
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
use cgp_core::{async_trait, derive_component, HasErrorType};
use cgp_core::prelude::*;
use cgp_core::HasErrorType;

use crate::build::traits::birelay::HasBiRelayType;
use crate::build::traits::target::chain::ChainBuildTarget;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
use cgp_core::{async_trait, derive_component, HasErrorType};
use cgp_core::prelude::*;
use cgp_core::HasErrorType;

use crate::build::traits::birelay::HasBiRelayType;
use crate::build::traits::target::relay::RelayBuildTarget;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
use cgp_core::{async_trait, derive_component, HasErrorType};
use cgp_core::prelude::*;
use cgp_core::HasErrorType;

use crate::build::traits::birelay::HasBiRelayType;
use crate::build::traits::target::relay::RelayBuildTarget;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
use cgp_core::{async_trait, derive_component, HasErrorType};
use cgp_core::prelude::*;
use cgp_core::HasErrorType;

use crate::chain::traits::types::height::HasHeightType;
use crate::chain::traits::types::status::HasChainStatusType;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
use cgp_core::{async_trait, derive_component, HasErrorType};
use cgp_core::prelude::*;
use cgp_core::HasErrorType;

use crate::chain::traits::types::consensus_state::HasConsensusStateType;
use crate::chain::traits::types::height::HasHeightType;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
Trait definitions for [`CanSendMessages`] and [`MessageSender`].
*/

use cgp_core::{async_trait, derive_component, HasErrorType};
use cgp_core::prelude::*;
use cgp_core::HasErrorType;

use crate::chain::traits::types::event::HasEventType;
use crate::chain::traits::types::message::HasMessageType;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use cgp_core::derive_component;
use cgp_core::prelude::*;

use crate::chain::traits::types::ibc::HasIbcChainTypes;
use crate::chain::traits::types::packet::HasIbcPacketTypes;
Expand Down
Loading

0 comments on commit 5101e8c

Please sign in to comment.