diff --git a/Cargo.lock b/Cargo.lock index 9969f843..4008648b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -123,7 +123,7 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6967ca1ed656766e471bc323da42fb0db320ca5e1418b408650e98e4757b3d2" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "num_enum", "serde", @@ -137,7 +137,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ad451f9a70c341d951bca4e811d74dbe1e193897acd17e9dbac1353698cc430b" dependencies = [ "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-serde", "alloy-trie", @@ -163,7 +163,7 @@ checksum = "142daffb15d5be1a2b20d2cd540edbcef03037b55d4ff69dc06beb4d06286dba" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-serde", "arbitrary", @@ -178,13 +178,13 @@ checksum = "ebf25443920ecb9728cb087fe4dc04a0b290bd6ac85638c58fe94aba70f1a44e" dependencies = [ "alloy-consensus", "alloy-dyn-abi", - "alloy-json-abi 1.2.0", + "alloy-json-abi 1.2.1", "alloy-network", "alloy-network-primitives", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-provider", "alloy-rpc-types-eth", - "alloy-sol-types 1.2.0", + "alloy-sol-types 1.2.1", "alloy-transport", "futures", "futures-util", @@ -198,10 +198,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "24b2817489e4391d8c0bdf043c842164855e3d697de7a8e9edf24aa30b153ac5" dependencies = [ "alloy-dyn-abi", - "alloy-json-abi 1.2.0", - "alloy-primitives 1.2.0", + "alloy-json-abi 1.2.1", + "alloy-primitives 1.2.1", "alloy-rlp", - "alloy-sol-types 1.2.0", + "alloy-sol-types 1.2.1", ] [[package]] @@ -210,10 +210,10 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f9135eb501feccf7f4cb8a183afd406a65483fdad7bbd7332d0470e5d725c92f" dependencies = [ - "alloy-json-abi 1.2.0", - "alloy-primitives 1.2.0", - "alloy-sol-type-parser 1.2.0", - "alloy-sol-types 1.2.0", + "alloy-json-abi 1.2.1", + "alloy-primitives 1.2.1", + "alloy-sol-type-parser 1.2.1", + "alloy-sol-types 1.2.1", "derive_more", "itoa", "serde", @@ -227,7 +227,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "741bdd7499908b3aa0b159bba11e71c8cddd009a2c2eb7a06e825f1ec87900a5" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "arbitrary", "crc", @@ -242,7 +242,7 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7b82752a889170df67bbb36d42ca63c531eb16274f0d7299ae2a680facba17bd" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "arbitrary", "rand 0.8.5", @@ -255,7 +255,7 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d4769c6ffddca380b0070d71c8b7f30bed375543fe76bb2f74ec0acf4b7cd16" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "arbitrary", "k256", @@ -274,7 +274,7 @@ dependencies = [ "alloy-eip2124", "alloy-eip2930", "alloy-eip7702", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-serde", "arbitrary", @@ -297,8 +297,8 @@ dependencies = [ "alloy-consensus", "alloy-eips", "alloy-hardforks", - "alloy-primitives 1.2.0", - "alloy-sol-types 1.2.0", + "alloy-primitives 1.2.1", + "alloy-sol-types 1.2.1", "auto_impl", "derive_more", "op-alloy-consensus", @@ -314,7 +314,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c98fb40f07997529235cc474de814cd7bd9de561e101716289095696c0e4639d" dependencies = [ "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-serde", "alloy-trie", "serde", @@ -328,7 +328,7 @@ checksum = "977d2492ce210e34baf7b36afaacea272c96fbe6774c47e23f97d14033c0e94f" dependencies = [ "alloy-chains", "alloy-eip2124", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "auto_impl", "dyn-clone", "serde", @@ -348,12 +348,12 @@ dependencies = [ [[package]] name = "alloy-json-abi" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b26fdd571915bafe857fccba4ee1a4f352965800e46a53e4a5f50187b7776fa" +checksum = "15516116086325c157c18261d768a20677f0f699348000ed391d4ad0dcb82530" dependencies = [ - "alloy-primitives 1.2.0", - "alloy-sol-type-parser 1.2.0", + "alloy-primitives 1.2.1", + "alloy-sol-type-parser 1.2.1", "serde", "serde_json", ] @@ -364,8 +364,8 @@ version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc08b31ebf9273839bd9a01f9333cbb7a3abb4e820c312ade349dd18bdc79581" dependencies = [ - "alloy-primitives 1.2.0", - "alloy-sol-types 1.2.0", + "alloy-primitives 1.2.1", + "alloy-sol-types 1.2.1", "serde", "serde_json", "thiserror 2.0.12", @@ -383,12 +383,12 @@ dependencies = [ "alloy-eips", "alloy-json-rpc", "alloy-network-primitives", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-any", "alloy-rpc-types-eth", "alloy-serde", "alloy-signer", - "alloy-sol-types 1.2.0", + "alloy-sol-types 1.2.1", "async-trait", "auto_impl", "derive_more", @@ -406,7 +406,7 @@ checksum = "c7162ff7be8649c0c391f4e248d1273e85c62076703a1f3ec7daf76b283d886d" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-serde", "serde", ] @@ -421,7 +421,7 @@ dependencies = [ "alloy-eips", "alloy-evm", "alloy-op-hardforks", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "auto_impl", "op-alloy-consensus", "op-revm", @@ -467,9 +467,9 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a326d47106039f38b811057215a92139f46eef7983a4b77b10930a0ea5685b1e" +checksum = "6177ed26655d4e84e00b65cb494d4e0b8830e7cae7ef5d63087d445a2600fb55" dependencies = [ "alloy-rlp", "arbitrary", @@ -508,14 +508,14 @@ dependencies = [ "alloy-json-rpc", "alloy-network", "alloy-network-primitives", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-pubsub", "alloy-rpc-client", "alloy-rpc-types-engine", "alloy-rpc-types-eth", "alloy-rpc-types-txpool", "alloy-signer", - "alloy-sol-types 1.2.0", + "alloy-sol-types 1.2.1", "alloy-transport", "alloy-transport-http", "alloy-transport-ipc", @@ -547,7 +547,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8550f7306e0230fc835eb2ff4af0a96362db4b6fc3f25767d161e0ad0ac765bf" dependencies = [ "alloy-json-rpc", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-transport", "bimap", "futures", @@ -590,7 +590,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "518a699422a3eab800f3dac2130d8f2edba8e4fff267b27a9c7dc6a2b0d313ee" dependencies = [ "alloy-json-rpc", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-pubsub", "alloy-transport", "alloy-transport-http", @@ -617,7 +617,7 @@ version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c000cab4ec26a4b3e29d144e999e1c539c2fa0abed871bf90311eb3466187ca8" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-engine", "alloy-rpc-types-eth", "alloy-serde", @@ -631,7 +631,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3ebdc864f573645c5288370c208912b85b5cacc8025b700c50c2b74d06ab9830" dependencies = [ "alloy-genesis", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "serde", "serde_json", ] @@ -642,7 +642,7 @@ version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8abecc34549a208b5f91bc7f02df3205c36e2aa6586f1d9375c3382da1066b3b" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-eth", "alloy-serde", "serde", @@ -666,7 +666,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "241aba7808bddc3ad1c6228e296a831f326f89118b1017012090709782a13334" dependencies = [ "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-engine", "ethereum_ssz", "ethereum_ssz_derive", @@ -683,7 +683,7 @@ version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c832f2e851801093928dbb4b7bd83cd22270faf76b2e080646b806a285c8757" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "serde", ] @@ -695,7 +695,7 @@ checksum = "cab52691970553d84879d777419fa7b6a2e92e9fe8641f9324cc071008c2f656" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-serde", "derive_more", @@ -717,10 +717,10 @@ dependencies = [ "alloy-consensus-any", "alloy-eips", "alloy-network-primitives", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-serde", - "alloy-sol-types 1.2.0", + "alloy-sol-types 1.2.1", "arbitrary", "itertools 0.14.0", "serde", @@ -736,7 +736,7 @@ checksum = "18bd1c5d7b9f3f1caeeaa1c082aa28ba7ce2d67127b12b2a9b462712c8f6e1c5" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-eth", "alloy-serde", "serde", @@ -749,7 +749,7 @@ version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e3507a04e868dd83219ad3cd6a8c58aefccb64d33f426b3934423a206343e84" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-eth", "alloy-serde", "serde", @@ -763,7 +763,7 @@ version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eec36272621c3ac82b47dd77f0508346687730b1c2e3e10d3715705c217c0a05" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-eth", "alloy-serde", "serde", @@ -775,7 +775,7 @@ version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "730e8f2edf2fc224cabd1c25d090e1655fa6137b2e409f92e5eec735903f1507" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "arbitrary", "serde", "serde_json", @@ -783,11 +783,11 @@ dependencies = [ [[package]] name = "alloy-signer" -version = "1.0.9" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b0d2428445ec13edc711909e023d7779618504c4800be055a5b940025dbafe3" +checksum = "3cf7d793c813515e2b627b19a15693960b3ed06670f9f66759396d06ebe5747b" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "async-trait", "auto_impl", "either", @@ -804,7 +804,7 @@ checksum = "e14fe6fedb7fe6e0dfae47fe020684f1d8e063274ef14bca387ddb7a6efa8ec1" dependencies = [ "alloy-consensus", "alloy-network", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-signer", "async-trait", "k256", @@ -828,12 +828,12 @@ dependencies = [ [[package]] name = "alloy-sol-macro" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4be1ce1274ddd7fdfac86e5ece1b225e9bba1f2327e20fbb30ee6b9cc1423fe" +checksum = "a14f21d053aea4c6630687c2f4ad614bed4c81e14737a9b904798b24f30ea849" dependencies = [ - "alloy-sol-macro-expander 1.2.0", - "alloy-sol-macro-input 1.2.0", + "alloy-sol-macro-expander 1.2.1", + "alloy-sol-macro-input 1.2.1", "proc-macro-error2", "proc-macro2", "quote", @@ -860,12 +860,12 @@ dependencies = [ [[package]] name = "alloy-sol-macro-expander" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01e92f3708ea4e0d9139001c86c051c538af0146944a2a9c7181753bd944bf57" +checksum = "34d99282e7c9ef14eb62727981a985a01869e586d1dec729d3bb33679094c100" dependencies = [ - "alloy-json-abi 1.2.0", - "alloy-sol-macro-input 1.2.0", + "alloy-json-abi 1.2.1", + "alloy-sol-macro-input 1.2.1", "const-hex", "heck 0.5.0", "indexmap 2.9.0", @@ -873,7 +873,7 @@ dependencies = [ "proc-macro2", "quote", "syn 2.0.101", - "syn-solidity 1.2.0", + "syn-solidity 1.2.1", "tiny-keccak", ] @@ -895,11 +895,11 @@ dependencies = [ [[package]] name = "alloy-sol-macro-input" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9afe1bd348a41f8c9b4b54dfb314886786d6201235b0b3f47198b9d910c86bb2" +checksum = "eda029f955b78e493360ee1d7bd11e1ab9f2a220a5715449babc79d6d0a01105" dependencies = [ - "alloy-json-abi 1.2.0", + "alloy-json-abi 1.2.1", "const-hex", "dunce", "heck 0.5.0", @@ -908,7 +908,7 @@ dependencies = [ "quote", "serde_json", "syn 2.0.101", - "syn-solidity 1.2.0", + "syn-solidity 1.2.1", ] [[package]] @@ -923,9 +923,9 @@ dependencies = [ [[package]] name = "alloy-sol-type-parser" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6195df2acd42df92a380a8db6205a5c7b41282d0ce3f4c665ecf7911ac292f1" +checksum = "10db1bd7baa35bc8d4a1b07efbf734e73e5ba09f2580fb8cee3483a36087ceb2" dependencies = [ "serde", "winnow", @@ -946,13 +946,13 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6185e98a79cf19010722f48a74b5a65d153631d2f038cabd250f4b9e9813b8ad" +checksum = "58377025a47d8b8426b3e4846a251f2c1991033b27f517aade368146f6ab1dfe" dependencies = [ - "alloy-json-abi 1.2.0", - "alloy-primitives 1.2.0", - "alloy-sol-macro 1.2.0", + "alloy-json-abi 1.2.1", + "alloy-primitives 1.2.1", + "alloy-sol-macro 1.2.1", "serde", ] @@ -963,7 +963,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a712bdfeff42401a7dd9518f72f617574c36226a9b5414537fedc34350b73bf9" dependencies = [ "alloy-json-rpc", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "base64 0.22.1", "derive_more", "futures", @@ -1038,7 +1038,7 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "983d99aa81f586cef9dae38443245e585840fcf0fc58b09aee0b1f27aed1d500" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "arbitrary", "arrayvec", @@ -3438,7 +3438,7 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3dc1355dbb41fbbd34ec28d4fb2a57d9a70c67ac3c19f6a5ca4d4a176b9e997a" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "hex", "serde", "serde_derive", @@ -3451,7 +3451,7 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ca8ba45b63c389c6e115b095ca16381534fdcc03cf58176a3f8554db2dbe19b" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "ethereum_serde_utils", "itertools 0.13.0", "serde", @@ -4092,6 +4092,12 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "hmac-sha256" +version = "1.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad6880c8d4a9ebf39c6e8b77007ce223f646a4d21ce29d99f70cb16420545425" + [[package]] name = "home" version = "0.5.11" @@ -6039,7 +6045,7 @@ checksum = "b2423a125ef2daa0d15dacc361805a0b6f76d6acfc6e24a1ff6473582087fe75" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-serde", "arbitrary", @@ -6063,7 +6069,7 @@ checksum = "8bac5140ed9a01112a1c63866da3c38c74eb387b95917d0f304a4bd4ee825986" dependencies = [ "alloy-consensus", "alloy-network", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-provider", "alloy-rpc-types-eth", "alloy-signer", @@ -6077,7 +6083,7 @@ version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64cb0771602eb2b25e38817d64cd0f841ff07ef9df1e9ce96a53c1742776e874" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "jsonrpsee 0.25.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -6090,7 +6096,7 @@ dependencies = [ "alloy-consensus", "alloy-eips", "alloy-network-primitives", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-eth", "alloy-serde", "derive_more", @@ -6108,7 +6114,7 @@ checksum = "47aea08d8ad3f533df0c5082d3e93428a4c57898b7ade1be928fa03918f22e71" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-rpc-types-engine", "alloy-serde", @@ -6130,13 +6136,16 @@ dependencies = [ "alloy-json-rpc", "alloy-network", "alloy-op-evm", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-provider", "alloy-rpc-client", "alloy-rpc-types-beacon", "alloy-rpc-types-engine", "alloy-rpc-types-eth", "alloy-serde", + "alloy-signer", + "alloy-signer-local", + "alloy-sol-types 1.2.1", "alloy-transport", "alloy-transport-http", "anyhow", @@ -6161,6 +6170,7 @@ dependencies = [ "metrics", "moka", "nanoid", + "num-bigint", "op-alloy-consensus", "op-alloy-flz", "op-alloy-network", @@ -6243,6 +6253,7 @@ dependencies = [ "uuid", "vergen", "vergen-git2", + "vrf", ] [[package]] @@ -7443,7 +7454,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "futures-core", "futures-util", "metrics", @@ -7467,7 +7478,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-signer", "alloy-signer-local", "derive_more", @@ -7501,7 +7512,7 @@ dependencies = [ "alloy-eips", "alloy-evm", "alloy-genesis", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-trie", "auto_impl", "derive_more", @@ -7534,7 +7545,7 @@ dependencies = [ "alloy-chains", "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "backon", "clap 4.5.39", @@ -7612,7 +7623,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "cfg-if", "eyre", "libc", @@ -7632,7 +7643,7 @@ dependencies = [ "alloy-consensus", "alloy-eips", "alloy-genesis", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-trie", "arbitrary", "bytes", @@ -7675,7 +7686,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-consensus", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "auto_impl", "reth-execution-types", "reth-primitives-traits", @@ -7702,7 +7713,7 @@ dependencies = [ "alloy-consensus", "alloy-eips", "alloy-json-rpc", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-provider", "alloy-rpc-types-engine", "auto_impl", @@ -7723,7 +7734,7 @@ name = "reth-db" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "derive_more", "eyre", "metrics", @@ -7751,7 +7762,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-genesis", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "arbitrary", "bytes", "derive_more", @@ -7779,7 +7790,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-genesis", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "boyer-moore-magiclen", "eyre", "reth-chainspec", @@ -7807,7 +7818,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "arbitrary", "bytes", "modular-bitfield", @@ -7821,7 +7832,7 @@ name = "reth-discv4" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "discv5", "enr", @@ -7847,7 +7858,7 @@ name = "reth-discv5" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "derive_more", "discv5", @@ -7871,7 +7882,7 @@ name = "reth-dns-discovery" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "data-encoding", "enr", "hickory-resolver", @@ -7897,7 +7908,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "futures", "futures-util", @@ -7931,7 +7942,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "aes", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "block-padding", "byteorder", @@ -7962,7 +7973,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-consensus", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-engine", "eyre", "futures-util", @@ -7993,7 +8004,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-consensus", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-engine", "auto_impl", "futures", @@ -8042,7 +8053,7 @@ dependencies = [ "alloy-consensus", "alloy-eips", "alloy-evm", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-rpc-types-engine", "derive_more", @@ -8120,7 +8131,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "ethereum_ssz", "ethereum_ssz_derive", @@ -8134,7 +8145,7 @@ name = "reth-era-downloader" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "bytes", "eyre", "futures-util", @@ -8149,7 +8160,7 @@ name = "reth-era-utils" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "eyre", "futures-util", "reth-db-api", @@ -8181,7 +8192,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-chains", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "bytes", "derive_more", @@ -8212,7 +8223,7 @@ dependencies = [ "alloy-consensus", "alloy-eips", "alloy-hardforks", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "bytes", "derive_more", @@ -8231,7 +8242,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-rpc-types", "backon", @@ -8290,7 +8301,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "reth-chainspec", "reth-consensus", "reth-consensus-common", @@ -8305,7 +8316,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-rpc-types-engine", "reth-engine-primitives", @@ -8324,7 +8335,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-eip2124", "alloy-hardforks", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "auto_impl", "once_cell", "rustc-hash 2.1.1", @@ -8337,7 +8348,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-engine", "reth-basic-payload-builder", "reth-chainspec", @@ -8364,7 +8375,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "arbitrary", "modular-bitfield", @@ -8393,7 +8404,7 @@ dependencies = [ "alloy-consensus", "alloy-eips", "alloy-evm", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "auto_impl", "derive_more", "futures-util", @@ -8416,7 +8427,7 @@ dependencies = [ "alloy-consensus", "alloy-eips", "alloy-evm", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "reth-chainspec", "reth-ethereum-forks", "reth-ethereum-primitives", @@ -8432,7 +8443,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-evm", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "nybbles", "reth-storage-errors", @@ -8447,7 +8458,7 @@ dependencies = [ "alloy-consensus", "alloy-eips", "alloy-evm", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "derive_more", "reth-ethereum-primitives", "reth-primitives-traits", @@ -8464,7 +8475,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "eyre", "futures", "itertools 0.14.0", @@ -8501,7 +8512,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "reth-chain-state", "reth-execution-types", "reth-primitives-traits", @@ -8525,7 +8536,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-consensus", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-rpc-types-debug", "eyre", @@ -8610,7 +8621,7 @@ name = "reth-net-banlist" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", ] [[package]] @@ -8634,7 +8645,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "aquamarine", "auto_impl", @@ -8687,7 +8698,7 @@ name = "reth-network-api" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-admin", "auto_impl", "derive_more", @@ -8712,7 +8723,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "auto_impl", "derive_more", "futures", @@ -8733,7 +8744,7 @@ name = "reth-network-peers" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "enr", "secp256k1", @@ -8805,7 +8816,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-provider", "alloy-rpc-types", "alloy-rpc-types-engine", @@ -8870,7 +8881,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-engine", "clap 4.5.39", "derive_more", @@ -8956,7 +8967,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-engine", "derive_more", "futures", @@ -9017,7 +9028,7 @@ dependencies = [ "alloy-eips", "alloy-genesis", "alloy-hardforks", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "derive_more", "miniz_oxide", "op-alloy-rpc-types", @@ -9041,7 +9052,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "clap 4.5.39", "derive_more", @@ -9088,7 +9099,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-trie", "op-alloy-consensus", "reth-chainspec", @@ -9115,7 +9126,7 @@ dependencies = [ "alloy-eips", "alloy-evm", "alloy-op-evm", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "op-alloy-consensus", "op-revm", "reth-chainspec", @@ -9137,7 +9148,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-op-hardforks", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "once_cell", "reth-ethereum-forks", ] @@ -9148,7 +9159,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-consensus", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-engine", "alloy-rpc-types-eth", "clap 4.5.39", @@ -9195,7 +9206,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-rpc-types-debug", "alloy-rpc-types-engine", @@ -9234,7 +9245,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "arbitrary", "bytes", @@ -9255,7 +9266,7 @@ dependencies = [ "alloy-consensus", "alloy-eips", "alloy-json-rpc", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-client", "alloy-rpc-types-debug", "alloy-rpc-types-engine", @@ -9313,7 +9324,7 @@ dependencies = [ "alloy-consensus", "alloy-eips", "alloy-json-rpc", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-client", "alloy-rpc-types-eth", "alloy-serde", @@ -9347,7 +9358,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-consensus", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types", "futures-util", "metrics", @@ -9380,7 +9391,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-engine", "auto_impl", "op-alloy-rpc-types-engine", @@ -9399,7 +9410,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-consensus", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "reth-transaction-pool", ] @@ -9435,7 +9446,7 @@ dependencies = [ "alloy-consensus", "alloy-eips", "alloy-genesis", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-trie", "arbitrary", @@ -9466,7 +9477,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-engine", "dashmap 6.1.0", "eyre", @@ -9511,7 +9522,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "itertools 0.14.0", "metrics", "rayon", @@ -9537,7 +9548,7 @@ name = "reth-prune-types" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "arbitrary", "derive_more", "modular-bitfield", @@ -9552,7 +9563,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-consensus", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "futures", "reth-eth-wire", @@ -9571,7 +9582,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-consensus", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "eyre", "futures", "parking_lot", @@ -9597,7 +9608,7 @@ name = "reth-revm" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "reth-primitives-traits", "reth-storage-api", "reth-storage-errors", @@ -9616,7 +9627,7 @@ dependencies = [ "alloy-evm", "alloy-genesis", "alloy-network", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-rpc-types", "alloy-rpc-types-admin", @@ -9688,7 +9699,7 @@ dependencies = [ "alloy-eips", "alloy-genesis", "alloy-json-rpc", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types", "alloy-rpc-types-admin", "alloy-rpc-types-anvil", @@ -9752,7 +9763,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-engine", "async-trait", "jsonrpsee-core 0.25.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -9786,7 +9797,7 @@ dependencies = [ "alloy-eips", "alloy-json-rpc", "alloy-network", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-rpc-types-eth", "alloy-rpc-types-mev", @@ -9826,9 +9837,9 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-eth", - "alloy-sol-types 1.2.0", + "alloy-sol-types 1.2.1", "derive_more", "futures", "itertools 0.14.0", @@ -9881,7 +9892,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-engine", "jsonrpsee-core 0.25.1 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpsee-types 0.25.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -9897,7 +9908,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-consensus", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-eth", "jsonrpsee-types 0.25.1 (registry+https://github.com/rust-lang/crates.io-index)", "reth-primitives-traits", @@ -9911,7 +9922,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "bincode", "blake3", "futures-util", @@ -9956,7 +9967,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "aquamarine", "auto_impl", "futures-util", @@ -9982,7 +9993,7 @@ name = "reth-stages-types" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "arbitrary", "bytes", "modular-bitfield", @@ -9996,7 +10007,7 @@ name = "reth-static-file" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "parking_lot", "rayon", "reth-codecs", @@ -10016,7 +10027,7 @@ name = "reth-static-file-types" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "clap 4.5.39", "derive_more", "serde", @@ -10030,7 +10041,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-engine", "auto_impl", "reth-chainspec", @@ -10053,7 +10064,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "derive_more", "reth-primitives-traits", @@ -10089,7 +10100,7 @@ dependencies = [ "alloy-consensus", "alloy-eips", "alloy-genesis", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "rand 0.8.5", "rand 0.9.1", "reth-ethereum-primitives", @@ -10143,7 +10154,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "aquamarine", "auto_impl", @@ -10182,7 +10193,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494 dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-trie", "auto_impl", @@ -10206,7 +10217,7 @@ version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ "alloy-consensus", - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-rpc-types-eth", "alloy-serde", @@ -10231,7 +10242,7 @@ name = "reth-trie-db" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "reth-db-api", "reth-execution-errors", "reth-primitives-traits", @@ -10244,7 +10255,7 @@ name = "reth-trie-parallel" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "derive_more", "itertools 0.14.0", @@ -10269,7 +10280,7 @@ name = "reth-trie-sparse" version = "1.4.8" source = "git+https://github.com/paradigmxyz/reth?tag=v1.4.8#127595e23079de2c494048d0821ea1f1107eb624" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rlp", "alloy-trie", "auto_impl", @@ -10421,10 +10432,10 @@ version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4b50ef375dbacefecfdacf8f02afc31df98acc5d8859a6f2b24d121ff2a740a8" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-eth", "alloy-rpc-types-trace", - "alloy-sol-types 1.2.0", + "alloy-sol-types 1.2.1", "anstyle", "boa_engine", "boa_gc", @@ -10478,7 +10489,7 @@ version = "19.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "18ea2ea0134568ee1e14281ce52f60e2710d42be316888d464c53e37ff184fd8" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "num_enum", "serde", ] @@ -10599,7 +10610,7 @@ name = "rollup-boost" version = "0.1.0" source = "git+http://github.com/flashbots/rollup-boost?branch=main#9fdd722ced0c8430097e7edc5a9024f7aa27c5ad" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "alloy-rpc-types-engine", "alloy-rpc-types-eth", "alloy-serde", @@ -11538,9 +11549,9 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14c8c8f496c33dc6343dac05b4be8d9e0bca180a4caa81d7b8416b10cc2273cd" +checksum = "b9ac494e7266fcdd2ad80bf4375d55d27a117ea5c866c26d0e97fe5b3caeeb75" dependencies = [ "paste", "proc-macro2", @@ -12296,7 +12307,7 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ee44f4cef85f88b4dea21c0b1f58320bdf35715cf56d840969487cff00613321" dependencies = [ - "alloy-primitives 1.2.0", + "alloy-primitives 1.2.1", "ethereum_hashing", "ethereum_ssz", "smallvec", @@ -12654,6 +12665,17 @@ dependencies = [ "syn 2.0.101", ] +[[package]] +name = "vrf" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61e8e7db1dafc0ffb6d1579befee4f0e8be3ffe467a8928045c8c032c59b607" +dependencies = [ + "hmac-sha256", + "openssl", + "thiserror 2.0.12", +] + [[package]] name = "wait-timeout" version = "0.2.1" diff --git a/crates/op-rbuilder/Cargo.toml b/crates/op-rbuilder/Cargo.toml index 1076478e..4cb41bf9 100644 --- a/crates/op-rbuilder/Cargo.toml +++ b/crates/op-rbuilder/Cargo.toml @@ -132,6 +132,11 @@ tar = { version = "0.4", optional = true } ctor = { version = "0.4.2", optional = true } rlimit = { version = "0.10", optional = true } macros = { path = "src/tests/framework/macros", optional = true } +vrf = "0.2.5" +alloy-sol-types = "1.2.1" +num-bigint = "0.4.6" +alloy-signer-local.workspace = true +alloy-signer = "1.0.22" [target.'cfg(unix)'.dependencies] tikv-jemallocator = { version = "0.6", optional = true } diff --git a/crates/op-rbuilder/src/builders/context.rs b/crates/op-rbuilder/src/builders/context.rs index f9db06de..cf1ede2e 100644 --- a/crates/op-rbuilder/src/builders/context.rs +++ b/crates/op-rbuilder/src/builders/context.rs @@ -1,12 +1,21 @@ use alloy_consensus::{ - conditional::BlockConditionalAttributes, Eip658Value, Transaction, TxEip1559, + conditional::BlockConditionalAttributes, Eip658Value, Transaction, TxEip1559, TxLegacy }; use alloy_eips::{eip7623::TOTAL_COST_FLOOR_PER_TOKEN, Encodable2718, Typed2718}; use alloy_op_evm::block::receipt_builder::OpReceiptBuilder; -use alloy_primitives::{Address, Bytes, TxKind, U256}; +use alloy::{ + primitives::address, + primitives::Address, + primitives::Bytes, + primitives::TxKind, + primitives::U256, + primitives::hex, + primitives::fixed_bytes, + rpc::types::TransactionRequest}; +use alloy_sol_types::{SolType, SolValue, sol, SolEvent, SolCall}; use alloy_rpc_types_eth::Withdrawals; use core::fmt::Debug; -use op_alloy_consensus::{OpDepositReceipt, OpTypedTransaction}; +use op_alloy_consensus::{OpTxEnvelope, OpDepositReceipt, OpTypedTransaction}; use op_revm::OpSpecId; use reth::payload::PayloadBuilderAttributes; use reth_basic_payload_builder::PayloadConfig; @@ -32,10 +41,16 @@ use reth_primitives_traits::{InMemorySize, SignedTransaction}; use reth_provider::ProviderError; use reth_revm::{context::Block, State}; use reth_transaction_pool::{BestTransactionsAttributes, PoolTransaction}; -use revm::{context::result::ResultAndState, Database, DatabaseCommit}; +use revm::{context::result::ResultAndState, Database, DatabaseCommit, context::TxEnv}; use std::{sync::Arc, time::Instant}; use tokio_util::sync::CancellationToken; use tracing::{debug, info, trace, warn}; +use {vrf::openssl::{CipherSuite, ECVRF}}; +use vrf::VRF; +use num_bigint::BigUint; +use std::string::String; +use sha3::{Digest, Keccak256}; +use op_revm::OpTransaction; use crate::{ metrics::OpRBuilderMetrics, @@ -45,6 +60,24 @@ use crate::{ tx_signer::Signer, }; +sol! { + #[derive(Debug, PartialEq, Eq)] + event RandomnessRequestEvent ( + uint256 callbackGasLimit, + uint256 amountOfRamdomness, + string publicKey, + address randomAddress, + uint256 randomnessNonce, + uint256 txNonce + ); + contract RandomnessHandler { + #[allow(missing_docs)] + function randomnessCallback( + uint256[] memory randomNumbers, + uint256 incrementedNonce) public; + } +} + /// Container type that holds all necessities to build a new payload. #[derive(Debug)] pub struct OpPayloadBuilderCtx { @@ -69,7 +102,7 @@ pub struct OpPayloadBuilderCtx { } impl OpPayloadBuilderCtx { - /// Returns the parent block the payload will be build on. + /// Returns the parent block the payload will be built on. pub fn parent(&self) -> &SealedHeader { &self.config.parent_header } @@ -211,7 +244,6 @@ impl OpPayloadBuilderCtx { cumulative_gas_used: ctx.cumulative_gas_used, logs: ctx.result.into_logs(), }; - receipt_builder.build_deposit_receipt(OpDepositReceipt { inner: receipt, deposit_nonce, @@ -311,9 +343,9 @@ impl OpPayloadBuilderCtx { Ok(info) } - /// Executes the given best transactions and updates the execution info. + /// Executes the given the best transactions and updates the execution info. /// - /// Returns `Ok(Some(())` if the job was cancelled. + /// Returns `Ok(Some(()))` if the job was cancelled. pub fn execute_best_transactions( &self, info: &mut ExecutionInfo, @@ -357,6 +389,7 @@ impl OpPayloadBuilderCtx { timestamp: self.attributes().timestamp(), }; + // loop is never entered while let Some(tx) = best_txs.next(()) { let interop = tx.interop_deadline(); let reverted_hashes = tx.reverted_hashes().clone(); @@ -437,6 +470,8 @@ impl OpPayloadBuilderCtx { } let tx_simulation_start_time = Instant::now(); + + // executes transactions let ResultAndState { result, state } = match evm.transact(&tx) { Ok(res) => res, Err(err) => { @@ -460,7 +495,10 @@ impl OpPayloadBuilderCtx { return Err(PayloadBuilderError::EvmExecutionError(Box::new(err))); } }; - + debug!("old tx={:?}", result); + debug!( + "{:?}", result.gas_used() + ); self.metrics .tx_simulation_duration .record(tx_simulation_start_time.elapsed()); @@ -491,6 +529,7 @@ impl OpPayloadBuilderCtx { // record tx da size info.cumulative_da_bytes_used += tx_da_size; + // Does result contain transaction logs? // Push transaction changeset and calculate header bloom filter for receipt. let ctx = ReceiptBuilderCtx { tx: tx.inner(), @@ -499,8 +538,11 @@ impl OpPayloadBuilderCtx { state: &state, cumulative_gas_used: info.cumulative_gas_used, }; + + info.receipts.push(self.build_receipt(ctx, None)); + // commit changes evm.db_mut().commit(state); @@ -513,6 +555,107 @@ impl OpPayloadBuilderCtx { // append sender and transaction to the respective lists info.executed_senders.push(tx.signer()); info.executed_transactions.push(tx.into_inner()); + + // get recently pushed tx receipt + let n = info.receipts.len() - 1; + // storing log + let logs = match &info.receipts[n] { + OpReceipt::Eip1559(receipt) => receipt.logs.clone(), + _ => Vec::new() + }; + + let randomness_topic_hex = "0x54e274da5fd76cf9c462d6f614c1f8e93dfb2f3b44ea7b9f8e495ad5a4f88255"; + + for log in logs { + debug!("tx logs: {:?}", log); + let addr = log.address; + let topics = log.data.topics(); + for t in topics { + if t.to_string() == randomness_topic_hex { + let data = log.data.data.clone().to_string(); + let decoded_data = hex::decode(data.trim_start_matches("0x").trim()).unwrap(); + + let (callback_gas_limit, + amount_randomness, + public_key, + randomness_address, + mut randomnessNonce, + txNonce) = match RandomnessRequestEvent::abi_decode_data(&decoded_data) { + Ok(res) => res, + _ => break + }; + let (randomNumbers, incrementedNonce) = generate_randomness(amount_randomness, public_key, randomness_address, randomnessNonce); + + debug!("random numbers={:?}", randomNumbers); + debug!("address={:?}", randomness_address); + debug!("address conversion={:?}", Address(*randomness_address)); + + let calldata = RandomnessHandler::randomnessCallbackCall { + randomNumbers, + incrementedNonce + }.abi_encode(); + + let random_tx = TxLegacy { + to: Address(*randomness_address).into(), + nonce: txNonce.to::(), + input: calldata.into(), + gas_limit: 1_000_000u64, + gas_price: 20_000_000_000u128, + chain_id: Some(13u64), + value: U256::from(0), + }; + + // convert to typed tx + let typed_tx = OpTypedTransaction::Legacy(random_tx); + + let secret = fixed_bytes!("59c6995e998f97a5a0044966f0945389dc9e86dae88c7a8412f4603b6b78690d"); + let signer = Signer::try_from_secret(secret).expect("signer creation"); + let signed_tx = signer.sign_tx(typed_tx).unwrap(); + + // execute tx + let r = match evm.transact(&signed_tx) { + Ok(res) => res, + Err(err) => { + if let Some(err) = err.as_invalid_tx_err() { + panic!("{:?}", err); + } + // this is an error that we should treat as fatal for this attempt + log_txn(TxnExecutionResult::EvmError); + return Err(PayloadBuilderError::EvmExecutionError(Box::new(err))); + } + }; + + debug!("transaction result: {:?}", r.result); + debug!("transaction state: {:?}", r.state); + let gas_used = r.result.gas_used(); + info.cumulative_gas_used += gas_used; + // record tx da size + info.cumulative_da_bytes_used += tx_da_size; + + // Does result contain transaction logs? + // Push transaction changeset and calculate header bloom filter for receipt. + let ctx = ReceiptBuilderCtx { + tx: signed_tx.inner(), + evm: &evm, + result: r.result, + state: &r.state, + cumulative_gas_used: info.cumulative_gas_used, + }; + + + info.receipts.push(self.build_receipt(ctx, None)); + evm.db_mut().commit(r.state); + + // append sender and transaction to the respective lists + info.executed_senders.push(signed_tx.signer()); + info.executed_transactions.push(signed_tx.into_inner()); + + + } + } + } + + } self.metrics @@ -688,3 +831,42 @@ where Ok(builder_tx) } + +pub fn generate_randomness( + amountOfRandomness: U256, + pubKey: String, + randomnessAddress: Address, + mut nonce: U256 +) -> (Vec, U256) { + + let mut random_numbers = Vec::new(); + let secret_key = hex::decode(pubKey).unwrap(); + let mut vrf = ECVRF::from_suite(CipherSuite::SECP256K1_SHA256_TAI).unwrap(); + let public_key = vrf.derive_public_key(&secret_key).unwrap(); + + for _ in 0..amountOfRandomness.to::() { + let addr_and_nonce: (Address, U256) = (randomnessAddress, nonce); + let encoded_data = <(Address, U256) as SolValue>::abi_encode(&addr_and_nonce); + let seed = keccak256(&encoded_data); + + let message: &[u8] = &seed; + + let pi = vrf.prove(&secret_key, &message).unwrap(); + let hash_output = vrf.verify(&public_key, &pi, &message); + + let number = BigUint::from_bytes_be(&hash_output.unwrap()).to_string(); + let number = number.parse::().unwrap(); + + random_numbers.push(number); + + nonce += U256::from(1); + } + + (random_numbers, nonce) +} + +fn keccak256(input: &[u8]) -> [u8; 32] { + let mut hasher = Keccak256::new(); + hasher.update(input); + hasher.finalize().into() +} diff --git a/crates/op-rbuilder/src/traits.rs b/crates/op-rbuilder/src/traits.rs index ef9dde45..caf54b50 100644 --- a/crates/op-rbuilder/src/traits.rs +++ b/crates/op-rbuilder/src/traits.rs @@ -6,6 +6,7 @@ use reth_optimism_primitives::{OpPrimitives, OpTransactionSigned}; use reth_payload_util::PayloadTransactions; use reth_provider::{BlockReaderIdExt, ChainSpecProvider, StateProviderFactory}; use reth_transaction_pool::TransactionPool; +use std::fmt::Debug; use crate::tx::FBPoolTransaction;