update libp2p to version 0.54 (#6249)

* update libp2p to version 0.54.0

* address review

* Merge branch 'unstable' of github.com:sigp/lighthouse into update-libp2p

* Merge branch 'update-libp2p' of github.com:sigp/lighthouse into update-libp2p
This commit is contained in:
João Oliveira
2024-09-02 17:52:18 +01:00
committed by GitHub
parent 99e53b88c3
commit a685dde4ad
9 changed files with 273 additions and 163 deletions

404
Cargo.lock generated
View File

@@ -184,9 +184,9 @@ checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f"
[[package]]
name = "alloy-consensus"
version = "0.3.0"
version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7198a527b4c4762cb88d54bcaeb0428f4298b72552c9c8ec4af614b4a4990c59"
checksum = "4177d135789e282e925092be8939d421b701c6d92c0a16679faa659d9166289d"
dependencies = [
"alloy-eips",
"alloy-primitives",
@@ -216,15 +216,16 @@ dependencies = [
[[package]]
name = "alloy-eips"
version = "0.3.0"
version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "159eab0e4e15b88571f55673af37314f4b8f17630dc1b393c3d70f2128a1d494"
checksum = "499ee14d296a133d142efd215eb36bf96124829fe91cf8f5d4e5ccdd381eae00"
dependencies = [
"alloy-eip2930",
"alloy-eip7702",
"alloy-primitives",
"alloy-rlp",
"c-kzg",
"derive_more 1.0.0",
"once_cell",
"serde",
"sha2 0.10.8",
@@ -242,7 +243,7 @@ dependencies = [
"cfg-if",
"const-hex",
"derive_arbitrary",
"derive_more",
"derive_more 0.99.18",
"getrandom",
"hex-literal",
"itoa",
@@ -275,7 +276,7 @@ checksum = "4d0f2d905ebd295e7effec65e5f6868d153936130ae718352771de3e7d03c75c"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -544,7 +545,7 @@ checksum = "965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
"synstructure",
]
@@ -556,7 +557,7 @@ checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -608,13 +609,13 @@ dependencies = [
[[package]]
name = "async-trait"
version = "0.1.81"
version = "0.1.82"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6e0c28dcc82d7c8ead5cb13beb15405b57b8546e93215673ff8ca0349a028107"
checksum = "a27b8a3a6e1a44fa4c8baf1f653e4172e81486d4941f2237e20dc2d0cf4ddff1"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -628,19 +629,6 @@ dependencies = [
"rustc_version 0.4.1",
]
[[package]]
name = "asynchronous-codec"
version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4057f2c32adbb2fc158e22fb38433c8e9bbf76b75a4732c7c0cbaf695fb65568"
dependencies = [
"bytes",
"futures-sink",
"futures-util",
"memchr",
"pin-project-lite",
]
[[package]]
name = "asynchronous-codec"
version = "0.7.0"
@@ -684,7 +672,7 @@ checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -946,7 +934,7 @@ dependencies = [
"regex",
"rustc-hash 1.1.0",
"shlex",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -1398,7 +1386,7 @@ dependencies = [
"heck 0.5.0",
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -1821,7 +1809,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -1869,7 +1857,7 @@ dependencies = [
"proc-macro2",
"quote",
"strsim 0.11.1",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -1891,7 +1879,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806"
dependencies = [
"darling_core 0.20.10",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -2056,7 +2044,7 @@ checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -2069,7 +2057,27 @@ dependencies = [
"proc-macro2",
"quote",
"rustc_version 0.4.1",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
name = "derive_more"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05"
dependencies = [
"derive_more-impl",
]
[[package]]
name = "derive_more-impl"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.77",
]
[[package]]
@@ -2096,7 +2104,7 @@ dependencies = [
"dsl_auto_type",
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -2116,7 +2124,7 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "209c735641a413bc68c4923a9d6ad4bcb3ca306b794edaa7eb0b3228a99ffb25"
dependencies = [
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -2207,7 +2215,7 @@ dependencies = [
"hex",
"hkdf",
"lazy_static",
"libp2p",
"libp2p 0.53.2",
"lru",
"more-asserts",
"parking_lot 0.11.2",
@@ -2229,7 +2237,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -2243,7 +2251,7 @@ dependencies = [
"heck 0.5.0",
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -2423,7 +2431,7 @@ dependencies = [
"heck 0.4.1",
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -2815,7 +2823,7 @@ dependencies = [
"darling 0.20.10",
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -3331,7 +3339,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -3489,7 +3497,7 @@ checksum = "53010ccb100b96a67bc32c0175f0ed1426b31b655d562898e57325f81c023ac0"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -3503,7 +3511,7 @@ name = "gossipsub"
version = "0.5.0"
dependencies = [
"async-channel",
"asynchronous-codec 0.7.0",
"asynchronous-codec",
"base64 0.21.7",
"byteorder",
"bytes",
@@ -3515,10 +3523,10 @@ dependencies = [
"getrandom",
"hashlink 0.9.1",
"hex_fmt",
"libp2p",
"libp2p 0.54.1",
"prometheus-client",
"quick-protobuf",
"quick-protobuf-codec 0.3.1",
"quick-protobuf-codec",
"quickcheck",
"rand",
"regex",
@@ -3565,7 +3573,7 @@ dependencies = [
"futures-sink",
"futures-util",
"http 0.2.12",
"indexmap 2.4.0",
"indexmap 2.5.0",
"slab",
"tokio",
"tokio-util",
@@ -4221,9 +4229,9 @@ dependencies = [
[[package]]
name = "indexmap"
version = "2.4.0"
version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "93ead53efc7ea8ed3cfb0c79fc8023fbb782a5432b52830b6518941cebe6505c"
checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5"
dependencies = [
"equivalent",
"hashbrown 0.14.5",
@@ -4614,7 +4622,7 @@ source = "git+https://github.com/sigp/libmdbx-rs?rev=e6ff4b9377c1619bcf0bfdf52be
dependencies = [
"bitflags 1.3.2",
"byteorder",
"derive_more",
"derive_more 0.99.18",
"indexmap 1.9.3",
"libc",
"mdbx-sys",
@@ -4634,9 +4642,31 @@ dependencies = [
"futures-timer",
"getrandom",
"instant",
"libp2p-allow-block-list",
"libp2p-connection-limits",
"libp2p-core",
"libp2p-allow-block-list 0.3.0",
"libp2p-connection-limits 0.3.1",
"libp2p-core 0.41.3",
"libp2p-identity",
"libp2p-swarm 0.44.2",
"multiaddr",
"pin-project",
"rw-stream-sink",
"thiserror",
]
[[package]]
name = "libp2p"
version = "0.54.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bbbe80f9c7e00526cd6b838075b9c171919404a4732cb2fa8ece0a093223bfc4"
dependencies = [
"bytes",
"either",
"futures",
"futures-timer",
"getrandom",
"libp2p-allow-block-list 0.4.0",
"libp2p-connection-limits 0.4.0",
"libp2p-core 0.42.0",
"libp2p-dns",
"libp2p-identify",
"libp2p-identity",
@@ -4645,7 +4675,7 @@ dependencies = [
"libp2p-noise",
"libp2p-plaintext",
"libp2p-quic",
"libp2p-swarm",
"libp2p-swarm 0.45.1",
"libp2p-tcp",
"libp2p-upnp",
"libp2p-yamux",
@@ -4661,9 +4691,21 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "107b238b794cb83ab53b74ad5dcf7cca3200899b72fe662840cfb52f5b0a32e6"
dependencies = [
"libp2p-core",
"libp2p-core 0.41.3",
"libp2p-identity",
"libp2p-swarm",
"libp2p-swarm 0.44.2",
"void",
]
[[package]]
name = "libp2p-allow-block-list"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d1027ccf8d70320ed77e984f273bc8ce952f623762cb9bf2d126df73caef8041"
dependencies = [
"libp2p-core 0.42.0",
"libp2p-identity",
"libp2p-swarm 0.45.1",
"void",
]
@@ -4673,9 +4715,21 @@ version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c7cd50a78ccfada14de94cbacd3ce4b0138157f376870f13d3a8422cd075b4fd"
dependencies = [
"libp2p-core",
"libp2p-core 0.41.3",
"libp2p-identity",
"libp2p-swarm",
"libp2p-swarm 0.44.2",
"void",
]
[[package]]
name = "libp2p-connection-limits"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8d003540ee8baef0d254f7b6bfd79bac3ddf774662ca0abf69186d517ef82ad8"
dependencies = [
"libp2p-core 0.42.0",
"libp2p-identity",
"libp2p-swarm 0.45.1",
"void",
]
@@ -4708,15 +4762,43 @@ dependencies = [
]
[[package]]
name = "libp2p-dns"
version = "0.41.1"
name = "libp2p-core"
version = "0.42.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d17cbcf7160ff35c3e8e560de4a068fe9d6cb777ea72840e48eb76ff9576c4b6"
checksum = "a61f26c83ed111104cd820fe9bc3aaabbac5f1652a1d213ed6e900b7918a1298"
dependencies = [
"either",
"fnv",
"futures",
"futures-timer",
"libp2p-identity",
"multiaddr",
"multihash",
"multistream-select",
"once_cell",
"parking_lot 0.12.3",
"pin-project",
"quick-protobuf",
"rand",
"rw-stream-sink",
"smallvec",
"thiserror",
"tracing",
"unsigned-varint 0.8.0",
"void",
"web-time",
]
[[package]]
name = "libp2p-dns"
version = "0.42.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "97f37f30d5c7275db282ecd86e54f29dd2176bd3ac656f06abf43bedb21eb8bd"
dependencies = [
"async-trait",
"futures",
"hickory-resolver",
"libp2p-core",
"libp2p-core 0.42.0",
"libp2p-identity",
"parking_lot 0.12.3",
"smallvec",
@@ -4725,21 +4807,21 @@ dependencies = [
[[package]]
name = "libp2p-identify"
version = "0.44.2"
version = "0.45.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b5d635ebea5ca0c3c3e77d414ae9b67eccf2a822be06091b9c1a0d13029a1e2f"
checksum = "1711b004a273be4f30202778856368683bd9a83c4c7dcc8f848847606831a4e3"
dependencies = [
"asynchronous-codec 0.7.0",
"asynchronous-codec",
"either",
"futures",
"futures-bounded",
"futures-timer",
"libp2p-core",
"libp2p-core 0.42.0",
"libp2p-identity",
"libp2p-swarm",
"libp2p-swarm 0.45.1",
"lru",
"quick-protobuf",
"quick-protobuf-codec 0.3.1",
"quick-protobuf-codec",
"smallvec",
"thiserror",
"tracing",
@@ -4771,17 +4853,17 @@ dependencies = [
[[package]]
name = "libp2p-mdns"
version = "0.45.1"
version = "0.46.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "49007d9a339b3e1d7eeebc4d67c05dbf23d300b7d091193ec2d3f26802d7faf2"
checksum = "14b8546b6644032565eb29046b42744aee1e9f261ed99671b2c93fb140dba417"
dependencies = [
"data-encoding",
"futures",
"hickory-proto",
"if-watch",
"libp2p-core",
"libp2p-core 0.42.0",
"libp2p-identity",
"libp2p-swarm",
"libp2p-swarm 0.45.1",
"rand",
"smallvec",
"socket2 0.5.7",
@@ -4792,50 +4874,50 @@ dependencies = [
[[package]]
name = "libp2p-metrics"
version = "0.14.1"
version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fdac91ae4f291046a3b2660c039a2830c931f84df2ee227989af92f7692d3357"
checksum = "77ebafa94a717c8442d8db8d3ae5d1c6a15e30f2d347e0cd31d057ca72e42566"
dependencies = [
"futures",
"instant",
"libp2p-core",
"libp2p-core 0.42.0",
"libp2p-identify",
"libp2p-identity",
"libp2p-swarm",
"libp2p-swarm 0.45.1",
"pin-project",
"prometheus-client",
"web-time",
]
[[package]]
name = "libp2p-mplex"
version = "0.41.0"
version = "0.42.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a5e895765e27e30217b25f7cb7ac4686dad1ff80bf2fdeffd1d898566900a924"
checksum = "41187ab8f6c835ad864edf94224f666f636ee2d270601422c1441f739e0abccc"
dependencies = [
"asynchronous-codec 0.6.2",
"asynchronous-codec",
"bytes",
"futures",
"libp2p-core",
"libp2p-core 0.42.0",
"libp2p-identity",
"nohash-hasher",
"parking_lot 0.12.3",
"rand",
"smallvec",
"tracing",
"unsigned-varint 0.7.2",
"unsigned-varint 0.8.0",
]
[[package]]
name = "libp2p-noise"
version = "0.44.0"
version = "0.45.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8ecd0545ce077f6ea5434bcb76e8d0fe942693b4380aaad0d34a358c2bd05793"
checksum = "36b137cb1ae86ee39f8e5d6245a296518912014eaa87427d24e6ff58cfc1b28c"
dependencies = [
"asynchronous-codec 0.7.0",
"asynchronous-codec",
"bytes",
"curve25519-dalek",
"futures",
"libp2p-core",
"libp2p-core 0.42.0",
"libp2p-identity",
"multiaddr",
"multihash",
@@ -4853,31 +4935,31 @@ dependencies = [
[[package]]
name = "libp2p-plaintext"
version = "0.41.0"
version = "0.42.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "67330af40b67217e746d42551913cfb7ad04c74fa300fb329660a56318590b3f"
checksum = "5b63d926c6be56a2489e0e7316b17fe95a70bc5c4f3e85740bb3e67c0f3c6a44"
dependencies = [
"asynchronous-codec 0.6.2",
"asynchronous-codec",
"bytes",
"futures",
"libp2p-core",
"libp2p-core 0.42.0",
"libp2p-identity",
"quick-protobuf",
"quick-protobuf-codec 0.2.0",
"quick-protobuf-codec",
"tracing",
]
[[package]]
name = "libp2p-quic"
version = "0.10.3"
version = "0.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c67296ad4e092e23f92aea3d2bdb6f24eab79c0929ed816dfb460ea2f4567d2b"
checksum = "46352ac5cd040c70e88e7ff8257a2ae2f891a4076abad2c439584a31c15fd24e"
dependencies = [
"bytes",
"futures",
"futures-timer",
"if-watch",
"libp2p-core",
"libp2p-core 0.42.0",
"libp2p-identity",
"libp2p-tls",
"parking_lot 0.12.3",
@@ -4902,7 +4984,28 @@ dependencies = [
"futures",
"futures-timer",
"instant",
"libp2p-core",
"libp2p-core 0.41.3",
"libp2p-identity",
"lru",
"multistream-select",
"once_cell",
"rand",
"smallvec",
"tracing",
"void",
]
[[package]]
name = "libp2p-swarm"
version = "0.45.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d7dd6741793d2c1fb2088f67f82cf07261f25272ebe3c0b0c311e0c6b50e851a"
dependencies = [
"either",
"fnv",
"futures",
"futures-timer",
"libp2p-core 0.42.0",
"libp2p-identity",
"libp2p-swarm-derive",
"lru",
@@ -4913,31 +5016,32 @@ dependencies = [
"tokio",
"tracing",
"void",
"web-time",
]
[[package]]
name = "libp2p-swarm-derive"
version = "0.34.2"
version = "0.35.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5daceb9dd908417b6dfcfe8e94098bc4aac54500c282e78120b885dadc09b999"
checksum = "206e0aa0ebe004d778d79fb0966aa0de996c19894e2c0605ba2f8524dd4443d8"
dependencies = [
"heck 0.5.0",
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
name = "libp2p-tcp"
version = "0.41.0"
version = "0.42.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8b2460fc2748919adff99ecbc1aab296e4579e41f374fb164149bd2c9e529d4c"
checksum = "ad964f312c59dcfcac840acd8c555de8403e295d39edf96f5240048b5fcaa314"
dependencies = [
"futures",
"futures-timer",
"if-watch",
"libc",
"libp2p-core",
"libp2p-core 0.42.0",
"libp2p-identity",
"socket2 0.5.7",
"tokio",
@@ -4946,13 +5050,13 @@ dependencies = [
[[package]]
name = "libp2p-tls"
version = "0.4.1"
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "72b7b831e55ce2aa6c354e6861a85fdd4dd0a2b97d5e276fabac0e4810a71776"
checksum = "47b23dddc2b9c355f73c1e36eb0c3ae86f7dc964a3715f0731cfad352db4d847"
dependencies = [
"futures",
"futures-rustls",
"libp2p-core",
"libp2p-core 0.42.0",
"libp2p-identity",
"rcgen",
"ring 0.17.8",
@@ -4965,15 +5069,15 @@ dependencies = [
[[package]]
name = "libp2p-upnp"
version = "0.2.2"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cccf04b0e3ff3de52d07d5fd6c3b061d0e7f908ffc683c32d9638caedce86fc8"
checksum = "01bf2d1b772bd3abca049214a3304615e6a36fa6ffc742bdd1ba774486200b8f"
dependencies = [
"futures",
"futures-timer",
"igd-next",
"libp2p-core",
"libp2p-swarm",
"libp2p-core 0.42.0",
"libp2p-swarm 0.45.1",
"tokio",
"tracing",
"void",
@@ -4981,13 +5085,13 @@ dependencies = [
[[package]]
name = "libp2p-yamux"
version = "0.45.2"
version = "0.46.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ddd5265f6b80f94d48a3963541aad183cc598a645755d2f1805a373e41e0716b"
checksum = "788b61c80789dba9760d8c669a5bedb642c8267555c803fabd8396e4ca5c5882"
dependencies = [
"either",
"futures",
"libp2p-core",
"libp2p-core 0.42.0",
"thiserror",
"tracing",
"yamux 0.12.1",
@@ -5142,7 +5246,7 @@ dependencies = [
"gossipsub",
"hex",
"itertools 0.10.5",
"libp2p",
"libp2p 0.54.1",
"libp2p-mplex",
"lighthouse_metrics",
"lighthouse_version",
@@ -5885,9 +5989,9 @@ dependencies = [
[[package]]
name = "object"
version = "0.36.3"
version = "0.36.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "27b64972346851a39438c60b341ebc01bba47464ae329e55cf343eb93964efd9"
checksum = "084f1a5821ac4c651660a94a7153d27ac9d8a53736203f58b31945ded098070a"
dependencies = [
"memchr",
]
@@ -5974,7 +6078,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -6279,7 +6383,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -6579,7 +6683,7 @@ checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -6610,7 +6714,7 @@ checksum = "6ff7ff745a347b87471d859a377a9a404361e7efc2a971d73424a6d183c0fc77"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -6640,7 +6744,7 @@ checksum = "5e617cc9058daa5e1fe5a0d23ed745773a5ee354111dad1ec0235b0cc16b6730"
dependencies = [
"cfg-if",
"darwin-libproc",
"derive_more",
"derive_more 0.99.18",
"glob",
"mach2",
"nix 0.24.3",
@@ -6665,26 +6769,13 @@ dependencies = [
"byteorder",
]
[[package]]
name = "quick-protobuf-codec"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f8ededb1cd78531627244d51dd0c7139fbe736c7d57af0092a76f0ffb2f56e98"
dependencies = [
"asynchronous-codec 0.6.2",
"bytes",
"quick-protobuf",
"thiserror",
"unsigned-varint 0.7.2",
]
[[package]]
name = "quick-protobuf-codec"
version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "15a0580ab32b169745d7a39db2ba969226ca16738931be152a3209b409de2474"
dependencies = [
"asynchronous-codec 0.7.0",
"asynchronous-codec",
"bytes",
"quick-protobuf",
"thiserror",
@@ -6715,9 +6806,9 @@ dependencies = [
[[package]]
name = "quinn"
version = "0.11.3"
version = "0.11.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b22d8e7369034b9a7132bc2008cac12f2013c8132b45e0554e6e20e2617f2156"
checksum = "a2d2fb862b7ba45e615c1429def928f2e15f815bdf933b27a2d3824e224c1f46"
dependencies = [
"bytes",
"futures-io",
@@ -6734,9 +6825,9 @@ dependencies = [
[[package]]
name = "quinn-proto"
version = "0.11.6"
version = "0.11.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ba92fb39ec7ad06ca2582c0ca834dfeadcaf06ddfc8e635c80aa7e1c05315fdd"
checksum = "ea0a9b3a42929fad8a7c3de7f86ce0814cfa893328157672680e9fb1145549c5"
dependencies = [
"bytes",
"rand",
@@ -7421,7 +7512,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eca070c12893629e2cc820a9761bedf6ce1dcddc9852984d1dc734b8bd9bd024"
dependencies = [
"cfg-if",
"derive_more",
"derive_more 0.99.18",
"parity-scale-codec 3.6.12",
"scale-info-derive",
]
@@ -7609,7 +7700,7 @@ checksum = "a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -7642,7 +7733,7 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -7694,7 +7785,7 @@ version = "0.9.34+deprecated"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47"
dependencies = [
"indexmap 2.4.0",
"indexmap 2.5.0",
"itoa",
"ryu",
"serde",
@@ -8299,9 +8390,9 @@ dependencies = [
[[package]]
name = "syn"
version = "2.0.76"
version = "2.0.77"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "578e081a14e0cefc3279b0472138c513f37b41a08d5a3cca9b6e4e8ceb6cd525"
checksum = "9f35bcdf61fd8e7be6caf75f429fdca8beb3ed76584befb503b1569faee373ed"
dependencies = [
"proc-macro2",
"quote",
@@ -8328,7 +8419,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -8509,7 +8600,7 @@ checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -8628,9 +8719,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
[[package]]
name = "tokio"
version = "1.39.3"
version = "1.40.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9babc99b9923bfa4804bd74722ff02c0381021eafa4db9949217e3be8e84fff5"
checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998"
dependencies = [
"backtrace",
"bytes",
@@ -8661,7 +8752,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -8784,7 +8875,7 @@ version = "0.19.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
dependencies = [
"indexmap 2.4.0",
"indexmap 2.5.0",
"toml_datetime",
"winnow 0.5.40",
]
@@ -8795,7 +8886,7 @@ version = "0.22.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d"
dependencies = [
"indexmap 2.4.0",
"indexmap 2.5.0",
"serde",
"serde_spanned",
"toml_datetime",
@@ -8862,7 +8953,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -8953,7 +9044,7 @@ dependencies = [
"darling 0.20.10",
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -9144,10 +9235,6 @@ name = "unsigned-varint"
version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6889a77d49f1f013504cec6bf97a2c730394adedaeb1deb5ea08949a50541105"
dependencies = [
"asynchronous-codec 0.6.2",
"bytes",
]
[[package]]
name = "unsigned-varint"
@@ -9155,6 +9242,7 @@ version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eb066959b24b5196ae73cb057f45598450d2c5f71460e98c49b738086eff9c06"
dependencies = [
"asynchronous-codec",
"bytes",
"tokio-util",
]
@@ -9442,7 +9530,7 @@ dependencies = [
"once_cell",
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
"wasm-bindgen-shared",
]
@@ -9476,7 +9564,7 @@ checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]
@@ -10084,7 +10172,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]
@@ -10104,7 +10192,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.76",
"syn 2.0.77",
]
[[package]]

View File

@@ -47,10 +47,10 @@ itertools = { workspace = true }
# Local dependencies
void = "1.0.2"
libp2p-mplex = "0.41"
libp2p-mplex = "0.42"
[dependencies.libp2p]
version = "0.53"
version = "0.54"
default-features = false
features = ["identify", "yamux", "noise", "dns", "tcp", "tokio", "plaintext", "secp256k1", "macros", "ecdsa", "metrics", "quic", "upnp"]

View File

@@ -27,7 +27,7 @@ futures-timer = "3.0.2"
getrandom = "0.2.12"
hashlink.workspace = true
hex_fmt = "0.3.0"
libp2p = { version = "0.53", default-features = false }
libp2p = { version = "0.54", default-features = false }
quick-protobuf = "0.8"
quick-protobuf-codec = "0.3"
rand = "0.8"

View File

@@ -35,7 +35,11 @@ use hashlink::LinkedHashMap;
use prometheus_client::registry::Registry;
use rand::{seq::SliceRandom, thread_rng};
use libp2p::core::{multiaddr::Protocol::Ip4, multiaddr::Protocol::Ip6, Endpoint, Multiaddr};
use libp2p::core::{
multiaddr::Protocol::{Ip4, Ip6},
transport::PortUse,
Endpoint, Multiaddr,
};
use libp2p::identity::Keypair;
use libp2p::identity::PeerId;
use libp2p::swarm::{
@@ -3161,6 +3165,7 @@ where
peer_id: PeerId,
_: &Multiaddr,
_: Endpoint,
_: PortUse,
) -> Result<THandler<Self>, ConnectionDenied> {
// By default we assume a peer is only a floodsub peer.
//

View File

@@ -220,6 +220,7 @@ where
ConnectedPoint::Dialer {
address,
role_override: Endpoint::Dialer,
port_use: PortUse::Reuse,
}
} else {
ConnectedPoint::Listener {
@@ -284,6 +285,7 @@ where
let fake_endpoint = ConnectedPoint::Dialer {
address: Multiaddr::empty(),
role_override: Endpoint::Dialer,
port_use: PortUse::Reuse,
}; // this is not relevant
// peer_connections.connections should never be empty.
@@ -296,6 +298,7 @@ where
connection_id,
endpoint: &fake_endpoint,
remaining_established: active_connections,
cause: None,
}));
}
}
@@ -635,6 +638,7 @@ fn test_join() {
endpoint: &ConnectedPoint::Dialer {
address,
role_override: Endpoint::Dialer,
port_use: PortUse::Reuse,
},
failed_addresses: &[],
other_established: 0,
@@ -4181,6 +4185,7 @@ fn test_scoring_p6() {
endpoint: &ConnectedPoint::Dialer {
address: addr.clone(),
role_override: Endpoint::Dialer,
port_use: PortUse::Reuse,
},
failed_addresses: &[],
other_established: 0,
@@ -4202,6 +4207,7 @@ fn test_scoring_p6() {
endpoint: &ConnectedPoint::Dialer {
address: addr2.clone(),
role_override: Endpoint::Dialer,
port_use: PortUse::Reuse,
},
failed_addresses: &[],
other_established: 1,
@@ -4232,6 +4238,7 @@ fn test_scoring_p6() {
endpoint: &ConnectedPoint::Dialer {
address: addr,
role_override: Endpoint::Dialer,
port_use: PortUse::Reuse,
},
failed_addresses: &[],
other_established: 2,

View File

@@ -18,6 +18,7 @@ pub use libp2p::identity::{Keypair, PublicKey};
use enr::{ATTESTATION_BITFIELD_ENR_KEY, ETH2_ENR_KEY, SYNC_COMMITTEE_BITFIELD_ENR_KEY};
use futures::prelude::*;
use futures::stream::FuturesUnordered;
use libp2p::core::transport::PortUse;
use libp2p::multiaddr::Protocol;
use libp2p::swarm::behaviour::{DialFailure, FromSwarm};
use libp2p::swarm::THandlerInEvent;
@@ -983,6 +984,7 @@ impl<E: EthSpec> NetworkBehaviour for Discovery<E> {
_peer: PeerId,
_addr: &Multiaddr,
_role_override: libp2p::core::Endpoint,
_port_use: PortUse,
) -> Result<libp2p::swarm::THandler<Self>, libp2p::swarm::ConnectionDenied> {
Ok(ConnectionHandler)
}

View File

@@ -4,6 +4,7 @@ use std::net::IpAddr;
use std::task::{Context, Poll};
use futures::StreamExt;
use libp2p::core::transport::PortUse;
use libp2p::core::ConnectedPoint;
use libp2p::identity::PeerId;
use libp2p::swarm::behaviour::{ConnectionClosed, ConnectionEstablished, DialFailure, FromSwarm};
@@ -214,6 +215,7 @@ impl<E: EthSpec> NetworkBehaviour for PeerManager<E> {
peer_id: PeerId,
addr: &libp2p::Multiaddr,
_role_override: libp2p::core::Endpoint,
_port_use: PortUse,
) -> Result<libp2p::swarm::THandler<Self>, libp2p::swarm::ConnectionDenied> {
trace!(self.log, "Outbound connection"; "peer_id" => %peer_id, "multiaddr" => %addr);
match self.ban_status(&peer_id) {

View File

@@ -6,6 +6,7 @@
use futures::future::FutureExt;
use handler::RPCHandler;
use libp2p::core::transport::PortUse;
use libp2p::swarm::{
handler::ConnectionHandler, CloseConnection, ConnectionId, NetworkBehaviour, NotifyHandler,
ToSwarm,
@@ -259,6 +260,7 @@ where
peer_id: PeerId,
_addr: &libp2p::Multiaddr,
_role_override: libp2p::core::Endpoint,
_port_use: PortUse,
) -> Result<libp2p::swarm::THandler<Self>, libp2p::swarm::ConnectionDenied> {
let protocol = SubstreamProtocol::new(
RPCProtocol {

View File

@@ -1661,7 +1661,11 @@ impl<E: EthSpec> Network<E> {
/// Handle an identify event.
fn inject_identify_event(&mut self, event: identify::Event) -> Option<NetworkEvent<E>> {
match event {
identify::Event::Received { peer_id, mut info } => {
identify::Event::Received {
peer_id,
mut info,
connection_id: _,
} => {
if info.listen_addrs.len() > MAX_IDENTIFY_ADDRESSES {
debug!(
self.log,