Skip to content

Commit d2bf18d

Browse files
authored
chore: Update dependencies (#452)
1 parent ba7be2a commit d2bf18d

File tree

20 files changed

+972
-1241
lines changed

20 files changed

+972
-1241
lines changed

Cargo.lock

Lines changed: 845 additions & 1146 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 28 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -64,27 +64,26 @@ ssv_types = { path = "anchor/common/ssv_types" }
6464
subnet_service = { path = "anchor/subnet_service" }
6565
version = { path = "anchor/common/version" }
6666

67-
beacon_node_fallback = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
68-
bls = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
69-
eth2 = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
70-
eth2_keystore = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
71-
eth2_network_config = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
72-
health_metrics = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
73-
lighthouse_network = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
74-
metrics = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
75-
safe_arith = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
76-
sensitive_url = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
77-
slashing_protection = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
78-
slot_clock = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
79-
task_executor = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
80-
types = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
81-
unused_port = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
82-
validator_metrics = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
83-
validator_services = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
84-
validator_store = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
85-
workspace_members = { git = "https://github.com/sigp/lighthouse", rev = "9b84dac" }
67+
beacon_node_fallback = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
68+
bls = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
69+
eth2 = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
70+
eth2_keystore = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
71+
eth2_network_config = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
72+
health_metrics = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
73+
metrics = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
74+
network_utils = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
75+
safe_arith = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
76+
sensitive_url = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
77+
slashing_protection = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
78+
slot_clock = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
79+
task_executor = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
80+
types = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
81+
validator_metrics = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
82+
validator_services = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
83+
validator_store = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
84+
workspace_members = { git = "https://github.com/sigp/lighthouse", rev = "0450cfc" }
8685

87-
alloy = { version = "0.12.0", features = [
86+
alloy = { version = "1.0.22", features = [
8887
"sol-types",
8988
"transports",
9089
"json",
@@ -107,21 +106,21 @@ derive_more = { version = "2.0.1", features = ["full"] }
107106
dirs = "6.0.0"
108107
discv5 = "0.9.0"
109108
enr = "0.13.0"
110-
ethereum_ssz = "0.8"
111-
ethereum_ssz_derive = "0.8"
109+
ethereum_ssz = "0.9"
110+
ethereum_ssz_derive = "0.9"
112111
futures = "0.3.30"
113-
gossipsub = { package = "libp2p-gossipsub", git = "https://github.com/sigp/rust-libp2p.git", rev = "61b2820" }
112+
gossipsub = { package = "libp2p-gossipsub", git = "https://github.com/sigp/rust-libp2p.git", rev = "2a726cd", features = ["metrics"] }
114113
hex = "0.4.3"
115114
hyper = "1.4"
116115
indexmap = "2.7.0"
117-
libp2p = { version = "0.55", default-features = false }
116+
libp2p = { version = "0.56", default-features = false }
118117
multiaddr = "0.18.2"
119118
num_cpus = "1"
120119
once_cell = "1.21.3"
121120
openssl = "0.10.72"
122121
parking_lot = "0.12"
123122
pbkdf2 = "0.12.2"
124-
prometheus-client = "0.22.0"
123+
prometheus-client = "0.23.0"
125124
r2d2 = "0.8.10"
126125
r2d2_sqlite = "0.21.0"
127126
rand = "0.9"
@@ -145,15 +144,15 @@ tower-http = { version = "0.6", features = ["cors"] }
145144
tracing = "0.1.40"
146145
tracing-appender = "0.2"
147146
tracing-subscriber = { version = "0.3.18", features = ["fmt", "env-filter"] }
148-
tree_hash = "0.9"
149-
tree_hash_derive = "0.9"
147+
tree_hash = "0.10"
148+
tree_hash_derive = "0.10"
150149
vsss-rs = "5.1.0"
151150
zeroize = "1.8.1"
152151

153152
# todo: remove when there is a proper release for peer-store.
154153
[patch.'https://github.com/libp2p/rust-libp2p.git']
155-
libp2p-core = "0.43.0"
156-
libp2p-swarm = "0.46.0"
154+
libp2p-core = "0.43.1"
155+
libp2p-swarm = "0.47.0"
157156

158157
[profile.maxperf]
159158
inherits = "release"

anchor/client/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ message_sender = { workspace = true }
3030
message_validator = { workspace = true }
3131
multiaddr = { workspace = true }
3232
network = { workspace = true }
33+
network_utils = { workspace = true }
3334
openssl = { workspace = true }
3435
operator_key = { workspace = true }
3536
parking_lot = { workspace = true }
@@ -49,7 +50,6 @@ task_executor = { workspace = true }
4950
tokio = { workspace = true }
5051
tracing = { workspace = true }
5152
types = { workspace = true }
52-
unused_port = { workspace = true }
5353
validator_metrics = { workspace = true }
5454
validator_services = { workspace = true }
5555
version = { workspace = true }

anchor/client/src/config.rs

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ use std::{net::IpAddr, path::PathBuf};
66
use global_config::GlobalConfig;
77
use multiaddr::{Multiaddr, Protocol};
88
use network::{DEFAULT_DISC_PORT, DEFAULT_TCP_PORT, ListenAddr, ListenAddress};
9+
use network_utils::unused_port::{
10+
unused_tcp4_port, unused_tcp6_port, unused_udp4_port, unused_udp6_port,
11+
};
912
use sensitive_url::SensitiveUrl;
1013
use ssv_types::OperatorId;
1114
use tracing::{error, warn};
@@ -330,7 +333,7 @@ pub fn parse_listening_addresses(cli_args: &Node) -> Result<ListenAddress, Strin
330333
// 3. If none of the above are set, use the default TCP port (DEFAULT_TCP_PORT).
331334
let tcp_port = cli_args
332335
.use_zero_ports
333-
.then(unused_port::unused_tcp6_port)
336+
.then(unused_tcp6_port)
334337
.transpose()?
335338
.or(cli_args.port)
336339
.unwrap_or(DEFAULT_TCP_PORT);
@@ -342,7 +345,7 @@ pub fn parse_listening_addresses(cli_args: &Node) -> Result<ListenAddress, Strin
342345
// 4. If none of the above are set, use the default discovery port (DEFAULT_DISC_PORT).
343346
let disc_port = cli_args
344347
.use_zero_ports
345-
.then(unused_port::unused_udp6_port)
348+
.then(unused_udp6_port)
346349
.transpose()?
347350
.or(cli_args.discovery_port)
348351
.or(cli_args.port)
@@ -354,7 +357,7 @@ pub fn parse_listening_addresses(cli_args: &Node) -> Result<ListenAddress, Strin
354357
// 3. If none of the above are set, use the selected TCP port + 1.
355358
let quic_port = cli_args
356359
.use_zero_ports
357-
.then(unused_port::unused_udp6_port)
360+
.then(unused_udp6_port)
358361
.transpose()?
359362
.or(cli_args.quic_port)
360363
.unwrap_or(if tcp_port == 0 { 0 } else { tcp_port + 1 });
@@ -375,7 +378,7 @@ pub fn parse_listening_addresses(cli_args: &Node) -> Result<ListenAddress, Strin
375378
// 3. If none of the above are set, use the default TCP port (DEFAULT_TCP_PORT).
376379
let tcp_port = cli_args
377380
.use_zero_ports
378-
.then(unused_port::unused_tcp4_port)
381+
.then(unused_tcp4_port)
379382
.transpose()?
380383
.or(cli_args.port)
381384
.unwrap_or(DEFAULT_TCP_PORT);
@@ -386,7 +389,7 @@ pub fn parse_listening_addresses(cli_args: &Node) -> Result<ListenAddress, Strin
386389
// 4. If none of the above are set, use the default discovery port (DEFAULT_DISC_PORT).
387390
let disc_port = cli_args
388391
.use_zero_ports
389-
.then(unused_port::unused_udp4_port)
392+
.then(unused_udp4_port)
390393
.transpose()?
391394
.or(cli_args.discovery_port)
392395
.or(cli_args.port)
@@ -397,7 +400,7 @@ pub fn parse_listening_addresses(cli_args: &Node) -> Result<ListenAddress, Strin
397400
// 3. If none of the above are set, use the selected TCP port + 1.
398401
let quic_port = cli_args
399402
.use_zero_ports
400-
.then(unused_port::unused_udp4_port)
403+
.then(unused_udp4_port)
401404
.transpose()?
402405
.or(cli_args.quic_port)
403406
.unwrap_or(if tcp_port == 0 { 0 } else { tcp_port + 1 });
@@ -412,20 +415,20 @@ pub fn parse_listening_addresses(cli_args: &Node) -> Result<ListenAddress, Strin
412415
(Some(ipv4), Some(ipv6)) => {
413416
let ipv4_tcp_port = cli_args
414417
.use_zero_ports
415-
.then(unused_port::unused_tcp4_port)
418+
.then(unused_tcp4_port)
416419
.transpose()?
417420
.or(cli_args.port)
418421
.unwrap_or(DEFAULT_TCP_PORT);
419422
let ipv4_disc_port = cli_args
420423
.use_zero_ports
421-
.then(unused_port::unused_udp4_port)
424+
.then(unused_udp4_port)
422425
.transpose()?
423426
.or(cli_args.discovery_port)
424427
.or(cli_args.port)
425428
.unwrap_or(DEFAULT_DISC_PORT);
426429
let ipv4_quic_port = cli_args
427430
.use_zero_ports
428-
.then(unused_port::unused_udp4_port)
431+
.then(unused_udp4_port)
429432
.transpose()?
430433
.or(cli_args.quic_port)
431434
.unwrap_or(if ipv4_tcp_port == 0 {
@@ -436,19 +439,19 @@ pub fn parse_listening_addresses(cli_args: &Node) -> Result<ListenAddress, Strin
436439

437440
let ipv6_tcp_port = cli_args
438441
.use_zero_ports
439-
.then(unused_port::unused_tcp6_port)
442+
.then(unused_tcp6_port)
440443
.transpose()?
441444
.or(cli_args.port6)
442445
.unwrap_or(ipv4_tcp_port);
443446
let ipv6_disc_port = cli_args
444447
.use_zero_ports
445-
.then(unused_port::unused_udp6_port)
448+
.then(unused_udp6_port)
446449
.transpose()?
447450
.or(cli_args.discovery_port6)
448451
.unwrap_or(ipv4_disc_port);
449452
let ipv6_quic_port = cli_args
450453
.use_zero_ports
451-
.then(unused_port::unused_udp6_port)
454+
.then(unused_udp6_port)
452455
.transpose()?
453456
.or(cli_args.quic_port6)
454457
.unwrap_or(if ipv6_tcp_port == 0 {

anchor/client/src/lib.rs

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -521,13 +521,18 @@ impl Client {
521521
voluntary_exit_tracker.clone(),
522522
);
523523

524-
let selection_proof_config = SelectionProofConfig {
524+
let attestation_selection_proof_config = SelectionProofConfig {
525525
lookahead_slot: 0,
526526
computation_offset: Duration::ZERO,
527527
selections_endpoint: false,
528528
parallel_sign: true,
529529
};
530530

531+
let sync_selection_proof_config = SelectionProofConfig {
532+
lookahead_slot: 1,
533+
..attestation_selection_proof_config
534+
};
535+
531536
let duties_service = Arc::new(
532537
DutiesServiceBuilder::new()
533538
.slot_clock(slot_clock.clone())
@@ -536,8 +541,8 @@ impl Client {
536541
.spec(spec.clone())
537542
.executor(executor.clone())
538543
.enable_high_validator_count_metrics(config.enable_high_validator_count_metrics)
539-
.attestation_selection_proof_config(selection_proof_config)
540-
.sync_selection_proof_config(selection_proof_config)
544+
.attestation_selection_proof_config(attestation_selection_proof_config)
545+
.sync_selection_proof_config(sync_selection_proof_config)
541546
.build()?,
542547
);
543548

anchor/eth/src/event_parser.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ macro_rules! impl_event_decoder {
1515
type Output = $event_type;
1616

1717
fn decode_from_log(log: &Log) -> Result<Self::Output, ExecutionError> {
18-
let decoded = Self::decode_log(&log.inner, true)
18+
let decoded = Self::decode_log(&log.inner)
1919
.map_err(|e| {
2020
ExecutionError::DecodeError(
2121
format!("Failed to decode {} event: {}", stringify!($event_type), e)

anchor/eth/src/sync.rs

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -127,9 +127,15 @@ impl SsvEventSyncer {
127127

128128
// Construct Websocket Provider
129129
let ws = WsConnect::new(config.ws_url.full.as_str());
130-
let ws_client = ProviderBuilder::default().on_ws(ws).await.map_err(|e| {
131-
ExecutionError::SyncError(format!("Failed to bind to WS: {}, {}", &config.ws_url, e))
132-
})?;
130+
let ws_client = ProviderBuilder::default()
131+
.connect_ws(ws)
132+
.await
133+
.map_err(|e| {
134+
ExecutionError::SyncError(format!(
135+
"Failed to bind to WS: {}, {}",
136+
&config.ws_url, e
137+
))
138+
})?;
133139
debug!("Created ws client");
134140

135141
// Construct an EventProcessor with access to the DB
@@ -161,15 +167,15 @@ impl SsvEventSyncer {
161167
network: SsvNetworkConfig,
162168
) -> Self {
163169
let http_url: Url = rpc_endpoint.parse().expect("Failed to parse HTTP URL");
164-
let rpc_client = ProviderBuilder::default().on_http(http_url.clone());
170+
let rpc_client = ProviderBuilder::default().connect_http(http_url.clone());
165171

166172
let event_processor = EventProcessor::new(db, Mode::KeySplit);
167173

168174
// This does not perform a live sync, so we just want to mock websocket fields. This helps
169175
// so that we dont have to switch the ws fields to Option and clutter up the rest of the
170176
// application unnecessarily
171177
let ws_url = String::from("");
172-
let ws_client = ProviderBuilder::default().on_http(http_url);
178+
let ws_client = ProviderBuilder::default().connect_http(http_url);
173179

174180
Self {
175181
rpc_client,
@@ -269,7 +275,7 @@ impl SsvEventSyncer {
269275

270276
loop {
271277
let ws = WsConnect::new(&self.ws_url);
272-
if let Ok(ws_client) = ProviderBuilder::default().on_ws(ws).await {
278+
if let Ok(ws_client) = ProviderBuilder::default().connect_ws(ws).await {
273279
self.ws_client = ws_client;
274280
break;
275281
}

anchor/eth/src/util.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -238,7 +238,7 @@ fn provider_from_transports(
238238

239239
// Construct the final client
240240
let client = RpcClient::builder().transport(transport, false);
241-
ProviderBuilder::default().on_client(client)
241+
ProviderBuilder::default().connect_client(client)
242242
}
243243

244244
#[cfg(test)]

anchor/http_metrics/Cargo.toml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,11 @@ authors = ["Sigma Prime <[email protected]>"]
88
anchor_validator_store = { workspace = true }
99
axum = { workspace = true }
1010
health_metrics = { workspace = true }
11-
lighthouse_network = { workspace = true }
11+
libp2p = { workspace = true, default-features = false, features = ["metrics"] }
1212
metrics = { workspace = true }
13+
network_utils = { workspace = true }
1314
parking_lot = { workspace = true }
15+
prometheus-client = { workspace = true }
1416
serde = { workspace = true }
1517
slot_clock = { workspace = true }
1618
tokio = { workspace = true }

anchor/http_metrics/src/lib.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,9 @@ use axum::{
1919
response::{IntoResponse, Response},
2020
routing::get,
2121
};
22-
use lighthouse_network::{libp2p::metrics::Registry, prometheus_client::encoding::text::encode};
22+
use libp2p::metrics::Registry;
2323
use parking_lot::RwLock;
24+
use prometheus_client::encoding::text::encode;
2425
use serde::{Deserialize, Serialize};
2526
use slot_clock::{SlotClock, SystemTimeSlotClock};
2627
use tokio::net::TcpListener;
@@ -128,7 +129,7 @@ async fn metrics_handler<E: EthSpec>(
128129
}
129130

130131
health_metrics::metrics::scrape_health_metrics();
131-
lighthouse_network::metrics::scrape_discovery_metrics();
132+
network_utils::discovery_metrics::scrape_discovery_metrics();
132133

133134
if let Err(e) = encoder.encode_utf8(&gather(), &mut buffer) {
134135
return (

0 commit comments

Comments
 (0)