From 439dd347db3d0aa98ae952366cde468378f2bccf Mon Sep 17 00:00:00 2001 From: qima Date: Tue, 14 Jan 2025 22:57:06 +0800 Subject: [PATCH 1/7] test(CI): confirm not open too many FDs --- .github/workflows/memcheck.yml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/.github/workflows/memcheck.yml b/.github/workflows/memcheck.yml index f0efbefda5..89350fc49f 100644 --- a/.github/workflows/memcheck.yml +++ b/.github/workflows/memcheck.yml @@ -164,6 +164,22 @@ jobs: run: pgrep antnode | wc -l if: always() + - name: confirm opened FDs + shell: bash + timeout-minutes: 1 + run: | + fd_cap="30" + pids=$(pgrep antnode) + for pid in $pids; do + fd_count=$(ls /proc/$pid/fd | wc -l) + echo "Process $pid - File Descriptors: $fd_count" + if (( $(echo "$fd_count > $fd_cap" | bc -l) )); then + echo "Process $pid holding FD exceeded threshold: $fd_cap" + exit 1 + fi + done + if: always() + - name: Stop the local network and upload logs if: always() uses: maidsafe/ant-local-testnet-action@main From 11f71f0226101fd58d1a7aed1f42edf3f13fd82e Mon Sep 17 00:00:00 2001 From: qima Date: Thu, 16 Jan 2025 23:57:39 +0800 Subject: [PATCH 2/7] fix(metrics): avoid intialize un-necessary system resources It turned out that new_all function opens FD for un-necessary system resources, which result in accumulated memory-usage issue. Hence initialize with nothing and then refresh only related. --- ant-logging/src/metrics.rs | 2 +- ant-networking/src/metrics/mod.rs | 3 ++- ant-node/src/bin/antnode/main.rs | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/ant-logging/src/metrics.rs b/ant-logging/src/metrics.rs index b6d99a6137..b6cbd29526 100644 --- a/ant-logging/src/metrics.rs +++ b/ant-logging/src/metrics.rs @@ -44,7 +44,7 @@ struct ProcessMetrics { // Obtains the system metrics every UPDATE_INTERVAL and logs it. // The function should be spawned as a task and should be re-run if our main process is restarted. pub async fn init_metrics(pid: u32) { - let mut sys = System::new_all(); + let mut sys = System::new(); let mut networks = Networks::new_with_refreshed_list(); let pid = Pid::from_u32(pid); diff --git a/ant-networking/src/metrics/mod.rs b/ant-networking/src/metrics/mod.rs index 2cc80fe424..32e0f0dca9 100644 --- a/ant-networking/src/metrics/mod.rs +++ b/ant-networking/src/metrics/mod.rs @@ -246,11 +246,12 @@ impl NetworkMetricsRecorder { let pid = Pid::from_u32(std::process::id()); let process_refresh_kind = ProcessRefreshKind::everything().without_disk_usage(); - let mut system = System::new_all(); + let mut system = System::new(); let physical_core_count = system.physical_core_count(); tokio::spawn(async move { loop { + system.refresh_cpu(); system.refresh_process_specifics(pid, process_refresh_kind); if let (Some(process), Some(core_count)) = (system.process(pid), physical_core_count) diff --git a/ant-node/src/bin/antnode/main.rs b/ant-node/src/bin/antnode/main.rs index 3397d81461..644628b2d5 100644 --- a/ant-node/src/bin/antnode/main.rs +++ b/ant-node/src/bin/antnode/main.rs @@ -427,7 +427,7 @@ You can check your reward balance by running: const JITTER_MIN_S: u64 = 1; const JITTER_MAX_S: u64 = 15; - let mut sys = System::new_all(); + let mut sys = System::new(); let mut high_cpu_count: u8 = 0; From 9e5f22b05af1475ff9868aafa98df64e85b31efe Mon Sep 17 00:00:00 2001 From: Chris O'Neil Date: Sat, 18 Jan 2025 11:43:40 +0000 Subject: [PATCH 3/7] chore: remove unallocated ip from mainnet contacts We have accidentally added this IP to the contacts for the production network, but it is not allocated. --- ant-bootstrap/src/contacts.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/ant-bootstrap/src/contacts.rs b/ant-bootstrap/src/contacts.rs index b121f54e0c..d4172fc38d 100644 --- a/ant-bootstrap/src/contacts.rs +++ b/ant-bootstrap/src/contacts.rs @@ -20,7 +20,6 @@ const MAINNET_CONTACTS: &[&str] = &[ "http://159.223.246.45/bootstrap_cache.json", "http://139.59.201.153/bootstrap_cache.json", "http://139.59.200.27/bootstrap_cache.json", - "http://139.59.198.251/bootstrap_cache.json", ]; /// The client fetch timeout From 932be47cf44d2223a69b1e08b1e03efa2cfb8ceb Mon Sep 17 00:00:00 2001 From: qima Date: Mon, 20 Jan 2025 03:54:54 +0800 Subject: [PATCH 4/7] fix(metric): not to refresh entire cpu un-necessarily and too often --- ant-logging/src/metrics.rs | 2 +- ant-networking/src/metrics/mod.rs | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/ant-logging/src/metrics.rs b/ant-logging/src/metrics.rs index b6cbd29526..ded5649bbb 100644 --- a/ant-logging/src/metrics.rs +++ b/ant-logging/src/metrics.rs @@ -11,7 +11,7 @@ use std::time::Duration; use sysinfo::{self, Networks, Pid, System}; use tracing::{debug, error}; -const UPDATE_INTERVAL: Duration = Duration::from_secs(15); +const UPDATE_INTERVAL: Duration = Duration::from_secs(60); const TO_MB: u64 = 1_000_000; // The following Metrics are collected and logged diff --git a/ant-networking/src/metrics/mod.rs b/ant-networking/src/metrics/mod.rs index 32e0f0dca9..1efc7a2334 100644 --- a/ant-networking/src/metrics/mod.rs +++ b/ant-networking/src/metrics/mod.rs @@ -28,7 +28,7 @@ use prometheus_client::{ use sysinfo::{Pid, ProcessRefreshKind, System}; use tokio::time::Duration; -const UPDATE_INTERVAL: Duration = Duration::from_secs(15); +const UPDATE_INTERVAL: Duration = Duration::from_secs(60); const TO_MB: u64 = 1_000_000; /// The shared recorders that are used to record metrics. @@ -251,7 +251,6 @@ impl NetworkMetricsRecorder { tokio::spawn(async move { loop { - system.refresh_cpu(); system.refresh_process_specifics(pid, process_refresh_kind); if let (Some(process), Some(core_count)) = (system.process(pid), physical_core_count) From 3f918f91c5247b9a18960ddfceea27a395a8bf0f Mon Sep 17 00:00:00 2001 From: qima Date: Tue, 21 Jan 2025 01:02:45 +0800 Subject: [PATCH 5/7] chore: remove node CPU check and self termination --- Cargo.lock | 1 - ant-node/Cargo.toml | 1 - ant-node/src/bin/antnode/main.rs | 53 -------------------------------- 3 files changed, 55 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d9327f6bdf..f420a8b113 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -989,7 +989,6 @@ dependencies = [ "serde", "serde_json", "strum", - "sysinfo", "tempfile", "test-utils", "thiserror 1.0.69", diff --git a/ant-node/Cargo.toml b/ant-node/Cargo.toml index f8e289a30b..aeecaeedb3 100644 --- a/ant-node/Cargo.toml +++ b/ant-node/Cargo.toml @@ -62,7 +62,6 @@ rayon = "1.8.0" self_encryption = "~0.30.0" serde = { version = "1.0.133", features = ["derive", "rc"] } strum = { version = "0.26.2", features = ["derive"] } -sysinfo = { version = "0.30.8", default-features = false } thiserror = "1.0.23" tokio = { version = "1.32.0", features = [ "io-util", diff --git a/ant-node/src/bin/antnode/main.rs b/ant-node/src/bin/antnode/main.rs index 644628b2d5..1cd7a3e79d 100644 --- a/ant-node/src/bin/antnode/main.rs +++ b/ant-node/src/bin/antnode/main.rs @@ -36,7 +36,6 @@ use std::{ process::Command, time::Duration, }; -use sysinfo::{self, System}; use tokio::{ runtime::Runtime, sync::{broadcast::error::RecvError, mpsc}, @@ -412,58 +411,6 @@ You can check your reward balance by running: error!("Failed to send node control msg to antnode bin main thread: {err}"); } }); - let ctrl_tx_clone_cpu = ctrl_tx.clone(); - // Monitor host CPU usage - tokio::spawn(async move { - use rand::{thread_rng, Rng}; - - const CPU_CHECK_INTERVAL: Duration = Duration::from_secs(60); - const CPU_USAGE_THRESHOLD: f32 = 50.0; - const HIGH_CPU_CONSECUTIVE_LIMIT: u8 = 5; - const NODE_STOP_DELAY: Duration = Duration::from_secs(1); - const INITIAL_DELAY_MIN_S: u64 = 10; - const INITIAL_DELAY_MAX_S: u64 = - HIGH_CPU_CONSECUTIVE_LIMIT as u64 * CPU_CHECK_INTERVAL.as_secs(); - const JITTER_MIN_S: u64 = 1; - const JITTER_MAX_S: u64 = 15; - - let mut sys = System::new(); - - let mut high_cpu_count: u8 = 0; - - // Random initial delay between 1 and 5 minutes - let initial_delay = - Duration::from_secs(thread_rng().gen_range(INITIAL_DELAY_MIN_S..=INITIAL_DELAY_MAX_S)); - tokio::time::sleep(initial_delay).await; - - loop { - sys.refresh_cpu(); - let cpu_usage = sys.global_cpu_info().cpu_usage(); - - if cpu_usage > CPU_USAGE_THRESHOLD { - high_cpu_count += 1; - } else { - high_cpu_count = 0; - } - - if high_cpu_count >= HIGH_CPU_CONSECUTIVE_LIMIT { - if let Err(err) = ctrl_tx_clone_cpu - .send(NodeCtrl::Stop { - delay: NODE_STOP_DELAY, - result: StopResult::Success(format!("Excess host CPU %{CPU_USAGE_THRESHOLD} detected for {HIGH_CPU_CONSECUTIVE_LIMIT} consecutive minutes!")), - }) - .await - { - error!("Failed to send node control msg to antnode bin main thread: {err}"); - } - break; - } - - // Add jitter to the interval - let jitter = Duration::from_secs(thread_rng().gen_range(JITTER_MIN_S..=JITTER_MAX_S)); - tokio::time::sleep(CPU_CHECK_INTERVAL + jitter).await; - } - }); // Start up gRPC interface if enabled by user if let Some(addr) = rpc { From 8ca7d5b62c3f3e1c2e3fd0b6ca539ffd7cfa14b5 Mon Sep 17 00:00:00 2001 From: Chris O'Neil Date: Mon, 20 Jan 2025 19:21:02 +0000 Subject: [PATCH 6/7] docs: changelog entries for `2024.12.1.10` --- CHANGELOG.md | 29 +++++++++++++++++++++++++++++ ant-build-info/src/release_info.rs | 2 +- release-cycle-info | 2 +- 3 files changed, 31 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 01c99e92fd..b619fa8cc8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,35 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 *When editing this file, please respect a line length of 100.* +## 2025-01-20 + +### Client + +#### Fixed + +- Remove unallocated static IP from the bootstrap mechanism. We have five static IP addresses + allocated to five hosts, each of which run nodes and a minimal web server. The web server makes a + list of peers available to nodes and clients to enable them to join the network. These static IP + addresses are hard-coded in the `antnode` and `ant` binaries. It was discovered we had accidentally + added six IPs and one of those was unallocated. Removing the unallocated IP should reduce the time + to connect to the network. + +### Network + +#### Changed + +- Reduce the frequency of metrics collection in the node's metrics server, from fifteen to sixty + seconds. This should reduce resource usage and improve performance. +- Do not refresh all CPU information in the metrics collection process in the node's metrics server. + Again, this should reduce resource usage and improve performance. +- Remove the 50% CPU usage safety measure. We added a safety measure to the node to cause the + process to terminate if the system's CPU usage exceeded 50% for five consecutive minutes. This was + to prevent cascading failures resulting from too much churn when a large node operator pulled the + plug on tens of thousands of nodes in a very short period of time. If other operators had + provisioned to max capacity and not left some buffer room for their own nodes, many other node + processes could die from the resulting churn. After an internal discussion, the decision was taken + to remove the safety measure. + ## 2025-01-14 ### Client diff --git a/ant-build-info/src/release_info.rs b/ant-build-info/src/release_info.rs index 33afb04700..edd2eff8a7 100644 --- a/ant-build-info/src/release_info.rs +++ b/ant-build-info/src/release_info.rs @@ -1,4 +1,4 @@ pub const RELEASE_YEAR: &str = "2024"; pub const RELEASE_MONTH: &str = "12"; pub const RELEASE_CYCLE: &str = "1"; -pub const RELEASE_CYCLE_COUNTER: &str = "9"; +pub const RELEASE_CYCLE_COUNTER: &str = "10"; diff --git a/release-cycle-info b/release-cycle-info index 3f88de7ba3..5c995abc37 100644 --- a/release-cycle-info +++ b/release-cycle-info @@ -15,4 +15,4 @@ release-year: 2024 release-month: 12 release-cycle: 1 -release-cycle-counter: 9 +release-cycle-counter: 10 From 2ef95c43af897be9e58a8b025b0b30b74c1b2ba9 Mon Sep 17 00:00:00 2001 From: Chris O'Neil Date: Mon, 20 Jan 2025 19:33:49 +0000 Subject: [PATCH 7/7] chore(release): stable release 2024.12.1.10 ================== Crate Versions ================== ant-bootstrap: 0.1.4 ant-build-info: 0.1.23 ant-cli: 0.3.5 ant-evm: 0.1.8 ant-logging: 0.2.45 ant-metrics: 0.1.24 ant-networking: 0.3.4 ant-node: 0.3.5 ant-node-manager: 0.11.7 ant-node-rpc-client: 0.6.41 ant-protocol: 0.3.3 ant-registers: 0.4.7 ant-service-management: 0.4.7 ant-token-supplies: 0.1.62 autonomi: 0.3.4 evmlib: 0.1.8 evm-testnet: 0.1.8 nat-detection: 0.2.15 node-launchpad: 0.5.3 test-utils: 0.4.15 =================== Binary Versions =================== ant: 0.3.5 antctl: 0.11.7 antctld: 0.11.7 antnode: 0.3.5 antnode_rpc_client: 0.6.41 nat-detection: 0.2.15 node-launchpad: 0.5.3 --- Cargo.lock | 10 +++++----- ant-bootstrap/Cargo.toml | 4 ++-- ant-cli/Cargo.toml | 6 +++--- ant-logging/Cargo.toml | 2 +- ant-networking/Cargo.toml | 4 ++-- ant-node-manager/Cargo.toml | 4 ++-- ant-node-rpc-client/Cargo.toml | 4 ++-- ant-node/Cargo.toml | 8 ++++---- ant-service-management/Cargo.toml | 4 ++-- autonomi/Cargo.toml | 6 +++--- nat-detection/Cargo.toml | 2 +- node-launchpad/Cargo.toml | 2 +- 12 files changed, 28 insertions(+), 28 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f420a8b113..9dd7246829 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -773,7 +773,7 @@ dependencies = [ [[package]] name = "ant-bootstrap" -version = "0.1.3" +version = "0.1.4" dependencies = [ "ant-logging", "ant-protocol", @@ -807,7 +807,7 @@ dependencies = [ [[package]] name = "ant-cli" -version = "0.3.4" +version = "0.3.5" dependencies = [ "ant-bootstrap", "ant-build-info", @@ -861,7 +861,7 @@ dependencies = [ [[package]] name = "ant-logging" -version = "0.2.44" +version = "0.2.45" dependencies = [ "chrono", "color-eyre", @@ -900,7 +900,7 @@ dependencies = [ [[package]] name = "ant-networking" -version = "0.3.3" +version = "0.3.4" dependencies = [ "aes-gcm-siv", "ant-bootstrap", @@ -948,7 +948,7 @@ dependencies = [ [[package]] name = "ant-node" -version = "0.3.4" +version = "0.3.5" dependencies = [ "ant-bootstrap", "ant-build-info", diff --git a/ant-bootstrap/Cargo.toml b/ant-bootstrap/Cargo.toml index 864f1eeda2..856a44fdc0 100644 --- a/ant-bootstrap/Cargo.toml +++ b/ant-bootstrap/Cargo.toml @@ -7,13 +7,13 @@ license = "GPL-3.0" name = "ant-bootstrap" readme = "README.md" repository = "https://github.com/maidsafe/autonomi" -version = "0.1.3" +version = "0.1.4" [features] local = [] [dependencies] -ant-logging = { path = "../ant-logging", version = "0.2.44" } +ant-logging = { path = "../ant-logging", version = "0.2.45" } ant-protocol = { path = "../ant-protocol", version = "0.3.3" } atomic-write-file = "0.2.2" chrono = { version = "0.4", features = ["serde"] } diff --git a/ant-cli/Cargo.toml b/ant-cli/Cargo.toml index 5cf23b59bc..d6c940cc50 100644 --- a/ant-cli/Cargo.toml +++ b/ant-cli/Cargo.toml @@ -3,7 +3,7 @@ authors = ["MaidSafe Developers "] name = "ant-cli" description = "CLI client for the Autonomi network" license = "GPL-3.0" -version = "0.3.4" +version = "0.3.5" edition = "2021" homepage = "https://maidsafe.net" readme = "README.md" @@ -24,9 +24,9 @@ name = "files" harness = false [dependencies] -ant-bootstrap = { path = "../ant-bootstrap", version = "0.1.3" } +ant-bootstrap = { path = "../ant-bootstrap", version = "0.1.4" } ant-build-info = { path = "../ant-build-info", version = "0.1.23" } -ant-logging = { path = "../ant-logging", version = "0.2.44" } +ant-logging = { path = "../ant-logging", version = "0.2.45" } ant-protocol = { path = "../ant-protocol", version = "0.3.3" } autonomi = { path = "../autonomi", version = "0.3.4", features = [ "fs", diff --git a/ant-logging/Cargo.toml b/ant-logging/Cargo.toml index 92394789c6..af720fbc7f 100644 --- a/ant-logging/Cargo.toml +++ b/ant-logging/Cargo.toml @@ -7,7 +7,7 @@ license = "GPL-3.0" name = "ant-logging" readme = "README.md" repository = "https://github.com/maidsafe/autonomi" -version = "0.2.44" +version = "0.2.45" [dependencies] chrono = "~0.4.19" diff --git a/ant-networking/Cargo.toml b/ant-networking/Cargo.toml index c1b02c82df..ecfcdc4462 100644 --- a/ant-networking/Cargo.toml +++ b/ant-networking/Cargo.toml @@ -7,7 +7,7 @@ license = "GPL-3.0" name = "ant-networking" readme = "README.md" repository = "https://github.com/maidsafe/autonomi" -version = "0.3.3" +version = "0.3.4" [features] default = [] @@ -20,7 +20,7 @@ upnp = ["libp2p/upnp"] [dependencies] aes-gcm-siv = "0.11.1" -ant-bootstrap = { path = "../ant-bootstrap", version = "0.1.3" } +ant-bootstrap = { path = "../ant-bootstrap", version = "0.1.4" } ant-build-info = { path = "../ant-build-info", version = "0.1.23" } ant-evm = { path = "../ant-evm", version = "0.1.8" } ant-protocol = { path = "../ant-protocol", version = "0.3.3" } diff --git a/ant-node-manager/Cargo.toml b/ant-node-manager/Cargo.toml index d9831185a8..e83f43dabb 100644 --- a/ant-node-manager/Cargo.toml +++ b/ant-node-manager/Cargo.toml @@ -30,10 +30,10 @@ tcp = [] websockets = [] [dependencies] -ant-bootstrap = { path = "../ant-bootstrap", version = "0.1.3" } +ant-bootstrap = { path = "../ant-bootstrap", version = "0.1.4" } ant-build-info = { path = "../ant-build-info", version = "0.1.23" } ant-evm = { path = "../ant-evm", version = "0.1.8" } -ant-logging = { path = "../ant-logging", version = "0.2.44" } +ant-logging = { path = "../ant-logging", version = "0.2.45" } ant-protocol = { path = "../ant-protocol", version = "0.3.3" } ant-releases = { version = "0.4.0" } ant-service-management = { path = "../ant-service-management", version = "0.4.7" } diff --git a/ant-node-rpc-client/Cargo.toml b/ant-node-rpc-client/Cargo.toml index 6bab97421e..80690be5b3 100644 --- a/ant-node-rpc-client/Cargo.toml +++ b/ant-node-rpc-client/Cargo.toml @@ -18,9 +18,9 @@ nightly = [] [dependencies] ant-build-info = { path = "../ant-build-info", version = "0.1.23" } -ant-logging = { path = "../ant-logging", version = "0.2.44" } +ant-logging = { path = "../ant-logging", version = "0.2.45" } ant-protocol = { path = "../ant-protocol", version = "0.3.3", features=["rpc"] } -ant-node = { path = "../ant-node", version = "0.3.4" } +ant-node = { path = "../ant-node", version = "0.3.5" } ant-service-management = { path = "../ant-service-management", version = "0.4.7" } async-trait = "0.1" bls = { package = "blsttc", version = "8.0.1" } diff --git a/ant-node/Cargo.toml b/ant-node/Cargo.toml index aeecaeedb3..ff1cce66ac 100644 --- a/ant-node/Cargo.toml +++ b/ant-node/Cargo.toml @@ -2,7 +2,7 @@ authors = ["MaidSafe Developers "] description = "The Autonomi node binary" name = "ant-node" -version = "0.3.4" +version = "0.3.5" edition = "2021" license = "GPL-3.0" homepage = "https://maidsafe.net" @@ -26,11 +26,11 @@ otlp = ["ant-logging/otlp"] upnp = ["ant-networking/upnp"] [dependencies] -ant-bootstrap = { path = "../ant-bootstrap", version = "0.1.3" } +ant-bootstrap = { path = "../ant-bootstrap", version = "0.1.4" } ant-build-info = { path = "../ant-build-info", version = "0.1.23" } ant-evm = { path = "../ant-evm", version = "0.1.8" } -ant-logging = { path = "../ant-logging", version = "0.2.44" } -ant-networking = { path = "../ant-networking", version = "0.3.3" } +ant-logging = { path = "../ant-logging", version = "0.2.45" } +ant-networking = { path = "../ant-networking", version = "0.3.4" } ant-protocol = { path = "../ant-protocol", version = "0.3.3" } ant-registers = { path = "../ant-registers", version = "0.4.7" } ant-service-management = { path = "../ant-service-management", version = "0.4.7" } diff --git a/ant-service-management/Cargo.toml b/ant-service-management/Cargo.toml index acc2fe7d36..662634a107 100644 --- a/ant-service-management/Cargo.toml +++ b/ant-service-management/Cargo.toml @@ -10,9 +10,9 @@ repository = "https://github.com/maidsafe/autonomi" version = "0.4.7" [dependencies] -ant-bootstrap = { path = "../ant-bootstrap", version = "0.1.3" } +ant-bootstrap = { path = "../ant-bootstrap", version = "0.1.4" } ant-evm = { path = "../ant-evm", version = "0.1.8" } -ant-logging = { path = "../ant-logging", version = "0.2.44" } +ant-logging = { path = "../ant-logging", version = "0.2.45" } ant-protocol = { path = "../ant-protocol", version = "0.3.3", features = ["rpc"] } async-trait = "0.1" dirs-next = "2.0.0" diff --git a/autonomi/Cargo.toml b/autonomi/Cargo.toml index 86df80e572..78b039f8bb 100644 --- a/autonomi/Cargo.toml +++ b/autonomi/Cargo.toml @@ -33,9 +33,9 @@ registers = [] vault = ["registers"] [dependencies] -ant-bootstrap = { path = "../ant-bootstrap", version = "0.1.3" } +ant-bootstrap = { path = "../ant-bootstrap", version = "0.1.4" } ant-evm = { path = "../ant-evm", version = "0.1.8" } -ant-networking = { path = "../ant-networking", version = "0.3.3" } +ant-networking = { path = "../ant-networking", version = "0.3.4" } ant-protocol = { path = "../ant-protocol", version = "0.3.3" } ant-registers = { path = "../ant-registers", version = "0.4.7" } bip39 = "2.0.0" @@ -68,7 +68,7 @@ xor_name = "5.0.0" [dev-dependencies] alloy = { version = "0.7.3", default-features = false, features = ["contract", "json-rpc", "network", "node-bindings", "provider-http", "reqwest-rustls-tls", "rpc-client", "rpc-types", "signer-local", "std"] } -ant-logging = { path = "../ant-logging", version = "0.2.44" } +ant-logging = { path = "../ant-logging", version = "0.2.45" } eyre = "0.6.5" sha2 = "0.10.6" # Do not specify the version field. Release process expects even the local dev deps to be published. diff --git a/nat-detection/Cargo.toml b/nat-detection/Cargo.toml index 4c2d0c784e..2ad2fc2dcd 100644 --- a/nat-detection/Cargo.toml +++ b/nat-detection/Cargo.toml @@ -18,7 +18,7 @@ nightly = [] [dependencies] ant-build-info = { path = "../ant-build-info", version = "0.1.23" } -ant-networking = { path = "../ant-networking", version = "0.3.3" } +ant-networking = { path = "../ant-networking", version = "0.3.4" } ant-protocol = { path = "../ant-protocol", version = "0.3.3" } clap = { version = "4.5.4", features = ["derive"] } clap-verbosity-flag = "2.2.0" diff --git a/node-launchpad/Cargo.toml b/node-launchpad/Cargo.toml index d71003f3dc..8dc6e05afd 100644 --- a/node-launchpad/Cargo.toml +++ b/node-launchpad/Cargo.toml @@ -18,7 +18,7 @@ path = "src/bin/tui/main.rs" nightly = [] [dependencies] -ant-bootstrap = { path = "../ant-bootstrap", version = "0.1.3" } +ant-bootstrap = { path = "../ant-bootstrap", version = "0.1.4" } ant-build-info = { path = "../ant-build-info", version = "0.1.23" } ant-evm = { path = "../ant-evm", version = "0.1.8" } ant-node-manager = { version = "0.11.7", path = "../ant-node-manager" }