Update lighthouse to the latest upstream libp2p and gossipsub (#7828)

This commit is contained in:
João Oliveira
2025-08-21 08:57:46 +01:00
committed by GitHub
parent c9ffdf7f71
commit cee30d8ca5
5 changed files with 147 additions and 230 deletions

340
Cargo.lock generated
View File

@@ -37,7 +37,7 @@ dependencies = [
"eth2_keystore",
"eth2_wallet",
"filesystem",
"rand 0.9.2",
"rand 0.9.0",
"regex",
"rpassword",
"serde",
@@ -228,7 +228,7 @@ dependencies = [
"paste",
"proptest",
"proptest-derive",
"rand 0.9.2",
"rand 0.9.0",
"ruint",
"rustc-hash 2.1.1",
"serde",
@@ -518,9 +518,9 @@ checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
[[package]]
name = "asn1-rs"
version = "0.6.2"
version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5493c3bedbacf7fd7382c6346bbd66687d12bbaad3a89a2d2c303ee6cf20b048"
checksum = "56624a96882bb8c26d61312ae18cb45868e5a9992ea73c58e45c3101e56a1e60"
dependencies = [
"asn1-rs-derive",
"asn1-rs-impl",
@@ -528,15 +528,15 @@ dependencies = [
"nom",
"num-traits",
"rusticata-macros",
"thiserror 1.0.69",
"thiserror 2.0.12",
"time",
]
[[package]]
name = "asn1-rs-derive"
version = "0.5.1"
version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490"
checksum = "3109e49b1e4909e9db6515a30c633684d68cdeaa252f215214cb4fa1a5bfee2c"
dependencies = [
"proc-macro2",
"quote",
@@ -624,17 +624,6 @@ dependencies = [
"pin-project-lite",
]
[[package]]
name = "async-recursion"
version = "1.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.100",
]
[[package]]
name = "async-stream"
version = "0.3.6"
@@ -700,11 +689,12 @@ checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
[[package]]
name = "attohttpc"
version = "0.24.1"
version = "0.30.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8d9a9bf8b79a749ee0b911b91b671cc2b6c670bdbc7e3dfd537576ddc94bb2a2"
checksum = "16e2cdb6d5ed835199484bb92bb8b3edd526effe995c61732580439c1a67e2e9"
dependencies = [
"http 0.2.12",
"base64 0.22.1",
"http 1.3.0",
"log",
"url",
]
@@ -901,7 +891,7 @@ dependencies = [
"operation_pool",
"parking_lot 0.12.3",
"proto_array",
"rand 0.9.2",
"rand 0.9.0",
"rayon",
"safe_arith",
"sensitive_url",
@@ -1166,7 +1156,7 @@ dependencies = [
"ethereum_ssz",
"fixed_bytes",
"hex",
"rand 0.9.2",
"rand 0.9.0",
"safe_arith",
"serde",
"tree_hash",
@@ -1564,7 +1554,7 @@ dependencies = [
"monitoring_api",
"network",
"operation_pool",
"rand 0.9.2",
"rand 0.9.0",
"sensitive_url",
"serde",
"serde_json",
@@ -1903,6 +1893,12 @@ dependencies = [
"itertools 0.10.5",
]
[[package]]
name = "critical-section"
version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b"
[[package]]
name = "crossbeam-channel"
version = "0.5.15"
@@ -1978,16 +1974,6 @@ dependencies = [
"typenum",
]
[[package]]
name = "crypto-mac"
version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab"
dependencies = [
"generic-array 0.14.7",
"subtle",
]
[[package]]
name = "crypto-mac"
version = "0.11.0"
@@ -2240,9 +2226,9 @@ dependencies = [
[[package]]
name = "der-parser"
version = "9.0.0"
version = "10.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5cd0a5c643689626bec213c4d8bd4d96acc8ffdb4ad4bb6bc16abf27d5f4b553"
checksum = "07da5016415d5a3c4dd39b11ed26f915f52fc4e0dc197d87908bc916e51bc1a6"
dependencies = [
"asn1-rs",
"displaydoc",
@@ -2865,7 +2851,7 @@ dependencies = [
"multiaddr",
"pretty_reqwest_error",
"proto_array",
"rand 0.9.2",
"rand 0.9.0",
"reqwest 0.11.27",
"reqwest-eventsource",
"sensitive_url",
@@ -2922,7 +2908,7 @@ dependencies = [
"hex",
"hmac 0.11.0",
"pbkdf2 0.8.0",
"rand 0.9.2",
"rand 0.9.0",
"scrypt 0.7.0",
"serde",
"serde_json",
@@ -2963,7 +2949,7 @@ dependencies = [
"eth2_key_derivation",
"eth2_keystore",
"hex",
"rand 0.9.2",
"rand 0.9.0",
"serde",
"serde_json",
"serde_repr",
@@ -3356,7 +3342,7 @@ dependencies = [
"metrics",
"parking_lot 0.12.3",
"pretty_reqwest_error",
"rand 0.9.2",
"rand 0.9.0",
"reqwest 0.11.27",
"sensitive_url",
"serde",
@@ -4027,6 +4013,15 @@ dependencies = [
"hashbrown 0.14.5",
]
[[package]]
name = "hashlink"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7382cf6263419f2d8df38c55d7da83da5c18aef87fc7a7fc1fb1e344edfe14c1"
dependencies = [
"hashbrown 0.15.2",
]
[[package]]
name = "hdrhistogram"
version = "7.5.4"
@@ -4121,11 +4116,10 @@ checksum = "b07f60793ff0a4d9cef0f18e63b5357e06209987153a64648c972c1e5aff336f"
[[package]]
name = "hickory-proto"
version = "0.25.0-alpha.5"
version = "0.25.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1d00147af6310f4392a31680db52a3ed45a2e0f68eb18e8c3fe5537ecc96d9e2"
checksum = "f8a6fe56c0038198998a6f217ca4e7ef3a5e51f46163bd6dd60b5c71ca6c6502"
dependencies = [
"async-recursion",
"async-trait",
"cfg-if",
"data-encoding",
@@ -4136,7 +4130,8 @@ dependencies = [
"idna",
"ipnet",
"once_cell",
"rand 0.9.2",
"rand 0.9.0",
"ring",
"socket2",
"thiserror 2.0.12",
"tinyvec",
@@ -4147,9 +4142,9 @@ dependencies = [
[[package]]
name = "hickory-resolver"
version = "0.25.0-alpha.5"
version = "0.25.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5762f69ebdbd4ddb2e975cd24690bf21fe6b2604039189c26acddbc427f12887"
checksum = "dc62a9a99b0bfb44d2ab95a7208ac952d31060efc16241c87eaf36406fecf87a"
dependencies = [
"cfg-if",
"futures-util",
@@ -4158,7 +4153,7 @@ dependencies = [
"moka",
"once_cell",
"parking_lot 0.12.3",
"rand 0.9.2",
"rand 0.9.0",
"resolv-conf",
"smallvec",
"thiserror 2.0.12",
@@ -4175,23 +4170,13 @@ dependencies = [
"hmac 0.12.1",
]
[[package]]
name = "hmac"
version = "0.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840"
dependencies = [
"crypto-mac 0.8.0",
"digest 0.9.0",
]
[[package]]
name = "hmac"
version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2a2a2320eb7ec0ebe8da8f744d7812d9fc4cb4d09344ac01898dbcb6a20ae69b"
dependencies = [
"crypto-mac 0.11.0",
"crypto-mac",
"digest 0.9.0",
]
@@ -4204,17 +4189,6 @@ dependencies = [
"digest 0.10.7",
]
[[package]]
name = "hmac-drbg"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "17ea0a1394df5b6574da6e0c1ade9e78868c9fb0a4e5ef4428e32da4676b85b1"
dependencies = [
"digest 0.9.0",
"generic-array 0.14.7",
"hmac 0.8.1",
]
[[package]]
name = "home"
version = "0.5.11"
@@ -4318,7 +4292,7 @@ dependencies = [
"operation_pool",
"parking_lot 0.12.3",
"proto_array",
"rand 0.9.2",
"rand 0.9.0",
"safe_arith",
"sensitive_url",
"serde",
@@ -4685,9 +4659,9 @@ dependencies = [
[[package]]
name = "igd-next"
version = "0.15.1"
version = "0.16.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "76b0d7d4541def58a37bf8efc559683f21edce7c82f0d866c93ac21f7e098f93"
checksum = "516893339c97f6011282d5825ac94fc1c7aad5cad26bdc2d0cee068c0bf97f97"
dependencies = [
"async-trait",
"attohttpc",
@@ -4698,28 +4672,7 @@ dependencies = [
"hyper 1.6.0",
"hyper-util",
"log",
"rand 0.8.5",
"tokio",
"url",
"xmltree",
]
[[package]]
name = "igd-next"
version = "0.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2830127baaaa55dae9aa5ee03158d5aa3687a9c2c11ce66870452580cc695df4"
dependencies = [
"async-trait",
"attohttpc",
"bytes",
"futures",
"http 1.3.0",
"http-body-util",
"hyper 1.6.0",
"hyper-util",
"log",
"rand 0.8.5",
"rand 0.9.0",
"tokio",
"url",
"xmltree",
@@ -4815,7 +4768,7 @@ dependencies = [
"lockfile",
"metrics",
"parking_lot 0.12.3",
"rand 0.9.2",
"rand 0.9.0",
"reqwest 0.11.27",
"serde",
"serde_json",
@@ -5178,9 +5131,9 @@ dependencies = [
[[package]]
name = "libp2p"
version = "0.55.0"
version = "0.56.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b72dc443ddd0254cb49a794ed6b6728400ee446a0f7ab4a07d0209ee98de20e9"
checksum = "ce71348bf5838e46449ae240631117b487073d5f347c06d434caddcb91dceb5a"
dependencies = [
"bytes",
"either",
@@ -5210,9 +5163,9 @@ dependencies = [
[[package]]
name = "libp2p-allow-block-list"
version = "0.5.0"
version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "38944b7cb981cc93f2f0fb411ff82d0e983bd226fbcc8d559639a3a73236568b"
checksum = "d16ccf824ee859ca83df301e1c0205270206223fd4b1f2e512a693e1912a8f4a"
dependencies = [
"libp2p-core",
"libp2p-identity",
@@ -5221,9 +5174,9 @@ dependencies = [
[[package]]
name = "libp2p-connection-limits"
version = "0.5.0"
version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "efe9323175a17caa8a2ed4feaf8a548eeef5e0b72d03840a0eab4bcb0210ce1c"
checksum = "a18b8b607cf3bfa2f8c57db9c7d8569a315d5cc0a282e6bfd5ebfc0a9840b2a0"
dependencies = [
"libp2p-core",
"libp2p-identity",
@@ -5232,9 +5185,9 @@ dependencies = [
[[package]]
name = "libp2p-core"
version = "0.43.0"
version = "0.43.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "193c75710ba43f7504ad8f58a62ca0615b1d7e572cb0f1780bc607252c39e9ef"
checksum = "4d28e2d2def7c344170f5c6450c0dbe3dfef655610dbfde2f6ac28a527abbe36"
dependencies = [
"either",
"fnv",
@@ -5244,7 +5197,6 @@ dependencies = [
"multiaddr",
"multihash",
"multistream-select",
"once_cell",
"parking_lot 0.12.3",
"pin-project",
"quick-protobuf",
@@ -5258,9 +5210,9 @@ dependencies = [
[[package]]
name = "libp2p-dns"
version = "0.43.0"
version = "0.44.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1b780a1150214155b0ed1cdf09fbd2e1b0442604f9146a431d1b21d23eef7bd7"
checksum = "0b770c1c8476736ca98c578cba4b505104ff8e842c2876b528925f9766379f9a"
dependencies = [
"async-trait",
"futures",
@@ -5274,8 +5226,8 @@ dependencies = [
[[package]]
name = "libp2p-gossipsub"
version = "0.49.0"
source = "git+https://github.com/sigp/rust-libp2p.git?rev=61b2820#61b2820de7a3fab5ae5e1362c4dfa93bd7c41e98"
version = "0.50.0"
source = "git+https://github.com/sigp/rust-libp2p.git?rev=5acdf89a65d64098f9346efa5769e57bcd19dea9#5acdf89a65d64098f9346efa5769e57bcd19dea9"
dependencies = [
"async-channel 2.3.1",
"asynchronous-codec",
@@ -5287,7 +5239,7 @@ dependencies = [
"futures",
"futures-timer",
"getrandom 0.2.15",
"hashlink 0.9.1",
"hashlink 0.10.0",
"hex_fmt",
"libp2p-core",
"libp2p-identity",
@@ -5304,9 +5256,9 @@ dependencies = [
[[package]]
name = "libp2p-identify"
version = "0.46.0"
version = "0.47.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e8c06862544f02d05d62780ff590cc25a75f5c2b9df38ec7a370dcae8bb873cf"
checksum = "8ab792a8b68fdef443a62155b01970c81c3aadab5e659621b063ef252a8e65e8"
dependencies = [
"asynchronous-codec",
"either",
@@ -5325,31 +5277,31 @@ dependencies = [
[[package]]
name = "libp2p-identity"
version = "0.2.10"
version = "0.2.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "257b5621d159b32282eac446bed6670c39c7dc68a200a992d8f056afa0066f6d"
checksum = "3104e13b51e4711ff5738caa1fb54467c8604c2e94d607e27745bcf709068774"
dependencies = [
"asn1_der",
"bs58 0.5.1",
"ed25519-dalek",
"hkdf",
"libsecp256k1",
"k256 0.13.4",
"multihash",
"p256",
"quick-protobuf",
"rand 0.8.5",
"sec1 0.7.3",
"sha2 0.10.8",
"thiserror 1.0.69",
"thiserror 2.0.12",
"tracing",
"zeroize",
]
[[package]]
name = "libp2p-mdns"
version = "0.47.0"
version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "11d0ba095e1175d797540e16b62e7576846b883cb5046d4159086837b36846cc"
checksum = "c66872d0f1ffcded2788683f76931be1c52e27f343edb93bc6d0bcd8887be443"
dependencies = [
"futures",
"hickory-proto",
@@ -5366,9 +5318,9 @@ dependencies = [
[[package]]
name = "libp2p-metrics"
version = "0.16.0"
version = "0.17.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2ce58c64292e87af624fcb86465e7dd8342e46a388d71e8fec0ab37ee789630a"
checksum = "805a555148522cb3414493a5153451910cb1a146c53ffbf4385708349baf62b7"
dependencies = [
"futures",
"libp2p-core",
@@ -5401,9 +5353,9 @@ dependencies = [
[[package]]
name = "libp2p-noise"
version = "0.46.0"
version = "0.46.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "afcc133e0f3cea07acde6eb8a9665cb11b600bd61110b010593a0210b8153b16"
checksum = "bc73eacbe6462a0eb92a6527cac6e63f02026e5407f8831bde8293f19217bfbf"
dependencies = [
"asynchronous-codec",
"bytes",
@@ -5412,7 +5364,6 @@ dependencies = [
"libp2p-identity",
"multiaddr",
"multihash",
"once_cell",
"quick-protobuf",
"rand 0.8.5",
"snow",
@@ -5441,9 +5392,9 @@ dependencies = [
[[package]]
name = "libp2p-quic"
version = "0.12.0"
version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "41432a159b00424a0abaa2c80d786cddff81055ac24aa127e0cf375f7858d880"
checksum = "8dc448b2de9f4745784e3751fe8bc6c473d01b8317edd5ababcb0dec803d843f"
dependencies = [
"futures",
"futures-timer",
@@ -5463,9 +5414,9 @@ dependencies = [
[[package]]
name = "libp2p-swarm"
version = "0.46.0"
version = "0.47.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "803399b4b6f68adb85e63ab573ac568154b193e9a640f03e0f2890eabbcb37f8"
checksum = "6aa762e5215919a34e31c35d4b18bf2e18566ecab7f8a3d39535f4a3068f8b62"
dependencies = [
"either",
"fnv",
@@ -5476,7 +5427,6 @@ dependencies = [
"libp2p-swarm-derive",
"lru",
"multistream-select",
"once_cell",
"rand 0.8.5",
"smallvec",
"tokio",
@@ -5486,21 +5436,20 @@ dependencies = [
[[package]]
name = "libp2p-swarm-derive"
version = "0.35.0"
version = "0.35.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "206e0aa0ebe004d778d79fb0966aa0de996c19894e2c0605ba2f8524dd4443d8"
checksum = "dd297cf53f0cb3dee4d2620bb319ae47ef27c702684309f682bdb7e55a18ae9c"
dependencies = [
"heck 0.5.0",
"proc-macro2",
"quote",
"syn 2.0.100",
]
[[package]]
name = "libp2p-tcp"
version = "0.43.0"
version = "0.44.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "65346fb4d36035b23fec4e7be4c320436ba53537ce9b6be1d1db1f70c905cad0"
checksum = "65b4e030c52c46c8d01559b2b8ca9b7c4185f10576016853129ca1fe5cd1a644"
dependencies = [
"futures",
"futures-timer",
@@ -5514,9 +5463,9 @@ dependencies = [
[[package]]
name = "libp2p-tls"
version = "0.6.1"
version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "42bbf5084fb44133267ad4caaa72a253d68d709edd2ed1cf9b42431a8ead8fd5"
checksum = "96ff65a82e35375cbc31ebb99cacbbf28cb6c4fefe26bf13756ddcf708d40080"
dependencies = [
"futures",
"futures-rustls",
@@ -5525,7 +5474,7 @@ dependencies = [
"rcgen",
"ring",
"rustls 0.23.23",
"rustls-webpki 0.101.7",
"rustls-webpki 0.103.4",
"thiserror 2.0.12",
"x509-parser",
"yasna",
@@ -5533,13 +5482,13 @@ dependencies = [
[[package]]
name = "libp2p-upnp"
version = "0.4.0"
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d457b9ecceb66e7199f049926fad447f1f17f040e8d29d690c086b4cab8ed14a"
checksum = "4757e65fe69399c1a243bbb90ec1ae5a2114b907467bf09f3575e899815bb8d3"
dependencies = [
"futures",
"futures-timer",
"igd-next 0.15.1",
"igd-next",
"libp2p-core",
"libp2p-swarm",
"tokio",
@@ -5571,54 +5520,6 @@ dependencies = [
"libc",
]
[[package]]
name = "libsecp256k1"
version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "95b09eff1b35ed3b33b877ced3a691fc7a481919c7e29c53c906226fcf55e2a1"
dependencies = [
"arrayref",
"base64 0.13.1",
"digest 0.9.0",
"hmac-drbg",
"libsecp256k1-core",
"libsecp256k1-gen-ecmult",
"libsecp256k1-gen-genmult",
"rand 0.8.5",
"serde",
"sha2 0.9.9",
"typenum",
]
[[package]]
name = "libsecp256k1-core"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5be9b9bb642d8522a44d533eab56c16c738301965504753b03ad1de3425d5451"
dependencies = [
"crunchy",
"digest 0.9.0",
"subtle",
]
[[package]]
name = "libsecp256k1-gen-ecmult"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3038c808c55c87e8a172643a7d87187fc6c4174468159cb3090659d55bcb4809"
dependencies = [
"libsecp256k1-core",
]
[[package]]
name = "libsecp256k1-gen-genmult"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3db8d6ba2cec9eacc40e6e8ccc98931840301f1006e95647ceb2dd5c3aa06f7c"
dependencies = [
"libsecp256k1-core",
]
[[package]]
name = "libsqlite3-sys"
version = "0.25.2"
@@ -5725,7 +5626,7 @@ dependencies = [
"prometheus-client",
"quickcheck",
"quickcheck_macros",
"rand 0.9.2",
"rand 0.9.0",
"regex",
"serde",
"sha2 0.9.9",
@@ -6179,7 +6080,7 @@ dependencies = [
"hyper 1.6.0",
"hyper-util",
"log",
"rand 0.9.2",
"rand 0.9.0",
"regex",
"serde_json",
"serde_urlencoded",
@@ -6412,7 +6313,7 @@ dependencies = [
"futures",
"genesis",
"hex",
"igd-next 0.16.0",
"igd-next",
"itertools 0.10.5",
"k256 0.13.4",
"kzg",
@@ -6426,7 +6327,7 @@ dependencies = [
"operation_pool",
"parking_lot 0.12.3",
"rand 0.8.5",
"rand 0.9.2",
"rand 0.9.0",
"rand_chacha 0.3.1",
"rand_chacha 0.9.0",
"serde_json",
@@ -6624,9 +6525,9 @@ dependencies = [
[[package]]
name = "oid-registry"
version = "0.7.1"
version = "0.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a8d8034d9489cdaf79228eb9f6a3b8d7bb32ba00d6645ebd48eef4077ceb5bd9"
checksum = "12f40cff3dde1b6087cc5d5f5d4d65712f34016a03ed60e9c08dcc392736b5b7"
dependencies = [
"asn1-rs",
]
@@ -6636,6 +6537,10 @@ name = "once_cell"
version = "1.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cde51589ab56b20a6f686b2c68f7a0bd6add753d697abf720d63f8db3ab7b1ad"
dependencies = [
"critical-section",
"portable-atomic",
]
[[package]]
name = "oneshot_broadcast"
@@ -6810,7 +6715,7 @@ dependencies = [
"futures-util",
"opentelemetry",
"percent-encoding",
"rand 0.9.2",
"rand 0.9.0",
"serde_json",
"thiserror 2.0.12",
]
@@ -6828,7 +6733,7 @@ dependencies = [
"maplit",
"metrics",
"parking_lot 0.12.3",
"rand 0.9.2",
"rand 0.9.0",
"rayon",
"serde",
"state_processing",
@@ -7004,7 +6909,7 @@ version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d95f5254224e617595d2cc3cc73ff0a5eaf2637519e25f03388154e9378b6ffa"
dependencies = [
"crypto-mac 0.11.0",
"crypto-mac",
]
[[package]]
@@ -7379,9 +7284,9 @@ dependencies = [
[[package]]
name = "prometheus-client"
version = "0.22.3"
version = "0.23.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "504ee9ff529add891127c4827eb481bd69dc0ebc72e9a682e187db4caa60c3ca"
checksum = "cf41c1a7c32ed72abe5082fb19505b969095c12da9f5732a4bc9878757fd087c"
dependencies = [
"dtoa",
"itoa",
@@ -7658,13 +7563,14 @@ dependencies = [
[[package]]
name = "rand"
version = "0.9.2"
version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1"
checksum = "3779b94aeb87e8bd4e834cee3650289ee9e0d5677f976ecdb6d219e5f4f6cd94"
dependencies = [
"rand_chacha 0.9.0",
"rand_core 0.9.3",
"serde",
"zerocopy 0.8.23",
]
[[package]]
@@ -8070,7 +7976,7 @@ dependencies = [
"primitive-types 0.12.2",
"proptest",
"rand 0.8.5",
"rand 0.9.2",
"rand 0.9.0",
"rlp",
"ruint-macro",
"serde",
@@ -8266,11 +8172,12 @@ dependencies = [
[[package]]
name = "rustls-pki-types"
version = "1.11.0"
version = "1.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "917ce264624a4b4db1c364dcc35bfca9ded014d0a958cd47ad3e960e988ea51c"
checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79"
dependencies = [
"web-time",
"zeroize",
]
[[package]]
@@ -8294,6 +8201,17 @@ dependencies = [
"untrusted",
]
[[package]]
name = "rustls-webpki"
version = "0.103.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0a17884ae0c1b773f1ccd2bd4a8c72f16da897310a98b0e84bf349ad5ead92fc"
dependencies = [
"ring",
"rustls-pki-types",
"untrusted",
]
[[package]]
name = "rustversion"
version = "1.0.20"
@@ -8844,7 +8762,7 @@ dependencies = [
"maplit",
"metrics",
"parking_lot 0.12.3",
"rand 0.9.2",
"rand 0.9.0",
"rayon",
"redb",
"safe_arith",
@@ -9009,7 +8927,7 @@ dependencies = [
"itertools 0.10.5",
"merkle_proof",
"metrics",
"rand 0.9.2",
"rand 0.9.0",
"rayon",
"safe_arith",
"smallvec",
@@ -9055,7 +8973,7 @@ dependencies = [
"lru",
"metrics",
"parking_lot 0.12.3",
"rand 0.9.2",
"rand 0.9.0",
"redb",
"safe_arith",
"serde",
@@ -9955,7 +9873,7 @@ dependencies = [
"milhouse",
"parking_lot 0.12.3",
"paste",
"rand 0.9.2",
"rand 0.9.0",
"rand_xorshift 0.4.0",
"rayon",
"regex",
@@ -10195,7 +10113,7 @@ dependencies = [
"filesystem",
"hex",
"lockfile",
"rand 0.9.2",
"rand 0.9.0",
"tempfile",
"tree_hash",
"types",
@@ -10225,7 +10143,7 @@ dependencies = [
"lighthouse_version",
"logging",
"parking_lot 0.12.3",
"rand 0.9.2",
"rand 0.9.0",
"sensitive_url",
"serde",
"serde_json",
@@ -11204,9 +11122,9 @@ dependencies = [
[[package]]
name = "x509-parser"
version = "0.16.0"
version = "0.17.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fcbc162f30700d6f3f82a24bf7cc62ffe7caea42c0b2cba8bf7f3ae50cf51f69"
checksum = "4569f339c0c402346d4a75a9e39cf8dad310e287eef1ff56d4c68e5067f53460"
dependencies = [
"asn1-rs",
"data-encoding",
@@ -11215,7 +11133,7 @@ dependencies = [
"nom",
"oid-registry",
"rusticata-macros",
"thiserror 1.0.69",
"thiserror 2.0.12",
"time",
]

View File

@@ -161,7 +161,8 @@ fork_choice = { path = "consensus/fork_choice" }
fs2 = "0.4"
futures = "0.3"
genesis = { path = "beacon_node/genesis" }
gossipsub = { package = "libp2p-gossipsub", git = "https://github.com/sigp/rust-libp2p.git", rev = "61b2820" }
# 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" }

View File

@@ -32,7 +32,7 @@ lru = { workspace = true }
lru_cache = { workspace = true }
metrics = { workspace = true }
parking_lot = { workspace = true }
prometheus-client = "0.22.0"
prometheus-client = "0.23.0"
rand = { workspace = true }
regex = { workspace = true }
serde = { workspace = true }
@@ -54,7 +54,7 @@ unsigned-varint = { version = "0.8", features = ["codec"] }
unused_port = { workspace = true }
[dependencies.libp2p]
version = "0.55"
version = "0.56"
default-features = false
features = [
"identify",

View File

@@ -328,26 +328,25 @@ impl<E: EthSpec> Network<E> {
max_subscriptions_per_request: max_topics_at_any_fork * 2,
};
// If metrics are enabled for libp2p build the configuration
let gossipsub_metrics = ctx.libp2p_registry.as_mut().map(|registry| {
(
registry.sub_registry_with_prefix("gossipsub"),
Default::default(),
)
});
let spec = &ctx.chain_spec;
let snappy_transform =
SnappyTransform::new(spec.max_payload_size as usize, spec.max_compressed_len());
let mut gossipsub = Gossipsub::new_with_subscription_filter_and_transform(
MessageAuthenticity::Anonymous,
gs_config.clone(),
gossipsub_metrics,
filter,
snappy_transform,
)
.map_err(|e| format!("Could not construct gossipsub: {:?}", e))?;
// If metrics are enabled for libp2p build the configuration
if let Some(ref mut registry) = ctx.libp2p_registry {
gossipsub = gossipsub.with_metrics(
registry.sub_registry_with_prefix("gossipsub"),
Default::default(),
);
}
gossipsub
.with_peer_score(params, thresholds)
.expect("Valid score params and thresholds");
@@ -1374,14 +1373,12 @@ impl<E: EthSpec> Network<E> {
} => {
debug!(
peer_id = %peer_id,
publish = failed_messages.publish,
forward = failed_messages.forward,
priority = failed_messages.priority,
non_priority = failed_messages.non_priority,
"Slow gossipsub peer"
);
// Punish the peer if it cannot handle priority messages
if failed_messages.timeout > 10 {
if failed_messages.priority > 10 {
debug!(%peer_id, "Slow gossipsub peer penalized for priority failure");
self.peer_manager_mut().report_peer(
&peer_id,
@@ -1390,7 +1387,7 @@ impl<E: EthSpec> Network<E> {
None,
"publish_timeout_penalty",
);
} else if failed_messages.total_queue_full() > 10 {
} else if failed_messages.non_priority > 10 {
debug!(%peer_id, "Slow gossipsub peer penalized for send queue full");
self.peer_manager_mut().report_peer(
&peer_id,
@@ -1888,6 +1885,7 @@ impl<E: EthSpec> Network<E> {
send_back_addr,
error,
connection_id: _,
peer_id: _,
} => {
let error_repr = match error {
libp2p::swarm::ListenError::Aborted => {
@@ -1896,8 +1894,8 @@ impl<E: EthSpec> Network<E> {
libp2p::swarm::ListenError::WrongPeerId { obtained, endpoint } => {
format!("Wrong peer id, obtained {obtained}, endpoint {endpoint:?}")
}
libp2p::swarm::ListenError::LocalPeerId { endpoint } => {
format!("Dialing local peer id {endpoint:?}")
libp2p::swarm::ListenError::LocalPeerId { address } => {
format!("Dialing local peer id {address:?}")
}
libp2p::swarm::ListenError::Denied { cause } => {
format!("Connection was denied with cause: {cause:?}")

View File

@@ -6,8 +6,8 @@ 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 prometheus_client::registry::Registry;
use ssz::Decode;
use std::collections::HashSet;
use std::fs::File;