diff --git a/bolt-sidecar/Cargo.lock b/bolt-sidecar/Cargo.lock index f88eab3e..f4700c21 100644 --- a/bolt-sidecar/Cargo.lock +++ b/bolt-sidecar/Cargo.lock @@ -5,10 +5,10 @@ version = 4 [[package]] name = "account_utils" version = "0.1.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "directory", - "eth2_keystore 0.1.0 (git+https://github.com/sigp/lighthouse?rev=a87f19d)", + "eth2_keystore 0.1.0 (git+https://github.com/sigp/lighthouse)", "eth2_wallet", "filesystem", "rand 0.8.5", @@ -51,10 +51,11 @@ checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" [[package]] name = "aead" -version = "0.4.3" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b613b8e1e3cf911a086f53f03bf286f52fd7a7258e4fa606f0ef220d39d8877" +checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" dependencies = [ + "crypto-common", "generic-array", ] @@ -84,14 +85,14 @@ dependencies = [ [[package]] name = "aes-gcm" -version = "0.9.2" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc3be92e19a7ef47457b8e6f90707e12b6ac5d20c6f3866584fa3be0787d839f" +checksum = "831010a0f742e1209b3bcea8fab6a8e149051ba6099432c8cb2cc117dec3ead1" dependencies = [ "aead", - "aes 0.7.5", - "cipher 0.3.0", - "ctr 0.7.0", + "aes 0.8.4", + "cipher 0.4.4", + "ctr 0.9.2", "ghash", "subtle", ] @@ -126,42 +127,25 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f4a4aaae80afd4be443a6aecd92a6b255dcdd000f97996928efb33d8a71e100" -dependencies = [ - "alloy-consensus 0.2.1", - "alloy-core 0.7.7", - "alloy-eips 0.2.1", - "alloy-genesis 0.2.1", - "alloy-provider 0.2.1", - "alloy-rpc-client 0.2.1", - "alloy-rpc-types 0.2.1", - "alloy-serde 0.2.1", - "alloy-transport-http 0.2.1", -] - -[[package]] -name = "alloy" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02b0561294ccedc6181e5528b850b4579e3fbde696507baa00109bfd9054c5bb" +checksum = "689e271a72a5c0b05bfdf41c9d0424f11e9df721385dc5bd9045a51f9ea3313b" dependencies = [ - "alloy-consensus 0.7.3", + "alloy-consensus", "alloy-contract", - "alloy-core 0.8.14", - "alloy-eips 0.7.3", - "alloy-genesis 0.7.3", - "alloy-network 0.7.3", - "alloy-provider 0.7.3", + "alloy-core", + "alloy-eips", + "alloy-genesis", + "alloy-network", + "alloy-provider", "alloy-pubsub", - "alloy-rpc-client 0.7.3", - "alloy-rpc-types 0.7.3", - "alloy-serde 0.7.3", - "alloy-signer 0.7.3", + "alloy-rpc-client", + "alloy-rpc-types", + "alloy-serde", + "alloy-signer", "alloy-signer-local", - "alloy-transport 0.7.3", - "alloy-transport-http 0.7.3", + "alloy-transport", + "alloy-transport-http", "alloy-transport-ipc", "alloy-transport-ws", ] @@ -172,7 +156,7 @@ version = "0.1.48" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a0161082e0edd9013d23083465cc04b20e44b7a15646d36ba7b0cdb7cd6fe18f" dependencies = [ - "alloy-primitives 0.8.14", + "alloy-primitives 0.8.15", "num_enum", "serde", "strum", @@ -180,28 +164,14 @@ dependencies = [ [[package]] name = "alloy-consensus" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04c309895995eaa4bfcc345f5515a39c7df9447798645cc8bf462b6c5bf1dc96" -dependencies = [ - "alloy-eips 0.2.1", - "alloy-primitives 0.7.7", - "alloy-rlp", - "alloy-serde 0.2.1", - "c-kzg", - "serde", -] - -[[package]] -name = "alloy-consensus" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a101d4d016f47f13890a74290fdd17b05dd175191d9337bc600791fb96e4dea8" +checksum = "8ba14856660f31807ebb26ce8f667e814c72694e1077e97ef102e326ad580f3f" dependencies = [ - "alloy-eips 0.7.3", - "alloy-primitives 0.8.14", + "alloy-eips", + "alloy-primitives 0.8.15", "alloy-rlp", - "alloy-serde 0.7.3", + "alloy-serde", "alloy-trie", "auto_impl", "c-kzg", @@ -212,34 +182,34 @@ dependencies = [ [[package]] name = "alloy-consensus-any" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa60357dda9a3d0f738f18844bd6d0f4a5924cc5cf00bfad2ff1369897966123" +checksum = "28666307e76441e7af37a2b90cde7391c28112121bea59f4e0d804df8b20057e" dependencies = [ - "alloy-consensus 0.7.3", - "alloy-eips 0.7.3", - "alloy-primitives 0.8.14", + "alloy-consensus", + "alloy-eips", + "alloy-primitives 0.8.15", "alloy-rlp", - "alloy-serde 0.7.3", + "alloy-serde", "serde", ] [[package]] name = "alloy-contract" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2869e4fb31331d3b8c58c7db567d1e4e4e94ef64640beda3b6dd9b7045690941" +checksum = "f3510769905590b8991a8e63a5e0ab4aa72cf07a13ab5fbe23f12f4454d161da" dependencies = [ - "alloy-dyn-abi 0.8.14", - "alloy-json-abi 0.8.14", - "alloy-network 0.7.3", - "alloy-network-primitives 0.7.3", - "alloy-primitives 0.8.14", - "alloy-provider 0.7.3", + "alloy-dyn-abi", + "alloy-json-abi", + "alloy-network", + "alloy-network-primitives", + "alloy-primitives 0.8.15", + "alloy-provider", "alloy-pubsub", - "alloy-rpc-types-eth 0.7.3", - "alloy-sol-types 0.8.14", - "alloy-transport 0.7.3", + "alloy-rpc-types-eth", + "alloy-sol-types", + "alloy-transport", "futures", "futures-util", "thiserror 2.0.6", @@ -247,56 +217,27 @@ dependencies = [ [[package]] name = "alloy-core" -version = "0.7.7" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "529fc6310dc1126c8de51c376cbc59c79c7f662bd742be7dc67055d5421a81b4" +checksum = "c618bd382f0bc2ac26a7e4bfae01c9b015ca8f21b37ca40059ae35a7e62b3dc6" dependencies = [ - "alloy-dyn-abi 0.7.7", - "alloy-json-abi 0.7.7", - "alloy-primitives 0.7.7", - "alloy-sol-types 0.7.7", -] - -[[package]] -name = "alloy-core" -version = "0.8.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3d14d531c99995de71558e8e2206c27d709559ee8e5a0452b965ea82405a013" -dependencies = [ - "alloy-dyn-abi 0.8.14", - "alloy-json-abi 0.8.14", - "alloy-primitives 0.8.14", + "alloy-dyn-abi", + "alloy-json-abi", + "alloy-primitives 0.8.15", "alloy-rlp", - "alloy-sol-types 0.8.14", + "alloy-sol-types", ] [[package]] name = "alloy-dyn-abi" -version = "0.7.7" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413902aa18a97569e60f679c23f46a18db1656d87ab4d4e49d0e1e52042f66df" +checksum = "41056bde53ae10ffbbf11618efbe1e0290859e5eab0fe9ef82ebdb62f12a866f" dependencies = [ - "alloy-json-abi 0.7.7", - "alloy-primitives 0.7.7", - "alloy-sol-type-parser 0.7.7", - "alloy-sol-types 0.7.7", - "const-hex", - "itoa", - "serde", - "serde_json", - "winnow", -] - -[[package]] -name = "alloy-dyn-abi" -version = "0.8.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80759b3f57b3b20fa7cd8fef6479930fc95461b58ff8adea6e87e618449c8a1d" -dependencies = [ - "alloy-json-abi 0.8.14", - "alloy-primitives 0.8.14", - "alloy-sol-type-parser 0.8.14", - "alloy-sol-types 0.8.14", + "alloy-json-abi", + "alloy-primitives 0.8.15", + "alloy-sol-type-parser", + "alloy-sol-types", "const-hex", "itoa", "serde", @@ -310,7 +251,7 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0069cf0642457f87a01a014f6dc29d5d893cd4fd8fddf0c3cdfad1bb3ebafc41" dependencies = [ - "alloy-primitives 0.8.14", + "alloy-primitives 0.8.15", "alloy-rlp", "serde", ] @@ -321,7 +262,7 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c986539255fb839d1533c128e190e557e52ff652c9ef62939e233a81dd93f7e" dependencies = [ - "alloy-primitives 0.8.14", + "alloy-primitives 0.8.15", "alloy-rlp", "derive_more 1.0.0", "k256 0.13.4", @@ -330,34 +271,19 @@ dependencies = [ [[package]] name = "alloy-eips" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9431c99a3b3fe606ede4b3d4043bdfbcb780c45b8d8d226c3804e2b75cfbe68" -dependencies = [ - "alloy-primitives 0.7.7", - "alloy-rlp", - "alloy-serde 0.2.1", - "c-kzg", - "ethereum_ssz", - "ethereum_ssz_derive", - "once_cell", - "serde", - "sha2 0.10.8", -] - -[[package]] -name = "alloy-eips" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b6755b093afef5925f25079dd5a7c8d096398b804ba60cb5275397b06b31689" +checksum = "47e922d558006ba371681d484d12aa73fe673d84884f83747730af7433c0e86d" dependencies = [ "alloy-eip2930", "alloy-eip7702", - "alloy-primitives 0.8.14", + "alloy-primitives 0.8.15", "alloy-rlp", - "alloy-serde 0.7.3", + "alloy-serde", "c-kzg", "derive_more 1.0.0", + "ethereum_ssz 0.8.1", + "ethereum_ssz_derive 0.8.1", "once_cell", "serde", "sha2 0.10.8", @@ -365,73 +291,36 @@ dependencies = [ [[package]] name = "alloy-genesis" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79614dfe86144328da11098edcc7bc1a3f25ad8d3134a9eb9e857e06f0d9840d" -dependencies = [ - "alloy-primitives 0.7.7", - "alloy-serde 0.2.1", - "serde", -] - -[[package]] -name = "alloy-genesis" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aeec8e6eab6e52b7c9f918748c9b811e87dbef7312a2e3a2ca1729a92966a6af" +checksum = "5dca170827a7ca156b43588faebf9e9d27c27d0fb07cab82cfd830345e2b24f5" dependencies = [ - "alloy-primitives 0.8.14", - "alloy-serde 0.7.3", + "alloy-primitives 0.8.15", + "alloy-serde", "alloy-trie", "serde", ] [[package]] name = "alloy-json-abi" -version = "0.7.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc05b04ac331a9f07e3a4036ef7926e49a8bf84a99a1ccfc7e2ab55a5fcbb372" -dependencies = [ - "alloy-primitives 0.7.7", - "alloy-sol-type-parser 0.7.7", - "serde", - "serde_json", -] - -[[package]] -name = "alloy-json-abi" -version = "0.8.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac4b22b3e51cac09fd2adfcc73b55f447b4df669f983c13f7894ec82b607c63f" -dependencies = [ - "alloy-primitives 0.8.14", - "alloy-sol-type-parser 0.8.14", - "serde", - "serde_json", -] - -[[package]] -name = "alloy-json-rpc" -version = "0.2.1" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57e2865c4c3bb4cdad3f0d9ec1ab5c0c657ba69a375651bd35e32fb6c180ccc2" +checksum = "c357da577dfb56998d01f574d81ad7a1958d248740a7981b205d69d65a7da404" dependencies = [ - "alloy-primitives 0.7.7", - "alloy-sol-types 0.7.7", + "alloy-primitives 0.8.15", + "alloy-sol-type-parser", "serde", "serde_json", - "thiserror 1.0.69", - "tracing", ] [[package]] name = "alloy-json-rpc" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fa077efe0b834bcd89ff4ba547f48fb081e4fdc3673dd7da1b295a2cf2bb7b7" +checksum = "9335278f50b0273e0a187680ee742bb6b154a948adf036f448575bacc5ccb315" dependencies = [ - "alloy-primitives 0.8.14", - "alloy-sol-types 0.8.14", + "alloy-primitives 0.8.15", + "alloy-sol-types", "serde", "serde_json", "thiserror 2.0.6", @@ -440,42 +329,21 @@ dependencies = [ [[package]] name = "alloy-network" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e701fc87ef9a3139154b0b4ccb935b565d27ffd9de020fe541bf2dec5ae4ede" -dependencies = [ - "alloy-consensus 0.2.1", - "alloy-eips 0.2.1", - "alloy-json-rpc 0.2.1", - "alloy-network-primitives 0.2.1", - "alloy-primitives 0.7.7", - "alloy-rpc-types-eth 0.2.1", - "alloy-serde 0.2.1", - "alloy-signer 0.2.1", - "alloy-sol-types 0.7.7", - "async-trait", - "auto_impl", - "futures-utils-wasm", - "thiserror 1.0.69", -] - -[[package]] -name = "alloy-network" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "209a1882a08e21aca4aac6e2a674dc6fcf614058ef8cb02947d63782b1899552" +checksum = "ad4e6ad4230df8c4a254c20f8d6a84ab9df151bfca13f463177dbc96571cc1f8" dependencies = [ - "alloy-consensus 0.7.3", + "alloy-consensus", "alloy-consensus-any", - "alloy-eips 0.7.3", - "alloy-json-rpc 0.7.3", - "alloy-network-primitives 0.7.3", - "alloy-primitives 0.8.14", + "alloy-eips", + "alloy-json-rpc", + "alloy-network-primitives", + "alloy-primitives 0.8.15", "alloy-rpc-types-any", - "alloy-rpc-types-eth 0.7.3", - "alloy-serde 0.7.3", - "alloy-signer 0.7.3", - "alloy-sol-types 0.8.14", + "alloy-rpc-types-eth", + "alloy-serde", + "alloy-signer", + "alloy-sol-types", "async-trait", "auto_impl", "futures-utils-wasm", @@ -486,36 +354,25 @@ dependencies = [ [[package]] name = "alloy-network-primitives" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec9d5a0f9170b10988b6774498a022845e13eda94318440d17709d50687f67f9" -dependencies = [ - "alloy-primitives 0.7.7", - "alloy-serde 0.2.1", - "serde", -] - -[[package]] -name = "alloy-network-primitives" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c20219d1ad261da7a6331c16367214ee7ded41d001fabbbd656fbf71898b2773" +checksum = "c4df88a2f8020801e0fefce79471d3946d39ca3311802dbbd0ecfdeee5e972e3" dependencies = [ - "alloy-consensus 0.7.3", - "alloy-eips 0.7.3", - "alloy-primitives 0.8.14", - "alloy-serde 0.7.3", + "alloy-consensus", + "alloy-eips", + "alloy-primitives 0.8.15", + "alloy-serde", "serde", ] [[package]] name = "alloy-node-bindings" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bffcf33dd319f21cd6f066d81cbdef0326d4bdaaf7cfe91110bc090707858e9f" +checksum = "2db5cefbc736b2b26a960dcf82279c70a03695dd11a0032a6dc27601eeb29182" dependencies = [ - "alloy-genesis 0.7.3", - "alloy-primitives 0.8.14", + "alloy-genesis", + "alloy-primitives 0.8.15", "k256 0.13.4", "rand 0.8.5", "serde_json", @@ -536,7 +393,6 @@ dependencies = [ "cfg-if", "const-hex", "derive_more 0.99.18", - "ethereum_ssz", "hex-literal", "itoa", "k256 0.13.4", @@ -550,14 +406,16 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "0.8.14" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9db948902dfbae96a73c2fbf1f7abec62af034ab883e4c777c3fd29702bd6e2c" +checksum = "6259a506ab13e1d658796c31e6e39d2e2ee89243bcc505ddc613b35732e0a430" dependencies = [ "alloy-rlp", + "arbitrary", "bytes", "cfg-if", "const-hex", + "derive_arbitrary", "derive_more 1.0.0", "foldhash", "getrandom 0.2.15", @@ -569,6 +427,7 @@ dependencies = [ "keccak-asm", "paste", "proptest", + "proptest-derive", "rand 0.8.5", "ruint", "rustc-hash 2.1.0", @@ -579,57 +438,24 @@ dependencies = [ [[package]] name = "alloy-provider" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9c0ab10b93de601a6396fc7ff2ea10d3b28c46f079338fa562107ebf9857c8" -dependencies = [ - "alloy-chains", - "alloy-consensus 0.2.1", - "alloy-eips 0.2.1", - "alloy-json-rpc 0.2.1", - "alloy-network 0.2.1", - "alloy-network-primitives 0.2.1", - "alloy-primitives 0.7.7", - "alloy-rpc-client 0.2.1", - "alloy-rpc-types-eth 0.2.1", - "alloy-transport 0.2.1", - "alloy-transport-http 0.2.1", - "async-stream", - "async-trait", - "auto_impl", - "dashmap 5.5.3", - "futures", - "futures-utils-wasm", - "lru", - "pin-project", - "reqwest 0.12.9", - "serde", - "serde_json", - "tokio", - "tracing", - "url", -] - -[[package]] -name = "alloy-provider" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9eefa6f4c798ad01f9b4202d02cea75f5ec11fa180502f4701e2b47965a8c0bb" +checksum = "5115c74c037714e1b02a86f742289113afa5d494b5ea58308ba8aa378e739101" dependencies = [ "alloy-chains", - "alloy-consensus 0.7.3", - "alloy-eips 0.7.3", - "alloy-json-rpc 0.7.3", - "alloy-network 0.7.3", - "alloy-network-primitives 0.7.3", - "alloy-primitives 0.8.14", + "alloy-consensus", + "alloy-eips", + "alloy-json-rpc", + "alloy-network", + "alloy-network-primitives", + "alloy-primitives 0.8.15", "alloy-pubsub", - "alloy-rpc-client 0.7.3", - "alloy-rpc-types-engine 0.7.3", - "alloy-rpc-types-eth 0.7.3", + "alloy-rpc-client", + "alloy-rpc-types-engine", + "alloy-rpc-types-eth", "alloy-rpc-types-trace", - "alloy-transport 0.7.3", - "alloy-transport-http 0.7.3", + "alloy-transport", + "alloy-transport-http", "alloy-transport-ipc", "alloy-transport-ws", "async-stream", @@ -639,7 +465,7 @@ dependencies = [ "futures", "futures-utils-wasm", "lru", - "parking_lot 0.12.3", + "parking_lot", "pin-project", "reqwest 0.12.9", "schnellru", @@ -654,20 +480,20 @@ dependencies = [ [[package]] name = "alloy-pubsub" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aac9a7210e0812b1d814118f426f57eb7fc260a419224dd1c76d169879c06907" +checksum = "b073afa409698d1b9a30522565815f3bf7010e5b47b997cf399209e6110df097" dependencies = [ - "alloy-json-rpc 0.7.3", - "alloy-primitives 0.8.14", - "alloy-transport 0.7.3", + "alloy-json-rpc", + "alloy-primitives 0.8.15", + "alloy-transport", "bimap", "futures", "serde", "serde_json", "tokio", "tokio-stream", - "tower 0.5.1", + "tower", "tracing", ] @@ -695,36 +521,15 @@ dependencies = [ [[package]] name = "alloy-rpc-client" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b38e3ffdb285df5d9f60cb988d336d9b8e3505acb78750c3bc60336a7af41d3" -dependencies = [ - "alloy-json-rpc 0.2.1", - "alloy-transport 0.2.1", - "alloy-transport-http 0.2.1", - "futures", - "pin-project", - "reqwest 0.12.9", - "serde", - "serde_json", - "tokio", - "tokio-stream", - "tower 0.4.13", - "tracing", - "url", -] - -[[package]] -name = "alloy-rpc-client" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed30bf1041e84cabc5900f52978ca345dd9969f2194a945e6fdec25b0620705c" +checksum = "5c6a0bd0ce5660ac48e4f3bb0c7c5c3a94db287a0be94971599d83928476cbcd" dependencies = [ - "alloy-json-rpc 0.7.3", - "alloy-primitives 0.8.14", + "alloy-json-rpc", + "alloy-primitives 0.8.15", "alloy-pubsub", - "alloy-transport 0.7.3", - "alloy-transport-http 0.7.3", + "alloy-transport", + "alloy-transport-http", "alloy-transport-ipc", "alloy-transport-ws", "futures", @@ -734,7 +539,7 @@ dependencies = [ "serde_json", "tokio", "tokio-stream", - "tower 0.5.1", + "tower", "tracing", "url", "wasmtimer", @@ -742,69 +547,42 @@ dependencies = [ [[package]] name = "alloy-rpc-types" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c31a3750b8f5a350d17354e46a52b0f2f19ec5f2006d816935af599dedc521" -dependencies = [ - "alloy-rpc-types-beacon 0.2.1", - "alloy-rpc-types-engine 0.2.1", - "alloy-rpc-types-eth 0.2.1", - "alloy-serde 0.2.1", - "serde", -] - -[[package]] -name = "alloy-rpc-types" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ab686b0fa475d2a4f5916c5f07797734a691ec58e44f0f55d4746ea39cbcefb" +checksum = "374ac12e35bb90ebccd86e7c943ddba9590149a6e35cc4d9cd860d6635fd1018" dependencies = [ - "alloy-primitives 0.8.14", - "alloy-rpc-types-beacon 0.7.3", - "alloy-rpc-types-engine 0.7.3", - "alloy-rpc-types-eth 0.7.3", + "alloy-primitives 0.8.15", + "alloy-rpc-types-beacon", + "alloy-rpc-types-engine", + "alloy-rpc-types-eth", "alloy-rpc-types-trace", - "alloy-serde 0.7.3", + "alloy-serde", "serde", ] [[package]] name = "alloy-rpc-types-any" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "200661999b6e235d9840be5d60a6e8ae2f0af9eb2a256dd378786744660e36ec" +checksum = "ea98f81bcd759dbfa3601565f9d7a02220d8ef1d294ec955948b90aaafbfd857" dependencies = [ "alloy-consensus-any", - "alloy-rpc-types-eth 0.7.3", - "alloy-serde 0.7.3", + "alloy-rpc-types-eth", + "alloy-serde", ] [[package]] name = "alloy-rpc-types-beacon" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8a24bcff4f9691d7a4971b43e5da46aa7b4ce22ed7789796612dc1eed220983" -dependencies = [ - "alloy-eips 0.2.1", - "alloy-primitives 0.7.7", - "alloy-rpc-types-engine 0.2.1", - "ethereum_ssz", - "ethereum_ssz_derive", - "serde", - "serde_with", - "thiserror 1.0.69", -] - -[[package]] -name = "alloy-rpc-types-beacon" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc37861dc8cbf5da35d346139fbe6e03ee7823cc21138a2c4a590d3b0b4b24be" +checksum = "6e13e94be8f6f5cb735e604f9db436430bf3773fdd41db7221edaa58c07c4c8a" dependencies = [ - "alloy-eips 0.7.3", - "alloy-primitives 0.8.14", - "alloy-rpc-types-engine 0.7.3", - "alloy-serde 0.7.3", + "alloy-eips", + "alloy-primitives 0.8.15", + "alloy-rpc-types-engine", + "alloy-serde", + "ethereum_ssz 0.8.1", + "ethereum_ssz_derive 0.8.1", "serde", "serde_with", "thiserror 2.0.6", @@ -812,36 +590,18 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff63f51b2fb2f547df5218527fd0653afb1947bf7fead5b3ce58c75d170b30f7" -dependencies = [ - "alloy-consensus 0.2.1", - "alloy-eips 0.2.1", - "alloy-primitives 0.7.7", - "alloy-rlp", - "alloy-rpc-types-eth 0.2.1", - "alloy-serde 0.2.1", - "ethereum_ssz", - "ethereum_ssz_derive", - "jsonwebtoken", - "rand 0.8.5", - "serde", - "thiserror 1.0.69", -] - -[[package]] -name = "alloy-rpc-types-engine" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d297268357e3eae834ddd6888b15f764cbc0f4b3be9265f5f6ec239013f3d68" +checksum = "9ca5898f753ff0d15a0dc955c169523d8fee57e05bb5a38a398b3451b0b988be" dependencies = [ - "alloy-consensus 0.7.3", - "alloy-eips 0.7.3", - "alloy-primitives 0.8.14", + "alloy-consensus", + "alloy-eips", + "alloy-primitives 0.8.15", "alloy-rlp", - "alloy-serde 0.7.3", + "alloy-serde", "derive_more 1.0.0", + "ethereum_ssz 0.8.1", + "ethereum_ssz_derive 0.8.1", "jsonwebtoken", "rand 0.8.5", "serde", @@ -850,37 +610,18 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81e18424d962d7700a882fe423714bd5b9dde74c7a7589d4255ea64068773aef" -dependencies = [ - "alloy-consensus 0.2.1", - "alloy-eips 0.2.1", - "alloy-network-primitives 0.2.1", - "alloy-primitives 0.7.7", - "alloy-rlp", - "alloy-serde 0.2.1", - "alloy-sol-types 0.7.7", - "itertools 0.13.0", - "serde", - "serde_json", - "thiserror 1.0.69", -] - -[[package]] -name = "alloy-rpc-types-eth" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0600b8b5e2dc0cab12cbf91b5a885c35871789fb7b3a57b434bd4fced5b7a8b" +checksum = "0e518b0a7771e00728f18be0708f828b18a1cfc542a7153bef630966a26388e0" dependencies = [ - "alloy-consensus 0.7.3", + "alloy-consensus", "alloy-consensus-any", - "alloy-eips 0.7.3", - "alloy-network-primitives 0.7.3", - "alloy-primitives 0.8.14", + "alloy-eips", + "alloy-network-primitives", + "alloy-primitives 0.8.15", "alloy-rlp", - "alloy-serde 0.7.3", - "alloy-sol-types 0.8.14", + "alloy-serde", + "alloy-sol-types", "derive_more 1.0.0", "itertools 0.13.0", "serde", @@ -889,13 +630,13 @@ dependencies = [ [[package]] name = "alloy-rpc-types-trace" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e073ab0e67429c60be281e181731132fd07d82e091c10c29ace6935101034bb" +checksum = "cdff93fa38be6982f8613a060e18fa0a37ce440d69ed3b7f37c6c69036ce1c53" dependencies = [ - "alloy-primitives 0.8.14", - "alloy-rpc-types-eth 0.7.3", - "alloy-serde 0.7.3", + "alloy-primitives 0.8.15", + "alloy-rpc-types-eth", + "alloy-serde", "serde", "serde_json", "thiserror 2.0.6", @@ -903,47 +644,22 @@ dependencies = [ [[package]] name = "alloy-serde" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e33feda6a53e6079895aed1d08dcb98a1377b000d80d16370fbbdb8155d547ef" -dependencies = [ - "alloy-primitives 0.7.7", - "serde", - "serde_json", -] - -[[package]] -name = "alloy-serde" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9afa753a97002a33b2ccb707d9f15f31c81b8c1b786c95b73cc62bb1d1fd0c3f" +checksum = "ed3dc8d4a08ffc90c1381d39a4afa2227668259a42c97ab6eecf51cbd82a8761" dependencies = [ - "alloy-primitives 0.8.14", + "alloy-primitives 0.8.15", "serde", "serde_json", ] [[package]] name = "alloy-signer" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "740a25b92e849ed7b0fa013951fe2f64be9af1ad5abe805037b44fb7770c5c47" -dependencies = [ - "alloy-primitives 0.7.7", - "async-trait", - "auto_impl", - "elliptic-curve 0.13.8", - "k256 0.13.4", - "thiserror 1.0.69", -] - -[[package]] -name = "alloy-signer" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b2cbff01a673936c2efd7e00d4c0e9a4dbbd6d600e2ce298078d33efbb19cd7" +checksum = "16188684100f6e0f2a2b949968fe3007749c5be431549064a1bce4e7b3a196a9" dependencies = [ - "alloy-primitives 0.8.14", + "alloy-primitives 0.8.15", "async-trait", "auto_impl", "elliptic-curve 0.13.8", @@ -953,14 +669,14 @@ dependencies = [ [[package]] name = "alloy-signer-local" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd6d988cb6cd7d2f428a74476515b1a6e901e08c796767f9f93311ab74005c8b" +checksum = "e2184dab8c9493ab3e1c9f6bd3bdb563ed322b79023d81531935e84a4fdf7cf1" dependencies = [ - "alloy-consensus 0.7.3", - "alloy-network 0.7.3", - "alloy-primitives 0.8.14", - "alloy-signer 0.7.3", + "alloy-consensus", + "alloy-network", + "alloy-primitives 0.8.15", + "alloy-signer", "async-trait", "k256 0.13.4", "rand 0.8.5", @@ -969,26 +685,12 @@ dependencies = [ [[package]] name = "alloy-sol-macro" -version = "0.7.7" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b40397ddcdcc266f59f959770f601ce1280e699a91fc1862f29cef91707cd09" +checksum = "d9d64f851d95619233f74b310f12bcf16e0cbc27ee3762b6115c14a84809280a" dependencies = [ - "alloy-sol-macro-expander 0.7.7", - "alloy-sol-macro-input 0.7.7", - "proc-macro-error", - "proc-macro2", - "quote", - "syn 2.0.90", -] - -[[package]] -name = "alloy-sol-macro" -version = "0.8.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bfd7853b65a2b4f49629ec975fee274faf6dff15ab8894c620943398ef283c0" -dependencies = [ - "alloy-sol-macro-expander 0.8.14", - "alloy-sol-macro-input 0.8.14", + "alloy-sol-macro-expander", + "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", @@ -997,30 +699,12 @@ dependencies = [ [[package]] name = "alloy-sol-macro-expander" -version = "0.7.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "867a5469d61480fea08c7333ffeca52d5b621f5ca2e44f271b117ec1fc9a0525" -dependencies = [ - "alloy-sol-macro-input 0.7.7", - "const-hex", - "heck", - "indexmap 2.7.0", - "proc-macro-error", - "proc-macro2", - "quote", - "syn 2.0.90", - "syn-solidity 0.7.7", - "tiny-keccak", -] - -[[package]] -name = "alloy-sol-macro-expander" -version = "0.8.14" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82ec42f342d9a9261699f8078e57a7a4fda8aaa73c1a212ed3987080e6a9cd13" +checksum = "6bf7ed1574b699f48bf17caab4e6e54c6d12bc3c006ab33d58b1e227c1c3559f" dependencies = [ - "alloy-json-abi 0.8.14", - "alloy-sol-macro-input 0.8.14", + "alloy-json-abi", + "alloy-sol-macro-input", "const-hex", "heck", "indexmap 2.7.0", @@ -1028,32 +712,17 @@ dependencies = [ "proc-macro2", "quote", "syn 2.0.90", - "syn-solidity 0.8.14", + "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "0.7.7" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e482dc33a32b6fadbc0f599adea520bd3aaa585c141a80b404d0a3e3fa72528" +checksum = "8c02997ccef5f34f9c099277d4145f183b422938ed5322dc57a089fe9b9ad9ee" dependencies = [ - "const-hex", - "dunce", - "heck", - "proc-macro2", - "quote", - "syn 2.0.90", - "syn-solidity 0.7.7", -] - -[[package]] -name = "alloy-sol-macro-input" -version = "0.8.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed2c50e6a62ee2b4f7ab3c6d0366e5770a21cad426e109c2f40335a1b3aff3df" -dependencies = [ - "alloy-json-abi 0.8.14", + "alloy-json-abi", "const-hex", "dunce", "heck", @@ -1061,24 +730,14 @@ dependencies = [ "quote", "serde_json", "syn 2.0.90", - "syn-solidity 0.8.14", + "syn-solidity", ] [[package]] name = "alloy-sol-type-parser" -version = "0.7.7" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbcba3ca07cf7975f15d871b721fb18031eec8bce51103907f6dcce00b255d98" -dependencies = [ - "serde", - "winnow", -] - -[[package]] -name = "alloy-sol-type-parser" -version = "0.8.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac17c6e89a50fb4a758012e4b409d9a0ba575228e69b539fe37d7a1bd507ca4a" +checksum = "ce13ff37285b0870d0a0746992a4ae48efaf34b766ae4c2640fa15e5305f8e73" dependencies = [ "serde", "winnow", @@ -1086,55 +745,24 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "0.7.7" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a91ca40fa20793ae9c3841b83e74569d1cc9af29a2f5237314fd3452d51e38c7" +checksum = "1174cafd6c6d810711b4e00383037bdb458efc4fe3dbafafa16567e0320c54d8" dependencies = [ - "alloy-primitives 0.7.7", - "alloy-sol-macro 0.7.7", + "alloy-json-abi", + "alloy-primitives 0.8.15", + "alloy-sol-macro", "const-hex", "serde", ] -[[package]] -name = "alloy-sol-types" -version = "0.8.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9dc0fffe397aa17628160e16b89f704098bf3c9d74d5d369ebc239575936de5" -dependencies = [ - "alloy-json-abi 0.8.14", - "alloy-primitives 0.8.14", - "alloy-sol-macro 0.8.14", - "const-hex", - "serde", -] - -[[package]] -name = "alloy-transport" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d0590afbdacf2f8cca49d025a2466f3b6584a016a8b28f532f29f8da1007bae" -dependencies = [ - "alloy-json-rpc 0.2.1", - "base64 0.22.1", - "futures-util", - "futures-utils-wasm", - "serde", - "serde_json", - "thiserror 1.0.69", - "tokio", - "tower 0.4.13", - "tracing", - "url", -] - [[package]] name = "alloy-transport" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d69d36982b9e46075ae6b792b0f84208c6c2c15ad49f6c500304616ef67b70e0" +checksum = "628be5b9b75e4f4c4f2a71d985bbaca4f23de356dc83f1625454c505f5eef4df" dependencies = [ - "alloy-json-rpc 0.7.3", + "alloy-json-rpc", "base64 0.22.1", "futures-util", "futures-utils-wasm", @@ -1142,7 +770,7 @@ dependencies = [ "serde_json", "thiserror 2.0.6", "tokio", - "tower 0.5.1", + "tower", "tracing", "url", "wasmtimer", @@ -1150,48 +778,33 @@ dependencies = [ [[package]] name = "alloy-transport-http" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2437d145d80ea1aecde8574d2058cceb8b3c9cba05f6aea8e67907c660d46698" -dependencies = [ - "alloy-json-rpc 0.2.1", - "alloy-transport 0.2.1", - "reqwest 0.12.9", - "serde_json", - "tower 0.4.13", - "tracing", - "url", -] - -[[package]] -name = "alloy-transport-http" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e02ffd5d93ffc51d72786e607c97de3b60736ca3e636ead0ec1f7dce68ea3fd" +checksum = "4e24412cf72f79c95cd9b1d9482e3a31f9d94c24b43c4b3b710cc8d4341eaab0" dependencies = [ - "alloy-json-rpc 0.7.3", - "alloy-rpc-types-engine 0.7.3", - "alloy-transport 0.7.3", + "alloy-json-rpc", + "alloy-rpc-types-engine", + "alloy-transport", "http-body-util", "hyper 1.5.1", "hyper-util", "jsonwebtoken", "reqwest 0.12.9", "serde_json", - "tower 0.5.1", + "tower", "tracing", "url", ] [[package]] name = "alloy-transport-ipc" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b6f8b87cb84bae6d81ae6604b37741c8116f84f9784a0ecc6038c302e679d23" +checksum = "0577a1f67ce70ece3f2b27cf1011da7222ef0a5701f7dcb558e5356278eeb531" dependencies = [ - "alloy-json-rpc 0.7.3", + "alloy-json-rpc", "alloy-pubsub", - "alloy-transport 0.7.3", + "alloy-transport", "bytes", "futures", "interprocess", @@ -1204,12 +817,12 @@ dependencies = [ [[package]] name = "alloy-transport-ws" -version = "0.7.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c085c4e1e7680b723ffc558f61a22c061ed3f70eb3436f93f3936779c59cec1" +checksum = "1ca46272d17f9647fdb56080ed26c72b3ea5078416831130f5ed46f3b4be0ed6" dependencies = [ "alloy-pubsub", - "alloy-transport 0.7.3", + "alloy-transport", "futures", "http 1.2.0", "rustls 0.23.19", @@ -1226,7 +839,7 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3a5fd8fea044cc9a8c8a50bb6f28e31f0385d820f116c5b98f6f4e55d6e5590b" dependencies = [ - "alloy-primitives 0.8.14", + "alloy-primitives 0.8.15", "alloy-rlp", "arrayvec", "derive_more 1.0.0", @@ -1628,7 +1241,7 @@ dependencies = [ "serde_urlencoded", "sync_wrapper 1.0.2", "tokio", - "tower 0.5.1", + "tower", "tower-layer", "tower-service", "tracing", @@ -1674,7 +1287,7 @@ dependencies = [ "multer", "pin-project-lite", "serde", - "tower 0.5.1", + "tower", "tower-layer", "tower-service", ] @@ -1750,7 +1363,7 @@ checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" [[package]] name = "beacon-api-client" version = "0.1.0" -source = "git+https://github.com/ralexstokes/ethereum-consensus?rev=cf3c404#cf3c404043230559660810bc0c9d6d5a8498d819" +source = "git+https://github.com/ralexstokes/ethereum-consensus?rev=8fbd8a5#8fbd8a53dca0170bedeca40a92ee70fd48c4615b" dependencies = [ "clap", "ethereum-consensus", @@ -1887,8 +1500,8 @@ dependencies = [ "blst", "ethereum-types 0.14.1", "ethereum_hashing 0.6.0", - "ethereum_serde_utils", - "ethereum_ssz", + "ethereum_serde_utils 0.5.2", + "ethereum_ssz 0.5.4", "hex", "rand 0.8.5", "serde", @@ -1899,18 +1512,20 @@ dependencies = [ [[package]] name = "bls" version = "0.2.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ + "alloy-primitives 0.8.15", "arbitrary", "blst", - "ethereum-types 0.14.1", - "ethereum_hashing 0.6.0", - "ethereum_serde_utils", - "ethereum_ssz", + "ethereum_hashing 0.7.0", + "ethereum_serde_utils 0.7.0", + "ethereum_ssz 0.7.1", + "fixed_bytes", "hex", "rand 0.8.5", + "safe_arith", "serde", - "tree_hash 0.6.0", + "tree_hash 0.8.0", "zeroize", ] @@ -1926,21 +1541,37 @@ dependencies = [ "zeroize", ] +[[package]] +name = "blstrs" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a8a8ed6fefbeef4a8c7b460e4110e12c5e22a5b7cf32621aae6ad650c4dcf29" +dependencies = [ + "blst", + "byte-slice-cast", + "ff 0.13.0", + "group 0.13.0", + "pairing", + "rand_core 0.6.4", + "serde", + "subtle", +] + [[package]] name = "bolt-sidecar" version = "0.3.0-alpha" dependencies = [ "account_utils", - "alloy 0.7.3", + "alloy", "alloy-node-bindings", - "alloy-provider 0.7.3", - "alloy-rpc-types-engine 0.7.3", - "alloy-transport-http 0.7.3", + "alloy-provider", + "alloy-rpc-types-engine", + "alloy-transport-http", "async-trait", "axum", "axum-extra", "beacon-api-client", - "bls 0.2.0 (git+https://github.com/sigp/lighthouse?rev=a87f19d)", + "bls 0.2.0 (git+https://github.com/sigp/lighthouse)", "blst", "bytes", "cb-common", @@ -1948,16 +1579,16 @@ dependencies = [ "commit-boost", "criterion", "dotenvy", - "eth2_keystore 0.1.0 (git+https://github.com/sigp/lighthouse?rev=a87f19d)", + "eth2_keystore 0.1.0 (git+https://github.com/sigp/lighthouse)", "ethereum-consensus", - "ethereum_ssz", + "ethereum_ssz 0.8.1", "eyre", "futures", "hex", "http-body-util", - "metrics", + "metrics 0.23.0", "metrics-exporter-prometheus", - "parking_lot 0.12.3", + "parking_lot", "rand 0.8.5", "regex", "reqwest 0.12.9", @@ -1969,12 +1600,12 @@ dependencies = [ "thiserror 2.0.6", "tokio", "tokio-retry", - "tower 0.5.1", + "tower", "tower-http", "tracing", "tracing-subscriber", "tree_hash 0.8.0", - "tree_hash_derive 0.8.0", + "tree_hash_derive", ] [[package]] @@ -2055,20 +1686,6 @@ dependencies = [ "serde", ] -[[package]] -name = "cached_tree_hash" -version = "0.1.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" -dependencies = [ - "ethereum-types 0.14.1", - "ethereum_hashing 0.6.0", - "ethereum_ssz", - "ethereum_ssz_derive", - "smallvec", - "ssz_types 0.6.0", - "tree_hash 0.6.0", -] - [[package]] name = "cast" version = "0.3.0" @@ -2077,8 +1694,8 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] name = "cb-cli" -version = "0.1.0" -source = "git+https://github.com/Commit-Boost/commit-boost-client?rev=45ce8f1#45ce8f1b8febd778c7a8a1fd7651b6e39afa8478" +version = "0.4.0" +source = "git+https://github.com/Commit-Boost/commit-boost-client?rev=0f8f69b#0f8f69be3a27e8e095ae4f400afc51d266db790f" dependencies = [ "cb-common", "clap", @@ -2093,41 +1710,46 @@ dependencies = [ [[package]] name = "cb-common" -version = "0.1.0" -source = "git+https://github.com/Commit-Boost/commit-boost-client?rev=45ce8f1#45ce8f1b8febd778c7a8a1fd7651b6e39afa8478" +version = "0.4.0" +source = "git+https://github.com/Commit-Boost/commit-boost-client?rev=0f8f69b#0f8f69be3a27e8e095ae4f400afc51d266db790f" dependencies = [ - "alloy 0.2.1", + "aes 0.8.4", + "alloy", "axum", + "base64 0.22.1", "bimap", "blst", + "cipher 0.4.4", + "ctr 0.9.2", "derive_more 1.0.0", "eth2_keystore 0.1.0 (git+https://github.com/sigp/lighthouse?rev=9e12c21f268c80a3f002ae0ca27477f9f512eb6f)", - "ethereum-types 0.14.1", - "ethereum_serde_utils", - "ethereum_ssz", - "ethereum_ssz_derive", + "ethereum_serde_utils 0.7.0", "eyre", "k256 0.13.4", + "pbkdf2 0.12.2", "rand 0.8.5", "reqwest 0.12.9", "serde", "serde_json", - "ssz_types 0.5.4", + "serde_yaml 0.9.33", + "sha2 0.10.8", + "ssz_types", "thiserror 1.0.69", "tokio", "toml 0.8.19", "tracing", "tracing-appender", "tracing-subscriber", - "tree_hash 0.5.2", - "tree_hash_derive 0.5.2", + "tree_hash 0.8.0", + "tree_hash_derive", + "unicode-normalization", "url", ] [[package]] name = "cb-metrics" -version = "0.1.0" -source = "git+https://github.com/Commit-Boost/commit-boost-client?rev=45ce8f1#45ce8f1b8febd778c7a8a1fd7651b6e39afa8478" +version = "0.4.0" +source = "git+https://github.com/Commit-Boost/commit-boost-client?rev=0f8f69b#0f8f69be3a27e8e095ae4f400afc51d266db790f" dependencies = [ "axum", "cb-common", @@ -2140,10 +1762,10 @@ dependencies = [ [[package]] name = "cb-pbs" -version = "0.1.0" -source = "git+https://github.com/Commit-Boost/commit-boost-client?rev=45ce8f1#45ce8f1b8febd778c7a8a1fd7651b6e39afa8478" +version = "0.4.0" +source = "git+https://github.com/Commit-Boost/commit-boost-client?rev=0f8f69b#0f8f69be3a27e8e095ae4f400afc51d266db790f" dependencies = [ - "alloy 0.2.1", + "alloy", "async-trait", "axum", "blst", @@ -2153,6 +1775,7 @@ dependencies = [ "eyre", "futures", "lazy_static", + "parking_lot", "prometheus", "reqwest 0.12.9", "serde_json", @@ -2165,25 +1788,27 @@ dependencies = [ [[package]] name = "cb-signer" -version = "0.1.0" -source = "git+https://github.com/Commit-Boost/commit-boost-client?rev=45ce8f1#45ce8f1b8febd778c7a8a1fd7651b6e39afa8478" +version = "0.4.0" +source = "git+https://github.com/Commit-Boost/commit-boost-client?rev=0f8f69b#0f8f69be3a27e8e095ae4f400afc51d266db790f" dependencies = [ - "alloy 0.2.1", + "alloy", "axum", "axum-extra", "bimap", "blst", "cb-common", + "cb-metrics", "derive_more 1.0.0", "eyre", "headers", "k256 0.13.4", "lazy_static", + "prometheus", "thiserror 1.0.69", "tokio", "tracing", - "tree_hash 0.5.2", - "tree_hash_derive 0.5.2", + "tree_hash 0.8.0", + "tree_hash_derive", "uuid 1.11.0", ] @@ -2327,13 +1952,13 @@ checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" [[package]] name = "clap_utils" version = "0.1.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ + "alloy-primitives 0.8.15", "clap", "dirs", "eth2_network_config", - "ethereum-types 0.14.1", - "ethereum_ssz", + "ethereum_ssz 0.7.1", "hex", "serde", "serde_json", @@ -2385,8 +2010,8 @@ checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" [[package]] name = "commit-boost" -version = "0.1.0" -source = "git+https://github.com/Commit-Boost/commit-boost-client?rev=45ce8f1#45ce8f1b8febd778c7a8a1fd7651b6e39afa8478" +version = "0.4.0" +source = "git+https://github.com/Commit-Boost/commit-boost-client?rev=0f8f69b#0f8f69be3a27e8e095ae4f400afc51d266db790f" dependencies = [ "cb-cli", "cb-common", @@ -2397,14 +2022,15 @@ dependencies = [ "color-eyre", "eyre", "tokio", - "tree_hash 0.5.2", - "tree_hash_derive 0.5.2", + "tracing", + "tree_hash 0.8.0", + "tree_hash_derive", ] [[package]] name = "compare_fields" version = "0.2.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "itertools 0.10.5", ] @@ -2412,7 +2038,7 @@ dependencies = [ [[package]] name = "compare_fields_derive" version = "0.2.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "quote", "syn 1.0.109", @@ -2511,6 +2137,58 @@ dependencies = [ "libc", ] +[[package]] +name = "crate_crypto_internal_eth_kzg_bls12_381" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "319cb241b1ad37f8c376b2ebcd7233f53e033a50de6f0a9cf38e6cc545554de4" +dependencies = [ + "blst", + "blstrs", + "ff 0.13.0", + "group 0.13.0", + "pairing", + "subtle", +] + +[[package]] +name = "crate_crypto_internal_eth_kzg_erasure_codes" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "abedcc3eb4d04655c53704a66880945f5a39c6d96b337f0ab4a086dda795c954" +dependencies = [ + "crate_crypto_internal_eth_kzg_bls12_381", + "crate_crypto_internal_eth_kzg_polynomial", +] + +[[package]] +name = "crate_crypto_internal_eth_kzg_maybe_rayon" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3db089718921ca28d137ed8b1a7406f10e6bfbc61794a2339bcd9c99d5ddefc6" + +[[package]] +name = "crate_crypto_internal_eth_kzg_polynomial" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "750e6dbe493d337d98502975137f055a52767021bcdb69aa8926ed8ee28c7980" +dependencies = [ + "crate_crypto_internal_eth_kzg_bls12_381", +] + +[[package]] +name = "crate_crypto_kzg_multi_open_fk20" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3337262f48c7fee2999cf23bb9cb693299211671fe46b593ac81fcb218de68b" +dependencies = [ + "crate_crypto_internal_eth_kzg_bls12_381", + "crate_crypto_internal_eth_kzg_maybe_rayon", + "crate_crypto_internal_eth_kzg_polynomial", + "hex", + "sha2 0.10.8", +] + [[package]] name = "crc" version = "3.2.1" @@ -2648,6 +2326,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" dependencies = [ "generic-array", + "rand_core 0.6.4", "typenum", ] @@ -2673,20 +2352,20 @@ dependencies = [ [[package]] name = "ctr" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a232f92a03f37dd7d7dd2adc67166c77e9cd88de5b019b9a9eecfaeaf7bfd481" +checksum = "049bb91fb4aaf0e3c7efa6cd5ef877dbbbd15b39dad06d9948de4ec8a75761ea" dependencies = [ "cipher 0.3.0", ] [[package]] name = "ctr" -version = "0.8.0" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "049bb91fb4aaf0e3c7efa6cd5ef877dbbbd15b39dad06d9948de4ec8a75761ea" +checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" dependencies = [ - "cipher 0.3.0", + "cipher 0.4.4", ] [[package]] @@ -2802,7 +2481,7 @@ dependencies = [ "hashbrown 0.14.5", "lock_api", "once_cell", - "parking_lot_core 0.9.10", + "parking_lot_core", ] [[package]] @@ -2816,7 +2495,7 @@ dependencies = [ "hashbrown 0.14.5", "lock_api", "once_cell", - "parking_lot_core 0.9.10", + "parking_lot_core", ] [[package]] @@ -2847,26 +2526,27 @@ dependencies = [ [[package]] name = "delay_map" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4355c25cbf99edcb6b4a0e906f6bdc6956eda149e84455bea49696429b2f8e8" +checksum = "df941644b671f05f59433e481ba0d31ac10e3667de725236a4c0d587c496fba1" dependencies = [ "futures", + "tokio", "tokio-util", ] [[package]] name = "deposit_contract" version = "0.2.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "ethabi 16.0.0", - "ethereum_ssz", + "ethereum_ssz 0.7.1", "hex", "reqwest 0.11.27", "serde_json", "sha2 0.9.9", - "tree_hash 0.6.0", + "tree_hash 0.8.0", "types", ] @@ -3012,7 +2692,7 @@ dependencies = [ [[package]] name = "directory" version = "0.1.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "clap", "clap_utils", @@ -3062,32 +2742,34 @@ dependencies = [ [[package]] name = "discv5" -version = "0.4.1" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bac33cb3f99889a57e56a8c6ccb77aaf0cfc7787602b7af09783f736d77314e1" +checksum = "898d136ecb64116ec68aecf14d889bd30f8b1fe0c19e262953f7388dbe77052e" dependencies = [ - "aes 0.7.5", + "aes 0.8.4", "aes-gcm", + "alloy-rlp", "arrayvec", + "ctr 0.9.2", "delay_map", - "enr 0.10.0", + "enr 0.13.0", "fnv", "futures", - "hashlink", + "hashlink 0.9.1", "hex", "hkdf", "lazy_static", - "libp2p", + "libp2p-identity", "lru", "more-asserts", - "parking_lot 0.11.2", + "multiaddr 0.18.2", + "parking_lot", "rand 0.8.5", - "rlp", "smallvec", - "socket2 0.4.10", + "socket2", "tokio", "tracing", - "uint", + "uint 0.10.0", "zeroize", ] @@ -3160,6 +2842,7 @@ dependencies = [ "digest 0.10.7", "elliptic-curve 0.13.8", "rfc6979 0.4.0", + "serdect", "signature 2.2.0", "spki 0.7.3", ] @@ -3230,6 +2913,7 @@ dependencies = [ "pkcs8 0.10.2", "rand_core 0.6.4", "sec1 0.7.3", + "serdect", "subtle", "zeroize", ] @@ -3264,18 +2948,18 @@ dependencies = [ [[package]] name = "enr" -version = "0.10.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a3d8dc56e02f954cac8eb489772c552c473346fc34f67412bb6244fd647f7e4" +checksum = "851bd664a3d3a3c175cff92b2f0df02df3c541b4895d0ae307611827aae46152" dependencies = [ - "base64 0.21.7", + "alloy-rlp", + "base64 0.22.1", "bytes", "ed25519-dalek", "hex", "k256 0.13.4", "log", "rand 0.8.5", - "rlp", "serde", "sha3 0.10.8", "zeroize", @@ -3314,13 +2998,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" dependencies = [ "libc", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] name = "eth2_config" version = "0.2.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "paste", "types", @@ -3329,12 +3013,11 @@ dependencies = [ [[package]] name = "eth2_interop_keypairs" version = "0.2.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ - "bls 0.2.0 (git+https://github.com/sigp/lighthouse?rev=a87f19d)", - "ethereum_hashing 0.6.0", + "bls 0.2.0 (git+https://github.com/sigp/lighthouse)", + "ethereum_hashing 0.7.0", "hex", - "lazy_static", "num-bigint", "serde", "serde_yaml 0.9.33", @@ -3355,9 +3038,9 @@ dependencies = [ [[package]] name = "eth2_key_derivation" version = "0.1.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ - "bls 0.2.0 (git+https://github.com/sigp/lighthouse?rev=a87f19d)", + "bls 0.2.0 (git+https://github.com/sigp/lighthouse)", "num-bigint-dig", "ring 0.16.20", "sha2 0.9.9", @@ -3389,11 +3072,11 @@ dependencies = [ [[package]] name = "eth2_keystore" version = "0.1.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "aes 0.7.5", - "bls 0.2.0 (git+https://github.com/sigp/lighthouse?rev=a87f19d)", - "eth2_key_derivation 0.1.0 (git+https://github.com/sigp/lighthouse?rev=a87f19d)", + "bls 0.2.0 (git+https://github.com/sigp/lighthouse)", + "eth2_key_derivation 0.1.0 (git+https://github.com/sigp/lighthouse)", "hex", "hmac 0.11.0", "pbkdf2 0.8.0", @@ -3411,11 +3094,12 @@ dependencies = [ [[package]] name = "eth2_network_config" version = "0.2.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "bytes", "discv5", "eth2_config", + "kzg", "logging", "pretty_reqwest_error", "reqwest 0.11.27", @@ -3431,10 +3115,10 @@ dependencies = [ [[package]] name = "eth2_wallet" version = "0.1.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ - "eth2_key_derivation 0.1.0 (git+https://github.com/sigp/lighthouse?rev=a87f19d)", - "eth2_keystore 0.1.0 (git+https://github.com/sigp/lighthouse?rev=a87f19d)", + "eth2_key_derivation 0.1.0 (git+https://github.com/sigp/lighthouse)", + "eth2_keystore 0.1.0 (git+https://github.com/sigp/lighthouse)", "rand 0.8.5", "serde", "serde_json", @@ -3455,7 +3139,7 @@ dependencies = [ "serde_json", "sha3 0.9.1", "thiserror 1.0.69", - "uint", + "uint 0.9.5", ] [[package]] @@ -3472,7 +3156,7 @@ dependencies = [ "serde_json", "sha3 0.10.8", "thiserror 1.0.69", - "uint", + "uint 0.9.5", ] [[package]] @@ -3506,7 +3190,7 @@ dependencies = [ [[package]] name = "ethereum-consensus" version = "0.1.1" -source = "git+https://github.com/ralexstokes/ethereum-consensus?rev=cf3c404#cf3c404043230559660810bc0c9d6d5a8498d819" +source = "git+https://github.com/ralexstokes/ethereum-consensus?rev=8fbd8a5#8fbd8a53dca0170bedeca40a92ee70fd48c4615b" dependencies = [ "blst", "bs58 0.4.0", @@ -3538,7 +3222,7 @@ dependencies = [ "impl-rlp", "impl-serde 0.3.2", "primitive-types 0.10.1", - "uint", + "uint 0.9.5", ] [[package]] @@ -3554,7 +3238,7 @@ dependencies = [ "impl-serde 0.4.0", "primitive-types 0.12.2", "scale-info", - "uint", + "uint 0.9.5", ] [[package]] @@ -3581,24 +3265,25 @@ dependencies = [ ] [[package]] -name = "ethereum_hashing" -version = "1.0.0-beta.2" +name = "ethereum_serde_utils" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "233dc6f434ce680dbabf4451ee3380cec46cb3c45d66660445a435619710dd35" +checksum = "de4d5951468846963c24e8744c133d44f39dff2cd3a233f6be22b370d08a524f" dependencies = [ - "cpufeatures", - "lazy_static", - "ring 0.16.20", - "sha2 0.10.8", + "ethereum-types 0.14.1", + "hex", + "serde", + "serde_derive", + "serde_json", ] [[package]] name = "ethereum_serde_utils" -version = "0.5.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de4d5951468846963c24e8744c133d44f39dff2cd3a233f6be22b370d08a524f" +checksum = "70cbccfccf81d67bff0ab36e591fa536c8a935b078a7b0e58c1d00d418332fc9" dependencies = [ - "ethereum-types 0.14.1", + "alloy-primitives 0.8.15", "hex", "serde", "serde_derive", @@ -3616,16 +3301,54 @@ dependencies = [ "smallvec", ] +[[package]] +name = "ethereum_ssz" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e999563461faea0ab9bc0024e5e66adcee35881f3d5062f52f31a4070fe1522" +dependencies = [ + "alloy-primitives 0.8.15", + "itertools 0.13.0", + "smallvec", +] + +[[package]] +name = "ethereum_ssz" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "036c84bd29bff35e29bbee3c8fc0e2fb95db12b6f2f3cae82a827fbc97256f3a" +dependencies = [ + "alloy-primitives 0.8.15", + "ethereum_serde_utils 0.7.0", + "itertools 0.13.0", + "serde", + "serde_derive", + "smallvec", + "typenum", +] + [[package]] name = "ethereum_ssz_derive" -version = "0.5.4" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eccd5378ec34a07edd3d9b48088cbc63309d0367d14ba10b0cdb1d1791080ea" +checksum = "f3deae99c8e74829a00ba7a92d49055732b3c1f093f2ccfa3cbc621679b6fa91" dependencies = [ - "darling 0.13.4", + "darling 0.20.10", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.90", +] + +[[package]] +name = "ethereum_ssz_derive" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9dc8e67e1f770f5aa4c2c2069aaaf9daee7ac21bed357a71b911b37a58966cfb" +dependencies = [ + "darling 0.20.10", + "proc-macro2", + "quote", + "syn 2.0.90", ] [[package]] @@ -3725,6 +3448,7 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" dependencies = [ + "bitvec 1.0.1", "rand_core 0.6.4", "subtle", ] @@ -3748,7 +3472,7 @@ dependencies = [ [[package]] name = "filesystem" version = "0.1.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "winapi", "windows-acl", @@ -3772,13 +3496,21 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" dependencies = [ - "arbitrary", "byteorder", "rand 0.8.5", "rustc-hex", "static_assertions", ] +[[package]] +name = "fixed_bytes" +version = "0.1.0" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" +dependencies = [ + "alloy-primitives 0.8.15", + "safe_arith", +] + [[package]] name = "flate2" version = "1.0.35" @@ -3893,7 +3625,6 @@ dependencies = [ "futures-core", "futures-task", "futures-util", - "num_cpus", ] [[package]] @@ -3940,12 +3671,6 @@ version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" -[[package]] -name = "futures-timer" -version = "3.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" - [[package]] name = "futures-util" version = "0.3.31" @@ -4007,9 +3732,9 @@ dependencies = [ [[package]] name = "ghash" -version = "0.4.4" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1583cc1656d7839fd3732b80cf4f38850336cdb9b8ded1cd399ca62958de3c99" +checksum = "f0d8a4362ccb29cb0b265253fb0a2728f592895ee6854fd9bc13f2ffda266ff1" dependencies = [ "opaque-debug", "polyval", @@ -4045,7 +3770,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ "ff 0.13.0", + "rand 0.8.5", "rand_core 0.6.4", + "rand_xorshift", "subtle", ] @@ -4140,6 +3867,15 @@ dependencies = [ "hashbrown 0.14.5", ] +[[package]] +name = "hashlink" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ba4ff7128dee98c7dc9794b6a411377e1404dba1c97deb8d1a55297bd25d8af" +dependencies = [ + "hashbrown 0.14.5", +] + [[package]] name = "headers" version = "0.4.0" @@ -4360,7 +4096,7 @@ dependencies = [ "httpdate", "itoa", "pin-project-lite", - "socket2 0.5.8", + "socket2", "tokio", "tower-service", "tracing", @@ -4463,7 +4199,7 @@ dependencies = [ "http-body 1.0.1", "hyper 1.5.1", "pin-project-lite", - "socket2 0.5.8", + "socket2", "tokio", "tower-service", "tracing", @@ -4716,6 +4452,7 @@ version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" dependencies = [ + "arbitrary", "equivalent", "hashbrown 0.15.2", "serde", @@ -4748,7 +4485,7 @@ dependencies = [ [[package]] name = "int_to_bytes" version = "0.2.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "bytes", ] @@ -4889,6 +4626,7 @@ dependencies = [ "ecdsa 0.16.9", "elliptic-curve 0.13.8", "once_cell", + "serdect", "sha2 0.10.8", "signature 2.2.0", ] @@ -4915,18 +4653,20 @@ dependencies = [ [[package]] name = "kzg" version = "0.1.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "arbitrary", "c-kzg", "derivative", - "ethereum_hashing 0.6.0", - "ethereum_serde_utils", - "ethereum_ssz", - "ethereum_ssz_derive", + "ethereum_hashing 0.7.0", + "ethereum_serde_utils 0.7.0", + "ethereum_ssz 0.7.1", + "ethereum_ssz_derive 0.7.1", "hex", + "rust_eth_kzg", "serde", - "tree_hash 0.6.0", + "serde_json", + "tree_hash 0.8.0", ] [[package]] @@ -4981,7 +4721,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" dependencies = [ "cfg-if", - "windows-targets 0.52.6", + "windows-targets 0.48.5", ] [[package]] @@ -4990,81 +4730,6 @@ version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" -[[package]] -name = "libp2p" -version = "0.53.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "681fb3f183edfbedd7a57d32ebe5dcdc0b9f94061185acf3c30249349cc6fc99" -dependencies = [ - "bytes", - "either", - "futures", - "futures-timer", - "getrandom 0.2.15", - "instant", - "libp2p-allow-block-list", - "libp2p-connection-limits", - "libp2p-core", - "libp2p-identity", - "libp2p-swarm", - "multiaddr 0.18.2", - "pin-project", - "rw-stream-sink", - "thiserror 1.0.69", -] - -[[package]] -name = "libp2p-allow-block-list" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "107b238b794cb83ab53b74ad5dcf7cca3200899b72fe662840cfb52f5b0a32e6" -dependencies = [ - "libp2p-core", - "libp2p-identity", - "libp2p-swarm", - "void", -] - -[[package]] -name = "libp2p-connection-limits" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7cd50a78ccfada14de94cbacd3ce4b0138157f376870f13d3a8422cd075b4fd" -dependencies = [ - "libp2p-core", - "libp2p-identity", - "libp2p-swarm", - "void", -] - -[[package]] -name = "libp2p-core" -version = "0.41.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5a8920cbd8540059a01950c1e5c96ea8d89eb50c51cd366fc18bdf540a6e48f" -dependencies = [ - "either", - "fnv", - "futures", - "futures-timer", - "libp2p-identity", - "multiaddr 0.18.2", - "multihash 0.19.3", - "multistream-select", - "once_cell", - "parking_lot 0.12.3", - "pin-project", - "quick-protobuf", - "rand 0.8.5", - "rw-stream-sink", - "smallvec", - "thiserror 1.0.69", - "tracing", - "unsigned-varint 0.8.0", - "void", - "web-time", -] - [[package]] name = "libp2p-identity" version = "0.2.10" @@ -5078,35 +4743,12 @@ dependencies = [ "libsecp256k1", "multihash 0.19.3", "quick-protobuf", - "rand 0.8.5", "sha2 0.10.8", "thiserror 1.0.69", "tracing", "zeroize", ] -[[package]] -name = "libp2p-swarm" -version = "0.44.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80cae6cb75f89dbca53862f9ebe0b9f463aa7b302762fcfaafb9e51dcc9b0f7e" -dependencies = [ - "either", - "fnv", - "futures", - "futures-timer", - "instant", - "libp2p-core", - "libp2p-identity", - "lru", - "multistream-select", - "once_cell", - "rand 0.8.5", - "smallvec", - "tracing", - "void", -] - [[package]] name = "libredox" version = "0.1.3" @@ -5176,14 +4818,6 @@ dependencies = [ "vcpkg", ] -[[package]] -name = "lighthouse_metrics" -version = "0.2.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" -dependencies = [ - "prometheus", -] - [[package]] name = "linked-hash-map" version = "0.5.6" @@ -5215,7 +4849,7 @@ dependencies = [ [[package]] name = "lockfile" version = "0.1.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "fs2", ] @@ -5229,12 +4863,11 @@ checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" [[package]] name = "logging" version = "0.2.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "chrono", - "lazy_static", - "lighthouse_metrics", - "parking_lot 0.12.3", + "metrics 0.2.0", + "parking_lot", "serde", "serde_json", "slog", @@ -5297,11 +4930,11 @@ dependencies = [ [[package]] name = "merkle_proof" version = "0.2.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ - "ethereum-types 0.14.1", - "ethereum_hashing 0.6.0", - "lazy_static", + "alloy-primitives 0.8.15", + "ethereum_hashing 0.7.0", + "fixed_bytes", "safe_arith", ] @@ -5328,6 +4961,14 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "metrics" +version = "0.2.0" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" +dependencies = [ + "prometheus", +] + [[package]] name = "metrics" version = "0.23.0" @@ -5351,7 +4992,7 @@ dependencies = [ "hyper-util", "indexmap 2.7.0", "ipnet", - "metrics", + "metrics 0.23.0", "metrics-util", "quanta", "thiserror 1.0.69", @@ -5368,7 +5009,7 @@ dependencies = [ "crossbeam-epoch", "crossbeam-utils", "hashbrown 0.14.5", - "metrics", + "metrics 0.23.0", "num_cpus", "quanta", "sketches-ddsketch", @@ -5395,22 +5036,22 @@ dependencies = [ [[package]] name = "milhouse" -version = "0.1.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3826d3602a3674b07e080ce1982350e454ec253d73f156bd927ac1b652293f4d" +checksum = "f68e33f98199224d1073f7c1468ea6abfea30736306fb79c7181a881e97ea32f" dependencies = [ + "alloy-primitives 0.8.15", "arbitrary", "derivative", - "ethereum-types 0.14.1", - "ethereum_hashing 0.6.0", - "ethereum_ssz", - "ethereum_ssz_derive", - "itertools 0.10.5", - "parking_lot 0.12.3", + "ethereum_hashing 0.7.0", + "ethereum_ssz 0.7.1", + "ethereum_ssz_derive 0.7.1", + "itertools 0.13.0", + "parking_lot", "rayon", "serde", "smallvec", - "tree_hash 0.6.0", + "tree_hash 0.8.0", "triomphe", "typenum", "vec_map", @@ -5586,20 +5227,6 @@ dependencies = [ "synstructure 0.12.6", ] -[[package]] -name = "multistream-select" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea0df8e5eec2298a62b326ee4f0d7fe1a6b90a09dfcf9df37b38f947a8c42f19" -dependencies = [ - "bytes", - "futures", - "log", - "pin-project", - "smallvec", - "unsigned-varint 0.7.2", -] - [[package]] name = "native-tls" version = "0.2.12" @@ -5726,7 +5353,7 @@ version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" dependencies = [ - "proc-macro-crate 3.2.0", + "proc-macro-crate 1.1.3", "proc-macro2", "quote", "syn 2.0.90", @@ -5772,15 +5399,15 @@ checksum = "b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9" [[package]] name = "op-alloy-consensus" -version = "0.7.3" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78f0daa0d0936d436a21b57571b1e27c5663aa2ab62f6edae5ba5be999f9f93e" +checksum = "24aaf487dd59beed72931e31b11b305cdcb6a20651a1cccf992a20706a54cc3b" dependencies = [ - "alloy-consensus 0.7.3", - "alloy-eips 0.7.3", - "alloy-primitives 0.8.14", + "alloy-consensus", + "alloy-eips", + "alloy-primitives 0.8.15", "alloy-rlp", - "alloy-serde 0.7.3", + "alloy-serde", "derive_more 1.0.0", "serde", "thiserror 2.0.6", @@ -5788,16 +5415,16 @@ dependencies = [ [[package]] name = "op-alloy-rpc-types" -version = "0.7.3" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73741855ffaa2041b33cb616d7db7180c1149b648c68c23bee9e15501073fb32" +checksum = "21d0ada6356ac7818d4b1ba48c37116662732b97f18a3684f08727dafbef2437" dependencies = [ - "alloy-consensus 0.7.3", - "alloy-eips 0.7.3", - "alloy-network-primitives 0.7.3", - "alloy-primitives 0.8.14", - "alloy-rpc-types-eth 0.7.3", - "alloy-serde 0.7.3", + "alloy-consensus", + "alloy-eips", + "alloy-network-primitives", + "alloy-primitives 0.8.15", + "alloy-rpc-types-eth", + "alloy-serde", "derive_more 1.0.0", "op-alloy-consensus", "serde", @@ -5901,6 +5528,15 @@ version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c1b04fb49957986fdce4d6ee7a65027d55d4b6d2265e5848bbb507b58ccfdb6f" +[[package]] +name = "pairing" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81fec4625e73cf41ef4bb6846cafa6d44736525f442ba45e407c4a000a13996f" +dependencies = [ + "group 0.13.0", +] + [[package]] name = "parity-scale-codec" version = "2.3.1" @@ -5959,17 +5595,6 @@ version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" -[[package]] -name = "parking_lot" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" -dependencies = [ - "instant", - "lock_api", - "parking_lot_core 0.8.6", -] - [[package]] name = "parking_lot" version = "0.12.3" @@ -5977,21 +5602,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" dependencies = [ "lock_api", - "parking_lot_core 0.9.10", -] - -[[package]] -name = "parking_lot_core" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc" -dependencies = [ - "cfg-if", - "instant", - "libc", - "redox_syscall 0.2.16", - "smallvec", - "winapi", + "parking_lot_core", ] [[package]] @@ -6002,7 +5613,7 @@ checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.5.7", + "redox_syscall", "smallvec", "windows-targets 0.52.6", ] @@ -6045,6 +5656,16 @@ dependencies = [ "sha2 0.10.8", ] +[[package]] +name = "pbkdf2" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" +dependencies = [ + "digest 0.10.7", + "hmac 0.12.1", +] + [[package]] name = "pem" version = "3.0.4" @@ -6170,9 +5791,9 @@ dependencies = [ [[package]] name = "polyval" -version = "0.5.3" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8419d2b623c7c0896ff2d5d96e2cb4ede590fed28fcc34934f4c33c036e620a1" +checksum = "9d1fe60d06143b2430aa532c94cfe9e29783047f06c0d7fd359a9a51b729fa25" dependencies = [ "cfg-if", "cpufeatures", @@ -6204,7 +5825,7 @@ dependencies = [ [[package]] name = "pretty_reqwest_error" version = "0.1.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "reqwest 0.11.27", "sensitive_url", @@ -6230,7 +5851,7 @@ dependencies = [ "impl-codec 0.5.1", "impl-rlp", "impl-serde 0.3.2", - "uint", + "uint 0.9.5", ] [[package]] @@ -6244,7 +5865,7 @@ dependencies = [ "impl-rlp", "impl-serde 0.4.0", "scale-info", - "uint", + "uint 0.9.5", ] [[package]] @@ -6331,7 +5952,7 @@ dependencies = [ "fnv", "lazy_static", "memchr", - "parking_lot 0.12.3", + "parking_lot", "protobuf", "thiserror 1.0.69", ] @@ -6356,6 +5977,17 @@ dependencies = [ "unarray", ] +[[package]] +name = "proptest-derive" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ff7ff745a347b87471d859a377a9a404361e7efc2a971d73424a6d183c0fc77" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "protobuf" version = "2.28.0" @@ -6529,15 +6161,6 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3edd4d5d42c92f0a659926464d4cce56b562761267ecf0f469d85b7de384175" -[[package]] -name = "redox_syscall" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" -dependencies = [ - "bitflags 1.3.2", -] - [[package]] name = "redox_syscall" version = "0.5.7" @@ -6683,23 +6306,25 @@ dependencies = [ "system-configuration 0.6.1", "tokio", "tokio-native-tls", + "tokio-util", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", + "wasm-streams", "web-sys", "windows-registry", ] [[package]] name = "reth-codecs" -version = "1.1.2" -source = "git+https://github.com/paradigmxyz/reth#465692b5aff5718f10725077a9caf0a7b7c55297" +version = "1.1.4" +source = "git+https://github.com/paradigmxyz/reth#008cb25d004239886979e2773414ee51cbd90d1f" dependencies = [ - "alloy-consensus 0.7.3", - "alloy-eips 0.7.3", - "alloy-genesis 0.7.3", - "alloy-primitives 0.8.14", + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives 0.8.15", "alloy-trie", "bytes", "modular-bitfield", @@ -6710,8 +6335,8 @@ dependencies = [ [[package]] name = "reth-codecs-derive" -version = "1.1.2" -source = "git+https://github.com/paradigmxyz/reth#465692b5aff5718f10725077a9caf0a7b7c55297" +version = "1.1.4" +source = "git+https://github.com/paradigmxyz/reth#008cb25d004239886979e2773414ee51cbd90d1f" dependencies = [ "convert_case 0.6.0", "proc-macro2", @@ -6721,11 +6346,11 @@ dependencies = [ [[package]] name = "reth-ethereum-forks" -version = "1.1.2" -source = "git+https://github.com/paradigmxyz/reth#465692b5aff5718f10725077a9caf0a7b7c55297" +version = "1.1.4" +source = "git+https://github.com/paradigmxyz/reth#008cb25d004239886979e2773414ee51cbd90d1f" dependencies = [ "alloy-chains", - "alloy-primitives 0.8.14", + "alloy-primitives 0.8.15", "alloy-rlp", "auto_impl", "crc", @@ -6738,21 +6363,20 @@ dependencies = [ [[package]] name = "reth-primitives" -version = "1.1.2" -source = "git+https://github.com/paradigmxyz/reth#465692b5aff5718f10725077a9caf0a7b7c55297" +version = "1.1.4" +source = "git+https://github.com/paradigmxyz/reth#008cb25d004239886979e2773414ee51cbd90d1f" dependencies = [ - "alloy-consensus 0.7.3", - "alloy-eips 0.7.3", - "alloy-network 0.7.3", - "alloy-primitives 0.8.14", + "alloy-consensus", + "alloy-eips", + "alloy-network", + "alloy-primitives 0.8.15", "alloy-rlp", - "alloy-rpc-types 0.7.3", - "alloy-serde 0.7.3", + "alloy-rpc-types", + "alloy-serde", "alloy-trie", "bytes", "c-kzg", "derive_more 1.0.0", - "k256 0.13.4", "modular-bitfield", "once_cell", "op-alloy-rpc-types", @@ -6761,46 +6385,56 @@ dependencies = [ "reth-ethereum-forks", "reth-primitives-traits", "reth-static-file-types", + "reth-zstd-compressors", "revm-primitives", "secp256k1", "serde", "serde_with", - "zstd 0.13.2", ] [[package]] name = "reth-primitives-traits" -version = "1.1.2" -source = "git+https://github.com/paradigmxyz/reth#465692b5aff5718f10725077a9caf0a7b7c55297" +version = "1.1.4" +source = "git+https://github.com/paradigmxyz/reth#008cb25d004239886979e2773414ee51cbd90d1f" dependencies = [ - "alloy-consensus 0.7.3", - "alloy-eips 0.7.3", - "alloy-genesis 0.7.3", - "alloy-primitives 0.8.14", + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives 0.8.15", "alloy-rlp", "auto_impl", "byteorder", "bytes", "derive_more 1.0.0", + "k256 0.13.4", "modular-bitfield", "op-alloy-consensus", "reth-codecs", "revm-primitives", + "secp256k1", "serde", "serde_with", ] [[package]] name = "reth-static-file-types" -version = "1.1.2" -source = "git+https://github.com/paradigmxyz/reth#465692b5aff5718f10725077a9caf0a7b7c55297" +version = "1.1.4" +source = "git+https://github.com/paradigmxyz/reth#008cb25d004239886979e2773414ee51cbd90d1f" dependencies = [ - "alloy-primitives 0.8.14", + "alloy-primitives 0.8.15", "derive_more 1.0.0", "serde", "strum", ] +[[package]] +name = "reth-zstd-compressors" +version = "1.1.4" +source = "git+https://github.com/paradigmxyz/reth#008cb25d004239886979e2773414ee51cbd90d1f" +dependencies = [ + "zstd 0.13.2", +] + [[package]] name = "revm-primitives" version = "14.0.0" @@ -6809,7 +6443,7 @@ checksum = "3702f132bb484f4f0d0ca4f6fbde3c82cfd745041abbedd6eda67730e1868ef0" dependencies = [ "alloy-eip2930", "alloy-eip7702", - "alloy-primitives 0.8.14", + "alloy-primitives 0.8.15", "auto_impl", "bitflags 2.6.0", "bitvec 1.0.1", @@ -6926,10 +6560,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c3cc4c2511671f327125da14133d0c5c5d137f006a1017a16f557bc85b16286" dependencies = [ "alloy-rlp", + "arbitrary", "ark-ff 0.3.0", "ark-ff 0.4.2", "bytes", - "ethereum_ssz", "fastrlp", "num-bigint", "num-traits", @@ -6959,11 +6593,25 @@ dependencies = [ "bitflags 1.3.2", "fallible-iterator", "fallible-streaming-iterator", - "hashlink", + "hashlink 0.8.4", "libsqlite3-sys", "smallvec", ] +[[package]] +name = "rust_eth_kzg" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3291fd0d9c629a56537d74bbc1e7bcaf5be610f2f7b55af85c4fea843c6aeca3" +dependencies = [ + "crate_crypto_internal_eth_kzg_bls12_381", + "crate_crypto_internal_eth_kzg_erasure_codes", + "crate_crypto_kzg_multi_open_fk20", + "hex", + "serde", + "serde_json", +] + [[package]] name = "rustc-demangle" version = "0.1.24" @@ -7019,7 +6667,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -7126,17 +6774,6 @@ dependencies = [ "wait-timeout", ] -[[package]] -name = "rw-stream-sink" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8c9026ff5d2f23da5e45bbc283f156383001bfb09c4e44256d02c1a685fe9a1" -dependencies = [ - "futures", - "pin-project", - "static_assertions", -] - [[package]] name = "ryu" version = "1.0.18" @@ -7146,7 +6783,7 @@ checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" [[package]] name = "safe_arith" version = "0.1.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" [[package]] name = "salsa20" @@ -7262,6 +6899,7 @@ dependencies = [ "der 0.7.9", "generic-array", "pkcs8 0.10.2", + "serdect", "subtle", "zeroize", ] @@ -7274,6 +6912,7 @@ checksum = "9465315bc9d4566e1724f0fffcbcc446268cb522e60f9a27bcded6b19c108113" dependencies = [ "rand 0.8.5", "secp256k1-sys", + "serde", ] [[package]] @@ -7354,7 +6993,7 @@ checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" [[package]] name = "sensitive_url" version = "0.1.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "serde", "url", @@ -7500,6 +7139,16 @@ dependencies = [ "unsafe-libyaml", ] +[[package]] +name = "serdect" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a84f14a19e9a014bb9f4512488d9829a68e04ecabffb0f9904cd1ace94598177" +dependencies = [ + "base16ct 0.2.0", + "serde", +] + [[package]] name = "sha1" version = "0.10.6" @@ -7746,19 +7395,10 @@ version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" dependencies = [ + "arbitrary", "serde", ] -[[package]] -name = "socket2" -version = "0.4.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" -dependencies = [ - "libc", - "winapi", -] - [[package]] name = "socket2" version = "0.5.8" @@ -7818,7 +7458,7 @@ name = "ssz_rs" version = "0.9.0" source = "git+https://github.com/ralexstokes/ssz-rs?rev=ec3073e#ec3073e2273b4d0873fcb6df68ff4eff79588e92" dependencies = [ - "alloy-primitives 0.8.14", + "alloy-primitives 0.8.15", "bitvec 1.0.1", "serde", "sha2 0.9.9", @@ -7847,36 +7487,19 @@ dependencies = [ [[package]] name = "ssz_types" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "382939886cb24ee8ac885d09116a60f6262d827c7a9e36012b4f6d3d0116d0b3" -dependencies = [ - "derivative", - "ethereum_serde_utils", - "ethereum_ssz", - "itertools 0.10.5", - "serde", - "serde_derive", - "smallvec", - "tree_hash 0.5.2", - "typenum", -] - -[[package]] -name = "ssz_types" -version = "0.6.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "625b20de2d4b3891e6972f4ce5061cb11bd52b3479270c4b177c134b571194a9" +checksum = "35e0719d2b86ac738a55ae71a8429f52aa2741da988f1fd0975b4cc610fd1e08" dependencies = [ "arbitrary", "derivative", - "ethereum_serde_utils", - "ethereum_ssz", - "itertools 0.10.5", + "ethereum_serde_utils 0.7.0", + "ethereum_ssz 0.7.1", + "itertools 0.13.0", "serde", "serde_derive", "smallvec", - "tree_hash 0.6.0", + "tree_hash 0.8.0", "typenum", ] @@ -7934,9 +7557,9 @@ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "superstruct" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f4e1f478a7728f8855d7e620e9a152cf8932c6614f86564c886f9b8141f3201" +checksum = "bf0f31f730ad9e579364950e10d6172b4a9bd04b447edf5988b066a860cc340e" dependencies = [ "darling 0.13.4", "itertools 0.10.5", @@ -7949,10 +7572,11 @@ dependencies = [ [[package]] name = "swap_or_not_shuffle" version = "0.2.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ - "ethereum-types 0.14.1", - "ethereum_hashing 0.6.0", + "alloy-primitives 0.8.15", + "ethereum_hashing 0.7.0", + "fixed_bytes", ] [[package]] @@ -7979,21 +7603,9 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.7.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c837dc8852cb7074e46b444afb81783140dab12c58867b49fb3898fbafedf7ea" -dependencies = [ - "paste", - "proc-macro2", - "quote", - "syn 2.0.90", -] - -[[package]] -name = "syn-solidity" -version = "0.8.14" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da0523f59468a2696391f2a772edc089342aacd53c3caa2ac3264e598edf119b" +checksum = "219389c1ebe89f8333df8bdfb871f6631c552ff399c23cac02480b6088aad8f0" dependencies = [ "paste", "proc-macro2", @@ -8103,7 +7715,7 @@ dependencies = [ "fastrand 2.3.0", "once_cell", "rustix", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -8130,7 +7742,7 @@ dependencies = [ [[package]] name = "test_random_derive" version = "0.2.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ "quote", "syn 1.0.109", @@ -8299,10 +7911,10 @@ dependencies = [ "bytes", "libc", "mio", - "parking_lot 0.12.3", + "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2 0.5.8", + "socket2", "tokio-macros", "windows-sys 0.52.0", ] @@ -8444,21 +8056,6 @@ dependencies = [ "winnow", ] -[[package]] -name = "tower" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" -dependencies = [ - "futures-core", - "futures-util", - "pin-project", - "pin-project-lite", - "tower-layer", - "tower-service", - "tracing", -] - [[package]] name = "tower" version = "0.5.1" @@ -8620,17 +8217,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "tree_hash" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c998ac5fe2b07c025444bdd522e6258110b63861c6698eedc610c071980238d" -dependencies = [ - "ethereum-types 0.14.1", - "ethereum_hashing 1.0.0-beta.2", - "smallvec", -] - [[package]] name = "tree_hash" version = "0.6.0" @@ -8648,33 +8234,11 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "373495c23db675a5192de8b610395e1bec324d596f9e6111192ce903dc11403a" dependencies = [ - "alloy-primitives 0.8.14", + "alloy-primitives 0.8.15", "ethereum_hashing 0.7.0", "smallvec", ] -[[package]] -name = "tree_hash_derive" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84303a9c7cda5f085a3ed9cd241d1e95e04d88aab1d679b02f212e653537ba86" -dependencies = [ - "darling 0.13.4", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "tree_hash_derive" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce7bccc538359a213436af7bc95804bdbf1c2a21d80e22953cbe9e096837ff1" -dependencies = [ - "darling 0.13.4", - "quote", - "syn 1.0.109", -] - [[package]] name = "tree_hash_derive" version = "0.8.0" @@ -8732,31 +8296,31 @@ checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "types" version = "0.2.1" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ + "alloy-primitives 0.8.15", + "alloy-rlp", "arbitrary", - "bls 0.2.0 (git+https://github.com/sigp/lighthouse?rev=a87f19d)", - "cached_tree_hash", + "bls 0.2.0 (git+https://github.com/sigp/lighthouse)", "compare_fields", "compare_fields_derive", "derivative", "eth2_interop_keypairs", - "ethereum-types 0.14.1", - "ethereum_hashing 0.6.0", - "ethereum_serde_utils", - "ethereum_ssz", - "ethereum_ssz_derive", + "ethereum_hashing 0.7.0", + "ethereum_serde_utils 0.7.0", + "ethereum_ssz 0.7.1", + "ethereum_ssz_derive 0.7.1", + "fixed_bytes", "hex", "int_to_bytes", "itertools 0.10.5", "kzg", - "lazy_static", "log", "maplit", "merkle_proof", "metastruct", "milhouse", - "parking_lot 0.12.3", + "parking_lot", "rand 0.8.5", "rand_xorshift", "rayon", @@ -8769,13 +8333,13 @@ dependencies = [ "serde_yaml 0.9.33", "slog", "smallvec", - "ssz_types 0.6.0", + "ssz_types", "superstruct", "swap_or_not_shuffle", "tempfile", "test_random_derive", - "tree_hash 0.6.0", - "tree_hash_derive 0.6.0", + "tree_hash 0.8.0", + "tree_hash_derive", ] [[package]] @@ -8790,7 +8354,18 @@ version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "76f64bba2c53b04fcab63c01a7d7427eadc821e3bc48c34dc9ba29c501164b52" dependencies = [ - "arbitrary", + "byteorder", + "crunchy", + "hex", + "static_assertions", +] + +[[package]] +name = "uint" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "909988d098b2f738727b161a106cfc7cab00c539c2687a8836f8e565976fb53e" +dependencies = [ "byteorder", "crunchy", "hex", @@ -8832,11 +8407,11 @@ checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" [[package]] name = "universal-hash" -version = "0.4.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8326b2c654932e3e4f9196e69d08fdf7cfd718e1dc6f66b347e6024a0c961402" +checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" dependencies = [ - "generic-array", + "crypto-common", "subtle", ] @@ -8930,18 +8505,18 @@ dependencies = [ [[package]] name = "validator_dir" version = "0.1.0" -source = "git+https://github.com/sigp/lighthouse?rev=a87f19d#a87f19d801a57b1d6ff101750840294c210ff956" +source = "git+https://github.com/sigp/lighthouse#c042dc14d74352512b7632e0ee6ec07f1aa26b3a" dependencies = [ - "bls 0.2.0 (git+https://github.com/sigp/lighthouse?rev=a87f19d)", + "bls 0.2.0 (git+https://github.com/sigp/lighthouse)", "deposit_contract", "derivative", "directory", - "eth2_keystore 0.1.0 (git+https://github.com/sigp/lighthouse?rev=a87f19d)", + "eth2_keystore 0.1.0 (git+https://github.com/sigp/lighthouse)", "filesystem", "hex", "lockfile", "rand 0.8.5", - "tree_hash 0.6.0", + "tree_hash 0.8.0", "types", ] @@ -8969,12 +8544,6 @@ version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" -[[package]] -name = "void" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" - [[package]] name = "wait-timeout" version = "0.2.0" @@ -9109,7 +8678,7 @@ checksum = "0048ad49a55b9deb3953841fa1fc5858f0efbcb7a18868c899a360269fac1b23" dependencies = [ "futures", "js-sys", - "parking_lot 0.12.3", + "parking_lot", "pin-utils", "slab", "wasm-bindgen", @@ -9125,16 +8694,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "web-time" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - [[package]] name = "webpki-roots" version = "0.25.4" @@ -9196,7 +8755,7 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.48.0", ] [[package]] diff --git a/bolt-sidecar/Cargo.toml b/bolt-sidecar/Cargo.toml index d74cf872..d0df6e63 100644 --- a/bolt-sidecar/Cargo.toml +++ b/bolt-sidecar/Cargo.toml @@ -26,29 +26,30 @@ tree_hash = "0.8" tree_hash_derive = "0.8" secp256k1 = { version = "0.29.0", features = ["rand"] } ssz_rs = { git = "https://github.com/ralexstokes/ssz-rs", rev = "ec3073e" } -ethereum_ssz = "0.5" +ethereum_ssz = "0.8.1" # alloy -alloy = { version = "0.7.3", features = [ +alloy = { version = "0.8.0", features = [ "full", "provider-trace-api", "rpc-types-beacon", ] } -alloy-rpc-types-engine = { version = "0.7.2", default-features = false, features = ["jwt"] } -alloy-transport-http = { version = "0.7.2", default-features = false, features = ["jwt-auth"] } -alloy-provider = { version = "0.7.2", default-features = false, features = ["engine-api"] } +alloy-rpc-types-engine = { version = "0.8.0", default-features = false, features = ["jwt"] } +alloy-transport-http = { version = "0.8.0", default-features = false, features = ["jwt-auth"] } +alloy-provider = { version = "0.8.0", default-features = false, features = ["engine-api"] } # reth -reth-primitives = { git = "https://github.com/paradigmxyz/reth", version = "1.1.2" } +reth-primitives = { git = "https://github.com/paradigmxyz/reth", version = "1.1.4" } reqwest = "0.12" -ethereum-consensus = { git = "https://github.com/ralexstokes/ethereum-consensus", rev = "cf3c404" } -beacon-api-client = { git = "https://github.com/ralexstokes/ethereum-consensus", rev = "cf3c404" } + +ethereum-consensus = { git = "https://github.com/ralexstokes/ethereum-consensus", rev = "8fbd8a5" } # Last release in 2022 +beacon-api-client = { git = "https://github.com/ralexstokes/ethereum-consensus", rev = "8fbd8a5" } # Last release in 2022 # lighthouse -lighthouse_account_utils = { package = "account_utils", git = "https://github.com/sigp/lighthouse", rev = "a87f19d" } -lighthouse_eth2_keystore = { package = "eth2_keystore", git = "https://github.com/sigp/lighthouse", rev = "a87f19d" } -lighthouse_bls = { package = "bls", git = "https://github.com/sigp/lighthouse", rev = "a87f19d" } +lighthouse_account_utils = { package = "account_utils", git = "https://github.com/sigp/lighthouse", version = "0.1.0" } +lighthouse_eth2_keystore = { package = "eth2_keystore", git = "https://github.com/sigp/lighthouse", version = "0.1.0" } +lighthouse_bls = { package = "bls", git = "https://github.com/sigp/lighthouse", version = "0.2.0" } # types serde = { version = "1.0.197", features = ["derive"] } @@ -76,11 +77,11 @@ metrics-exporter-prometheus = { version = "0.15.3", features = [ ] } # commit-boost -commit-boost = { git = "https://github.com/Commit-Boost/commit-boost-client", rev = "45ce8f1" } -cb-common = { git = "https://github.com/Commit-Boost/commit-boost-client", rev = "45ce8f1" } +commit-boost = { git = "https://github.com/Commit-Boost/commit-boost-client", rev = "0f8f69b" } +cb-common = { git = "https://github.com/Commit-Boost/commit-boost-client", rev = "0f8f69b" } [dev-dependencies] -alloy-node-bindings = "0.7.2" # must match alloy version +alloy-node-bindings = "0.8.0" # must match alloy version criterion = { version = "0.5", features = ["html_reports"] } [package.metadata.cargo-machete] diff --git a/bolt-sidecar/rust-toolchain.toml b/bolt-sidecar/rust-toolchain.toml index 5f3ff177..6cc20eae 100644 --- a/bolt-sidecar/rust-toolchain.toml +++ b/bolt-sidecar/rust-toolchain.toml @@ -1,3 +1,3 @@ [toolchain] -channel = "1.82.0" +channel = "1.83.0" profile = "default" diff --git a/bolt-sidecar/src/api/commitments/headers.rs b/bolt-sidecar/src/api/commitments/headers.rs index 20786e09..72e34d62 100644 --- a/bolt-sidecar/src/api/commitments/headers.rs +++ b/bolt-sidecar/src/api/commitments/headers.rs @@ -1,6 +1,6 @@ use std::str::FromStr; -use alloy::primitives::{Address, Signature}; +use alloy::primitives::{Address, PrimitiveSignature as Signature}; use axum::http::HeaderMap; use crate::primitives::commitment::SignatureError; diff --git a/bolt-sidecar/src/config/chain.rs b/bolt-sidecar/src/config/chain.rs index cd935c93..99023d5a 100644 --- a/bolt-sidecar/src/config/chain.rs +++ b/bolt-sidecar/src/config/chain.rs @@ -183,18 +183,22 @@ impl ChainConfig { #[cfg(test)] impl ChainConfig { + /// Create a new chain configuration for Mainnet. pub fn mainnet() -> Self { Self { chain: Chain::Mainnet, ..Default::default() } } + /// Create a new chain configuration for Holesky. pub fn holesky() -> Self { Self { chain: Chain::Holesky, ..Default::default() } } + /// Create a new chain configuration for Helder. pub fn helder() -> Self { Self { chain: Chain::Helder, ..Default::default() } } + /// Create a new chain configuration for Kurtosis. pub fn kurtosis(slot_time_in_seconds: u64, commitment_deadline: u64) -> Self { Self { chain: Chain::Kurtosis, diff --git a/bolt-sidecar/src/driver.rs b/bolt-sidecar/src/driver.rs index ffeea090..c2122e40 100644 --- a/bolt-sidecar/src/driver.rs +++ b/bolt-sidecar/src/driver.rs @@ -1,9 +1,8 @@ use std::{fmt, sync::Arc, time::Instant}; +use alloy::consensus::Typed2718; use alloy::{ - consensus::{Transaction, TxType}, - rpc::types::beacon::events::HeadEvent, - signers::local::PrivateKeySigner, + consensus::TxType, rpc::types::beacon::events::HeadEvent, signers::local::PrivateKeySigner, }; use ethereum_consensus::{ clock::{self, SlotStream, SystemTimeProvider}, diff --git a/bolt-sidecar/src/primitives/commitment.rs b/bolt-sidecar/src/primitives/commitment.rs index 394cd631..21cdd22e 100644 --- a/bolt-sidecar/src/primitives/commitment.rs +++ b/bolt-sidecar/src/primitives/commitment.rs @@ -3,7 +3,7 @@ use std::str::FromStr; use alloy::{ consensus::Transaction, hex, - primitives::{keccak256, Address, Signature, B256}, + primitives::{keccak256, Address, PrimitiveSignature as Signature, B256}, }; use serde::{de, Deserialize, Deserializer, Serialize}; @@ -224,7 +224,7 @@ fn serialize_sig(sig: &Signature, serializer: S) -> Result let parity = sig.v(); // As bytes encodes the parity as 27/28, need to change that. let mut bytes = sig.as_bytes(); - bytes[bytes.len() - 1] = if parity.y_parity() { 1 } else { 0 }; + bytes[bytes.len() - 1] = if parity { 1 } else { 0 }; serializer.serialize_str(&hex::encode_prefixed(bytes)) } @@ -265,7 +265,7 @@ impl ECDSASignatureExt for Signature { let parity = self.v(); // As bytes encodes the parity as 27/28, need to change that. let mut bytes = self.as_bytes(); - bytes[bytes.len() - 1] = if parity.y_parity() { 1 } else { 0 }; + bytes[bytes.len() - 1] = if parity { 1 } else { 0 }; bytes } @@ -281,7 +281,7 @@ mod tests { use alloy::{ hex, - primitives::{Address, Signature}, + primitives::{Address, PrimitiveSignature as Signature}, }; use super::{CommitmentRequest, InclusionRequest}; diff --git a/bolt-sidecar/src/signer/commit_boost.rs b/bolt-sidecar/src/signer/commit_boost.rs index 9200390c..cbc8b57f 100644 --- a/bolt-sidecar/src/signer/commit_boost.rs +++ b/bolt-sidecar/src/signer/commit_boost.rs @@ -1,15 +1,22 @@ use std::{str::FromStr, sync::Arc}; -use alloy::{primitives::Address, rpc::types::beacon::BlsSignature, signers::Signature}; +use alloy::{ + primitives::{Address, FixedBytes}, + rpc::types::beacon::BlsSignature, + signers::Signature, +}; use cb_common::{ - commit::{client::SignerClient, error::SignerClientError, request::SignConsensusRequest}, + commit::{ + client::SignerClient, + error::SignerClientError, + request::{GetPubkeysResponse, SignConsensusRequest}, + }, signer::EcdsaPublicKey, }; use commit_boost::prelude::SignProxyRequest; use ethereum_consensus::crypto::bls::PublicKey as BlsPublicKey; use parking_lot::RwLock; use reqwest::Url; -use ssz::Decode; use thiserror::Error; use tracing::{debug, error, info}; @@ -45,9 +52,8 @@ pub enum CommitBoostError { impl CommitBoostSigner { /// Create a new [CommitBoostSigner] instance pub fn new(signer_url: Url, jwt: &JwtSecretConfig) -> SignerResult { - let socket_addr = parse_address_from_url(signer_url).map_err(CommitBoostError::Other)?; let signer_client = - SignerClient::new(socket_addr, &jwt.to_hex()).map_err(CommitBoostError::Other)?; + SignerClient::new(signer_url, &jwt.to_hex()).map_err(CommitBoostError::Other)?; let client = Self { signer_client, @@ -58,21 +64,35 @@ impl CommitBoostSigner { let mut this = client.clone(); tokio::spawn(async move { match this.signer_client.get_pubkeys().await { - Ok(pubkeys) => { + Ok(GetPubkeysResponse { keys }) => { + // Calculate totals for each key type across all mappings + let consensus_count = keys.len(); + let proxy_bls_count = keys.iter().map(|map| map.proxy_bls.len()).sum::(); + let proxy_ecdsa_count = + keys.iter().map(|map| map.proxy_ecdsa.len()).sum::(); + info!( - consensus = pubkeys.consensus.len(), - bls_proxy = pubkeys.proxy_bls.len(), - ecdsa_proxy = pubkeys.proxy_ecdsa.len(), + consensus = consensus_count, + bls_proxy = proxy_bls_count, + ecdsa_proxy = proxy_ecdsa_count, "Received pubkeys" ); + let mut pubkeys_lock = this.pubkeys.write(); let mut proxy_ecdsa_lock = this.proxy_ecdsa.write(); - *pubkeys_lock = pubkeys - .consensus - .into_iter() - .map(|k| BlsPublicKey::try_from(k.as_ref()).unwrap()) + + // Store consensus keys + *pubkeys_lock = keys + .iter() + .map(|map| { + BlsPublicKey::try_from(map.consensus.as_ref()) + .expect("valid consensus public key") + }) .collect(); - *proxy_ecdsa_lock = pubkeys.proxy_ecdsa; + + // Collect all ECDSA proxy keys + *proxy_ecdsa_lock = + keys.iter().flat_map(|map| map.proxy_ecdsa.clone()).collect(); } Err(e) => { error!(?e, "Failed to fetch pubkeys"); @@ -126,8 +146,9 @@ impl CommitBoostSigner { pub async fn sign_commit_boost_root(&self, data: [u8; 32]) -> SignerResult { // convert the pubkey from ethereum_consensus to commit-boost format // TODO: compat: this is the only way to obtain a BlsPubkey for now unfortunately - let pubkey = cb_common::signer::BlsPublicKey::from_ssz_bytes(self.pubkey().as_ref()) - .expect("pubkey bytes conversion"); + let pubkey = cb_common::signer::BlsPublicKey::from(FixedBytes::<48>::from_slice( + self.pubkey().as_ref(), + )); let request = SignConsensusRequest { pubkey, object_root: data }; @@ -166,19 +187,6 @@ impl SignerECDSA for CommitBoostSigner { } } -fn parse_address_from_url(url: Url) -> eyre::Result { - let str = url.as_str(); - - // take the host out of the URL, e.g. "http://localhost:425" -> localhost:425 - // and also "remotehost:2425" -> remotehost:2425 - let without_base = url.as_str().split("://").last().unwrap_or(str); - let hostname = without_base.split(':').next().unwrap_or(without_base); - let port = without_base.split(':').last().ok_or_else(|| eyre::eyre!("No port found"))?; - let port = port.trim_end_matches('/'); - - Ok(format!("{}:{}", hostname, port)) -} - #[cfg(test)] mod test { use super::*; @@ -192,22 +200,14 @@ mod test { rand::thread_rng().fill(&mut rnd); let consensus_pubkey = BlsPublicKey::try_from(rnd[..48].as_ref()).unwrap(); - let cb_pubkey = cb_common::signer::BlsPublicKey::from_ssz_bytes(consensus_pubkey.as_ref()) - .expect("pubkey bytes conversion"); + let cb_pubkey = cb_common::signer::BlsPublicKey::from(FixedBytes::<48>::from_slice( + consensus_pubkey.as_ref(), + )); // make sure the bytes haven't changed assert_eq!(consensus_pubkey.to_vec(), cb_pubkey.to_vec()); } - #[test] - fn test_url_parse_address() { - let url = Url::parse("http://localhost:8080").unwrap(); - assert_eq!(parse_address_from_url(url).unwrap(), "localhost:8080"); - - let url = Url::parse("remotehost:2425").unwrap(); - assert_eq!(parse_address_from_url(url).unwrap(), "remotehost:2425"); - } - #[tokio::test] async fn test_bls_commit_boost_signer() -> eyre::Result<()> { let _ = dotenvy::dotenv(); diff --git a/bolt-sidecar/src/signer/keystore.rs b/bolt-sidecar/src/signer/keystore.rs index 5a6240dd..2833827a 100644 --- a/bolt-sidecar/src/signer/keystore.rs +++ b/bolt-sidecar/src/signer/keystore.rs @@ -10,7 +10,6 @@ use std::{ use ethereum_consensus::crypto::PublicKey as BlsPublicKey; use lighthouse_bls::Keypair; use lighthouse_eth2_keystore::Keystore; -use ssz::Encode; use crate::{builder::signature::compute_signing_root, config::ChainConfig, crypto::bls::BLSSig}; @@ -127,13 +126,12 @@ impl KeystoreSigner { let sk = self .keypairs .iter() - // `as_ssz_bytes` returns the raw bytes we need - .find(|kp| kp.pk.as_ssz_bytes() == public_key.as_ref()) + .find(|kp| kp.pk.serialize() == public_key.as_ref()) .ok_or(KeystoreError::UnknownPublicKey(public_key.to_string()))?; let signing_root = compute_signing_root(root, domain); - let sig = sk.sk.sign(signing_root.into()).as_ssz_bytes(); + let sig = sk.sk.sign(signing_root.into()).serialize(); let sig = BLSSig::try_from(sig.as_slice()) .map_err(|e| KeystoreError::SignatureLength(hex::encode(sig), format!("{e:?}")))?; diff --git a/bolt-sidecar/src/state/fetcher.rs b/bolt-sidecar/src/state/fetcher.rs index f1cf6107..0b51b9ac 100644 --- a/bolt-sidecar/src/state/fetcher.rs +++ b/bolt-sidecar/src/state/fetcher.rs @@ -227,6 +227,7 @@ impl StateFetcher for StateClient { #[cfg(test)] impl StateClient { + /// Return a reference to the inner `ExecutionClient`. pub fn inner(&self) -> &ExecutionClient { &self.client } diff --git a/bolt-sidecar/src/telemetry/metrics.rs b/bolt-sidecar/src/telemetry/metrics.rs index d97a7959..c8372db6 100644 --- a/bolt-sidecar/src/telemetry/metrics.rs +++ b/bolt-sidecar/src/telemetry/metrics.rs @@ -63,7 +63,7 @@ impl ApiMetrics { ); } - /// Counters ---------------------------------------------------------------- + // Counters ---------------------------------------------------------------- pub fn increment_total_http_requests(method: String, path: String, status: String) { counter!( @@ -117,7 +117,6 @@ impl ApiMetrics { } /// Gauges ---------------------------------------------------------------- - pub fn set_latest_head(slot: u32) { gauge!(LATEST_HEAD).set(slot); } @@ -127,7 +126,6 @@ impl ApiMetrics { } /// Mixed ---------------------------------------------------------------- - /// Observes the duration of an HTTP request by storing it in a histogram, /// and incrementing the total number of HTTP requests received. pub fn observe_http_request(duration: Duration, method: String, path: String, status: String) { diff --git a/bolt-sidecar/src/test_util.rs b/bolt-sidecar/src/test_util.rs index ec857ded..8a0b2a37 100644 --- a/bolt-sidecar/src/test_util.rs +++ b/bolt-sidecar/src/test_util.rs @@ -3,7 +3,7 @@ use std::env; use alloy::{ eips::eip2718::Encodable2718, network::{EthereumWallet, TransactionBuilder}, - primitives::{Address, Signature, U256}, + primitives::{Address, PrimitiveSignature as Signature, U256}, rpc::types::TransactionRequest, signers::{ k256::{ecdsa::SigningKey as K256SigningKey, SecretKey as K256SecretKey},