mirror of
https://github.com/sigp/lighthouse.git
synced 2026-05-08 17:26:04 +00:00
update libp2p dependency to upstream (#8200)
Co-Authored-By: João Oliveira <hello@jxs.pt>
This commit is contained in:
707
Cargo.lock
generated
707
Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
16
Cargo.toml
16
Cargo.toml
@@ -156,8 +156,6 @@ fork_choice = { path = "consensus/fork_choice" }
|
||||
fs2 = "0.4"
|
||||
futures = "0.3"
|
||||
genesis = { path = "beacon_node/genesis" }
|
||||
# This is tracking the sigp-gossipsub branch on sigp/rust-libp2p commit: Aug 20 2025
|
||||
gossipsub = { package = "libp2p-gossipsub", git = "https://github.com/sigp/rust-libp2p.git", rev = "5acdf89a65d64098f9346efa5769e57bcd19dea9", "features" = ["metrics"] }
|
||||
graffiti_file = { path = "validator_client/graffiti_file" }
|
||||
hashlink = "0.9.0"
|
||||
health_metrics = { path = "common/health_metrics" }
|
||||
@@ -168,6 +166,20 @@ initialized_validators = { path = "validator_client/initialized_validators" }
|
||||
int_to_bytes = { path = "consensus/int_to_bytes" }
|
||||
itertools = "0.10"
|
||||
kzg = { path = "crypto/kzg" }
|
||||
libp2p = { git = "https://github.com/libp2p/rust-libp2p.git", default-features = false, features = [
|
||||
"identify",
|
||||
"yamux",
|
||||
"noise",
|
||||
"dns",
|
||||
"tcp",
|
||||
"tokio",
|
||||
"secp256k1",
|
||||
"macros",
|
||||
"metrics",
|
||||
"quic",
|
||||
"upnp",
|
||||
"gossipsub",
|
||||
] }
|
||||
libsecp256k1 = "0.7"
|
||||
lighthouse_network = { path = "beacon_node/lighthouse_network" }
|
||||
lighthouse_tracing = { path = "beacon_node/lighthouse_tracing" }
|
||||
|
||||
@@ -5,9 +5,6 @@ authors = ["Sigma Prime <contact@sigmaprime.io>"]
|
||||
edition = { workspace = true }
|
||||
autotests = false
|
||||
|
||||
[features]
|
||||
libp2p-websocket = []
|
||||
|
||||
[dependencies]
|
||||
alloy-primitives = { workspace = true }
|
||||
alloy-rlp = { workspace = true }
|
||||
@@ -24,10 +21,10 @@ ethereum_ssz_derive = { workspace = true }
|
||||
fixed_bytes = { workspace = true }
|
||||
fnv = { workspace = true }
|
||||
futures = { workspace = true }
|
||||
gossipsub = { workspace = true }
|
||||
hex = { workspace = true }
|
||||
itertools = { workspace = true }
|
||||
libp2p-mplex = "0.43"
|
||||
libp2p = { workspace = true }
|
||||
libp2p-mplex = { git = "https://github.com/libp2p/rust-libp2p.git" }
|
||||
lighthouse_version = { workspace = true }
|
||||
local-ip-address = "0.6"
|
||||
logging = { workspace = true }
|
||||
@@ -36,7 +33,7 @@ lru_cache = { workspace = true }
|
||||
metrics = { workspace = true }
|
||||
network_utils = { workspace = true }
|
||||
parking_lot = { workspace = true }
|
||||
prometheus-client = "0.23.0"
|
||||
prometheus-client = "0.24.0"
|
||||
rand = { workspace = true }
|
||||
regex = { workspace = true }
|
||||
serde = { workspace = true }
|
||||
@@ -55,24 +52,6 @@ typenum = { workspace = true }
|
||||
types = { workspace = true }
|
||||
unsigned-varint = { version = "0.8", features = ["codec"] }
|
||||
|
||||
[dependencies.libp2p]
|
||||
version = "0.56"
|
||||
default-features = false
|
||||
features = [
|
||||
"identify",
|
||||
"yamux",
|
||||
"noise",
|
||||
"dns",
|
||||
"tcp",
|
||||
"tokio",
|
||||
"plaintext",
|
||||
"secp256k1",
|
||||
"macros",
|
||||
"metrics",
|
||||
"quic",
|
||||
"upnp",
|
||||
]
|
||||
|
||||
[dev-dependencies]
|
||||
async-channel = { workspace = true }
|
||||
logging = { workspace = true }
|
||||
|
||||
@@ -5,7 +5,7 @@ use crate::{Enr, PeerIdSerialized};
|
||||
use directory::{
|
||||
DEFAULT_BEACON_NODE_DIR, DEFAULT_HARDCODED_NETWORK, DEFAULT_NETWORK_DIR, DEFAULT_ROOT_DIR,
|
||||
};
|
||||
use libp2p::Multiaddr;
|
||||
use libp2p::{Multiaddr, gossipsub};
|
||||
use local_ip_address::local_ipv6;
|
||||
use network_utils::listen_addr::{ListenAddr, ListenAddress};
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
@@ -107,8 +107,8 @@ pub use prometheus_client;
|
||||
pub use config::Config as NetworkConfig;
|
||||
pub use discovery::Eth2Enr;
|
||||
pub use discv5;
|
||||
pub use gossipsub::{IdentTopic, MessageAcceptance, MessageId, Topic, TopicHash};
|
||||
pub use libp2p;
|
||||
pub use libp2p::gossipsub::{IdentTopic, MessageAcceptance, MessageId, Topic, TopicHash};
|
||||
pub use libp2p::{Multiaddr, identity, multiaddr};
|
||||
pub use libp2p::{PeerId, Swarm, core::ConnectedPoint};
|
||||
pub use peer_manager::{
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
use crate::TopicHash;
|
||||
use crate::types::{GossipEncoding, GossipKind, GossipTopic};
|
||||
use gossipsub::{IdentTopic as Topic, PeerScoreParams, PeerScoreThresholds, TopicScoreParams};
|
||||
use libp2p::gossipsub::{
|
||||
IdentTopic as Topic, PeerScoreParams, PeerScoreThresholds, TopicScoreParams,
|
||||
};
|
||||
use std::cmp::max;
|
||||
use std::collections::HashMap;
|
||||
use std::marker::PhantomData;
|
||||
|
||||
@@ -21,11 +21,11 @@ use crate::types::{
|
||||
use crate::{Enr, NetworkGlobals, PubsubMessage, TopicHash, metrics};
|
||||
use api_types::{AppRequestId, Response};
|
||||
use futures::stream::StreamExt;
|
||||
use gossipsub::{
|
||||
IdentTopic as Topic, MessageAcceptance, MessageAuthenticity, MessageId, PublishError,
|
||||
use gossipsub_scoring_parameters::{PeerScoreSettings, lighthouse_gossip_thresholds};
|
||||
use libp2p::gossipsub::{
|
||||
self, IdentTopic as Topic, MessageAcceptance, MessageAuthenticity, MessageId, PublishError,
|
||||
TopicScoreParams,
|
||||
};
|
||||
use gossipsub_scoring_parameters::{PeerScoreSettings, lighthouse_gossip_thresholds};
|
||||
use libp2p::identity::Keypair;
|
||||
use libp2p::multiaddr::{self, Multiaddr, Protocol as MProtocol};
|
||||
use libp2p::swarm::behaviour::toggle::Toggle;
|
||||
@@ -1764,9 +1764,9 @@ impl<E: EthSpec> Network<E> {
|
||||
|
||||
fn inject_upnp_event(&mut self, event: libp2p::upnp::Event) {
|
||||
match event {
|
||||
libp2p::upnp::Event::NewExternalAddr(addr) => {
|
||||
info!(%addr, "UPnP route established");
|
||||
let mut iter = addr.iter();
|
||||
libp2p::upnp::Event::NewExternalAddr { external_addr, .. } => {
|
||||
info!(%external_addr, "UPnP route established");
|
||||
let mut iter = external_addr.iter();
|
||||
let is_ip6 = {
|
||||
let addr = iter.next();
|
||||
matches!(addr, Some(MProtocol::Ip6(_)))
|
||||
@@ -1781,7 +1781,7 @@ impl<E: EthSpec> Network<E> {
|
||||
}
|
||||
}
|
||||
_ => {
|
||||
trace!(%addr, "UPnP address mapped multiaddr from unknown transport");
|
||||
trace!(%external_addr, "UPnP address mapped multiaddr from unknown transport");
|
||||
}
|
||||
},
|
||||
Some(multiaddr::Protocol::Tcp(tcp_port)) => {
|
||||
@@ -1790,11 +1790,11 @@ impl<E: EthSpec> Network<E> {
|
||||
}
|
||||
}
|
||||
_ => {
|
||||
trace!(%addr, "UPnP address mapped multiaddr from unknown transport");
|
||||
trace!(%external_addr, "UPnP address mapped multiaddr from unknown transport");
|
||||
}
|
||||
}
|
||||
}
|
||||
libp2p::upnp::Event::ExpiredExternalAddr(_) => {}
|
||||
libp2p::upnp::Event::ExpiredExternalAddr { .. } => {}
|
||||
libp2p::upnp::Event::GatewayNotFound => {
|
||||
info!("UPnP not available");
|
||||
}
|
||||
|
||||
@@ -3,11 +3,10 @@ use crate::rpc::{MetaData, MetaDataV2, MetaDataV3};
|
||||
use crate::types::{EnrAttestationBitfield, EnrSyncCommitteeBitfield, GossipEncoding, GossipKind};
|
||||
use crate::{GossipTopic, NetworkConfig};
|
||||
use futures::future::Either;
|
||||
use gossipsub;
|
||||
use libp2p::core::{multiaddr::Multiaddr, muxing::StreamMuxerBox, transport::Boxed};
|
||||
use libp2p::identity::{Keypair, secp256k1};
|
||||
use libp2p::metrics::Registry;
|
||||
use libp2p::{PeerId, Transport, core, noise, yamux};
|
||||
use libp2p::{PeerId, Transport, core, gossipsub, noise, yamux};
|
||||
use ssz::Decode;
|
||||
use std::collections::HashSet;
|
||||
use std::fs::File;
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
use crate::TopicHash;
|
||||
use crate::types::{GossipEncoding, GossipKind, GossipTopic};
|
||||
use libp2p::gossipsub;
|
||||
use snap::raw::{Decoder, Encoder, decompress_len};
|
||||
use ssz::{Decode, Encode};
|
||||
use std::io::{Error, ErrorKind};
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
use gossipsub::{IdentTopic as Topic, TopicHash};
|
||||
use libp2p::gossipsub::{IdentTopic as Topic, TopicHash};
|
||||
use serde::{Deserialize, Serialize};
|
||||
use std::collections::HashSet;
|
||||
use strum::AsRefStr;
|
||||
|
||||
@@ -54,9 +54,9 @@ bls = { workspace = true }
|
||||
eth2 = { workspace = true }
|
||||
eth2_network_config = { workspace = true }
|
||||
genesis = { workspace = true }
|
||||
gossipsub = { workspace = true }
|
||||
k256 = "0.13.4"
|
||||
kzg = { workspace = true }
|
||||
libp2p = { workspace = true }
|
||||
matches = "0.1.8"
|
||||
rand_08 = { package = "rand", version = "0.8.5" }
|
||||
rand_chacha = "0.9.0"
|
||||
|
||||
@@ -19,8 +19,8 @@ use beacon_chain::test_utils::{
|
||||
};
|
||||
use beacon_chain::{BeaconChain, WhenSlotSkipped};
|
||||
use beacon_processor::{work_reprocessing_queue::*, *};
|
||||
use gossipsub::MessageAcceptance;
|
||||
use itertools::Itertools;
|
||||
use libp2p::gossipsub::MessageAcceptance;
|
||||
use lighthouse_network::rpc::InboundRequestId;
|
||||
use lighthouse_network::rpc::methods::{
|
||||
BlobsByRangeRequest, BlobsByRootRequest, DataColumnsByRangeRequest, MetaDataV3,
|
||||
|
||||
@@ -6,6 +6,7 @@ use beacon_chain::BeaconChainTypes;
|
||||
use beacon_chain::test_utils::BeaconChainHarness;
|
||||
use beacon_processor::{BeaconProcessorChannels, BeaconProcessorConfig};
|
||||
use futures::StreamExt;
|
||||
use libp2p::gossipsub;
|
||||
use lighthouse_network::identity::secp256k1;
|
||||
use lighthouse_network::types::{GossipEncoding, GossipKind};
|
||||
use lighthouse_network::{Enr, GossipTopic};
|
||||
|
||||
Reference in New Issue
Block a user