diff --git a/Cargo.lock b/Cargo.lock index 72854e5183f8..1498a39a5583 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -48,7 +48,7 @@ dependencies = [ "getrandom", "once_cell", "version_check", - "zerocopy", + "zerocopy 0.7.35", ] [[package]] @@ -79,9 +79,9 @@ dependencies = [ [[package]] name = "alloy-consensus" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f58047cc851e58c26224521d1ecda466e3d746ebca0274cd5427aa660a88c353" +checksum = "04c309895995eaa4bfcc345f5515a39c7df9447798645cc8bf462b6c5bf1dc96" dependencies = [ "alloy-eips", "alloy-primitives", @@ -93,13 +93,14 @@ dependencies = [ [[package]] name = "alloy-contract" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa5d42d9f87896536234b0fac1a84ad9d9dc7a4b27839cac35d0899e64ddf083" +checksum = "3f4e0ef72b0876ae3068b2ed7dfae9ae1779ce13cfaec2ee1f08f5bd0348dc57" dependencies = [ "alloy-dyn-abi", "alloy-json-abi", "alloy-network", + "alloy-network-primitives", "alloy-primitives", "alloy-provider", "alloy-pubsub", @@ -129,14 +130,14 @@ dependencies = [ "proptest", "serde", "serde_json", - "winnow 0.6.16", + "winnow 0.6.18", ] [[package]] name = "alloy-eips" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d32a3e14fa0d152d00bd8daf605eb74ad397efb0f54bd7155585823dddb4401e" +checksum = "d9431c99a3b3fe606ede4b3d4043bdfbcb780c45b8d8d226c3804e2b75cfbe68" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -146,15 +147,16 @@ dependencies = [ "derive_more", "k256", "once_cell", + "rand", "serde", "sha2", ] [[package]] name = "alloy-genesis" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20cb76c8a3913f2466c5488f3a915e3a15d15596bdc935558c1a9be75e9ec508" +checksum = "79614dfe86144328da11098edcc7bc1a3f25ad8d3134a9eb9e857e06f0d9840d" dependencies = [ "alloy-primitives", "alloy-serde", @@ -175,11 +177,12 @@ dependencies = [ [[package]] name = "alloy-json-rpc" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e76a9feec2352c78545d1a37415699817bae8dc41654bd1bfe57d6cdd5433bd" +checksum = "57e2865c4c3bb4cdad3f0d9ec1ab5c0c657ba69a375651bd35e32fb6c180ccc2" dependencies = [ "alloy-primitives", + "alloy-sol-types", "serde", "serde_json", "thiserror", @@ -188,13 +191,14 @@ dependencies = [ [[package]] name = "alloy-network" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3223d71dc78f464b2743418d0be8b5c894313e272105a6206ad5e867d67b3ce2" +checksum = "6e701fc87ef9a3139154b0b4ccb935b565d27ffd9de020fe541bf2dec5ae4ede" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-json-rpc", + "alloy-network-primitives", "alloy-primitives", "alloy-rpc-types-eth", "alloy-serde", @@ -206,6 +210,17 @@ dependencies = [ "thiserror", ] +[[package]] +name = "alloy-network-primitives" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec9d5a0f9170b10988b6774498a022845e13eda94318440d17709d50687f67f9" +dependencies = [ + "alloy-primitives", + "alloy-serde", + "serde", +] + [[package]] name = "alloy-primitives" version = "0.7.7" @@ -235,15 +250,16 @@ dependencies = [ [[package]] name = "alloy-provider" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f29da7457d853cb8199ec04b227d5d2ef598be3e59fc2bbad70c8be213292f32" +checksum = "3f9c0ab10b93de601a6396fc7ff2ea10d3b28c46f079338fa562107ebf9857c8" dependencies = [ "alloy-chains", "alloy-consensus", "alloy-eips", "alloy-json-rpc", "alloy-network", + "alloy-network-primitives", "alloy-primitives", "alloy-pubsub", "alloy-rpc-client", @@ -272,9 +288,9 @@ dependencies = [ [[package]] name = "alloy-pubsub" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f64acfec654ade392cecfa9bba0408eb2a337d55f1b857925da79970cb70f3d6" +checksum = "3f5da2c55cbaf229bad3c5f8b00b5ab66c74ef093e5f3a753d874cfecf7d2281" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -313,9 +329,9 @@ dependencies = [ [[package]] name = "alloy-rpc-client" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8a9e609524fa31c2c70eb24c0da60796809193ad4787a6dfe6d0db0d3ac112d" +checksum = "5b38e3ffdb285df5d9f60cb988d336d9b8e3505acb78750c3bc60336a7af41d3" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -338,9 +354,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e5d76f1e8b22f48b7b8f985782b68e7eb3938780e50e8b646a53e41a598cdf5" +checksum = "e6c31a3750b8f5a350d17354e46a52b0f2f19ec5f2006d816935af599dedc521" dependencies = [ "alloy-rpc-types-anvil", "alloy-rpc-types-engine", @@ -353,9 +369,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-anvil" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4282c002a4ae9f57887dae57083fcca6dca09cb6685bf98b8582ea93cb3df97d" +checksum = "52ab6509cd38b2e8c8da726e0f61c1e314a81df06a38d37ddec8bced3f8d25ed" dependencies = [ "alloy-primitives", "alloy-serde", @@ -364,9 +380,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73445fbc5c02258e3d0d977835c92366a4d91545fd456c3fc8601c61810bc9f6" +checksum = "ff63f51b2fb2f547df5218527fd0653afb1947bf7fead5b3ce58c75d170b30f7" dependencies = [ "alloy-consensus", "alloy-eips", @@ -382,12 +398,13 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "605fa8462732bb8fd0645a9941e12961e079d45ae6a44634c826f8229c187bdf" +checksum = "81e18424d962d7700a882fe423714bd5b9dde74c7a7589d4255ea64068773aef" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-network-primitives", "alloy-primitives", "alloy-rlp", "alloy-serde", @@ -400,9 +417,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-trace" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f561a8cdd377b6ac3beab805b9df5ec2c7d99bb6139aab23c317f26df6fb346" +checksum = "a86eeb49ea0cc79f249faa1d35c20541bb1c317a59b5962cb07b1890355b0064" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -414,9 +431,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-txpool" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06a4bd39910631c11148c5b2c55e2c61f8626affd2a612e382c668d5e5971ce" +checksum = "c2342fed8175642b15a37a51f8729b05b2469281fbeb816f0ccbb0087e2dd74a" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -426,9 +443,9 @@ dependencies = [ [[package]] name = "alloy-serde" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15c5b9057acc02aee1b8aac2b5a0729cb0f73d080082c111313e5d1f92a96630" +checksum = "e33feda6a53e6079895aed1d08dcb98a1377b000d80d16370fbbdb8155d547ef" dependencies = [ "alloy-primitives", "arbitrary", @@ -438,9 +455,9 @@ dependencies = [ [[package]] name = "alloy-signer" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37f10592696f4ab8b687d5a8ab55e998a14ea0ca5f8eb20ad74a96ad671bb54a" +checksum = "740a25b92e849ed7b0fa013951fe2f64be9af1ad5abe805037b44fb7770c5c47" dependencies = [ "alloy-dyn-abi", "alloy-primitives", @@ -454,9 +471,9 @@ dependencies = [ [[package]] name = "alloy-signer-aws" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49300a7aecbd28c364fbad6a9f886264f79ff4fed9a67c8caa27c39f99d52b2d" +checksum = "8b1a47bd8487fb2d715f8a203c3bfe7de0b7443eeacb00bd96d8d4eb0d67e184" dependencies = [ "alloy-consensus", "alloy-network", @@ -472,9 +489,9 @@ dependencies = [ [[package]] name = "alloy-signer-gcp" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ce638c267429ea7513be9fffc47d949d1f425a33c8813fc6a145e03b999e79f" +checksum = "0850956080821ee646461fde2ff17640a2babcd206046a867eda94d9a266fad9" dependencies = [ "alloy-consensus", "alloy-network", @@ -490,9 +507,9 @@ dependencies = [ [[package]] name = "alloy-signer-ledger" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a9450ae05631ac2a5eb180d91d7162bf71ea7a2bb6833cc7c25997e5a11dc38" +checksum = "0f4f7e76cb4f63dbb56857a74665510517a013fe18da82082f7c66c6d321531e" dependencies = [ "alloy-consensus", "alloy-dyn-abi", @@ -510,9 +527,9 @@ dependencies = [ [[package]] name = "alloy-signer-local" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b537f3e55f30753578f4623d5f66ddad8fa582af3fa6b15bad23dd1b9775228" +checksum = "1b0707d4f63e4356a110b30ef3add8732ab6d181dd7be4607bf79b8777105cee" dependencies = [ "alloy-consensus", "alloy-network", @@ -530,9 +547,9 @@ dependencies = [ [[package]] name = "alloy-signer-trezor" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6efa624373339e7cbdd597a785a69c5fcbc10d5368797a18b7cb3476eadf8c9" +checksum = "81147fb1a384f878653524b9473af71ef2820846bd64a473f26e49fca8e5f8f9" dependencies = [ "alloy-consensus", "alloy-network", @@ -569,7 +586,7 @@ dependencies = [ "alloy-sol-macro-input", "const-hex", "heck", - "indexmap 2.2.6", + "indexmap 2.3.0", "proc-macro-error", "proc-macro2", "quote", @@ -602,7 +619,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cbcba3ca07cf7975f15d871b721fb18031eec8bce51103907f6dcce00b255d98" dependencies = [ "serde", - "winnow 0.6.16", + "winnow 0.6.18", ] [[package]] @@ -620,9 +637,9 @@ dependencies = [ [[package]] name = "alloy-transport" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b44b0f6f4a2593b258fa7b6cae8968e6a4c404d9ef4f5bc74401f2d04fa23fa" +checksum = "3d0590afbdacf2f8cca49d025a2466f3b6584a016a8b28f532f29f8da1007bae" dependencies = [ "alloy-json-rpc", "base64 0.22.1", @@ -639,9 +656,9 @@ dependencies = [ [[package]] name = "alloy-transport-http" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d8f1eefa8cb9e7550740ee330feba4fed303a77ad3085707546f9152a88c380" +checksum = "2437d145d80ea1aecde8574d2058cceb8b3c9cba05f6aea8e67907c660d46698" dependencies = [ "alloy-json-rpc", "alloy-transport", @@ -654,9 +671,9 @@ dependencies = [ [[package]] name = "alloy-transport-ipc" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31007c56dc65bd81392112dda4a14c20ac7e30bb4cb2e9176192e8d9fab1983f" +checksum = "804494366e20468776db4e18f9eb5db7db0fe14f1271eb6dbf155d867233405c" dependencies = [ "alloy-json-rpc", "alloy-pubsub", @@ -675,9 +692,9 @@ dependencies = [ [[package]] name = "alloy-transport-ws" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15ccc1c8f8ae415e93ec0e7851bd4cdf4afdd48793d13a91b860317da1f36104" +checksum = "af855163e7df008799941aa6dd324a43ef2bf264b08ba4b22d44aad6ced65300" dependencies = [ "alloy-pubsub", "alloy-transport", @@ -1793,9 +1810,9 @@ checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" [[package]] name = "bytemuck" -version = "1.16.1" +version = "1.16.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b236fc92302c97ed75b38da1f4917b5cdda4984745740f153a5d3059e48d725e" +checksum = "102087e286b4677862ea56cf8fc58bb2cdfa8725c40ffb80fe3a008eb7f2fc83" [[package]] name = "byteorder" @@ -1805,9 +1822,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.6.1" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a12916984aab3fa6e39d655a33e09c0071eb36d6ab3aea5c2d78551f1df6d952" +checksum = "8318a53db07bb3f8dca91a600466bdb3f2eaadeedfdbcf02e1accbad9271ba50" dependencies = [ "serde", ] @@ -2081,9 +2098,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.11" +version = "4.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35723e6a11662c2afb578bcf0b88bf6ea8e21282a953428f240574fcc3a2b5b3" +checksum = "0fbb260a053428790f3de475e304ff84cdbc4face759ea7a3e64c1edd938a7fc" dependencies = [ "clap_builder", "clap_derive", @@ -2091,9 +2108,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.11" +version = "4.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49eb96cbfa7cfa35017b7cd548c75b14c3118c98b423041d70562665e07fb0fa" +checksum = "64b17d7ea74e9f833c7dbf2cbe4fb12ff26783eda4782a8975b72f895c9b4d99" dependencies = [ "anstream", "anstyle", @@ -2106,9 +2123,9 @@ dependencies = [ [[package]] name = "clap_complete" -version = "4.5.11" +version = "4.5.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6ae69fbb0833c6fcd5a8d4b8609f108c7ad95fc11e248d853ff2c42a90df26a" +checksum = "a8670053e87c316345e384ca1f3eba3006fc6355ed8b8a1140d104e109e3df34" dependencies = [ "clap", ] @@ -2125,9 +2142,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.11" +version = "4.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d029b67f89d30bbb547c89fd5161293c0aec155fc691d7924b64550662db93e" +checksum = "501d359d5f3dcaf6ecdeee48833ae73ec6e42723a1e52419c79abf9507eec0a0" dependencies = [ "heck", "proc-macro2", @@ -3080,7 +3097,7 @@ dependencies = [ "serde", "serde_json", "syn 2.0.72", - "toml 0.8.16", + "toml 0.8.19", "walkdir", ] @@ -3231,7 +3248,7 @@ dependencies = [ "pear", "serde", "tempfile", - "toml 0.8.16", + "toml 0.8.19", "uncased", "version_check", ] @@ -3376,8 +3393,8 @@ dependencies = [ "thiserror", "tikv-jemallocator", "tokio", - "toml 0.8.16", - "toml_edit 0.22.17", + "toml 0.8.19", + "toml_edit 0.22.20", "tower-http", "tracing", "tracing-subscriber", @@ -3408,7 +3425,7 @@ dependencies = [ "serde_json", "solang-parser", "thiserror", - "toml 0.8.16", + "toml 0.8.19", "tracing", ] @@ -3423,7 +3440,7 @@ dependencies = [ "similar-asserts", "solang-parser", "thiserror", - "toml 0.8.16", + "toml 0.8.19", "tracing", "tracing-subscriber", ] @@ -3588,7 +3605,7 @@ dependencies = [ "semver 1.0.23", "serde_json", "thiserror", - "toml 0.8.16", + "toml 0.8.19", "tracing", "vergen", "walkdir", @@ -3741,7 +3758,7 @@ dependencies = [ "thiserror", "tokio", "tracing", - "winnow 0.6.16", + "winnow 0.6.18", "yansi", ] @@ -3847,8 +3864,8 @@ dependencies = [ "solang-parser", "tempfile", "thiserror", - "toml 0.8.16", - "toml_edit 0.22.17", + "toml 0.8.19", + "toml_edit 0.22.20", "tracing", "walkdir", ] @@ -3976,7 +3993,7 @@ dependencies = [ "foundry-evm-core", "foundry-evm-coverage", "foundry-evm-traces", - "indexmap 2.2.6", + "indexmap 2.3.0", "itertools 0.13.0", "parking_lot", "proptest", @@ -4353,7 +4370,7 @@ dependencies = [ "gix-utils", "itoa", "thiserror", - "winnow 0.6.16", + "winnow 0.6.18", ] [[package]] @@ -4374,7 +4391,7 @@ dependencies = [ "smallvec", "thiserror", "unicode-bom", - "winnow 0.6.16", + "winnow 0.6.18", ] [[package]] @@ -4476,7 +4493,7 @@ dependencies = [ "itoa", "smallvec", "thiserror", - "winnow 0.6.16", + "winnow 0.6.18", ] [[package]] @@ -4511,7 +4528,7 @@ dependencies = [ "gix-validate", "memmap2", "thiserror", - "winnow 0.6.16", + "winnow 0.6.18", ] [[package]] @@ -4607,7 +4624,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.2.6", + "indexmap 2.3.0", "slab", "tokio", "tokio-util", @@ -5073,9 +5090,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.2.6" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" +checksum = "de3fc2e30ba82dd1b3911c8de1ffc143c74a914a14e99514d7637e3099df5ea0" dependencies = [ "equivalent", "hashbrown 0.14.5", @@ -5456,9 +5473,9 @@ dependencies = [ [[package]] name = "lru" -version = "0.12.3" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3262e75e648fce39813cb56ac41f3c3e3f65217ebf3844d818d1f9398cfb0dc" +checksum = "37ee39891760e7d94734f6f63fedc29a2e4a152f836120753a72503f09fcf904" dependencies = [ "hashbrown 0.14.5", ] @@ -6284,7 +6301,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset", - "indexmap 2.2.6", + "indexmap 2.3.0", ] [[package]] @@ -6478,12 +6495,11 @@ checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" [[package]] name = "ppv-lite86" -version = "0.2.19" +version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2288c0e17cc8d342c712bb43a257a80ebffce59cdb33d5000d8348f3ec02528b" +checksum = "dee4364d9f3b902ef14fab8a1ddffb783a1cb6b4bba3bfc1fa3922732c7de97f" dependencies = [ - "zerocopy", - "zerocopy-derive", + "zerocopy 0.6.6", ] [[package]] @@ -6613,7 +6629,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38ee68ae331824036479c84060534b18254c864fa73366c58d86db3b7b811619" dependencies = [ "futures", - "indexmap 2.2.6", + "indexmap 2.3.0", "nix 0.28.0", "tokio", "tracing", @@ -7132,9 +7148,9 @@ dependencies = [ [[package]] name = "revm-inspectors" -version = "0.5.4" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5296ccad8d7ccbeb6c5a037a57bfe1ff27e81d8c4efbd3ae7df0a554eb1a818a" +checksum = "54a785dafff303a335980e317669c4e9800cdd5dd2830c6880c3247022761e88" dependencies = [ "alloy-primitives", "alloy-rpc-types", @@ -7790,11 +7806,11 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.121" +version = "1.0.122" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ab380d7d9f22ef3f21ad3e6c1ebe8e4fc7a2000ccba2e4d71fc96f15b2cb609" +checksum = "784b6203951c57ff748476b126ccb5e8e2959a5c19e5c617ab1956be3dbc68da" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.3.0", "itoa", "memchr", "ryu", @@ -7859,7 +7875,7 @@ version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.3.0", "itoa", "ryu", "serde", @@ -8149,13 +8165,13 @@ dependencies = [ "sha256", "simple-home-dir", "tokio", - "toml 0.8.16", - "toml_edit 0.22.17", + "toml 0.8.19", + "toml_edit 0.22.20", "uuid 1.10.0", "walkdir", "yansi", "yash-fnmatch", - "zip 2.1.5", + "zip 2.1.6", "zip-extract", ] @@ -8287,7 +8303,7 @@ dependencies = [ "sha2", "thiserror", "url", - "zip 2.1.5", + "zip 2.1.6", ] [[package]] @@ -8710,22 +8726,22 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.16" +version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81967dd0dd2c1ab0bc3468bd7caecc32b8a4aa47d0c8c695d8c2b2108168d62c" +checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.3.0", "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.17", + "toml_edit 0.22.20", ] [[package]] name = "toml_datetime" -version = "0.6.7" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8fb9f64314842840f1d940ac544da178732128f1c78c21772e876579e0da1db" +checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" dependencies = [ "serde", ] @@ -8736,22 +8752,22 @@ version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.3.0", "toml_datetime", "winnow 0.5.40", ] [[package]] name = "toml_edit" -version = "0.22.17" +version = "0.22.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d9f8729f5aea9562aac1cc0441f5d6de3cff1ee0c5d67293eeca5eb36ee7c16" +checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.3.0", "serde", "serde_spanned", "toml_datetime", - "winnow 0.6.16", + "winnow 0.6.18", ] [[package]] @@ -9744,9 +9760,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.6.16" +version = "0.6.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b480ae9340fc261e6be3e95a1ba86d54ae3f9171132a73ce8d4bbaf68339507c" +checksum = "68a9bda4691f099d435ad181000724da8e5899daa10713c2d432552b9ccd3a6f" dependencies = [ "memchr", ] @@ -9831,14 +9847,34 @@ dependencies = [ "thiserror", ] +[[package]] +name = "zerocopy" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "854e949ac82d619ee9a14c66a1b674ac730422372ccb759ce0c39cabcf2bf8e6" +dependencies = [ + "byteorder", + "zerocopy-derive 0.6.6", +] + [[package]] name = "zerocopy" version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ - "byteorder", - "zerocopy-derive", + "zerocopy-derive 0.7.35", +] + +[[package]] +name = "zerocopy-derive" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "125139de3f6b9d625c39e2efdd73d41bdac468ccd556556440e322be0e1bbd91" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.72", ] [[package]] @@ -9893,16 +9929,16 @@ dependencies = [ [[package]] name = "zip" -version = "2.1.5" +version = "2.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b895748a3ebcb69b9d38dcfdf21760859a4b0d0b0015277640c2ef4c69640e6f" +checksum = "40dd8c92efc296286ce1fbd16657c5dbefff44f1b4ca01cc5f517d8b7b3d3e2e" dependencies = [ "arbitrary", "crc32fast", "crossbeam-utils", "displaydoc", "flate2", - "indexmap 2.2.6", + "indexmap 2.3.0", "memchr", "thiserror", "zopfli", diff --git a/Cargo.toml b/Cargo.toml index 7c437ab639b5..d1646a070bee 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -172,28 +172,28 @@ revm-inspectors = { version = "0.5", features = ["serde"] } ethers-contract-abigen = { version = "2.0.14", default-features = false } ## alloy -alloy-consensus = { version = "0.2.0", default-features = false } -alloy-contract = { version = "0.2.0", default-features = false } -alloy-eips = { version = "0.2.0", default-features = false } -alloy-genesis = { version = "0.2.0", default-features = false } -alloy-json-rpc = { version = "0.2.0", default-features = false } -alloy-network = { version = "0.2.0", default-features = false } -alloy-node-bindings = { version = "0.2.0", default-features = false } -alloy-provider = { version = "0.2.0", default-features = false } -alloy-pubsub = { version = "0.2.0", default-features = false } -alloy-rpc-client = { version = "0.2.0", default-features = false } -alloy-rpc-types = { version = "0.2.0", default-features = false } -alloy-serde = { version = "0.2.0", default-features = false } -alloy-signer = { version = "0.2.0", default-features = false } -alloy-signer-aws = { version = "0.2.0", default-features = false } -alloy-signer-gcp = { version = "0.2.0", default-features = false } -alloy-signer-ledger = { version = "0.2.0", default-features = false } -alloy-signer-local = { version = "0.2.0", default-features = false } -alloy-signer-trezor = { version = "0.2.0", default-features = false } -alloy-transport = { version = "0.2.0", default-features = false } -alloy-transport-http = { version = "0.2.0", default-features = false } -alloy-transport-ipc = { version = "0.2.0", default-features = false } -alloy-transport-ws = { version = "0.2.0", default-features = false } +alloy-consensus = { version = "0.2.1", default-features = false } +alloy-contract = { version = "0.2.1", default-features = false } +alloy-eips = { version = "0.2.1", default-features = false } +alloy-genesis = { version = "0.2.1", default-features = false } +alloy-json-rpc = { version = "0.2.1", default-features = false } +alloy-network = { version = "0.2.1", default-features = false } +alloy-node-bindings = { version = "0.2.1", default-features = false } +alloy-provider = { version = "0.2.1", default-features = false } +alloy-pubsub = { version = "0.2.1", default-features = false } +alloy-rpc-client = { version = "0.2.1", default-features = false } +alloy-rpc-types = { version = "0.2.1", default-features = false } +alloy-serde = { version = "0.2.1", default-features = false } +alloy-signer = { version = "0.2.1", default-features = false } +alloy-signer-aws = { version = "0.2.1", default-features = false } +alloy-signer-gcp = { version = "0.2.1", default-features = false } +alloy-signer-ledger = { version = "0.2.1", default-features = false } +alloy-signer-local = { version = "0.2.1", default-features = false } +alloy-signer-trezor = { version = "0.2.1", default-features = false } +alloy-transport = { version = "0.2.1", default-features = false } +alloy-transport-http = { version = "0.2.1", default-features = false } +alloy-transport-ipc = { version = "0.2.1", default-features = false } +alloy-transport-ws = { version = "0.2.1", default-features = false } alloy-dyn-abi = "0.7.7" alloy-json-abi = "0.7.7" diff --git a/crates/anvil/src/eth/api.rs b/crates/anvil/src/eth/api.rs index cd7485d5fa59..4f853cd0c761 100644 --- a/crates/anvil/src/eth/api.rs +++ b/crates/anvil/src/eth/api.rs @@ -48,7 +48,7 @@ use alloy_rpc_types::{ parity::LocalizedTransactionTrace, }, txpool::{TxpoolContent, TxpoolInspect, TxpoolInspectSummary, TxpoolStatus}, - AccessList, AccessListWithGasUsed, Block, BlockId, BlockNumberOrTag as BlockNumber, + AccessList, AccessListResult, Block, BlockId, BlockNumberOrTag as BlockNumber, BlockTransactions, EIP1186AccountProofResponse, FeeHistory, Filter, FilteredParams, Index, Log, Transaction, }; @@ -1084,7 +1084,7 @@ impl EthApi { &self, mut request: WithOtherFields, block_number: Option, - ) -> Result { + ) -> Result { node_info!("eth_createAccessList"); let block_request = self.block_request(block_number).await?; // check if the number predates the fork, if in fork mode @@ -1117,9 +1117,10 @@ impl EthApi { )?; ensure_return_ok(exit, &out)?; - Ok(AccessListWithGasUsed { + Ok(AccessListResult { access_list: AccessList(access_list.0), gas_used: U256::from(gas_used), + error: None, }) }) .await? diff --git a/crates/anvil/src/eth/backend/fork.rs b/crates/anvil/src/eth/backend/fork.rs index d4b51ae9602e..7f8146daa945 100644 --- a/crates/anvil/src/eth/backend/fork.rs +++ b/crates/anvil/src/eth/backend/fork.rs @@ -2,6 +2,7 @@ use crate::eth::{backend::db::Db, error::BlockchainError, pool::transactions::PoolTransaction}; use alloy_consensus::Account; +use alloy_eips::eip2930::AccessListResult; use alloy_primitives::{Address, Bytes, StorageValue, B256, U256}; use alloy_provider::{ ext::{DebugApi, TraceApi}, @@ -13,7 +14,7 @@ use alloy_rpc_types::{ geth::{GethDebugTracingOptions, GethTrace}, parity::LocalizedTransactionTrace as Trace, }, - AccessListWithGasUsed, Block, BlockId, BlockNumberOrTag as BlockNumber, BlockTransactions, + Block, BlockId, BlockNumberOrTag as BlockNumber, BlockTransactions, EIP1186AccountProofResponse, FeeHistory, Filter, Log, Transaction, }; use alloy_serde::WithOtherFields; @@ -205,7 +206,7 @@ impl ClientFork { &self, request: &WithOtherFields, block: Option, - ) -> Result { + ) -> Result { self.provider().create_access_list(request).block_id(block.unwrap_or_default().into()).await } @@ -273,7 +274,7 @@ impl ClientFork { blocknumber: u64, ) -> Result { trace!(target: "backend::fork", "get_account={:?}", address); - self.provider().get_account(address).await.block_id(blocknumber.into()).await + self.provider().get_account(address).block_id(blocknumber.into()).await } pub async fn transaction_by_block_number_and_index( @@ -577,7 +578,7 @@ impl ClientFork { }; let mut transactions = Vec::with_capacity(block_txs_len); for tx in block.transactions.hashes() { - if let Some(tx) = storage.transactions.get(tx).cloned() { + if let Some(tx) = storage.transactions.get(&tx).cloned() { transactions.push(tx.inner); } } diff --git a/crates/anvil/src/eth/backend/mem/mod.rs b/crates/anvil/src/eth/backend/mem/mod.rs index b235646b514c..ff7ec5b5cb72 100644 --- a/crates/anvil/src/eth/backend/mem/mod.rs +++ b/crates/anvil/src/eth/backend/mem/mod.rs @@ -46,10 +46,7 @@ use alloy_rpc_types::{ GethDebugBuiltInTracerType, GethDebugTracerType, GethDebugTracingCallOptions, GethDebugTracingOptions, GethTrace, NoopFrame, }, - parity::{ - Action::{Call, Create, Reward, Selfdestruct}, - LocalizedTransactionTrace, - }, + parity::LocalizedTransactionTrace, }, AccessList, Block as AlloyBlock, BlockId, BlockNumberOrTag as BlockNumber, EIP1186AccountProofResponse as AccountProof, EIP1186StorageProof as StorageProof, Filter, @@ -2095,14 +2092,7 @@ impl Backend { // Execute tasks and filter traces let traces = futures::future::try_join_all(trace_tasks).await?; let filtered_traces = - traces.into_iter().flatten().filter(|trace| match &trace.trace.action { - Call(call) => matcher.matches(call.from, Some(call.to)), - Create(create) => matcher.matches(create.from, None), - Selfdestruct(self_destruct) => { - matcher.matches(self_destruct.address, Some(self_destruct.refund_address)) - } - Reward(reward) => matcher.matches(reward.author, None), - }); + traces.into_iter().flatten().filter(|trace| matcher.matches(&trace.trace)); // Apply after and count let filtered_traces: Vec<_> = if let Some(after) = filter.after { @@ -2126,7 +2116,7 @@ impl Backend { let mut receipts = Vec::new(); let storage = self.blockchain.storage.read(); for tx in block.transactions.hashes() { - let receipt = storage.transactions.get(tx)?.receipt.clone(); + let receipt = storage.transactions.get(&tx)?.receipt.clone(); receipts.push(receipt); } Some(receipts) diff --git a/crates/anvil/src/eth/otterscan/api.rs b/crates/anvil/src/eth/otterscan/api.rs index f174d79f59cd..9b6b54a80fa4 100644 --- a/crates/anvil/src/eth/otterscan/api.rs +++ b/crates/anvil/src/eth/otterscan/api.rs @@ -349,8 +349,10 @@ impl EthApi { if block.transactions.is_uncle() { return Err(BlockchainError::DataUnavailable); } - let receipts_futs = - block.transactions.hashes().map(|hash| async { self.transaction_receipt(*hash).await }); + let receipts_futs = block + .transactions + .hashes() + .map(|hash| async move { self.transaction_receipt(hash).await }); // fetch all receipts let receipts = join_all(receipts_futs) @@ -398,7 +400,7 @@ impl EthApi { BlockTransactions::Uncle => unreachable!(), }; - let receipt_futs = block.transactions.hashes().map(|hash| self.transaction_receipt(*hash)); + let receipt_futs = block.transactions.hashes().map(|hash| self.transaction_receipt(hash)); let receipts = join_all(receipt_futs) .await diff --git a/crates/anvil/tests/it/otterscan.rs b/crates/anvil/tests/it/otterscan.rs index d0536a0326d7..fc153f9631cd 100644 --- a/crates/anvil/tests/it/otterscan.rs +++ b/crates/anvil/tests/it/otterscan.rs @@ -385,7 +385,7 @@ async fn ots_get_block_transactions() { result.receipts.iter().enumerate().for_each(|(i, receipt)| { let expected = hashes.pop_front(); assert_eq!(expected, Some(receipt.receipt.transaction_hash)); - assert_eq!(expected, result.fullblock.block.transactions.hashes().nth(i).copied()); + assert_eq!(expected, result.fullblock.block.transactions.hashes().nth(i)); }); } diff --git a/crates/anvil/tests/it/traces.rs b/crates/anvil/tests/it/traces.rs index 7f2846d5c38c..ac6f90fe3f9b 100644 --- a/crates/anvil/tests/it/traces.rs +++ b/crates/anvil/tests/it/traces.rs @@ -806,7 +806,7 @@ async fn test_trace_filter() { } let traces = api.trace_filter(tracer).await.unwrap(); - assert_eq!(traces.len(), 3); + assert_eq!(traces.len(), 8); // Test Range Error let latest = provider.get_block_number().await.unwrap(); diff --git a/crates/anvil/tests/it/transaction.rs b/crates/anvil/tests/it/transaction.rs index 5f9abe80b6bd..0737209c1dc5 100644 --- a/crates/anvil/tests/it/transaction.rs +++ b/crates/anvil/tests/it/transaction.rs @@ -1233,6 +1233,6 @@ async fn can_mine_multiple_in_block() { let block = api.block_by_number(BlockNumberOrTag::Latest).await.unwrap().unwrap(); - let txs = block.transactions.hashes().copied().collect::>(); + let txs = block.transactions.hashes().collect::>(); assert_eq!(txs, vec![first, second]); } diff --git a/crates/common/fmt/src/ui.rs b/crates/common/fmt/src/ui.rs index b9deffc7eda2..77bb22851229 100644 --- a/crates/common/fmt/src/ui.rs +++ b/crates/common/fmt/src/ui.rs @@ -278,7 +278,7 @@ transactions: {}", } } -impl UIfmt for BlockTransactions { +impl UIfmt for BlockTransactions { fn pretty(&self) -> String { match self { Self::Hashes(hashes) => hashes.pretty(),