diff --git a/Cargo.lock b/Cargo.lock index 05982628a..181c5cc1e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,17 +2,6 @@ # It is not intended for manual editing. version = 4 -[[package]] -name = "addchain" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b2e69442aa5628ea6951fa33e24efe8313f4321a91bd729fc2f75bdfc858570" -dependencies = [ - "num-bigint 0.3.3", - "num-integer", - "num-traits", -] - [[package]] name = "addr2line" version = "0.24.2" @@ -28,17 +17,6 @@ version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" -[[package]] -name = "aes" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" -dependencies = [ - "cfg-if", - "cipher", - "cpufeatures", -] - [[package]] name = "ahash" version = "0.8.12" @@ -46,7 +24,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" dependencies = [ "cfg-if", - "getrandom 0.3.3", "once_cell", "version_check", "zerocopy", @@ -69,9 +46,9 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a66e45d962abb2e1e8a505d97af34d92137b82f6cabbfb373406a9220dc7dca" +checksum = "50ab0cd8afe573d1f7dc2353698a51b1f93aec362c8211e28cfd3948c6adba39" dependencies = [ "alloy-consensus", "alloy-contract", @@ -89,6 +66,7 @@ dependencies = [ "alloy-signer-local", "alloy-transport", "alloy-transport-http", + "alloy-trie", ] [[package]] @@ -105,9 +83,9 @@ dependencies = [ [[package]] name = "alloy-consensus" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bcb57295c4b632b6b3941a089ee82d00ff31ff9eb3eac801bf605ffddc81041" +checksum = "7f16daaf7e1f95f62c6c3bf8a3fc3d78b08ae9777810c0bb5e94966c7cd57ef0" dependencies = [ "alloy-eips", "alloy-primitives", @@ -116,23 +94,25 @@ dependencies = [ "alloy-trie", "alloy-tx-macros", "auto_impl", + "borsh", "c-kzg", - "derive_more 2.0.1", + "derive_more", "either", "k256", "once_cell", "rand 0.8.5", - "secp256k1", + "secp256k1 0.30.0", "serde", + "serde_json", "serde_with", "thiserror 2.0.12", ] [[package]] name = "alloy-consensus-any" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ab669be40024565acb719daf1b2a050e6dc065fc0bec6050d97a81cdb860bd7" +checksum = "118998d9015332ab1b4720ae1f1e3009491966a0349938a1f43ff45a8a4c6299" dependencies = [ "alloy-consensus", "alloy-eips", @@ -144,9 +124,9 @@ dependencies = [ [[package]] name = "alloy-contract" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ba5d28e15c14226f243d6e329611840135e1b0fa31feaea57c461e0b03b4c7b" +checksum = "7ac9e0c34dc6bce643b182049cdfcca1b8ce7d9c260cbdd561f511873b7e26cd" dependencies = [ "alloy-consensus", "alloy-dyn-abi", @@ -162,13 +142,14 @@ dependencies = [ "futures-util", "serde_json", "thiserror 2.0.12", + "tracing", ] [[package]] name = "alloy-core" -version = "1.2.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad31216895d27d307369daa1393f5850b50bbbd372478a9fa951c095c210627e" +checksum = "62ddde5968de6044d67af107ad835bc0069a7ca245870b94c5958a7d8712b184" dependencies = [ "alloy-dyn-abi", "alloy-json-abi", @@ -179,22 +160,18 @@ dependencies = [ [[package]] name = "alloy-dyn-abi" -version = "1.2.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b95b3deca680efc7e9cba781f1a1db352fa1ea50e6384a514944dcf4419e652" +checksum = "a475bb02d9cef2dbb99065c1664ab3fe1f9352e21d6d5ed3f02cdbfc06ed1abc" dependencies = [ "alloy-json-abi", "alloy-primitives", "alloy-sol-type-parser", "alloy-sol-types", - "arbitrary", - "derive_arbitrary", - "derive_more 2.0.1", "itoa", - "proptest", "serde", "serde_json", - "winnow", + "winnow 1.0.3", ] [[package]] @@ -212,87 +189,80 @@ dependencies = [ [[package]] name = "alloy-eip2930" -version = "0.2.1" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b82752a889170df67bbb36d42ca63c531eb16274f0d7299ae2a680facba17bd" +checksum = "9441120fa82df73e8959ae0e4ab8ade03de2aaae61be313fbf5746277847ce25" dependencies = [ "alloy-primitives", "alloy-rlp", + "borsh", "serde", ] [[package]] name = "alloy-eip7702" -version = "0.6.1" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d4769c6ffddca380b0070d71c8b7f30bed375543fe76bb2f74ec0acf4b7cd16" +checksum = "2919c5a56a1007492da313e7a3b6d45ef5edc5d33416fdec63c0d7a2702a0d20" dependencies = [ "alloy-primitives", "alloy-rlp", + "borsh", "k256", "serde", "thiserror 2.0.12", ] +[[package]] +name = "alloy-eip7928" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b827a6d7784fe3eb3489d40699407a4cdcce74271421a01bdffe60cf573bb16" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "borsh", + "once_cell", + "serde", + "thiserror 2.0.12", +] + [[package]] name = "alloy-eips" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f853de9ca1819f54de80de5d03bfc1bb7c9fafcf092b480a654447141bc354d" +checksum = "e6ef28c9fdad22d4eec52d894f5f2673a0895f1e5ef196734568e68c0f6caca8" dependencies = [ "alloy-eip2124", "alloy-eip2930", "alloy-eip7702", + "alloy-eip7928", "alloy-primitives", "alloy-rlp", "alloy-serde", "auto_impl", + "borsh", "c-kzg", - "derive_more 2.0.1", + "derive_more", "either", "serde", - "sha2 0.10.9", -] - -[[package]] -name = "alloy-ens" -version = "1.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cba413e1baa2a5a765f48d30cb0244d0c6b3cf911c5e66105361744b277da8d" -dependencies = [ - "alloy-primitives", -] - -[[package]] -name = "alloy-evm" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "394b09cf3a32773eedf11828987f9c72dfa74545040be0422e3f5f09a2a3fab9" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-hardforks", - "alloy-primitives", - "alloy-sol-types", - "auto_impl", - "derive_more 2.0.1", - "op-alloy-consensus", - "op-revm", - "revm 24.0.1", - "thiserror 2.0.12", + "serde_with", + "sha2", ] [[package]] name = "alloy-genesis" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8500bcc1037901953771c25cb77e0d4ec0bffd938d93a04715390230d21a612d" +checksum = "bbf9480307b09d22876efb67d30cadd9013134c21f3a17ec9f93fd7536d38024" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-serde", "alloy-trie", + "borsh", "serde", + "serde_with", ] [[package]] @@ -308,11 +278,24 @@ dependencies = [ "dyn-clone", ] +[[package]] +name = "alloy-hardforks" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83ba208044232d14d4adbfa77e57d6329f51bc1acc21f5667bb7db72d88a0831" +dependencies = [ + "alloy-chains", + "alloy-eip2124", + "alloy-primitives", + "auto_impl", + "dyn-clone", +] + [[package]] name = "alloy-json-abi" -version = "1.2.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15516116086325c157c18261d768a20677f0f699348000ed391d4ad0dcb82530" +checksum = "7c36c9d7f9021601b04bfef14a4b64849f6d73116a4e91e071d7fbfe10247901" dependencies = [ "alloy-primitives", "alloy-sol-type-parser", @@ -322,9 +305,9 @@ dependencies = [ [[package]] name = "alloy-json-rpc" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4997a9873c8639d079490f218e50e5fa07e70f957e9fc187c0a0535977f482f" +checksum = "422d110f1c40f1f8d0e5562b0b649c35f345fccb7093d9f02729943dcd1eef71" dependencies = [ "alloy-primitives", "alloy-sol-types", @@ -337,9 +320,9 @@ dependencies = [ [[package]] name = "alloy-network" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0306e8d148b7b94d988615d367443c1b9d6d2e9fecd2e1f187ac5153dce56f5" +checksum = "7197a66d94c4de1591cdc16a9bcea5f8cccd0da81b865b49aef97b1b4016e0fa" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -354,7 +337,7 @@ dependencies = [ "alloy-sol-types", "async-trait", "auto_impl", - "derive_more 2.0.1", + "derive_more", "futures-utils-wasm", "serde", "serde_json", @@ -363,9 +346,9 @@ dependencies = [ [[package]] name = "alloy-network-primitives" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3eef189583f4c53d231dd1297b28a675ff842b551fb34715f562868a1937431a" +checksum = "eb82711d59a43fdfd79727c99f270b974c784ec4eb5728a0d0d22f26716c87ef" dependencies = [ "alloy-consensus", "alloy-eips", @@ -376,17 +359,18 @@ dependencies = [ [[package]] name = "alloy-node-bindings" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e712c068ebe9f690d7d06610ed2e52639cb9570c81420d7a5fb0c9780625086" +checksum = "a9b2fda91b56bb08907cd44c5068130360e027e46a8c17612d386869fa7940be" dependencies = [ "alloy-genesis", - "alloy-hardforks", + "alloy-hardforks 0.2.7", "alloy-network", "alloy-primitives", "alloy-signer", "alloy-signer-local", "k256", + "libc", "rand 0.8.5", "serde_json", "tempfile", @@ -395,49 +379,20 @@ dependencies = [ "url", ] -[[package]] -name = "alloy-op-evm" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f32538cc243ec5d4603da9845cc2f5254c6a3a78e82475beb1a2a1de6c0d36c" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-evm", - "alloy-op-hardforks", - "alloy-primitives", - "auto_impl", - "op-alloy-consensus", - "op-revm", - "revm 24.0.1", -] - -[[package]] -name = "alloy-op-hardforks" -version = "0.2.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08b147547aff595aa3d4c2fc2c8146263e18d3372909def423619ed631ecbcfa" -dependencies = [ - "alloy-hardforks", - "auto_impl", -] - [[package]] name = "alloy-primitives" -version = "1.2.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6177ed26655d4e84e00b65cb494d4e0b8830e7cae7ef5d63087d445a2600fb55" +checksum = "4885c1409b6936c4898e646ef58baf6ec54edaf6d8179f79df805a7b85b7cf3e" dependencies = [ "alloy-rlp", "arbitrary", "bytes", "cfg-if", "const-hex", - "derive_arbitrary", - "derive_more 2.0.1", + "derive_more", "foldhash", - "getrandom 0.3.3", - "hashbrown 0.15.4", + "hashbrown 0.17.1", "indexmap 2.9.0", "itoa", "k256", @@ -446,18 +401,19 @@ dependencies = [ "proptest", "proptest-derive", "rand 0.9.1", + "rapidhash", "ruint", "rustc-hash", + "secp256k1 0.31.1", "serde", "sha3", - "tiny-keccak", ] [[package]] name = "alloy-provider" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea624ddcdad357c33652b86aa7df9bd21afd2080973389d3facf1a221c573948" +checksum = "bf6b18b929ef1d078b834c3631e9c925177f3b23ddc6fa08a722d13047205876" dependencies = [ "alloy-chains", "alloy-consensus", @@ -481,11 +437,10 @@ dependencies = [ "either", "futures", "futures-utils-wasm", - "http 1.3.1", "lru", "parking_lot", "pin-project", - "reqwest 0.12.20", + "reqwest 0.13.4", "serde", "serde_json", "thiserror 2.0.12", @@ -495,27 +450,6 @@ dependencies = [ "wasmtimer", ] -[[package]] -name = "alloy-pubsub" -version = "1.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ea3227fa5f627d22b7781e88bc2fe79ba1792d5535b4161bc8fc99cdcd8bedd" -dependencies = [ - "alloy-json-rpc", - "alloy-primitives", - "alloy-transport", - "bimap", - "futures", - "parking_lot", - "serde", - "serde_json", - "tokio", - "tokio-stream", - "tower", - "tracing", - "wasmtimer", -] - [[package]] name = "alloy-rlp" version = "0.3.12" @@ -535,39 +469,37 @@ checksum = "64b728d511962dda67c1bc7ea7c03736ec275ed2cf4c35d9585298ac9ccf3b73" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] name = "alloy-rpc-client" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e43d00b4de38432304c4e4b01ae6a3601490fd9824c852329d158763ec18663c" +checksum = "94fcc9604042ca80bd37aa5e232ea1cd851f337e31e2babbbb345bc0b1c30de3" dependencies = [ "alloy-json-rpc", "alloy-primitives", "alloy-transport", "alloy-transport-http", - "async-stream", "futures", "pin-project", - "reqwest 0.12.20", + "reqwest 0.13.4", "serde", "serde_json", "tokio", "tokio-stream", "tower", "tracing", - "tracing-futures", "url", "wasmtimer", ] [[package]] name = "alloy-rpc-types" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bf22ddb69a436f28bbdda7daf34fe011ee9926fa13bfce89fa023aca9ce2b2f" +checksum = "4faad925d3a669ffc15f43b3deec7fbdf2adeb28a4d6f9cf4bc661698c0f8f4b" dependencies = [ "alloy-primitives", "alloy-rpc-types-engine", @@ -578,9 +510,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-anvil" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ecd1c60085d8cbc3562e16e264a3cd68f42e54dc16b0d40645e5e42841bc042" +checksum = "47df51bedb3e6062cb9981187a51e86d0d64a4de66eb0855e9efe6574b044ddf" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -590,9 +522,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-any" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5958f2310d69f4806e6f6b90ceb4f2b781cc5a843517a7afe2e7cfec6de3cfb9" +checksum = "3823026d1ed239a40f12364fac50726c8daf1b6ab8077a97212c5123910429ed" dependencies = [ "alloy-consensus-any", "alloy-rpc-types-eth", @@ -601,16 +533,16 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e5b09d86d0c015cb8400c5d1d0483425670bef4fc1260336aea9ef6d4b9540c" +checksum = "bb9b97b6e7965679ad22df297dda809b11cebc13405c1b537e5cffecc95834fa" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", "alloy-serde", - "derive_more 2.0.1", + "derive_more", "jsonwebtoken", "rand 0.8.5", "serde", @@ -619,9 +551,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1826285e4ffc2372a8c061d5cc145858e67a0be3309b768c5b77ddb6b9e6cbc7" +checksum = "59c095f92c4e1ff4981d89e9aa02d5f98c762a1980ab66bec49c44be11349da2" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -634,14 +566,15 @@ dependencies = [ "itertools 0.14.0", "serde", "serde_json", + "serde_with", "thiserror 2.0.12", ] [[package]] name = "alloy-rpc-types-trace" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1e8f7fa774a1d6f7b3654686f68955631e55f687e03da39c0bd77a9418d57a1" +checksum = "2e5a4d010f86cd4e01e5205ec273911e538e1738e76d8bafe9ecd245910ea5a3" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -653,9 +586,9 @@ dependencies = [ [[package]] name = "alloy-serde" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "906ce0190afeded19cb2e963cb8507c975a7862216b9e74f39bf91ddee6ae74b" +checksum = "11ece63b89294b8614ab3f483560c08d016930f842bf36da56bf0b764a15c11e" dependencies = [ "alloy-primitives", "serde", @@ -664,13 +597,11 @@ dependencies = [ [[package]] name = "alloy-signer" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c89baab06195c4be9c5d66f15c55e948013d1aff3ec1cfb0ed469e1423313fce" +checksum = "43f447aefab0f1c0649f71edc33f590992d4e122bc35fb9cdbbf67d4421ace85" dependencies = [ - "alloy-dyn-abi", "alloy-primitives", - "alloy-sol-types", "async-trait", "auto_impl", "either", @@ -679,81 +610,41 @@ dependencies = [ "thiserror 2.0.12", ] -[[package]] -name = "alloy-signer-ledger" -version = "1.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccaa089aa033669ed92f05e365e3a12d7a29b0cc5ee415917f3bf381fa1f346d" -dependencies = [ - "alloy-consensus", - "alloy-dyn-abi", - "alloy-network", - "alloy-primitives", - "alloy-signer", - "alloy-sol-types", - "async-trait", - "coins-ledger", - "futures-util", - "semver 1.0.26", - "thiserror 2.0.12", - "tracing", -] - [[package]] name = "alloy-signer-local" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a249a923e302ac6db932567c43945392f0b6832518aab3c4274858f58756774" +checksum = "f721f4bf2e4812e5505aaf5de16ef3065a8e26b9139ac885862d00b5a55a659a" dependencies = [ "alloy-consensus", "alloy-network", "alloy-primitives", "alloy-signer", "async-trait", - "coins-bip32", - "coins-bip39", - "eth-keystore", "k256", "rand 0.8.5", "thiserror 2.0.12", ] -[[package]] -name = "alloy-signer-trezor" -version = "1.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a087d62a5c2b109c2f7521da31d72ba914025141f2aa1c0be122ddc3f0ce31b" -dependencies = [ - "alloy-consensus", - "alloy-network", - "alloy-primitives", - "alloy-signer", - "async-trait", - "semver 1.0.26", - "thiserror 2.0.12", - "tracing", - "trezor-client", -] - [[package]] name = "alloy-sol-macro" -version = "1.2.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a14f21d053aea4c6630687c2f4ad614bed4c81e14737a9b904798b24f30ea849" +checksum = "840128ed2b2971d6d4668a553fe403a82683d3acc646c73e75887e7157408033" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] name = "alloy-sol-macro-expander" -version = "1.2.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34d99282e7c9ef14eb62727981a985a01869e586d1dec729d3bb33679094c100" +checksum = "63ec265e5d65d725175f6ca7711c970824c90ef9c0d1f1973711d4150ee612dd" dependencies = [ "alloy-json-abi", "alloy-sol-macro-input", @@ -763,16 +654,16 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.104", + "sha3", + "syn 2.0.117", "syn-solidity", - "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "1.2.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eda029f955b78e493360ee1d7bd11e1ab9f2a220a5715449babc79d6d0a01105" +checksum = "89bf01077f18650876cfa682eb1f949967b5cde03f1a51c955c469d2c9b4aa67" dependencies = [ "alloy-json-abi", "const-hex", @@ -782,25 +673,25 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.104", + "syn 2.0.117", "syn-solidity", ] [[package]] name = "alloy-sol-type-parser" -version = "1.2.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10db1bd7baa35bc8d4a1b07efbf734e73e5ba09f2580fb8cee3483a36087ceb2" +checksum = "857b470ecdd2ed38beaf82ad1a38c516a8ff75266750f38b9eeed001d575241b" dependencies = [ "serde", - "winnow", + "winnow 1.0.3", ] [[package]] name = "alloy-sol-types" -version = "1.2.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58377025a47d8b8426b3e4846a251f2c1991033b27f517aade368146f6ab1dfe" +checksum = "384cf252de0db2dec52821eac037a7f57e2aa33fe5b900ce6fe39973402341f1" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -810,14 +701,14 @@ dependencies = [ [[package]] name = "alloy-transport" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d1ae10b1bc77fde38161e242749e41e65e34000d05da0a3d3f631e03bfcb19e" +checksum = "8098f965442a9feb620965ba4b4be5e2b320f4ec5a3fff6bfa9e1ff7ef42bed1" dependencies = [ "alloy-json-rpc", - "alloy-primitives", + "auto_impl", "base64 0.22.1", - "derive_more 2.0.1", + "derive_more", "futures", "futures-utils-wasm", "parking_lot", @@ -833,84 +724,46 @@ dependencies = [ [[package]] name = "alloy-transport-http" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b234272ee449e32c9f1afbbe4ee08ea7c4b52f14479518f95c844ab66163c545" +checksum = "e8597d36d546e1dab822345ad563243ec3920e199322cb554ce56c8ef1a1e2e7" dependencies = [ "alloy-json-rpc", "alloy-transport", - "reqwest 0.12.20", + "itertools 0.14.0", + "reqwest 0.13.4", "serde_json", "tower", "tracing", "url", ] -[[package]] -name = "alloy-transport-ipc" -version = "1.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "061672d736144eb5aae13ca67cfec8e5e69a65bef818cb1a2ab2345d55c50ab4" -dependencies = [ - "alloy-json-rpc", - "alloy-pubsub", - "alloy-transport", - "bytes", - "futures", - "interprocess", - "pin-project", - "serde", - "serde_json", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "alloy-transport-ws" -version = "1.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40b01f10382c2aea797d710279b24687a1e9e09a09ecd145f84f636f2a8a3fcc" -dependencies = [ - "alloy-pubsub", - "alloy-transport", - "futures", - "http 1.3.1", - "rustls", - "serde_json", - "tokio", - "tokio-tungstenite", - "tracing", - "ws_stream_wasm", -] - [[package]] name = "alloy-trie" -version = "0.8.1" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "983d99aa81f586cef9dae38443245e585840fcf0fc58b09aee0b1f27aed1d500" +checksum = "3f14b5d9b2c2173980202c6ff470d96e7c5e202c65a9f67884ad565226df7fbb" dependencies = [ "alloy-primitives", "alloy-rlp", - "arrayvec", - "derive_more 2.0.1", + "derive_more", "nybbles", "serde", "smallvec", + "thiserror 2.0.12", "tracing", ] [[package]] name = "alloy-tx-macros" -version = "1.0.12" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b75ef8609ea2b31c799b0a56c724dca4c73105c5ccc205d9dfeb1d038df6a1da" +checksum = "d69722eddcdf1ce096c3ab66cf8116999363f734eb36fe94a148f4f71c85da84" dependencies = [ - "alloy-primitives", - "darling", + "darling 0.23.0", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -928,17 +781,6 @@ dependencies = [ "libc", ] -[[package]] -name = "annotate-snippets" -version = "0.11.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "710e8eae58854cdc1790fcb56cca04d712a17be849eeb81da2a724bf4bae2bc4" -dependencies = [ - "anstyle", - "memchr", - "unicode-width", -] - [[package]] name = "anstream" version = "0.6.19" @@ -1043,7 +885,7 @@ dependencies = [ "fnv", "hashbrown 0.15.4", "itertools 0.13.0", - "num-bigint 0.4.6", + "num-bigint", "num-integer", "num-traits", "zeroize", @@ -1060,7 +902,7 @@ dependencies = [ "ark-serialize 0.3.0", "ark-std 0.3.0", "derivative", - "num-bigint 0.4.6", + "num-bigint", "num-traits", "paste", "rustc_version 0.3.3", @@ -1080,7 +922,7 @@ dependencies = [ "derivative", "digest 0.10.7", "itertools 0.10.5", - "num-bigint 0.4.6", + "num-bigint", "num-traits", "paste", "rustc_version 0.4.1", @@ -1101,7 +943,7 @@ dependencies = [ "digest 0.10.7", "educe", "itertools 0.13.0", - "num-bigint 0.4.6", + "num-bigint", "num-traits", "paste", "zeroize", @@ -1134,7 +976,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60" dependencies = [ "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -1143,7 +985,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "db2fd794a08ccb318058009eefdf15bcaaaaf6f8161eb3345f907222bac38b20" dependencies = [ - "num-bigint 0.4.6", + "num-bigint", "num-traits", "quote", "syn 1.0.109", @@ -1155,7 +997,7 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" dependencies = [ - "num-bigint 0.4.6", + "num-bigint", "num-traits", "proc-macro2", "quote", @@ -1168,11 +1010,11 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09be120733ee33f7693ceaa202ca41accd5653b779563608f1234f78ae07c4b3" dependencies = [ - "num-bigint 0.4.6", + "num-bigint", "num-traits", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -1201,7 +1043,7 @@ dependencies = [ "ark-relations", "ark-std 0.5.0", "educe", - "num-bigint 0.4.6", + "num-bigint", "num-integer", "num-traits", "tracing", @@ -1237,7 +1079,7 @@ checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" dependencies = [ "ark-std 0.4.0", "digest 0.10.7", - "num-bigint 0.4.6", + "num-bigint", ] [[package]] @@ -1250,7 +1092,7 @@ dependencies = [ "ark-std 0.5.0", "arrayvec", "digest 0.10.7", - "num-bigint 0.4.6", + "num-bigint", ] [[package]] @@ -1261,7 +1103,7 @@ checksum = "213888f660fddcca0d257e88e54ac05bca01885f258ccdf695bafd77031bb69d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -1305,9 +1147,6 @@ name = "arrayvec" version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" -dependencies = [ - "serde", -] [[package]] name = "async-stream" @@ -1328,7 +1167,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -1339,35 +1178,9 @@ checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", -] - -[[package]] -name = "async_io_stream" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6d7b9decdf35d8908a7e3ef02f64c5e9b1695e230154c0e8de3969142d9b94c" -dependencies = [ - "futures", - "pharos", - "rustc_version 0.4.1", -] - -[[package]] -name = "atomic" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a89cbf775b137e9b968e67227ef7f775587cde3fd31b0d8599dbd0f598a48340" -dependencies = [ - "bytemuck", + "syn 2.0.117", ] -[[package]] -name = "atomic-waker" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" - [[package]] name = "aurora-engine-modexp" version = "1.2.0" @@ -1386,7 +1199,7 @@ checksum = "ffdcb70bdbc4d478427380519163274ac86e52916e10f0a8889adf0f96d3fee7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -1395,6 +1208,28 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" +[[package]] +name = "aws-lc-rs" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ec2f1fc3ec205783a5da9a7e6c1509cc69dedf09a1949e412c1e18469326d00" +dependencies = [ + "aws-lc-sys", + "zeroize", +] + +[[package]] +name = "aws-lc-sys" +version = "0.41.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a2f9779ce85b93ab6170dd940ad0169b5766ff848247aff13bb788b832fe3f4" +dependencies = [ + "cc", + "cmake", + "dunce", + "fs_extra", +] + [[package]] name = "backtrace" version = "0.3.75" @@ -1434,27 +1269,6 @@ version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "55248b47b0caf0546f7988906588779981c43bb1bc9d0c44087278f80cdb44ba" -[[package]] -name = "bech32" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445" - -[[package]] -name = "bimap" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "230c5f1ca6a325a32553f8640d31ac9b49f2411e901e427570154868b46da4f7" - -[[package]] -name = "bincode" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" -dependencies = [ - "serde", -] - [[package]] name = "bit-set" version = "0.8.0" @@ -1494,11 +1308,11 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.9.1" +version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967" +checksum = "c4512299f36f043ab09a583e57bceb5a5aab7a73db1805848e8fef3c9e8c78b3" dependencies = [ - "serde", + "serde_core", ] [[package]] @@ -1515,41 +1329,28 @@ dependencies = [ ] [[package]] -name = "blake3" -version = "1.8.2" +name = "block-buffer" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" dependencies = [ - "arrayref", - "arrayvec", - "cc", - "cfg-if", - "constant_time_eq", + "generic-array", ] [[package]] name = "block-buffer" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" -dependencies = [ - "generic-array", -] - -[[package]] -name = "block-buffer" -version = "0.10.4" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +checksum = "cdd35008169921d80bc60d3d0ab416eecb028c4cd653352907921d95084790be" dependencies = [ - "generic-array", + "hybrid-array", ] [[package]] name = "blst" -version = "0.3.15" +version = "0.3.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fd49896f12ac9b6dcd7a5998466b9b58263a695a3dd1ecc1aaca2e12a90b080" +checksum = "dcdb4c7013139a150f9fc55d123186dbfaba0d912817466282c73ac49e71fb45" dependencies = [ "cc", "glob", @@ -1558,48 +1359,27 @@ dependencies = [ ] [[package]] -name = "bon" -version = "3.6.4" +name = "borsh" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f61138465baf186c63e8d9b6b613b508cd832cba4ce93cf37ce5f096f91ac1a6" +checksum = "cfd1e3f8955a5d7de9fab72fc8373fade9fb8a703968cb200ae3dc6cf08e185a" dependencies = [ - "bon-macros", - "rustversion", + "borsh-derive", + "bytes", + "cfg_aliases", ] [[package]] -name = "bon-macros" -version = "3.6.4" +name = "borsh-derive" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40d1dad34aa19bf02295382f08d9bc40651585bd497266831d40ee6296fb49ca" +checksum = "bfcfdc083699101d5a7965e49925975f2f55060f94f9a05e7187be95d530ca59" dependencies = [ - "darling", - "ident_case", - "prettyplease", + "once_cell", + "proc-macro-crate", "proc-macro2", "quote", - "rustversion", - "syn 2.0.104", -] - -[[package]] -name = "bs58" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" -dependencies = [ - "sha2 0.10.9", - "tinyvec", -] - -[[package]] -name = "bstr" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4" -dependencies = [ - "memchr", - "serde", + "syn 2.0.117", ] [[package]] @@ -1614,12 +1394,6 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" -[[package]] -name = "bytemuck" -version = "1.23.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c76a5792e44e4abe34d3abf15636779261d45a7450612059293d1d2cfc63422" - [[package]] name = "byteorder" version = "1.5.0" @@ -1635,30 +1409,11 @@ dependencies = [ "serde", ] -[[package]] -name = "bzip2" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49ecfb22d906f800d4fe833b6282cf4dc1c298f5057ca0b5445e5c209735ca47" -dependencies = [ - "bzip2-sys", -] - -[[package]] -name = "bzip2-sys" -version = "0.1.13+1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225bff33b2141874fe80d71e07d6eec4f85c5c216453dd96388240f96e1acc14" -dependencies = [ - "cc", - "pkg-config", -] - [[package]] name = "c-kzg" -version = "2.1.1" +version = "2.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7318cfa722931cb5fe0838b98d3ce5621e75f6a6408abc21721d80de9223f2e4" +checksum = "6648ed1e4ea8e8a1a4a2c78e1cda29a3fd500bc622899c340d8525ea9a76b24a" dependencies = [ "blst", "cc", @@ -1671,13 +1426,22 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.27" +version = "1.2.62" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d487aa071b5f64da6f19a3e848e3578944b726ee5a4854b82172f02aa876bfdc" +checksum = "a1dce859f0832a7d088c4f1119888ab94ef4b5d6795d1ce05afb7fe159d79f98" dependencies = [ + "find-msvc-tools", + "jobserver", + "libc", "shlex", ] +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + [[package]] name = "cfg-if" version = "1.0.1" @@ -1703,43 +1467,6 @@ dependencies = [ "windows-link", ] -[[package]] -name = "ciborium" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" -dependencies = [ - "ciborium-io", - "ciborium-ll", - "serde", -] - -[[package]] -name = "ciborium-io" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" - -[[package]] -name = "ciborium-ll" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" -dependencies = [ - "ciborium-io", - "half", -] - -[[package]] -name = "cipher" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" -dependencies = [ - "crypto-common", - "inout", -] - [[package]] name = "clap" version = "4.5.40" @@ -1760,9 +1487,6 @@ dependencies = [ "anstyle", "clap_lex", "strsim", - "terminal_size", - "unicase", - "unicode-width", ] [[package]] @@ -1774,7 +1498,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -1784,77 +1508,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675" [[package]] -name = "coins-bip32" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2073678591747aed4000dd468b97b14d7007f7936851d3f2f01846899f5ebf08" -dependencies = [ - "bs58", - "coins-core", - "digest 0.10.7", - "hmac", - "k256", - "serde", - "sha2 0.10.9", - "thiserror 1.0.69", -] - -[[package]] -name = "coins-bip39" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74b169b26623ff17e9db37a539fe4f15342080df39f129ef7631df7683d6d9d4" -dependencies = [ - "bitvec", - "coins-bip32", - "hmac", - "once_cell", - "pbkdf2 0.12.2", - "rand 0.8.5", - "sha2 0.10.9", - "thiserror 1.0.69", -] - -[[package]] -name = "coins-core" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62b962ad8545e43a28e14e87377812ba9ae748dd4fd963f4c10e9fcc6d13475b" -dependencies = [ - "base64 0.21.7", - "bech32", - "bs58", - "const-hex", - "digest 0.10.7", - "generic-array", - "ripemd", - "serde", - "sha2 0.10.9", - "sha3", - "thiserror 1.0.69", -] - -[[package]] -name = "coins-ledger" -version = "0.12.0" +name = "cmake" +version = "0.1.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab9bc0994d0aa0f4ade5f3a9baf4a8d936f250278c85a1124b401860454246ab" +checksum = "c0f78a02292a74a88ac736019ab962ece0bc380e3f977bf72e376c5d78ff0678" dependencies = [ - "async-trait", - "byteorder", - "cfg-if", - "const-hex", - "getrandom 0.2.16", - "hidapi-rusb", - "js-sys", - "log", - "nix", - "once_cell", - "thiserror 1.0.69", - "tokio", - "tracing", - "wasm-bindgen", - "wasm-bindgen-futures", + "cc", ] [[package]] @@ -1864,27 +1523,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" [[package]] -name = "comfy-table" -version = "7.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a65ebfec4fb190b6f90e944a817d60499ee0744e582530e2c9900a22e591d9a" -dependencies = [ - "crossterm", - "unicode-segmentation", - "unicode-width", -] - -[[package]] -name = "console" -version = "0.15.11" +name = "combine" +version = "4.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "054ccb5b10f9f2cbf51eb355ca1d05c2d279ce1804688d0db74b4733a5aeafd8" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" dependencies = [ - "encode_unicode", - "libc", - "once_cell", - "unicode-width", - "windows-sys 0.59.0", + "bytes", + "memchr", ] [[package]] @@ -1894,7 +1539,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "83e22e0ed40b96a48d3db274f72fd365bd78f67af39b6bbd47e8a15e1c6207ff" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.17", "hex", "proptest", "serde", @@ -1926,21 +1571,6 @@ dependencies = [ "unicode-xid", ] -[[package]] -name = "constant_time_eq" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" - -[[package]] -name = "convert_case" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb402b8d4c85569410425650ce3eddc7d698ed96d39a73f941b08fb63082f1e7" -dependencies = [ - "unicode-segmentation", -] - [[package]] name = "core-foundation" version = "0.9.4" @@ -1976,6 +1606,15 @@ dependencies = [ "libc", ] +[[package]] +name = "cpufeatures" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201" +dependencies = [ + "libc", +] + [[package]] name = "crc" version = "3.3.0" @@ -1991,62 +1630,12 @@ version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" -[[package]] -name = "crc32fast" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "crossbeam-deque" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" -dependencies = [ - "crossbeam-epoch", - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.9.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" -dependencies = [ - "crossbeam-utils", -] - [[package]] name = "crossbeam-utils" version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" -[[package]] -name = "crossterm" -version = "0.28.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "829d955a0bb380ef178a640b91779e3987da38c9aea133b20614cfed8cdea9c6" -dependencies = [ - "bitflags 2.9.1", - "crossterm_winapi", - "parking_lot", - "rustix 0.38.44", - "winapi", -] - -[[package]] -name = "crossterm_winapi" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b" -dependencies = [ - "winapi", -] - [[package]] name = "crunchy" version = "0.2.3" @@ -2076,12 +1665,12 @@ dependencies = [ ] [[package]] -name = "ctr" -version = "0.9.2" +name = "crypto-common" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" +checksum = "ce6e4c961d6cd6c9a86db418387425e8bdeaf05b3c8bc1411e6dca4c252f1453" dependencies = [ - "cipher", + "hybrid-array", ] [[package]] @@ -2090,8 +1679,18 @@ version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" dependencies = [ - "darling_core", - "darling_macro", + "darling_core 0.20.11", + "darling_macro 0.20.11", +] + +[[package]] +name = "darling" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25ae13da2f202d56bd7f91c25fba009e7717a1e4a1cc98a76d844b65ae912e9d" +dependencies = [ + "darling_core 0.23.0", + "darling_macro 0.23.0", ] [[package]] @@ -2105,7 +1704,21 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.104", + "syn 2.0.117", +] + +[[package]] +name = "darling_core" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9865a50f7c335f53564bb694ef660825eb8610e0a53d3e11bf1b0d3df31e03b0" +dependencies = [ + "ident_case", + "proc-macro2", + "quote", + "serde", + "strsim", + "syn 2.0.117", ] [[package]] @@ -2114,9 +1727,20 @@ version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ - "darling_core", + "darling_core 0.20.11", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "darling_macro" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d" +dependencies = [ + "darling_core 0.23.0", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -2133,12 +1757,6 @@ dependencies = [ "parking_lot_core", ] -[[package]] -name = "data-encoding" -version = "2.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" - [[package]] name = "der" version = "0.7.10" @@ -2146,7 +1764,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" dependencies = [ "const-oid", - "pem-rfc7468", "zeroize", ] @@ -2173,13 +1790,13 @@ dependencies = [ [[package]] name = "derive-where" -version = "1.5.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "510c292c8cf384b1a340b816a9a6cf2599eb8f566a44949024af88418000c50b" +checksum = "d08b3a0bcc0d079199cd476b2cae8435016ec11d1c0986c6901c5ac223041534" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -2190,158 +1807,75 @@ checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] -name = "derive_builder" -version = "0.20.2" +name = "derive_more" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "507dfb09ea8b7fa618fcf76e953f4f5e192547945816d5358edffe39f6f94947" +checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" dependencies = [ - "derive_builder_macro", + "derive_more-impl", ] [[package]] -name = "derive_builder_core" -version = "0.20.2" +name = "derive_more-impl" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8" +checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" dependencies = [ - "darling", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", + "unicode-xid", ] [[package]] -name = "derive_builder_macro" -version = "0.20.2" +name = "digest" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" +checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" dependencies = [ - "derive_builder_core", - "syn 2.0.104", + "generic-array", ] [[package]] -name = "derive_more" -version = "1.0.0" +name = "digest" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "derive_more-impl 1.0.0", + "block-buffer 0.10.4", + "const-oid", + "crypto-common 0.1.6", + "subtle", ] [[package]] -name = "derive_more" -version = "2.0.1" +name = "digest" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +checksum = "f1dd6dbb5841937940781866fa1281a1ff7bd3bf827091440879f9994983d5c2" dependencies = [ - "derive_more-impl 2.0.1", + "block-buffer 0.12.0", + "crypto-common 0.2.2", ] [[package]] -name = "derive_more-impl" -version = "1.0.0" +name = "displaydoc" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", - "unicode-xid", + "syn 2.0.117", ] [[package]] -name = "derive_more-impl" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" -dependencies = [ - "convert_case", - "proc-macro2", - "quote", - "syn 2.0.104", - "unicode-xid", -] - -[[package]] -name = "dialoguer" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "658bce805d770f407bc62102fca7c2c64ceef2fbcb2b8bd19d2765ce093980de" -dependencies = [ - "console", - "shell-words", - "tempfile", - "thiserror 1.0.69", - "zeroize", -] - -[[package]] -name = "digest" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" -dependencies = [ - "generic-array", -] - -[[package]] -name = "digest" -version = "0.10.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" -dependencies = [ - "block-buffer 0.10.4", - "const-oid", - "crypto-common", - "subtle", -] - -[[package]] -name = "dirs" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3e8aa94d75141228480295a7d0e7feb620b1a5ad9f12bc40be62411e38cce4e" -dependencies = [ - "dirs-sys", -] - -[[package]] -name = "dirs-sys" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab" -dependencies = [ - "libc", - "option-ext", - "redox_users", - "windows-sys 0.60.2", -] - -[[package]] -name = "displaydoc" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.104", -] - -[[package]] -name = "doctest-file" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aac81fa3e28d21450aa4d2ac065992ba96a1d7303efbce51a95f4fd175b67562" - -[[package]] -name = "dunce" -version = "1.0.5" +name = "dunce" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" @@ -2375,7 +1909,7 @@ dependencies = [ "enum-ordinalize", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -2399,7 +1933,6 @@ dependencies = [ "ff", "generic-array", "group", - "pem-rfc7468", "pkcs8", "rand_core 0.6.4", "sec1", @@ -2408,12 +1941,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "encode_unicode" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0" - [[package]] name = "encoding_rs" version = "0.8.35" @@ -2440,7 +1967,7 @@ checksum = "0d28318a75d4aead5c4db25382e8ef717932d0346600cacae6357eb5941bc5ff" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -2449,16 +1976,6 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" -[[package]] -name = "erased-serde" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e004d887f51fcb9fef17317a2f3525c887d8aa3f4f50fed920816a688284a5b7" -dependencies = [ - "serde", - "typeid", -] - [[package]] name = "errno" version = "0.3.13" @@ -2469,28 +1986,6 @@ dependencies = [ "windows-sys 0.60.2", ] -[[package]] -name = "eth-keystore" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fda3bf123be441da5260717e0661c25a2fd9cb2b2c1d20bf2e05580047158ab" -dependencies = [ - "aes", - "ctr", - "digest 0.10.7", - "hex", - "hmac", - "pbkdf2 0.11.0", - "rand 0.8.5", - "scrypt", - "serde", - "serde_json", - "sha2 0.10.9", - "sha3", - "thiserror 1.0.69", - "uuid 0.8.2", -] - [[package]] name = "eyre" version = "0.6.12" @@ -2535,40 +2030,15 @@ version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" dependencies = [ - "byteorder", - "ff_derive", "rand_core 0.6.4", "subtle", ] [[package]] -name = "ff_derive" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f10d12652036b0e99197587c6ba87a8fc3031986499973c030d8b44fcc151b60" -dependencies = [ - "addchain", - "num-bigint 0.3.3", - "num-integer", - "num-traits", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "figment" -version = "0.10.19" +name = "find-msvc-tools" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cb01cd46b0cf372153850f4c6c272d9cbea2da513e07538405148f95bd789f3" -dependencies = [ - "atomic", - "pear", - "serde", - "toml", - "uncased", - "version_check", -] +checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582" [[package]] name = "fixed-hash" @@ -2582,17 +2052,6 @@ dependencies = [ "static_assertions", ] -[[package]] -name = "flate2" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a3d7db9596fecd151c5f638c0ee5d5bd487b6e0ea232e5dc96d5250f6f94b1d" -dependencies = [ - "crc32fast", - "libz-rs-sys", - "miniz_oxide", -] - [[package]] name = "fnv" version = "1.0.7" @@ -2601,9 +2060,9 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "foldhash" -version = "0.1.5" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" +checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" [[package]] name = "foreign-types" @@ -2620,23 +2079,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" -[[package]] -name = "forge-script-sequence" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" -dependencies = [ - "alloy-network", - "alloy-primitives", - "eyre", - "foundry-common", - "foundry-compilers", - "foundry-config", - "revm-inspectors", - "serde", - "serde_json", - "walkdir", -] - [[package]] name = "form_urlencoded" version = "1.2.2" @@ -2647,370 +2089,21 @@ dependencies = [ ] [[package]] -name = "foundry-block-explorers" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dd57f39a860475780c0b001167b2bb9039e78d8d09323c6949897f5351ffae6" -dependencies = [ - "alloy-chains", - "alloy-json-abi", - "alloy-primitives", - "foundry-compilers", - "reqwest 0.12.20", - "semver 1.0.26", - "serde", - "serde_json", - "thiserror 1.0.69", - "tracing", -] - -[[package]] -name = "foundry-cheatcodes" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" -dependencies = [ - "alloy-chains", - "alloy-consensus", - "alloy-dyn-abi", - "alloy-ens", - "alloy-evm", - "alloy-genesis", - "alloy-json-abi", - "alloy-network", - "alloy-primitives", - "alloy-provider", - "alloy-rlp", - "alloy-rpc-types", - "alloy-signer", - "alloy-signer-local", - "alloy-sol-types", - "base64 0.22.1", - "dialoguer", - "ecdsa", - "eyre", - "forge-script-sequence", - "foundry-cheatcodes-spec", - "foundry-common", - "foundry-compilers", - "foundry-config", - "foundry-evm-core", - "foundry-evm-traces", - "foundry-wallets", - "itertools 0.14.0", - "jsonpath_lib", - "k256", - "memchr", - "p256", - "parking_lot", - "proptest", - "rand 0.9.1", - "revm 24.0.1", - "revm-inspectors", - "semver 1.0.26", - "serde", - "serde_json", - "thiserror 2.0.12", - "toml", - "tracing", - "walkdir", -] - -[[package]] -name = "foundry-cheatcodes-spec" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" -dependencies = [ - "alloy-sol-types", - "foundry-macros", - "serde", -] - -[[package]] -name = "foundry-common" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" -dependencies = [ - "alloy-consensus", - "alloy-dyn-abi", - "alloy-eips", - "alloy-json-abi", - "alloy-json-rpc", - "alloy-network", - "alloy-primitives", - "alloy-provider", - "alloy-pubsub", - "alloy-rpc-client", - "alloy-rpc-types", - "alloy-serde", - "alloy-sol-types", - "alloy-transport", - "alloy-transport-http", - "alloy-transport-ipc", - "alloy-transport-ws", - "anstream", - "anstyle", - "chrono", - "ciborium", - "clap", - "comfy-table", - "dunce", - "eyre", - "flate2", - "foundry-block-explorers", - "foundry-common-fmt", - "foundry-compilers", - "foundry-config", - "itertools 0.14.0", - "jiff", - "num-format", - "path-slash", - "reqwest 0.12.20", - "semver 1.0.26", - "serde", - "serde_json", - "solar-parse", - "solar-sema", - "terminal_size", - "thiserror 2.0.12", - "tokio", - "tower", - "tracing", - "url", - "vergen", - "walkdir", - "yansi", -] - -[[package]] -name = "foundry-common-fmt" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" -dependencies = [ - "alloy-consensus", - "alloy-dyn-abi", - "alloy-network", - "alloy-primitives", - "alloy-rpc-types", - "alloy-serde", - "chrono", - "revm 24.0.1", - "serde", - "serde_json", - "yansi", -] - -[[package]] -name = "foundry-compilers" -version = "0.17.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72acadbe10bbcf1d2765155808a4b79744061ffba3ce78680ac9c86bd2222802" -dependencies = [ - "alloy-json-abi", - "alloy-primitives", - "auto_impl", - "derive_more 1.0.0", - "dirs", - "dyn-clone", - "foundry-compilers-artifacts", - "foundry-compilers-core", - "futures-util", - "home", - "itertools 0.14.0", - "path-slash", - "rayon", - "semver 1.0.26", - "serde", - "serde_json", - "sha2 0.10.9", - "solar-parse", - "solar-sema", - "svm-rs", - "svm-rs-builds", - "thiserror 2.0.12", - "tokio", - "tracing", - "winnow", - "yansi", -] - -[[package]] -name = "foundry-compilers-artifacts" -version = "0.17.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f1f4c29ce88d24d1bebc5708bd14104534b0edbc9ddf2e76037bdb29a51c1c9" -dependencies = [ - "foundry-compilers-artifacts-solc", - "foundry-compilers-artifacts-vyper", -] - -[[package]] -name = "foundry-compilers-artifacts-solc" -version = "0.17.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03f145ddd61f912cd8dc9cb57acaca6d771dc51ef23908bb98ad9c5859430679" -dependencies = [ - "alloy-json-abi", - "alloy-primitives", - "foundry-compilers-core", - "futures-util", - "path-slash", - "rayon", - "semver 1.0.26", - "serde", - "serde_json", - "thiserror 2.0.12", - "tokio", - "tracing", - "walkdir", - "yansi", -] - -[[package]] -name = "foundry-compilers-artifacts-vyper" -version = "0.17.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d553aebe632477cff64cfa20fa3dbd819d3a454a6dfd748fde9206915e3fe0d9" -dependencies = [ - "alloy-json-abi", - "alloy-primitives", - "foundry-compilers-artifacts-solc", - "foundry-compilers-core", - "path-slash", - "semver 1.0.26", - "serde", -] - -[[package]] -name = "foundry-compilers-core" -version = "0.17.3" +name = "foundry-fork-db" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afbd404c3ebcba24d0cb4746f78908ac0d681e9afb16a638a15c13d8e324e848" -dependencies = [ - "alloy-primitives", - "cfg-if", - "dunce", - "path-slash", - "regex", - "semver 1.0.26", - "serde", - "serde_json", - "svm-rs", - "thiserror 2.0.12", - "tokio", - "walkdir", - "xxhash-rust", -] - -[[package]] -name = "foundry-config" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" +checksum = "198b205ccbd3e54041e9a145374a6e170c71deb6d4c84dede8cd504a75694ad6" dependencies = [ "alloy-chains", - "alloy-primitives", - "clap", - "dirs", - "dunce", - "eyre", - "figment", - "foundry-block-explorers", - "foundry-compilers", - "glob", - "globset", - "heck", - "itertools 0.14.0", - "mesc", - "number_prefix", - "path-slash", - "regex", - "reqwest 0.12.20", - "revm 24.0.1", - "semver 1.0.26", - "serde", - "serde_json", - "solar-interface", - "solar-parse", - "soldeer-core", - "thiserror 2.0.12", - "toml", - "toml_edit", - "tracing", - "walkdir", - "yansi", -] - -[[package]] -name = "foundry-evm" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" -dependencies = [ - "alloy-dyn-abi", - "alloy-evm", - "alloy-json-abi", - "alloy-primitives", - "alloy-sol-types", - "eyre", - "foundry-cheatcodes", - "foundry-common", - "foundry-compilers", - "foundry-config", - "foundry-evm-core", - "foundry-evm-coverage", - "foundry-evm-fuzz", - "foundry-evm-traces", - "indicatif", - "parking_lot", - "proptest", - "revm 24.0.1", - "revm-inspectors", - "serde", - "thiserror 2.0.12", - "tracing", - "uuid 1.17.0", -] - -[[package]] -name = "foundry-evm-abi" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" -dependencies = [ - "alloy-primitives", - "alloy-sol-types", - "derive_more 2.0.1", - "foundry-common-fmt", - "foundry-macros", - "itertools 0.14.0", -] - -[[package]] -name = "foundry-evm-core" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" -dependencies = [ "alloy-consensus", - "alloy-dyn-abi", - "alloy-evm", - "alloy-genesis", - "alloy-json-abi", - "alloy-network", - "alloy-op-evm", + "alloy-hardforks 0.4.7", "alloy-primitives", "alloy-provider", "alloy-rpc-types", - "alloy-sol-types", - "auto_impl", "eyre", - "foundry-cheatcodes-spec", - "foundry-common", - "foundry-config", - "foundry-evm-abi", - "foundry-fork-db", "futures", - "itertools 0.14.0", - "op-revm", "parking_lot", - "revm 24.0.1", - "revm-inspectors", + "revm", "serde", "serde_json", "thiserror 2.0.12", @@ -3020,144 +2113,10 @@ dependencies = [ ] [[package]] -name = "foundry-evm-coverage" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" -dependencies = [ - "alloy-primitives", - "eyre", - "foundry-common", - "foundry-compilers", - "foundry-evm-core", - "rayon", - "revm 24.0.1", - "semver 1.0.26", - "tracing", -] - -[[package]] -name = "foundry-evm-fuzz" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" -dependencies = [ - "alloy-dyn-abi", - "alloy-json-abi", - "alloy-primitives", - "eyre", - "foundry-common", - "foundry-compilers", - "foundry-config", - "foundry-evm-core", - "foundry-evm-coverage", - "foundry-evm-traces", - "itertools 0.14.0", - "parking_lot", - "proptest", - "rand 0.9.1", - "revm 24.0.1", - "serde", - "thiserror 2.0.12", - "tracing", -] - -[[package]] -name = "foundry-evm-traces" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" -dependencies = [ - "alloy-dyn-abi", - "alloy-json-abi", - "alloy-primitives", - "alloy-sol-types", - "eyre", - "foundry-block-explorers", - "foundry-common", - "foundry-compilers", - "foundry-config", - "foundry-evm-core", - "foundry-linking", - "futures", - "itertools 0.14.0", - "rayon", - "revm 24.0.1", - "revm-inspectors", - "serde", - "serde_json", - "solar-parse", - "tempfile", - "tokio", - "tracing", -] - -[[package]] -name = "foundry-fork-db" -version = "0.15.1" +name = "fs_extra" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e3ce9907d94f0371f17930a79ced2c2d9f09131da93f8678f21505ed43c1f39" -dependencies = [ - "alloy-consensus", - "alloy-primitives", - "alloy-provider", - "alloy-rpc-types", - "eyre", - "futures", - "parking_lot", - "revm 24.0.1", - "serde", - "serde_json", - "thiserror 2.0.12", - "tokio", - "tracing", - "url", -] - -[[package]] -name = "foundry-linking" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" -dependencies = [ - "alloy-primitives", - "foundry-compilers", - "semver 1.0.26", - "thiserror 2.0.12", -] - -[[package]] -name = "foundry-macros" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" -dependencies = [ - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.104", -] - -[[package]] -name = "foundry-wallets" -version = "1.2.3" -source = "git+https://github.com/foundry-rs/foundry?rev=ed86c645f037f1cc4e5c1583f074a7b2142c4f66#ed86c645f037f1cc4e5c1583f074a7b2142c4f66" -dependencies = [ - "alloy-consensus", - "alloy-dyn-abi", - "alloy-network", - "alloy-primitives", - "alloy-signer", - "alloy-signer-ledger", - "alloy-signer-local", - "alloy-signer-trezor", - "alloy-sol-types", - "async-trait", - "clap", - "derive_builder", - "eth-keystore", - "eyre", - "foundry-config", - "rpassword", - "serde", - "thiserror 2.0.12", - "tracing", -] +checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" [[package]] name = "funty" @@ -3221,7 +2180,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -3260,12 +2219,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "42012b0f064e01aa58b545fe3727f90f7dd4020f4a3ea735b50344965f5a57e9" -[[package]] -name = "gcd" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d758ba1b47b00caf47f24925c0074ecb20d6dfcffe7f6d53395c0465674841a" - [[package]] name = "generic-array" version = "0.14.7" @@ -3311,25 +2264,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" [[package]] -name = "glob" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" - -[[package]] -name = "globset" -version = "0.4.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a1028dfc5f5df5da8a56a73e6c153c9a9708ec57232470703592a3f18e49f5" -dependencies = [ - "aho-corasick", - "bstr", - "log", - "regex-automata 0.4.9", - "regex-syntax 0.8.5", -] - -[[package]] +name = "glob" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" + +[[package]] name = "group" version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3359,35 +2299,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "h2" -version = "0.4.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9421a676d1b147b16b82c9225157dc629087ef8ec4d5e2960f9437a90dac0a5" -dependencies = [ - "atomic-waker", - "bytes", - "fnv", - "futures-core", - "futures-sink", - "http 1.3.1", - "indexmap 2.9.0", - "slab", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "half" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9" -dependencies = [ - "cfg-if", - "crunchy", -] - [[package]] name = "hashbrown" version = "0.12.3" @@ -3399,21 +2310,36 @@ name = "hashbrown" version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" + +[[package]] +name = "hashbrown" +version = "0.15.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5971ac85611da7067dbfcabef3c70ebb5606018acd9e2a3903a0da507521e0d5" dependencies = [ - "ahash", "allocator-api2", ] [[package]] name = "hashbrown" -version = "0.15.4" +version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5971ac85611da7067dbfcabef3c70ebb5606018acd9e2a3903a0da507521e0d5" +checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" dependencies = [ "allocator-api2", "equivalent", "foldhash", +] + +[[package]] +name = "hashbrown" +version = "0.17.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" +dependencies = [ + "foldhash", "serde", + "serde_core", ] [[package]] @@ -3446,18 +2372,6 @@ dependencies = [ "arrayvec", ] -[[package]] -name = "hidapi-rusb" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efdc2ec354929a6e8f3c6b6923a4d97427ec2f764cfee8cd4bfe890946cdf08b" -dependencies = [ - "cc", - "libc", - "pkg-config", - "rusb", -] - [[package]] name = "hmac" version = "0.12.1" @@ -3467,15 +2381,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "home" -version = "0.5.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" -dependencies = [ - "windows-sys 0.59.0", -] - [[package]] name = "http" version = "0.2.12" @@ -3544,6 +2449,15 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" +[[package]] +name = "hybrid-array" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9155a582abd142abc056962c29e3ce5ff2ad5469f4246b537ed42c5deba857da" +dependencies = [ + "typenum", +] + [[package]] name = "hyper" version = "0.14.32" @@ -3554,7 +2468,7 @@ dependencies = [ "futures-channel", "futures-core", "futures-util", - "h2 0.3.26", + "h2", "http 0.2.12", "http-body 0.4.6", "httparse", @@ -3577,7 +2491,6 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "h2 0.4.10", "http 1.3.1", "http-body 1.0.1", "httparse", @@ -3598,12 +2511,10 @@ dependencies = [ "hyper 1.6.0", "hyper-util", "rustls", - "rustls-native-certs", "rustls-pki-types", "tokio", "tokio-rustls", "tower-service", - "webpki-roots 1.0.1", ] [[package]] @@ -3619,22 +2530,6 @@ dependencies = [ "tokio-native-tls", ] -[[package]] -name = "hyper-tls" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" -dependencies = [ - "bytes", - "http-body-util", - "hyper 1.6.0", - "hyper-util", - "native-tls", - "tokio", - "tokio-native-tls", - "tower-service", -] - [[package]] name = "hyper-util" version = "0.1.14" @@ -3654,11 +2549,9 @@ dependencies = [ "percent-encoding", "pin-project-lite", "socket2", - "system-configuration 0.6.1", "tokio", "tower-service", "tracing", - "windows-registry", ] [[package]] @@ -3798,22 +2691,6 @@ dependencies = [ "icu_properties", ] -[[package]] -name = "ignore" -version = "0.4.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d89fd380afde86567dfba715db065673989d6253f42b88179abd3eae47bda4b" -dependencies = [ - "crossbeam-deque", - "globset", - "log", - "memchr", - "regex-automata 0.4.9", - "same-file", - "walkdir", - "winapi-util", -] - [[package]] name = "impl-codec" version = "0.6.0" @@ -3831,7 +2708,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -3840,12 +2717,6 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" -[[package]] -name = "index_vec" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44faf5bb8861a9c72e20d3fb0fdbd59233e43056e2b80475ab0aacdc2e781355" - [[package]] name = "indexmap" version = "1.9.3" @@ -3869,76 +2740,12 @@ dependencies = [ "serde", ] -[[package]] -name = "indicatif" -version = "0.17.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "183b3088984b400f4cfac3620d5e076c84da5364016b4f49473de574b2586235" -dependencies = [ - "console", - "number_prefix", - "portable-atomic", - "unicode-width", - "web-time", -] - -[[package]] -name = "inlinable_string" -version = "0.1.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8fae54786f62fb2918dcfae3d568594e50eb9b5c25bf04371af6fe7516452fb" - -[[package]] -name = "inout" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" -dependencies = [ - "generic-array", -] - -[[package]] -name = "interprocess" -version = "2.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d941b405bd2322993887859a8ee6ac9134945a24ec5ec763a8a962fc64dfec2d" -dependencies = [ - "doctest-file", - "futures-core", - "libc", - "recvmsg", - "tokio", - "widestring", - "windows-sys 0.52.0", -] - [[package]] name = "ipnet" version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" -[[package]] -name = "iri-string" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbc5ebe9c3a1a7a5127f920a418f7585e9e758e911d0466ed004f393b0e380b2" -dependencies = [ - "memchr", - "serde", -] - -[[package]] -name = "is-terminal" -version = "0.4.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" -dependencies = [ - "hermit-abi", - "libc", - "windows-sys 0.59.0", -] - [[package]] name = "is_terminal_polyfill" version = "1.70.1" @@ -3954,15 +2761,6 @@ dependencies = [ "either", ] -[[package]] -name = "itertools" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" -dependencies = [ - "either", -] - [[package]] name = "itertools" version = "0.13.0" @@ -3988,65 +2786,67 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] -name = "jiff" -version = "0.2.15" +name = "jni" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be1f93b8b1eb69c77f24bbb0afdf66f54b632ee39af40ca21c4365a1d7347e49" +checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" dependencies = [ - "jiff-static", - "jiff-tzdb-platform", + "cesu8", + "cfg-if", + "combine", + "jni-sys 0.3.1", "log", - "portable-atomic", - "portable-atomic-util", - "serde", - "windows-sys 0.59.0", + "thiserror 1.0.69", + "walkdir", + "windows-sys 0.45.0", ] [[package]] -name = "jiff-static" -version = "0.2.15" +name = "jni-sys" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03343451ff899767262ec32146f6d559dd759fdadf42ff0e227c7c48f72594b4" +checksum = "41a652e1f9b6e0275df1f15b32661cf0d4b78d4d87ddec5e0c3c20f097433258" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.104", + "jni-sys 0.4.1", ] [[package]] -name = "jiff-tzdb" -version = "0.1.4" +name = "jni-sys" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1283705eb0a21404d2bfd6eef2a7593d240bc42a0bdb39db0ad6fa2ec026524" +checksum = "c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2" +dependencies = [ + "jni-sys-macros", +] [[package]] -name = "jiff-tzdb-platform" -version = "0.1.3" +name = "jni-sys-macros" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "875a5a69ac2bab1a891711cf5eccbec1ce0341ea805560dcd90b7a2e925132e8" +checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" dependencies = [ - "jiff-tzdb", + "quote", + "syn 2.0.117", ] [[package]] -name = "js-sys" -version = "0.3.77" +name = "jobserver" +version = "0.1.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" +checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" dependencies = [ - "once_cell", - "wasm-bindgen", + "getrandom 0.3.3", + "libc", ] [[package]] -name = "jsonpath_lib" -version = "0.3.0" +name = "js-sys" +version = "0.3.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaa63191d68230cccb81c5aa23abd53ed64d83337cacbb25a7b8c7979523774f" +checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" dependencies = [ - "log", - "serde", - "serde_json", + "once_cell", + "wasm-bindgen", ] [[package]] @@ -4075,153 +2875,46 @@ dependencies = [ "elliptic-curve", "once_cell", "serdect", - "sha2 0.10.9", - "signature", -] - -[[package]] -name = "keccak" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" -dependencies = [ - "cpufeatures", -] - -[[package]] -name = "keccak-asm" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "505d1856a39b200489082f90d897c3f07c455563880bc5952e38eabf731c83b6" -dependencies = [ - "digest 0.10.7", - "sha3-asm", -] - -[[package]] -name = "kzg-rs" -version = "0.2.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9201effeea3fcc93b587904ae2df9ce97e433184b9d6d299e9ebc9830a546636" -dependencies = [ - "ff", - "hex", - "serde_arrays", - "sha2 0.10.9", - "sp1_bls12_381", - "spin", -] - -[[package]] -name = "lasso" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e14eda50a3494b3bf7b9ce51c52434a761e383d7238ce1dd5dcec2fbc13e9fb" -dependencies = [ - "dashmap", - "hashbrown 0.14.5", -] - -[[package]] -name = "lazy_static" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" - -[[package]] -name = "libc" -version = "0.2.174" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776" - -[[package]] -name = "libm" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" - -[[package]] -name = "libredox" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" -dependencies = [ - "bitflags 2.9.1", - "libc", -] - -[[package]] -name = "libsecp256k1" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79019718125edc905a079a70cfa5f3820bc76139fc91d6f9abc27ea2a887139" -dependencies = [ - "arrayref", - "base64 0.22.1", - "digest 0.9.0", - "libsecp256k1-core", - "libsecp256k1-gen-ecmult", - "libsecp256k1-gen-genmult", - "rand 0.8.5", - "serde", - "sha2 0.9.9", -] - -[[package]] -name = "libsecp256k1-core" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5be9b9bb642d8522a44d533eab56c16c738301965504753b03ad1de3425d5451" -dependencies = [ - "crunchy", - "digest 0.9.0", - "subtle", + "sha2", ] [[package]] -name = "libsecp256k1-gen-ecmult" -version = "0.3.0" +name = "keccak" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3038c808c55c87e8a172643a7d87187fc6c4174468159cb3090659d55bcb4809" +checksum = "9e24a010dd405bd7ed803e5253182815b41bf2e6a80cc3bfc066658e03a198aa" dependencies = [ - "libsecp256k1-core", + "cfg-if", + "cpufeatures 0.3.0", ] [[package]] -name = "libsecp256k1-gen-genmult" -version = "0.3.0" +name = "keccak-asm" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db8d6ba2cec9eacc40e6e8ccc98931840301f1006e95647ceb2dd5c3aa06f7c" +checksum = "1766b89733097006f3a1388a02849865d6bc98c89273cb622e29fdd209922183" dependencies = [ - "libsecp256k1-core", + "digest 0.10.7", + "sha3-asm", ] [[package]] -name = "libusb1-sys" -version = "0.7.0" +name = "lazy_static" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da050ade7ac4ff1ba5379af847a10a10a8e284181e060105bf8d86960ce9ce0f" -dependencies = [ - "cc", - "libc", - "pkg-config", - "vcpkg", -] +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] -name = "libz-rs-sys" -version = "0.5.1" +name = "libc" +version = "0.2.174" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "172a788537a2221661b480fee8dc5f96c580eb34fa88764d3205dc356c7e4221" -dependencies = [ - "zlib-rs", -] +checksum = "1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776" [[package]] -name = "linux-raw-sys" -version = "0.4.15" +name = "libm" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" +checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" [[package]] name = "linux-raw-sys" @@ -4250,17 +2943,14 @@ name = "log" version = "0.4.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" -dependencies = [ - "value-bag", -] [[package]] name = "lru" -version = "0.13.0" +version = "0.16.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "227748d55f2f0ab4735d87fd623798cb6b664512fe979705f829c9f81c934465" +checksum = "7f66e8d5d03f609abc3a39e6f08e4164ebf1447a732906d39eb9b99b7919ef39" dependencies = [ - "hashbrown 0.15.4", + "hashbrown 0.16.1", ] [[package]] @@ -4271,21 +2961,15 @@ checksum = "112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154" [[package]] name = "macro-string" -version = "0.1.4" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b27834086c65ec3f9387b096d66e99f221cf081c2b738042aa252bcd41204e3" +checksum = "59a9dbbfc75d2688ed057456ce8a3ee3f48d12eec09229f560f3643b9f275653" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] -[[package]] -name = "match_cfg" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" - [[package]] name = "matchers" version = "0.1.0" @@ -4301,42 +2985,12 @@ version = "2.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" -[[package]] -name = "memoffset" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4" -dependencies = [ - "autocfg", -] - -[[package]] -name = "mesc" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d04b0347d2799ef17df4623dbcb03531031142105168e0c549e0bf1f980e9e7e" -dependencies = [ - "serde", - "serde_json", - "thiserror 1.0.69", -] - [[package]] name = "mime" version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" -[[package]] -name = "mime_guess" -version = "2.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e" -dependencies = [ - "mime", - "unicase", -] - [[package]] name = "miniz_oxide" version = "0.8.9" @@ -4374,25 +3028,6 @@ dependencies = [ "tempfile", ] -[[package]] -name = "nix" -version = "0.26.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" -dependencies = [ - "bitflags 1.3.2", - "cfg-if", - "libc", - "memoffset", - "pin-utils", -] - -[[package]] -name = "normalize-path" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5438dd2b2ff4c6df6e1ce22d825ed2fa93ee2922235cc45186991717f0a892d" - [[package]] name = "nu-ansi-term" version = "0.46.0" @@ -4409,7 +3044,7 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" dependencies = [ - "num-bigint 0.4.6", + "num-bigint", "num-complex", "num-integer", "num-iter", @@ -4417,17 +3052,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "num-bigint" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f6f7833f2cbf2360a6cfd58cd41a53aa7a90bd4c202f5b1c7dd2ed73c57b2c3" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - [[package]] name = "num-bigint" version = "0.4.6" @@ -4453,16 +3077,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" -[[package]] -name = "num-format" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a652d9771a63711fd3c3deb670acfbe5c30a4072e664d7a3bf5a9e1056ac72c3" -dependencies = [ - "arrayvec", - "itoa", -] - [[package]] name = "num-integer" version = "0.1.46" @@ -4489,7 +3103,7 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" dependencies = [ - "num-bigint 0.4.6", + "num-bigint", "num-integer", "num-traits", ] @@ -4532,33 +3146,19 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.104", -] - -[[package]] -name = "num_threads" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9" -dependencies = [ - "libc", + "syn 2.0.117", ] -[[package]] -name = "number_prefix" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" - [[package]] name = "nybbles" -version = "0.3.4" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8983bb634df7248924ee0c4c3a749609b5abcb082c28fffe3254b3eb3602b307" +checksum = "0d49ff0c0d00d4a502b39df9af3a525e1efeb14b9dabb5bb83335284c1309210" dependencies = [ "alloy-rlp", - "const-hex", + "cfg-if", "proptest", + "ruint", "serde", "smallvec", ] @@ -4584,57 +3184,13 @@ version = "1.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" -[[package]] -name = "once_map" -version = "0.4.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bd2cae3bec3936bbed1ccc5a3343b3738858182419f9c0522c7260c80c430b0" -dependencies = [ - "ahash", - "hashbrown 0.15.4", - "parking_lot", - "stable_deref_trait", -] - -[[package]] -name = "op-alloy-consensus" -version = "0.17.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2423a125ef2daa0d15dacc361805a0b6f76d6acfc6e24a1ff6473582087fe75" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "derive_more 2.0.1", - "thiserror 2.0.12", -] - -[[package]] -name = "op-revm" -version = "5.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0e8a3830a2be82166fbe9ead34361149ff4320743ed7ee5502ab779de221361" -dependencies = [ - "auto_impl", - "once_cell", - "revm 24.0.1", - "serde", -] - -[[package]] -name = "opaque-debug" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" - [[package]] name = "openssl" version = "0.10.73" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8505734d46c8ab1e19a1dce3aef597ad87dcb4c37e7188231769bd6bd51cebf8" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.11.1", "cfg-if", "foreign-types", "libc", @@ -4651,7 +3207,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -4672,12 +3228,6 @@ dependencies = [ "vcpkg", ] -[[package]] -name = "option-ext" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" - [[package]] name = "overload" version = "0.1.1" @@ -4693,128 +3243,7 @@ dependencies = [ "ecdsa", "elliptic-curve", "primeorder", - "sha2 0.10.9", -] - -[[package]] -name = "p3-baby-bear" -version = "0.2.3-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7521838ecab2ddf4f7bc4ceebad06ec02414729598485c1ada516c39900820e8" -dependencies = [ - "num-bigint 0.4.6", - "p3-field", - "p3-mds", - "p3-poseidon2", - "p3-symmetric", - "rand 0.8.5", - "serde", -] - -[[package]] -name = "p3-dft" -version = "0.2.3-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46414daedd796f1eefcdc1811c0484e4bced5729486b6eaba9521c572c76761a" -dependencies = [ - "p3-field", - "p3-matrix", - "p3-maybe-rayon", - "p3-util", - "tracing", -] - -[[package]] -name = "p3-field" -version = "0.2.3-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48948a0516b349e9d1cdb95e7236a6ee010c44e68c5cc78b4b92bf1c4022a0d9" -dependencies = [ - "itertools 0.12.1", - "num-bigint 0.4.6", - "num-traits", - "p3-util", - "rand 0.8.5", - "serde", -] - -[[package]] -name = "p3-matrix" -version = "0.2.3-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e4de3f373589477cb735ea58e125898ed20935e03664b4614c7fac258b3c42f" -dependencies = [ - "itertools 0.12.1", - "p3-field", - "p3-maybe-rayon", - "p3-util", - "rand 0.8.5", - "serde", - "tracing", -] - -[[package]] -name = "p3-maybe-rayon" -version = "0.2.3-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3968ad1160310296eb04f91a5f4edfa38fe1d6b2b8cd6b5c64e6f9b7370979e" - -[[package]] -name = "p3-mds" -version = "0.2.3-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2356b1ed0add6d5dfbf7a338ce534a6fde827374394a52cec16a0840af6e97c9" -dependencies = [ - "itertools 0.12.1", - "p3-dft", - "p3-field", - "p3-matrix", - "p3-symmetric", - "p3-util", - "rand 0.8.5", -] - -[[package]] -name = "p3-poseidon2" -version = "0.2.3-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7da1eec7e1b6900581bedd95e76e1ef4975608dd55be9872c9d257a8a9651c3a" -dependencies = [ - "gcd", - "p3-field", - "p3-mds", - "p3-symmetric", - "rand 0.8.5", - "serde", -] - -[[package]] -name = "p3-symmetric" -version = "0.2.3-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edb439bea1d822623b41ff4b51e3309e80d13cadf8b86d16ffd5e6efb9fdc360" -dependencies = [ - "itertools 0.12.1", - "p3-field", - "serde", -] - -[[package]] -name = "p3-util" -version = "0.2.3-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c2c2010678b9332b563eaa38364915b585c1a94b5ca61e2c7541c087ddda5c" -dependencies = [ - "serde", -] - -[[package]] -name = "pairing" -version = "0.23.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81fec4625e73cf41ef4bb6846cafa6d44736525f442ba45e407c4a000a13996f" -dependencies = [ - "group", + "sha2", ] [[package]] @@ -4834,94 +3263,46 @@ dependencies = [ ] [[package]] -name = "parity-scale-codec-derive" -version = "3.7.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34b4653168b563151153c9e4c08ebed57fb8262bebfa79711552fa983c623e7a" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 2.0.104", -] - -[[package]] -name = "parking_lot" -version = "0.12.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70d58bf43669b5795d1576d0641cfb6fbb2057bf629506267a92807158584a13" -dependencies = [ - "lock_api", - "parking_lot_core", -] - -[[package]] -name = "parking_lot_core" -version = "0.9.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc838d2a56b5b1a6c25f55575dfc605fabb63bb2365f6c2353ef9159aa69e4a5" -dependencies = [ - "cfg-if", - "libc", - "redox_syscall", - "smallvec", - "windows-targets 0.52.6", -] - -[[package]] -name = "paste" -version = "1.0.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" - -[[package]] -name = "path-slash" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42" - -[[package]] -name = "pbkdf2" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" -dependencies = [ - "digest 0.10.7", -] - -[[package]] -name = "pbkdf2" -version = "0.12.2" +name = "parity-scale-codec-derive" +version = "3.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" +checksum = "34b4653168b563151153c9e4c08ebed57fb8262bebfa79711552fa983c623e7a" dependencies = [ - "digest 0.10.7", - "hmac", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.117", ] [[package]] -name = "pear" -version = "0.2.9" +name = "parking_lot" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdeeaa00ce488657faba8ebf44ab9361f9365a97bd39ffb8a60663f57ff4b467" +checksum = "70d58bf43669b5795d1576d0641cfb6fbb2057bf629506267a92807158584a13" dependencies = [ - "inlinable_string", - "pear_codegen", - "yansi", + "lock_api", + "parking_lot_core", ] [[package]] -name = "pear_codegen" -version = "0.2.9" +name = "parking_lot_core" +version = "0.9.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bab5b985dc082b345f812b7df84e1bef27e7207b39e448439ba8bd69c93f147" +checksum = "bc838d2a56b5b1a6c25f55575dfc605fabb63bb2365f6c2353ef9159aa69e4a5" dependencies = [ - "proc-macro2", - "proc-macro2-diagnostics", - "quote", - "syn 2.0.104", + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-targets 0.52.6", ] +[[package]] +name = "paste" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" + [[package]] name = "pem" version = "3.0.5" @@ -4932,15 +3313,6 @@ dependencies = [ "serde", ] -[[package]] -name = "pem-rfc7468" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" -dependencies = [ - "base64ct", -] - [[package]] name = "percent-encoding" version = "2.3.2" @@ -4958,21 +3330,11 @@ dependencies = [ "ucd-trie", ] -[[package]] -name = "pharos" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9567389417feee6ce15dd6527a8a1ecac205ef62c2932bcf3d9f6fc5b78b414" -dependencies = [ - "futures", - "rustc_version 0.4.1", -] - [[package]] name = "phf" -version = "0.11.3" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" +checksum = "c1562dc717473dbaa4c1f85a36410e03c047b2e7df7f45ee938fbef64ae7fadf" dependencies = [ "phf_macros", "phf_shared", @@ -4981,32 +3343,32 @@ dependencies = [ [[package]] name = "phf_generator" -version = "0.11.3" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" +checksum = "135ace3a761e564ec88c03a77317a7c6b80bb7f7135ef2544dbe054243b89737" dependencies = [ + "fastrand", "phf_shared", - "rand 0.8.5", ] [[package]] name = "phf_macros" -version = "0.11.3" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216" +checksum = "812f032b54b1e759ccd5f8b6677695d5268c588701effba24601f6932f8269ef" dependencies = [ "phf_generator", "phf_shared", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] name = "phf_shared" -version = "0.11.3" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" +checksum = "e57fef6bc5981e38c2ce2d63bfa546861309f875b8a75f092d1d54ae2d64f266" dependencies = [ "siphasher", ] @@ -5028,7 +3390,7 @@ checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -5059,21 +3421,6 @@ version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" -[[package]] -name = "portable-atomic" -version = "1.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483" - -[[package]] -name = "portable-atomic-util" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8a2f0d8d040d7848a709caf78912debcc3f33ee4b3cac47d73d1e1069e83507" -dependencies = [ - "portable-atomic", -] - [[package]] name = "potential_utf" version = "0.1.2" @@ -5098,16 +3445,6 @@ dependencies = [ "zerocopy", ] -[[package]] -name = "prettyplease" -version = "0.2.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "061c1221631e079b26479d25bbf2275bfe5917ae8419cd7e34f13bfc2aa7539a" -dependencies = [ - "proc-macro2", - "syn 2.0.104", -] - [[package]] name = "primeorder" version = "0.13.6" @@ -5156,7 +3493,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -5168,19 +3505,6 @@ dependencies = [ "unicode-ident", ] -[[package]] -name = "proc-macro2-diagnostics" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.104", - "version_check", - "yansi", -] - [[package]] name = "proptest" version = "1.7.0" @@ -5189,7 +3513,7 @@ checksum = "6fcdab19deb5195a31cf7726a210015ff1496ba1464fd42cb4f537b8b01b471f" dependencies = [ "bit-set", "bit-vec", - "bitflags 2.9.1", + "bitflags 2.11.1", "lazy_static", "num-traits", "rand 0.9.1", @@ -5203,33 +3527,13 @@ dependencies = [ [[package]] name = "proptest-derive" -version = "0.5.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ee1c9ac207483d5e7db4940700de86a9aae46ef90c48b57f99fe7edb8345e49" +checksum = "c57924a81864dddafba92e1bf92f9bf82f97096c44489548a60e888e1547549b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", -] - -[[package]] -name = "protobuf" -version = "3.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b65f4a8ec18723a734e5dc09c173e0abf9690432da5340285d536edcb4dac190" -dependencies = [ - "once_cell", - "protobuf-support", - "thiserror 1.0.69", -] - -[[package]] -name = "protobuf-support" -version = "3.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6872f4d4f4b98303239a2b5838f5bbbb77b01ffc892d627957f37a22d7cfe69c" -dependencies = [ - "thiserror 1.0.69", + "syn 2.0.117", ] [[package]] @@ -5264,6 +3568,7 @@ version = "0.11.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49df843a9161c85bb8aae55f101bc0bac8bcafd637a620d9122fd7e0b2f7422e" dependencies = [ + "aws-lc-rs", "bytes", "getrandom 0.3.3", "lru-slab", @@ -5331,6 +3636,22 @@ dependencies = [ "url", ] +[[package]] +name = "rain-forker" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "805c27817e3d51504c5e92e8fd2c864898772b4f8fc0fd94738a93b63795dac2" +dependencies = [ + "alloy", + "eyre", + "foundry-fork-db", + "rain-error-decoding", + "revm", + "revm-inspectors", + "serde", + "thiserror 1.0.69", +] + [[package]] name = "rainlang-cli" version = "0.0.1" @@ -5353,12 +3674,10 @@ version = "0.1.0" dependencies = [ "alloy", "eyre", - "foundry-evm", "rain-error-decoding", + "rain-forker", "rainlang_bindings", "rainlang_test_fixtures", - "revm 24.0.1", - "revm 25.0.0", "serde", "thiserror 1.0.69", "tokio", @@ -5471,49 +3790,21 @@ dependencies = [ ] [[package]] -name = "rayon" -version = "1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" -dependencies = [ - "either", - "rayon-core", -] - -[[package]] -name = "rayon-core" -version = "1.12.1" +name = "rapidhash" +version = "4.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +checksum = "b5e48930979c155e2f33aa36ab3119b5ee81332beb6482199a8ecd6029b80b59" dependencies = [ - "crossbeam-deque", - "crossbeam-utils", + "rustversion", ] -[[package]] -name = "recvmsg" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3edd4d5d42c92f0a659926464d4cce56b562761267ecf0f469d85b7de384175" - [[package]] name = "redox_syscall" version = "0.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d04b7d0ee6b4a0207a0a7adb104d23ecb0b47d6beae7152d0fa34b692b29fd6" dependencies = [ - "bitflags 2.9.1", -] - -[[package]] -name = "redox_users" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd6f9d3d47bdd2ad6945c5015a226ec6155d0bcdfd8f7cd29f86b71f8de99d2b" -dependencies = [ - "getrandom 0.2.16", - "libredox", - "thiserror 2.0.12", + "bitflags 2.11.1", ] [[package]] @@ -5533,7 +3824,7 @@ checksum = "1165225c21bff1f3bbce98f5a1f889949bc902d3575308cc7b0de30b4f6d27c7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -5591,11 +3882,11 @@ dependencies = [ "encoding_rs", "futures-core", "futures-util", - "h2 0.3.26", + "h2", "http 0.2.12", "http-body 0.4.6", "hyper 0.14.32", - "hyper-tls 0.5.0", + "hyper-tls", "ipnet", "js-sys", "log", @@ -5609,7 +3900,7 @@ dependencies = [ "serde_json", "serde_urlencoded", "sync_wrapper 0.1.2", - "system-configuration 0.5.1", + "system-configuration", "tokio", "tokio-native-tls", "tower-service", @@ -5622,100 +3913,67 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.20" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eabf4c97d9130e2bf606614eb937e86edac8292eaa6f422f995d7e8de1eb1813" +checksum = "219c5811de6525e5416c7d5d53bb656d3afdbc6c5af816e0802bcfa42dbdc1c3" dependencies = [ "base64 0.22.1", "bytes", - "encoding_rs", - "futures-channel", "futures-core", - "futures-util", - "h2 0.4.10", "http 1.3.1", "http-body 1.0.1", "http-body-util", "hyper 1.6.0", "hyper-rustls", - "hyper-tls 0.6.0", "hyper-util", "js-sys", "log", - "mime", - "mime_guess", - "native-tls", "percent-encoding", "pin-project-lite", "quinn", "rustls", - "rustls-native-certs", "rustls-pki-types", + "rustls-platform-verifier", "serde", "serde_json", - "serde_urlencoded", "sync_wrapper 1.0.2", "tokio", - "tokio-native-tls", "tokio-rustls", - "tokio-util", "tower", "tower-http", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", - "wasm-streams", "web-sys", - "webpki-roots 1.0.1", -] - -[[package]] -name = "revm" -version = "24.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01d277408ff8d6f747665ad9e52150ab4caf8d5eaf0d787614cf84633c8337b4" -dependencies = [ - "revm-bytecode", - "revm-context 5.0.1", - "revm-context-interface 5.0.0", - "revm-database 4.0.1", - "revm-database-interface 4.0.1", - "revm-handler 5.0.1", - "revm-inspector 5.0.1", - "revm-interpreter 20.0.0", - "revm-precompile 21.0.0", - "revm-primitives", - "revm-state 4.0.1", ] [[package]] name = "revm" -version = "25.0.0" +version = "36.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08fd78df29217546ddfd587fe313aff2bf86e57cfe0f18d16cb326d9f50ba54d" +checksum = "b0abc15d09cd211e9e73410ada10134069c794d4bcdb787dfc16a1bf0939849c" dependencies = [ "revm-bytecode", - "revm-context 6.0.0", - "revm-context-interface 6.0.0", - "revm-database 5.0.0", - "revm-database-interface 5.0.0", - "revm-handler 6.0.0", - "revm-inspector 6.0.0", - "revm-interpreter 21.0.0", - "revm-precompile 22.0.0", + "revm-context", + "revm-context-interface", + "revm-database", + "revm-database-interface", + "revm-handler", + "revm-inspector", + "revm-interpreter", + "revm-precompile", "revm-primitives", - "revm-state 5.0.0", + "revm-state", ] [[package]] name = "revm-bytecode" -version = "4.1.0" +version = "9.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942fe4724cf552fd28db6b0a2ca5b79e884d40dd8288a4027ed1e9090e0c6f49" +checksum = "e86e468df3cf5cf59fa7ef71a3e9ccabb76bb336401ea2c0674f563104cf3c5e" dependencies = [ "bitvec", - "once_cell", "phf", "revm-primitives", "serde", @@ -5723,195 +3981,107 @@ dependencies = [ [[package]] name = "revm-context" -version = "5.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b01aad49e1233f94cebda48a4e5cef022f7c7ed29b4edf0d202b081af23435ef" -dependencies = [ - "cfg-if", - "derive-where", - "revm-bytecode", - "revm-context-interface 5.0.0", - "revm-database-interface 4.0.1", - "revm-primitives", - "revm-state 4.0.1", - "serde", -] - -[[package]] -name = "revm-context" -version = "6.0.0" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "190f211f04c8030f5393cfcfa1569b88d5649f0f266bf4291981ba879fa6c5d1" +checksum = "9eb1f0a76b14d684a444fc52f7bf6b7564bf882599d91ee62e76d602e7a187c7" dependencies = [ + "bitvec", "cfg-if", "derive-where", "revm-bytecode", - "revm-context-interface 6.0.0", - "revm-database-interface 5.0.0", - "revm-primitives", - "revm-state 5.0.0", - "serde", -] - -[[package]] -name = "revm-context-interface" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b844f48a411e62c7dde0f757bf5cce49c85b86d6fc1d3b2722c07f2bec4c3ce" -dependencies = [ - "alloy-eip2930", - "alloy-eip7702", - "auto_impl", - "either", - "revm-database-interface 4.0.1", + "revm-context-interface", + "revm-database-interface", "revm-primitives", - "revm-state 4.0.1", + "revm-state", "serde", ] [[package]] name = "revm-context-interface" -version = "6.0.0" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42b7e7ff1154e6460cec025fe20dfe45f3325bbb905718643b6d053ec49da6e8" +checksum = "fc256b27743e2912ca16899568e6652a372eb5d1d573e6edb16c7836b16cf487" dependencies = [ "alloy-eip2930", "alloy-eip7702", "auto_impl", "either", - "revm-database-interface 5.0.0", - "revm-primitives", - "revm-state 5.0.0", - "serde", -] - -[[package]] -name = "revm-database" -version = "4.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad3fbe34f6bb00a9c3155723b3718b9cb9f17066ba38f9eb101b678cd3626775" -dependencies = [ - "alloy-eips", - "revm-bytecode", - "revm-database-interface 4.0.1", + "revm-database-interface", "revm-primitives", - "revm-state 4.0.1", + "revm-state", "serde", ] [[package]] name = "revm-database" -version = "5.0.0" +version = "12.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9456d5cb165fef91c8b538d0115de50059d1cf352d160a1396894eac017a2a34" +checksum = "2c0a7d6da41061f2c50f99a2632571026b23684b5449ff319914151f4449b6c8" dependencies = [ "alloy-eips", "revm-bytecode", - "revm-database-interface 5.0.0", - "revm-primitives", - "revm-state 5.0.0", - "serde", -] - -[[package]] -name = "revm-database-interface" -version = "4.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b8acd36784a6d95d5b9e1b7be3ce014f1e759abb59df1fa08396b30f71adc2a" -dependencies = [ - "auto_impl", + "revm-database-interface", "revm-primitives", - "revm-state 4.0.1", + "revm-state", "serde", ] [[package]] name = "revm-database-interface" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaeb608de31bfd0e64bf9b5b18ee70ac70094c8c045b28ae8ae8701608d17d34" -dependencies = [ - "auto_impl", - "revm-primitives", - "revm-state 5.0.0", - "serde", -] - -[[package]] -name = "revm-handler" -version = "5.0.1" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "481e8c3290ff4fa1c066592fdfeb2b172edfd14d12e6cade6f6f5588cad9359a" +checksum = "bd497a38a79057b94a049552cb1f925ad15078bc1a479c132aeeebd1d2ccc768" dependencies = [ "auto_impl", - "revm-bytecode", - "revm-context 5.0.1", - "revm-context-interface 5.0.0", - "revm-database-interface 4.0.1", - "revm-interpreter 20.0.0", - "revm-precompile 21.0.0", + "either", "revm-primitives", - "revm-state 4.0.1", + "revm-state", "serde", + "thiserror 2.0.12", ] [[package]] name = "revm-handler" -version = "6.0.0" +version = "17.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfeaecd909e6be655c36d21032ca932b347e60ec5849ee29e670d63aa97b6adb" +checksum = "9f1eed729ca9b228ae98688f352235871e9b8be3d568d488e4070f64c56e9d3d" dependencies = [ "auto_impl", + "derive-where", "revm-bytecode", - "revm-context 6.0.0", - "revm-context-interface 6.0.0", - "revm-database-interface 5.0.0", - "revm-interpreter 21.0.0", - "revm-precompile 22.0.0", - "revm-primitives", - "revm-state 5.0.0", - "serde", -] - -[[package]] -name = "revm-inspector" -version = "5.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdc1167ef8937d8867888e63581d8ece729a72073d322119ef4627d813d99ecb" -dependencies = [ - "auto_impl", - "revm-context 5.0.1", - "revm-database-interface 4.0.1", - "revm-handler 5.0.1", - "revm-interpreter 20.0.0", + "revm-context", + "revm-context-interface", + "revm-database-interface", + "revm-interpreter", + "revm-precompile", "revm-primitives", - "revm-state 4.0.1", + "revm-state", "serde", - "serde_json", ] [[package]] name = "revm-inspector" -version = "6.0.0" +version = "17.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4de1c6cddc7d62364dc9fa2f405c2c4637c933c5591addf09977ec8a156e4b23" +checksum = "cbf5102391706513689f91cb3cb3d97b5f13a02e8647e6e9cb7620877ef84847" dependencies = [ "auto_impl", - "revm-context 6.0.0", - "revm-database-interface 5.0.0", - "revm-handler 6.0.0", - "revm-interpreter 21.0.0", + "either", + "revm-context", + "revm-database-interface", + "revm-handler", + "revm-interpreter", "revm-primitives", - "revm-state 5.0.0", + "revm-state", "serde", "serde_json", ] [[package]] name = "revm-inspectors" -version = "0.23.0" +version = "0.36.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b50ef375dbacefecfdacf8f02afc31df98acc5d8859a6f2b24d121ff2a740a8" +checksum = "9487362b728f80dd2033ef5f4d0688453435bbe7caa721fa7e3b8fa25d89242b" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -5919,7 +4089,7 @@ dependencies = [ "alloy-sol-types", "anstyle", "colorchoice", - "revm 24.0.1", + "revm", "serde", "serde_json", "thiserror 2.0.12", @@ -5927,109 +4097,61 @@ dependencies = [ [[package]] name = "revm-interpreter" -version = "20.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5ee65e57375c6639b0f50555e92a4f1b2434349dd32f52e2176f5c711171697" -dependencies = [ - "revm-bytecode", - "revm-context-interface 5.0.0", - "revm-primitives", - "serde", -] - -[[package]] -name = "revm-interpreter" -version = "21.0.0" +version = "34.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7c3ca670eee335d9268a9100932ec1e09638bdd9b31eac9e22dec4de00f2cba" +checksum = "cf22f80612bb8f58fd1f578750281f2afadb6c93835b14ae6a4d6b75ca26f445" dependencies = [ "revm-bytecode", - "revm-context-interface 6.0.0", + "revm-context-interface", "revm-primitives", + "revm-state", "serde", ] [[package]] name = "revm-precompile" -version = "21.0.0" +version = "32.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f9311e735123d8d53a02af2aa81877bba185be7c141be7f931bb3d2f3af449c" -dependencies = [ - "ark-bls12-381", - "ark-bn254", - "ark-ec", - "ark-ff 0.5.0", - "ark-serialize 0.5.0", - "aurora-engine-modexp", - "blst", - "c-kzg", - "cfg-if", - "k256", - "libsecp256k1", - "once_cell", - "p256", - "revm-primitives", - "ripemd", - "secp256k1", - "sha2 0.10.9", -] - -[[package]] -name = "revm-precompile" -version = "22.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4330c6982a2ef1d318cb10ce7e726a64e11e44fe1eac29d055de849a5e1e080e" +checksum = "e2ec11f45deec71e4945e1809736bb20d454285f9167ab53c5159dae1deb603f" dependencies = [ "ark-bls12-381", "ark-bn254", "ark-ec", "ark-ff 0.5.0", "ark-serialize 0.5.0", + "arrayref", "aurora-engine-modexp", "blst", "c-kzg", "cfg-if", "k256", - "kzg-rs", - "libsecp256k1", - "once_cell", "p256", "revm-primitives", - "ripemd", - "secp256k1", - "sha2 0.10.9", -] - -[[package]] -name = "revm-primitives" -version = "19.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c1588093530ec4442461163be49c433c07a3235d1ca6f6799fef338dacc50d3" -dependencies = [ - "alloy-primitives", - "num_enum", - "serde", + "ripemd", + "secp256k1 0.31.1", + "sha2", ] [[package]] -name = "revm-state" -version = "4.0.1" +name = "revm-primitives" +version = "22.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0040c61c30319254b34507383ba33d85f92949933adf6525a2cede05d165e1fa" +checksum = "4bcfb5ce6cf18b118932bcdb7da05cd9c250f2cb9f64131396b55f3fe3537c35" dependencies = [ - "bitflags 2.9.1", - "revm-bytecode", - "revm-primitives", + "alloy-primitives", + "num_enum", + "once_cell", "serde", ] [[package]] name = "revm-state" -version = "5.0.0" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44320ccf53067136a83cdbc54f4b7529e8f61497666f31d6f5cfd9035a1cc08f" +checksum = "d29404707763da607e5d6e4771cb203998c28159279c2f64cc32de08d2814651" dependencies = [ - "bitflags 2.9.1", + "alloy-eip7928", + "bitflags 2.11.1", "revm-bytecode", "revm-primitives", "serde", @@ -6078,41 +4200,21 @@ dependencies = [ "rustc-hex", ] -[[package]] -name = "rpassword" -version = "7.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66d4c8b64f049c6721ec8ccec37ddfc3d641c4a7fca57e8f2a89de509c73df39" -dependencies = [ - "libc", - "rtoolbox", - "windows-sys 0.59.0", -] - -[[package]] -name = "rtoolbox" -version = "0.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7cc970b249fbe527d6e02e0a227762c9108b2f49d81094fe357ffc6d14d7f6f" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - [[package]] name = "ruint" -version = "1.15.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11256b5fe8c68f56ac6f39ef0720e592f33d2367a4782740d9c9142e889c7fb4" +checksum = "0298da754d1395046b0afdc2f20ee76d29a8ae310cd30ffa84ed42acba9cb12a" dependencies = [ "alloy-rlp", "arbitrary", "ark-ff 0.3.0", "ark-ff 0.4.2", + "ark-ff 0.5.0", "bytes", "fastrlp 0.3.1", "fastrlp 0.4.0", - "num-bigint 0.4.6", + "num-bigint", "num-integer", "num-traits", "parity-scale-codec", @@ -6122,7 +4224,7 @@ dependencies = [ "rand 0.9.1", "rlp", "ruint-macro", - "serde", + "serde_core", "valuable", "zeroize", ] @@ -6133,16 +4235,6 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" -[[package]] -name = "rusb" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab9f9ff05b63a786553a4c02943b74b34a988448671001e9a27e2f0565cc05a4" -dependencies = [ - "libc", - "libusb1-sys", -] - [[package]] name = "rustc-demangle" version = "0.1.25" @@ -6154,9 +4246,6 @@ name = "rustc-hash" version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" -dependencies = [ - "rand 0.8.5", -] [[package]] name = "rustc-hex" @@ -6182,29 +4271,16 @@ dependencies = [ "semver 1.0.26", ] -[[package]] -name = "rustix" -version = "0.38.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" -dependencies = [ - "bitflags 2.9.1", - "errno", - "libc", - "linux-raw-sys 0.4.15", - "windows-sys 0.59.0", -] - [[package]] name = "rustix" version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.11.1", "errno", "libc", - "linux-raw-sys 0.9.4", + "linux-raw-sys", "windows-sys 0.59.0", ] @@ -6214,8 +4290,8 @@ version = "0.23.28" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7160e3e10bf4535308537f3c4e1641468cd0e485175d6163087c0393c7d46643" dependencies = [ + "aws-lc-rs", "once_cell", - "ring", "rustls-pki-types", "rustls-webpki", "subtle", @@ -6253,12 +4329,40 @@ dependencies = [ "zeroize", ] +[[package]] +name = "rustls-platform-verifier" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be59af91596cac372a6942530653ad0c3a246cdd491aaa9dcaee47f88d67d5a0" +dependencies = [ + "core-foundation 0.10.1", + "core-foundation-sys", + "jni", + "log", + "once_cell", + "rustls", + "rustls-native-certs", + "rustls-platform-verifier-android", + "rustls-webpki", + "security-framework 3.2.0", + "security-framework-sys", + "webpki-root-certs", + "windows-sys 0.59.0", +] + +[[package]] +name = "rustls-platform-verifier-android" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f87165f0995f63a9fbeea62b64d10b4d9d8e78ec6d7d51fb2125fda7bb36788f" + [[package]] name = "rustls-webpki" version = "0.103.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e4a72fe2bcf7a6ac6fd7d0b9e5cb68aeb7d4c0a0271730218b3e92d43b4eb435" dependencies = [ + "aws-lc-rs", "ring", "rustls-pki-types", "untrusted", @@ -6288,15 +4392,6 @@ version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" -[[package]] -name = "salsa20" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97a22f5af31f73a954c10289c93e8a50cc23d971e80ee446f1f6f7137a088213" -dependencies = [ - "cipher", -] - [[package]] name = "same-file" version = "1.0.6" @@ -6306,15 +4401,6 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "sanitize-filename" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc984f4f9ceb736a7bb755c3e3bd17dc56370af2600c9780dcc48c66453da34d" -dependencies = [ - "regex", -] - [[package]] name = "schannel" version = "0.1.27" @@ -6336,30 +4422,12 @@ dependencies = [ "serde_json", ] -[[package]] -name = "scoped-tls" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" - [[package]] name = "scopeguard" version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" -[[package]] -name = "scrypt" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f9e24d2b632954ded8ab2ef9fea0a0c769ea56ea98bddbafbad22caeeadf45d" -dependencies = [ - "hmac", - "pbkdf2 0.11.0", - "salsa20", - "sha2 0.10.9", -] - [[package]] name = "sec1" version = "0.7.3" @@ -6383,10 +4451,21 @@ checksum = "b50c5943d326858130af85e049f2661ba3c78b26589b8ab98e65e80ae44a1252" dependencies = [ "bitcoin_hashes", "rand 0.8.5", - "secp256k1-sys", + "secp256k1-sys 0.10.1", "serde", ] +[[package]] +name = "secp256k1" +version = "0.31.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c3c81b43dc2d8877c216a3fccf76677ee1ebccd429566d3e67447290d0c42b2" +dependencies = [ + "bitcoin_hashes", + "rand 0.9.1", + "secp256k1-sys 0.11.0", +] + [[package]] name = "secp256k1-sys" version = "0.10.1" @@ -6396,13 +4475,22 @@ dependencies = [ "cc", ] +[[package]] +name = "secp256k1-sys" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcb913707158fadaf0d8702c2db0e857de66eb003ccfdda5924b5f5ac98efb38" +dependencies = [ + "cc", +] + [[package]] name = "security-framework" version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.11.1", "core-foundation 0.9.4", "core-foundation-sys", "libc", @@ -6415,7 +4503,7 @@ version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "271720403f46ca04f7ba6f55d438f8bd878d6b8ca0a1046e8228c4145bcbb316" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.11.1", "core-foundation 0.10.1", "core-foundation-sys", "libc", @@ -6446,9 +4534,6 @@ name = "semver" version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" -dependencies = [ - "serde", -] [[package]] name = "semver-parser" @@ -6459,18 +4544,13 @@ dependencies = [ "pest", ] -[[package]] -name = "send_wrapper" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" - [[package]] name = "serde" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" dependencies = [ + "serde_core", "serde_derive", ] @@ -6497,23 +4577,23 @@ dependencies = [ ] [[package]] -name = "serde_arrays" -version = "0.2.0" +name = "serde_core" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94a16b99c5ea4fe3daccd14853ad260ec00ea043b2708d1fd1da3106dcd8d9df" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" dependencies = [ - "serde", + "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -6524,16 +4604,7 @@ checksum = "e578a843d40b4189a4d66bba51d7684f57da5bd7c304c64e14bd63efbef49509" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", -] - -[[package]] -name = "serde_fmt" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1d4ddca14104cd60529e8c7f7ba71a2c8acd8f7f5cfcdc2faf97eeb7c3010a4" -dependencies = [ - "serde", + "syn 2.0.117", ] [[package]] @@ -6549,15 +4620,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_spanned" -version = "0.6.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3" -dependencies = [ - "serde", -] - [[package]] name = "serde_urlencoded" version = "0.7.1" @@ -6595,379 +4657,129 @@ version = "3.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "81679d9ed988d5e9a5e6531dc3f2c28efbd639cbd1dfb628df08edea6004da77" dependencies = [ - "darling", + "darling 0.20.11", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] name = "serdect" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a84f14a19e9a014bb9f4512488d9829a68e04ecabffb0f9904cd1ace94598177" -dependencies = [ - "base16ct", - "serde", -] - -[[package]] -name = "sha1" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest 0.10.7", -] - -[[package]] -name = "sha2" -version = "0.9.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" -dependencies = [ - "block-buffer 0.9.0", - "cfg-if", - "cpufeatures", - "digest 0.9.0", - "opaque-debug", -] - -[[package]] -name = "sha2" -version = "0.10.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest 0.10.7", -] - -[[package]] -name = "sha3" -version = "0.10.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" -dependencies = [ - "digest 0.10.7", - "keccak", -] - -[[package]] -name = "sha3-asm" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28efc5e327c837aa837c59eae585fc250715ef939ac32881bcc11677cd02d46" -dependencies = [ - "cc", - "cfg-if", -] - -[[package]] -name = "sharded-slab" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" -dependencies = [ - "lazy_static", -] - -[[package]] -name = "shell-words" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde" - -[[package]] -name = "shlex" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" - -[[package]] -name = "signal-hook-registry" -version = "1.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410" -dependencies = [ - "libc", -] - -[[package]] -name = "signature" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" -dependencies = [ - "digest 0.10.7", - "rand_core 0.6.4", -] - -[[package]] -name = "simd-adler32" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" - -[[package]] -name = "simple_asn1" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "297f631f50729c8c99b84667867963997ec0b50f32b2a7dbcab828ef0541e8bb" -dependencies = [ - "num-bigint 0.4.6", - "num-traits", - "thiserror 2.0.12", - "time", -] - -[[package]] -name = "siphasher" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" - -[[package]] -name = "slab" -version = "0.4.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04dc19736151f35336d325007ac991178d504a119863a2fcb3758cdb5e52c50d" - -[[package]] -name = "smallvec" -version = "1.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" -dependencies = [ - "serde", -] - -[[package]] -name = "socket2" -version = "0.5.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e22376abed350d73dd1cd119b57ffccad95b4e585a7cda43e286245ce23c0678" +checksum = "a84f14a19e9a014bb9f4512488d9829a68e04ecabffb0f9904cd1ace94598177" dependencies = [ - "libc", - "windows-sys 0.52.0", + "base16ct", + "serde", ] [[package]] -name = "solar-ast" -version = "0.1.4" +name = "sha2" +version = "0.10.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acb0d9abd88c1325e5c0f9bb153ebfb02ed40bc9639067d0ad120f5d29ee8777" +checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" dependencies = [ - "alloy-primitives", - "bumpalo", - "either", - "num-bigint 0.4.6", - "num-rational", - "semver 1.0.26", - "solar-data-structures", - "solar-interface", - "solar-macros", - "strum", - "typed-arena", + "cfg-if", + "cpufeatures 0.2.17", + "digest 0.10.7", ] [[package]] -name = "solar-config" -version = "0.1.4" +name = "sha3" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "908d455bb7c04acd783bd157b63791bf010cf6a495a845e48f7aee334aad319f" +checksum = "be176f1a57ce4e3d31c1a166222d9768de5954f811601fb7ca06fc8203905ce1" dependencies = [ - "strum", + "digest 0.11.3", + "keccak", ] [[package]] -name = "solar-data-structures" -version = "0.1.4" +name = "sha3-asm" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8b5a697cab81241c4623b4546c69e57182202847a75d7c0047c0dd10b923d8c" +checksum = "9f3f15d4e239ebe08413eed880e0f9b5af4b40ee0472543320efa91d488e96a7" dependencies = [ - "bumpalo", - "index_vec", - "indexmap 2.9.0", - "parking_lot", - "rayon", - "rustc-hash", - "smallvec", + "cc", + "cfg-if", ] [[package]] -name = "solar-interface" -version = "0.1.4" +name = "sharded-slab" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33e49e5a714ec80d7f9c8942584e5e86add1c5e824aa175d0681e9ac7a10e5cc" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" dependencies = [ - "annotate-snippets", - "anstream", - "anstyle", - "const-hex", - "derive_builder", - "derive_more 2.0.1", - "dunce", - "itertools 0.14.0", - "itoa", - "lasso", - "match_cfg", - "normalize-path", - "rayon", - "scoped-tls", - "solar-config", - "solar-data-structures", - "solar-macros", - "thiserror 2.0.12", - "tracing", - "unicode-width", + "lazy_static", ] [[package]] -name = "solar-macros" -version = "0.1.4" +name = "shlex" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e17f8b99f28f358b41acb6efe4d7b8f326541b3c58a15dd1931d6fe581feefef" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.104", -] +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] -name = "solar-parse" -version = "0.1.4" +name = "signal-hook-registry" +version = "1.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6982ef2ecfb1338c774c743ab7166ce8c3dcc92089ab77fad58eeb632b201e9" +checksum = "9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410" dependencies = [ - "alloy-primitives", - "bitflags 2.9.1", - "bumpalo", - "itertools 0.14.0", - "memchr", - "num-bigint 0.4.6", - "num-rational", - "num-traits", - "smallvec", - "solar-ast", - "solar-data-structures", - "solar-interface", - "tracing", + "libc", ] [[package]] -name = "solar-sema" -version = "0.1.4" +name = "signature" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe8e0a3a6dfc7f4987bfb93f9b56079150407ef55c459964a1541c669554b74d" +checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" dependencies = [ - "alloy-json-abi", - "alloy-primitives", - "bitflags 2.9.1", - "bumpalo", - "derive_more 2.0.1", - "either", - "once_map", - "paste", - "rayon", - "serde", - "serde_json", - "solar-ast", - "solar-data-structures", - "solar-interface", - "solar-macros", - "solar-parse", - "strum", - "thread_local", - "tracing", - "typed-arena", + "digest 0.10.7", + "rand_core 0.6.4", ] [[package]] -name = "soldeer-core" -version = "0.5.4" +name = "simple_asn1" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a67f45108aec81281be2c23000bde114d568ac3899026779f21656bbc3d85671" +checksum = "297f631f50729c8c99b84667867963997ec0b50f32b2a7dbcab828ef0541e8bb" dependencies = [ - "bon", - "chrono", - "const-hex", - "derive_more 2.0.1", - "dunce", - "home", - "ignore", - "log", - "path-slash", - "rayon", - "regex", - "reqwest 0.12.20", - "sanitize-filename", - "semver 1.0.26", - "serde", - "serde_json", - "sha2 0.10.9", + "num-bigint", + "num-traits", "thiserror 2.0.12", - "tokio", - "toml_edit", - "uuid 1.17.0", - "zip 2.4.2", - "zip-extract", + "time", ] [[package]] -name = "sp1-lib" -version = "5.0.5" +name = "siphasher" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0fd8bc101e5603ccf2dc1836ea06410f25ce2298755b2dac626add9be2424b4" -dependencies = [ - "bincode", - "serde", - "sp1-primitives", -] +checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" [[package]] -name = "sp1-primitives" -version = "5.0.5" +name = "slab" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "699935774a5131c1a8b371108d0666c0c80c43611045fb77fae43f2f242676d5" -dependencies = [ - "bincode", - "blake3", - "cfg-if", - "hex", - "lazy_static", - "num-bigint 0.4.6", - "p3-baby-bear", - "p3-field", - "p3-poseidon2", - "p3-symmetric", - "serde", - "sha2 0.10.9", -] +checksum = "04dc19736151f35336d325007ac991178d504a119863a2fcb3758cdb5e52c50d" [[package]] -name = "sp1_bls12_381" -version = "0.8.0-sp1-5.0.0" +name = "smallvec" +version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac255e1704ebcdeec5e02f6a0ebc4d2e9e6b802161938330b6810c13a610c583" +checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" dependencies = [ - "cfg-if", - "ff", - "group", - "pairing", - "rand_core 0.6.4", - "sp1-lib", - "subtle", + "serde", ] [[package]] -name = "spin" -version = "0.9.8" +name = "socket2" +version = "0.5.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" +checksum = "e22376abed350d73dd1cd119b57ffccad95b4e585a7cda43e286245ce23c0678" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] [[package]] name = "spki" @@ -7016,7 +4828,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -7025,115 +4837,6 @@ version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" -[[package]] -name = "sval" -version = "2.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cc9739f56c5d0c44a5ed45473ec868af02eb896af8c05f616673a31e1d1bb09" - -[[package]] -name = "sval_buffer" -version = "2.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f39b07436a8c271b34dad5070c634d1d3d76d6776e938ee97b4a66a5e8003d0b" -dependencies = [ - "sval", - "sval_ref", -] - -[[package]] -name = "sval_dynamic" -version = "2.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffcb072d857431bf885580dacecf05ed987bac931230736739a79051dbf3499b" -dependencies = [ - "sval", -] - -[[package]] -name = "sval_fmt" -version = "2.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f214f427ad94a553e5ca5514c95c6be84667cbc5568cce957f03f3477d03d5c" -dependencies = [ - "itoa", - "ryu", - "sval", -] - -[[package]] -name = "sval_json" -version = "2.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "389ed34b32e638dec9a99c8ac92d0aa1220d40041026b625474c2b6a4d6f4feb" -dependencies = [ - "itoa", - "ryu", - "sval", -] - -[[package]] -name = "sval_nested" -version = "2.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14bae8fcb2f24fee2c42c1f19037707f7c9a29a0cda936d2188d48a961c4bb2a" -dependencies = [ - "sval", - "sval_buffer", - "sval_ref", -] - -[[package]] -name = "sval_ref" -version = "2.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a4eaea3821d3046dcba81d4b8489421da42961889902342691fb7eab491d79e" -dependencies = [ - "sval", -] - -[[package]] -name = "sval_serde" -version = "2.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "172dd4aa8cb3b45c8ac8f3b4111d644cd26938b0643ede8f93070812b87fb339" -dependencies = [ - "serde", - "sval", - "sval_nested", -] - -[[package]] -name = "svm-rs" -version = "0.5.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "909e8ff825120cd2b34ceb236ab72e2a7f74b1d3a86c247936c8ff7a80c5d408" -dependencies = [ - "const-hex", - "dirs", - "reqwest 0.12.20", - "semver 1.0.26", - "serde", - "serde_json", - "sha2 0.10.9", - "tempfile", - "thiserror 2.0.12", - "url", - "zip 4.1.0", -] - -[[package]] -name = "svm-rs-builds" -version = "0.5.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1ebe77b200f965e8dbec3ef1d8337e974179ca1ecaa9fc28f67288d6b438159" -dependencies = [ - "const-hex", - "semver 1.0.26", - "serde_json", - "svm-rs", -] - [[package]] name = "syn" version = "1.0.109" @@ -7147,9 +4850,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.104" +version = "2.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17b6f705963418cdb9927482fa304bc562ece2fdd4f616084c50b7023b435a40" +checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" dependencies = [ "proc-macro2", "quote", @@ -7158,14 +4861,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "1.2.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ac494e7266fcdd2ad80bf4375d55d27a117ea5c866c26d0e97fe5b3caeeb75" +checksum = "ec005042c7d952febc1a3ef5b0f6674e9054aa836877a31c90b20e25b3d31744" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -7191,7 +4894,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -7202,18 +4905,7 @@ checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" dependencies = [ "bitflags 1.3.2", "core-foundation 0.9.4", - "system-configuration-sys 0.5.0", -] - -[[package]] -name = "system-configuration" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" -dependencies = [ - "bitflags 2.9.1", - "core-foundation 0.9.4", - "system-configuration-sys 0.6.0", + "system-configuration-sys", ] [[package]] @@ -7226,16 +4918,6 @@ dependencies = [ "libc", ] -[[package]] -name = "system-configuration-sys" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4" -dependencies = [ - "core-foundation-sys", - "libc", -] - [[package]] name = "tap" version = "1.0.1" @@ -7251,17 +4933,7 @@ dependencies = [ "fastrand", "getrandom 0.3.3", "once_cell", - "rustix 1.0.7", - "windows-sys 0.59.0", -] - -[[package]] -name = "terminal_size" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45c6481c4829e4cc63825e62c49186a34538b7b2750b73b266581ffb612fb5ed" -dependencies = [ - "rustix 1.0.7", + "rustix", "windows-sys 0.59.0", ] @@ -7291,7 +4963,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -7302,7 +4974,7 @@ checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -7331,9 +5003,7 @@ checksum = "8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40" dependencies = [ "deranged", "itoa", - "libc", "num-conv", - "num_threads", "powerfmt", "serde", "time-core", @@ -7356,15 +5026,6 @@ dependencies = [ "time-core", ] -[[package]] -name = "tiny-keccak" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" -dependencies = [ - "crunchy", -] - [[package]] name = "tinystr" version = "0.8.1" @@ -7416,7 +5077,7 @@ checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -7451,22 +5112,6 @@ dependencies = [ "tokio-util", ] -[[package]] -name = "tokio-tungstenite" -version = "0.26.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a9daff607c6d2bf6c16fd681ccb7eecc83e4e2cdc1ca067ffaadfca5de7f084" -dependencies = [ - "futures-util", - "log", - "rustls", - "rustls-pki-types", - "tokio", - "tokio-rustls", - "tungstenite", - "webpki-roots 0.26.11", -] - [[package]] name = "tokio-util" version = "0.7.15" @@ -7480,27 +5125,11 @@ dependencies = [ "tokio", ] -[[package]] -name = "toml" -version = "0.8.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362" -dependencies = [ - "indexmap 2.9.0", - "serde", - "serde_spanned", - "toml_datetime", - "toml_edit", -] - [[package]] name = "toml_datetime" version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" -dependencies = [ - "serde", -] [[package]] name = "toml_edit" @@ -7508,19 +5137,10 @@ version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ - "indexmap 2.9.0", - "serde", - "serde_spanned", - "toml_datetime", - "toml_write", - "winnow", -] - -[[package]] -name = "toml_write" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" + "indexmap 2.9.0", + "toml_datetime", + "winnow 0.7.11", +] [[package]] name = "tower" @@ -7539,20 +5159,20 @@ dependencies = [ [[package]] name = "tower-http" -version = "0.6.6" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2" +checksum = "4cfcf7e2740e6fc6d4d688b4ef00650406bb94adf4731e43c096c3a19fe40840" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.11.1", "bytes", "futures-util", "http 1.3.1", "http-body 1.0.1", - "iri-string", "pin-project-lite", "tower", "tower-layer", "tower-service", + "url", ] [[package]] @@ -7586,7 +5206,7 @@ checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -7599,18 +5219,6 @@ dependencies = [ "valuable", ] -[[package]] -name = "tracing-futures" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2" -dependencies = [ - "futures", - "futures-task", - "pin-project", - "tracing", -] - [[package]] name = "tracing-log" version = "0.2.0" @@ -7649,20 +5257,6 @@ dependencies = [ "tracing-log", ] -[[package]] -name = "trezor-client" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10636211ab89c96ed2824adc5ec0d081e1080aeacc24c37abb318dcb31dcc779" -dependencies = [ - "byteorder", - "hex", - "protobuf", - "rusb", - "thiserror 1.0.69", - "tracing", -] - [[package]] name = "try-lock" version = "0.2.5" @@ -7690,45 +5284,14 @@ dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.104", -] - -[[package]] -name = "tungstenite" -version = "0.26.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4793cb5e56680ecbb1d843515b23b6de9a75eb04b66643e256a396d43be33c13" -dependencies = [ - "bytes", - "data-encoding", - "http 1.3.1", - "httparse", - "log", - "rand 0.9.1", - "rustls", - "rustls-pki-types", - "sha1", - "thiserror 2.0.12", - "utf-8", + "syn 2.0.117", ] -[[package]] -name = "typed-arena" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a" - -[[package]] -name = "typeid" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c" - [[package]] name = "typenum" -version = "1.18.0" +version = "1.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" +checksum = "40ce102ab67701b8526c123c1bab5cbe42d7040ccfd0f64af1a385808d2f43de" [[package]] name = "ucd-trie" @@ -7754,39 +5317,12 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" -[[package]] -name = "uncased" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1b88fcfe09e89d3866a5c11019378088af2d24c3fbd4f0543f96b479ec90697" -dependencies = [ - "version_check", -] - -[[package]] -name = "unicase" -version = "2.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539" - [[package]] name = "unicode-ident" version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" -[[package]] -name = "unicode-segmentation" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" - -[[package]] -name = "unicode-width" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a1a07cc7db3810833284e8d372ccdc6da29741639ecc70c9ec107df0fa6154c" - [[package]] name = "unicode-xid" version = "0.2.6" @@ -7811,12 +5347,6 @@ dependencies = [ "serde", ] -[[package]] -name = "utf-8" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" - [[package]] name = "utf8_iter" version = "1.0.4" @@ -7829,88 +5359,18 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" -[[package]] -name = "uuid" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" -dependencies = [ - "getrandom 0.2.16", - "serde", -] - -[[package]] -name = "uuid" -version = "1.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cf4199d1e5d15ddd86a694e4d0dffa9c323ce759fea589f00fef9d81cc1931d" -dependencies = [ - "getrandom 0.3.3", - "js-sys", - "serde", - "wasm-bindgen", -] - [[package]] name = "valuable" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" -[[package]] -name = "value-bag" -version = "1.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "943ce29a8a743eb10d6082545d861b24f9d1b160b7d741e0f2cdf726bec909c5" -dependencies = [ - "value-bag-serde1", - "value-bag-sval2", -] - -[[package]] -name = "value-bag-serde1" -version = "1.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35540706617d373b118d550d41f5dfe0b78a0c195dc13c6815e92e2638432306" -dependencies = [ - "erased-serde", - "serde", - "serde_fmt", -] - -[[package]] -name = "value-bag-sval2" -version = "1.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fe7e140a2658cc16f7ee7a86e413e803fc8f9b5127adc8755c19f9fefa63a52" -dependencies = [ - "sval", - "sval_buffer", - "sval_dynamic", - "sval_fmt", - "sval_json", - "sval_ref", - "sval_serde", -] - [[package]] name = "vcpkg" version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" -[[package]] -name = "vergen" -version = "8.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2990d9ea5967266ea0ccf413a4aa5c42a93dbcfda9cb49a97de6931726b12566" -dependencies = [ - "anyhow", - "cfg-if", - "rustversion", - "time", -] - [[package]] name = "version_check" version = "0.9.5" @@ -7982,7 +5442,7 @@ dependencies = [ "log", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", "wasm-bindgen-shared", ] @@ -8017,7 +5477,7 @@ checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -8055,20 +5515,7 @@ checksum = "8cc4956f28c8dba2ad5b3afb5ed7d584f7e9e7194e516eae0577d79d594de6e6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", -] - -[[package]] -name = "wasm-streams" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15053d8d85c7eccdbefef60f06769760a563c7f0a9d6902a13d35c7800b0ad65" -dependencies = [ - "futures-util", - "js-sys", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", + "syn 2.0.117", ] [[package]] @@ -8106,29 +5553,14 @@ dependencies = [ ] [[package]] -name = "webpki-roots" -version = "0.26.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "521bc38abb08001b01866da9f51eb7c5d647a19260e00054a8c7fd5f9e57f7a9" -dependencies = [ - "webpki-roots 1.0.1", -] - -[[package]] -name = "webpki-roots" -version = "1.0.1" +name = "webpki-root-certs" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8782dd5a41a24eed3a4f40b606249b3e236ca61adf1f25ea4d45c73de122b502" +checksum = "f31141ce3fc3e300ae89b78c0dd67f9708061d1d2eda54b8209346fd6be9a92c" dependencies = [ "rustls-pki-types", ] -[[package]] -name = "widestring" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd7cf3379ca1aac9eea11fba24fd7e315d621f8dfe35c8d7d2be8b793726e07d" - [[package]] name = "winapi" version = "0.3.9" @@ -8151,7 +5583,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]] @@ -8181,7 +5613,7 @@ checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -8192,7 +5624,7 @@ checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -8201,17 +5633,6 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" -[[package]] -name = "windows-registry" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3bab093bdd303a1240bb99b8aba8ea8a69ee19d34c9e2ef9594e708a4878820" -dependencies = [ - "windows-link", - "windows-result", - "windows-strings", -] - [[package]] name = "windows-result" version = "0.3.4" @@ -8230,6 +5651,15 @@ dependencies = [ "windows-link", ] +[[package]] +name = "windows-sys" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +dependencies = [ + "windows-targets 0.42.2", +] + [[package]] name = "windows-sys" version = "0.48.0" @@ -8266,6 +5696,21 @@ dependencies = [ "windows-targets 0.53.2", ] +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + [[package]] name = "windows-targets" version = "0.48.5" @@ -8313,6 +5758,12 @@ dependencies = [ "windows_x86_64_msvc 0.53.0", ] +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" @@ -8331,6 +5782,12 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + [[package]] name = "windows_aarch64_msvc" version = "0.48.5" @@ -8349,6 +5806,12 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + [[package]] name = "windows_i686_gnu" version = "0.48.5" @@ -8379,6 +5842,12 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + [[package]] name = "windows_i686_msvc" version = "0.48.5" @@ -8397,6 +5866,12 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + [[package]] name = "windows_x86_64_gnu" version = "0.48.5" @@ -8415,6 +5890,12 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" @@ -8433,6 +5914,12 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + [[package]] name = "windows_x86_64_msvc" version = "0.48.5" @@ -8460,6 +5947,15 @@ dependencies = [ "memchr", ] +[[package]] +name = "winnow" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0592e1c9d151f854e6fd382574c3a0855250e1d9b2f99d9281c6e6391af352f1" +dependencies = [ + "memchr", +] + [[package]] name = "winreg" version = "0.50.0" @@ -8476,7 +5972,7 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.11.1", ] [[package]] @@ -8485,25 +5981,6 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb" -[[package]] -name = "ws_stream_wasm" -version = "0.7.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c173014acad22e83f16403ee360115b38846fe754e735c5d9d3803fe70c6abc" -dependencies = [ - "async_io_stream", - "futures", - "js-sys", - "log", - "pharos", - "rustc_version 0.4.1", - "send_wrapper", - "thiserror 2.0.12", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - [[package]] name = "wyz" version = "0.5.1" @@ -8513,21 +5990,6 @@ dependencies = [ "tap", ] -[[package]] -name = "xxhash-rust" -version = "0.8.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdd20c5420375476fbd4394763288da7eb0cc0b8c11deed431a91562af7335d3" - -[[package]] -name = "yansi" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" -dependencies = [ - "is-terminal", -] - [[package]] name = "yoke" version = "0.8.0" @@ -8548,7 +6010,7 @@ checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", "synstructure", ] @@ -8569,7 +6031,7 @@ checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -8589,7 +6051,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", "synstructure", ] @@ -8610,7 +6072,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.117", ] [[package]] @@ -8643,66 +6105,5 @@ checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", -] - -[[package]] -name = "zip" -version = "2.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fabe6324e908f85a1c52063ce7aa26b68dcb7eb6dbc83a2d148403c9bc3eba50" -dependencies = [ - "arbitrary", - "crc32fast", - "crossbeam-utils", - "displaydoc", - "flate2", - "indexmap 2.9.0", - "memchr", - "thiserror 2.0.12", - "zopfli", -] - -[[package]] -name = "zip" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af7dcdb4229c0e79c2531a24de7726a0e980417a74fb4d030a35f535665439a0" -dependencies = [ - "arbitrary", - "bzip2", - "crc32fast", - "flate2", - "indexmap 2.9.0", - "memchr", - "zopfli", -] - -[[package]] -name = "zip-extract" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db6d94e397dd6d0273e6747e46e7aa0289bfd9736ba8772f2fe948bc4adc3f73" -dependencies = [ - "log", - "thiserror 2.0.12", - "zip 4.1.0", -] - -[[package]] -name = "zlib-rs" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "626bd9fa9734751fc50d6060752170984d7053f5a39061f524cda68023d4db8a" - -[[package]] -name = "zopfli" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edfc5ee405f504cd4984ecc6f14d02d55cfda60fa4b689434ef4102aae150cd7" -dependencies = [ - "bumpalo", - "crc32fast", - "log", - "simd-adler32", + "syn 2.0.117", ] diff --git a/Cargo.toml b/Cargo.toml index 8104944dd..914f71cf9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,19 +11,6 @@ homepage = "https://github.com/rainlanguage/rainlang" alloy = { version = "1.0.9", features = ["sol-types", "json", "json-abi"] } anyhow = "1.0.70" clap = { version = "4.2.5", features = ["cargo", "derive"] } -foundry-evm = { git = "https://github.com/foundry-rs/foundry", rev = "ed86c645f037f1cc4e5c1583f074a7b2142c4f66" } -foundry-evm-core = { git = "https://github.com/foundry-rs/foundry", rev = "ed86c645f037f1cc4e5c1583f074a7b2142c4f66" } -foundry-fork-db = "0.15.0" -foundry-block-explorers = "0.18.0" -revm = { version = "24.0.1", default-features = false, features = [ - "std", - "serde", - "memory_limit", - "optional_eip3607", - "optional_block_gas_limit", - "optional_no_base_fee", - "arbitrary", -] } serde = "1.0.160" serde_bytes = "0.11.9" serde_json = "1.0.112" diff --git a/crates/cli/src/commands/eval.rs b/crates/cli/src/commands/eval.rs index 42f718917..91f52d22b 100644 --- a/crates/cli/src/commands/eval.rs +++ b/crates/cli/src/commands/eval.rs @@ -8,7 +8,10 @@ use anyhow::anyhow; use clap::Args; use rainlang_bindings::IInterpreterStoreV3::FullyQualifiedNamespace; use rainlang_eval::trace::RainEvalResult; -use rainlang_eval::{eval::ForkEvalArgs, fork::Forker}; +use rainlang_eval::{ + eval::{ForkEvalArgs, ForkEvalExt}, + fork::Forker, +}; use std::path::PathBuf; /// CLI arguments for evaluating a Rainlang expression. diff --git a/crates/cli/src/commands/parse.rs b/crates/cli/src/commands/parse.rs index db71dea58..46d343c7f 100644 --- a/crates/cli/src/commands/parse.rs +++ b/crates/cli/src/commands/parse.rs @@ -5,7 +5,7 @@ use alloy::primitives::Address; use anyhow::Result; use anyhow::anyhow; use clap::Args; -use rainlang_eval::eval::ForkParseArgs; +use rainlang_eval::eval::{ForkEvalExt, ForkParseArgs}; use rainlang_eval::fork::Forker; use std::path::PathBuf; diff --git a/crates/eval/Cargo.toml b/crates/eval/Cargo.toml index 971e60df8..12da72373 100644 --- a/crates/eval/Cargo.toml +++ b/crates/eval/Cargo.toml @@ -13,18 +13,14 @@ serde = { workspace = true } eyre = { workspace = true } rain-error-decoding = { workspace = true } +# The forking executor (multi-fork, calls, tracing, replay) now lives in the +# published rain-forker crate instead of the unpublishable foundry-evm git dep. +# Native-only: forking against a live RPC has no meaning on wasm. [target.'cfg(not(target_family = "wasm"))'.dependencies] -foundry-evm = { workspace = true } -revm = { workspace = true } +rain-forker = "0.1" [target.'cfg(target_family = "wasm")'.dependencies] wasm-bindgen-utils.workspace = true -revm = { version = "25.0.0", default-features = false, features = [ - "kzg-rs", - "portable", - "std", - "tracer", -] } [dev-dependencies] tracing = { workspace = true } diff --git a/crates/eval/src/error.rs b/crates/eval/src/error.rs index ad28235bd..3097f9fd0 100644 --- a/crates/eval/src/error.rs +++ b/crates/eval/src/error.rs @@ -1,54 +1,5 @@ -use alloy::primitives::ruint::FromUintError; -#[cfg(not(target_family = "wasm"))] -use foundry_evm::{backend::DatabaseError, executors::RawCallResult}; -use rain_error_decoding::{AbiDecodeFailedErrors, AbiDecodedErrorType}; -use thiserror::Error; - -/// Errors that can occur when calling a forked EVM. -#[derive(Debug, Error)] -pub enum ForkCallError { - #[error("Executor error: {0}")] - ExecutorError(String), - #[cfg(not(target_family = "wasm"))] - #[error("Call failed: {:#?}", .0)] - Failed(Box), - #[error("Typed error: {0}")] - TypedError(String), - #[error(transparent)] - AbiDecodeFailed(#[from] AbiDecodeFailedErrors), - #[error(transparent)] - AbiDecodedError(#[from] AbiDecodedErrorType), - #[error("Failed to deserialize serialized expression: {0}")] - DeserializeFailed(String), - #[error(transparent)] - U64FromUint256(#[from] FromUintError), - #[error(transparent)] - Eyre(#[from] eyre::Report), - #[error("Replay transaction error: {:#?}", .0)] - ReplayTransactionError(#[from] ReplayTransactionError), -} - -/// Errors specific to replaying a historical transaction. -#[derive(Debug, Error)] -pub enum ReplayTransactionError { - #[error("Transaction not found for hash {0} and fork url {1}")] - TransactionNotFound(String, String), - #[error("No active fork found")] - NoActiveFork, - #[cfg(not(target_family = "wasm"))] - #[error("Database error for hash {0} and fork url {1}: {2}")] - DatabaseError(String, String, DatabaseError), - #[error("No block number found in transaction for hash {0} and fork url {1}")] - NoBlockNumberFound(String, String), - #[error("No from address found in transaction for hash {0} and fork url {1}")] - NoFromAddressFound(String, String), - #[error("Cannot replay genesis block (block 0) transaction for hash {0} and fork url {1}")] - GenesisBlockReplay(String, String), -} - -#[cfg(not(target_family = "wasm"))] -impl From for ForkCallError { - fn from(value: RawCallResult) -> Self { - Self::Failed(Box::new(value)) - } -} +//! Re-export of the forking error types, which now live in `rain-forker`. +//! +//! Kept as `rain_interpreter_eval::error` for backwards compatibility with +//! downstream consumers. +pub use rain_forker::error::{ForkCallError, ReplayTransactionError}; diff --git a/crates/eval/src/eval.rs b/crates/eval/src/eval.rs index 2e0adc83d..617c15811 100644 --- a/crates/eval/src/eval.rs +++ b/crates/eval/src/eval.rs @@ -52,12 +52,26 @@ impl From for ForkParseArgs { } } -impl Forker { - /// Parses Rainlang string and returns the parsed result. - /// - /// Discovers the deployer address from Rainlang, then calls - /// `parse2` on it. - pub async fn fork_parse( +/// Rain-specific parse/eval helpers on top of the generic [`Forker`]. +/// +/// Defined as an extension trait because `Forker` now lives in the external +/// `rain-forker` crate, so inherent methods can't be added to it here. +pub trait ForkEvalExt { + /// Parses a Rainlang string against the deployer discovered from `rainlang`. + fn fork_parse( + &self, + args: ForkParseArgs, + ) -> impl std::future::Future, ForkCallError>>; + + /// Evaluates a Rainlang string against the interpreter discovered from `rainlang`. + fn fork_eval( + &self, + args: ForkEvalArgs, + ) -> impl std::future::Future, ForkCallError>>; +} + +impl ForkEvalExt for Forker { + async fn fork_parse( &self, args: ForkParseArgs, ) -> Result, ForkCallError> { @@ -92,7 +106,7 @@ impl Forker { /// /// Discovers all component addresses from Rainlang, parses the /// Rainlang string via the deployer, then evaluates via the interpreter. - pub async fn fork_eval( + async fn fork_eval( &self, args: ForkEvalArgs, ) -> Result, ForkCallError> { @@ -171,7 +185,7 @@ mod tests { use crate::fork::NewForkedEvm; use alloy::primitives::FixedBytes; use rainlang_test_fixtures::LocalEvm; - use std::{ops::Deref, sync::Arc}; + use std::sync::Arc; #[tokio::test(flavor = "multi_thread", worker_threads = 1)] async fn test_fork_parse() { @@ -229,10 +243,8 @@ mod tests { let mut expected_stack_trace = vec![0u8, 0u8, 0u8, 0u8]; expected_stack_trace.append(&mut >::left_padding_from(&[3u8]).to_vec()); - let sparsed_trace_arena = res.raw.traces.unwrap(); - let source_index_zero_trace = sparsed_trace_arena.deref().clone().into_nodes()[1] - .to_owned() - .trace; + let trace_arena = res.raw.traces.unwrap(); + let source_index_zero_trace = trace_arena.into_nodes()[1].to_owned().trace; assert_eq!(source_index_zero_trace.data.to_vec(), expected_stack_trace); // asserting the known trace address diff --git a/crates/eval/src/fork.rs b/crates/eval/src/fork.rs index 01ca44a63..5921796bd 100644 --- a/crates/eval/src/fork.rs +++ b/crates/eval/src/fork.rs @@ -1,950 +1,7 @@ -use crate::error::{ForkCallError, ReplayTransactionError}; -use alloy::consensus::Transaction; -use alloy::primitives::{Address, BlockNumber, U256}; -use alloy::sol_types::SolCall; -use foundry_evm::traces::TraceMode; -use foundry_evm::{ - Env, EnvMut, - backend::{Backend, DatabaseExt, JournaledState, LocalForkId}, - executors::{Executor, ExecutorBuilder, RawCallResult}, - fork::{CreateFork, ForkId, MultiFork}, - opts::EvmOpts, -}; -use rain_error_decoding::AbiDecodedErrorType; -use revm::primitives::hardfork::SpecId; -use revm::primitives::{B256, TxKind}; -use revm::{ - interpreter::InstructionResult, - primitives::{Address as Addr, Bytes}, -}; -use std::{any::type_name, collections::HashMap}; - -/// Forker is thin wrapper around foundry for easily forking multiple evm -/// networks with in-memory cache that provides easy to use read/write -/// functionalities. -#[derive(Clone)] -pub struct Forker { - pub executor: Executor, - forks: HashMap, -} - -/// Result of an alloy-typed call containing both the raw EVM result and the -/// ABI-decoded return value. -pub struct ForkTypedReturn { - /// The raw EVM call result including traces and exit reason. - pub raw: RawCallResult, - /// The ABI-decoded return value. - pub typed_return: C::Return, -} - -/// Configuration for creating a new forked EVM instance. -#[derive(Debug, Clone)] -pub struct NewForkedEvm { - /// RPC URL of the network to fork. - pub fork_url: String, - /// Optional block number to fork from. Uses latest if `None`. - pub fork_block_number: Option, -} - -fn mk_journaled_state(spec_id: SpecId) -> JournaledState { - let mut journaled_state = JournaledState::new(); - journaled_state.set_spec_id(spec_id); - journaled_state -} - -// NOTE: there is a trait for this in foundry-evm-core but it's not exposed -// through the meta crate foundry-evm -fn mk_env_mut(env: &mut Env) -> EnvMut<'_> { - EnvMut { - block: &mut env.evm_env.block_env, - cfg: &mut env.evm_env.cfg_env, - tx: &mut env.tx, - } -} - -impl Forker { - /// Creates a new empty instance of `Forker`. - pub fn new() -> eyre::Result { - let db = Backend::new(MultiFork::new().0, None)?; - let builder = ExecutorBuilder::default() - .inspectors(|stack| stack.trace_mode(TraceMode::Call.with_debug(false))); - Ok(Self { - executor: builder.build(Env::default(), db), - forks: HashMap::new(), - }) - } - - /// Creates a new instance of `Forker` with the specified fork URL and optional fork block number. - /// - /// # Arguments - /// - /// * `args` - Fork configuration containing URL and optional block number. - /// * `env` - Optional EVM environment override. - /// * `gas_limit` - Optional gas limit override. - /// - /// # Returns - /// - /// A new instance of `Forker`. - /// - /// # Examples - /// - /// ```ignore - /// use rainlang_eval::fork::{Forker, NewForkedEvm}; - /// - /// let args = NewForkedEvm { - /// fork_url: "https://example.com/fork".to_owned(), - /// fork_block_number: Some(12345u64), - /// }; - /// let forker = Forker::new_with_fork(args, None, None).await; - /// ``` - pub async fn new_with_fork( - args: NewForkedEvm, - env: Option, - gas_limit: Option, - ) -> Result { - let NewForkedEvm { - fork_url, - fork_block_number, - } = args; - let fork_id = ForkId::new(&fork_url, fork_block_number); - let evm_opts = EvmOpts { - fork_url: Some(fork_url.to_string()), - fork_block_number, - env: foundry_evm::opts::Env { - chain_id: None, - code_size_limit: None, - gas_limit: u64::MAX.into(), - ..Default::default() - }, - memory_limit: u64::MAX, - ..Default::default() - }; - - let create_fork = CreateFork { - url: fork_url.clone(), - enable_caching: true, - env: evm_opts.fork_evm_env(&fork_url).await?.0, - evm_opts, - }; - let block_number = if let Some(block_number) = fork_block_number { - block_number - } else { - create_fork.env.evm_env.block_env.number - }; - - let db = Backend::spawn(Some(create_fork.clone()))?; - - let builder = if let Some(gas) = gas_limit { - ExecutorBuilder::default().gas_limit(gas) - } else { - ExecutorBuilder::default() - }; - let builder = - builder.inspectors(|stack| stack.trace_mode(TraceMode::Call.with_debug(false))); - - let mut forks_map = HashMap::new(); - forks_map.insert(fork_id, (U256::from(0), SpecId::default(), block_number)); - Ok(Self { - executor: builder.build(env.unwrap_or(create_fork.env.clone()), db), - forks: forks_map, - }) - } - - /// Adds new fork and sets it as active or if the fork already exists, selects it as active. - /// Does nothing if the fork is already the active fork. - pub async fn add_or_select( - &mut self, - args: NewForkedEvm, - env: Option, - ) -> Result<(), ForkCallError> { - if self.forks.is_empty() { - let forker = Self::new_with_fork(args, env, None).await?; - self.executor = forker.executor; - self.forks = forker.forks; - return Ok(()); - } - let NewForkedEvm { - fork_url, - fork_block_number, - } = args; - let fork_id = ForkId::new(&fork_url, fork_block_number); - if let Some((local_fork_id, spec_id, _)) = self.forks.get(&fork_id) { - if self.executor.backend().is_active_fork(*local_fork_id) { - Ok(()) - } else { - let mut journaled_state = mk_journaled_state(*spec_id); - self.executor - .backend_mut() - .select_fork( - *local_fork_id, - &mut mk_env_mut(&mut env.unwrap_or_default()), - &mut journaled_state, - ) - .map(|_| ()) - .map_err(|e| ForkCallError::ExecutorError(e.to_string())) - } - } else { - let evm_opts = EvmOpts { - fork_url: Some(fork_url.to_string()), - fork_block_number, - env: foundry_evm::opts::Env { - chain_id: None, - code_size_limit: None, - gas_limit: u64::MAX.into(), - ..Default::default() - }, - memory_limit: u64::MAX, - ..Default::default() - }; - let create_fork = CreateFork { - url: fork_url.to_string(), - enable_caching: true, - env: evm_opts.fork_evm_env(&fork_url).await?.0, - evm_opts, - }; - let block_number = if let Some(block_number) = fork_block_number { - block_number - } else { - create_fork.env.evm_env.block_env.number - }; - - self.forks.insert( - fork_id, - ( - U256::from(self.forks.len()), - SpecId::default(), - block_number, - ), - ); - - self.executor - .backend_mut() - .create_select_fork( - create_fork, - &mut mk_env_mut(&mut env.unwrap_or_default()), - &mut mk_journaled_state(SpecId::default()), - ) - .map(|_| ()) - .map_err(|e| ForkCallError::ExecutorError(e.to_string())) - } - } - - /// Calls the forked EVM without committing to state using alloy typed arguments. - /// # Arguments - /// * `from_address` - The address to call from. - /// * `to_address` - The address to call to. - /// * `call` - The call to make. - /// * `decode_error` - Whether to decode revert data using the error selector registry. - /// # Returns - /// A result containing the raw call result and the typed return. - pub async fn alloy_call( - &self, - from_address: Address, - to_address: Address, - call: T, - decode_error: bool, - ) -> Result, ForkCallError> { - let raw = self.call( - from_address.as_slice(), - to_address.as_slice(), - &call.abi_encode(), - )?; - - if decode_error && raw.exit_reason == InstructionResult::Revert { - // decode result bytes to error selectors if it was a revert - return Err(ForkCallError::AbiDecodedError( - AbiDecodedErrorType::selector_registry_abi_decode(&raw.result, None).await?, - )); - } - - if !raw.exit_reason.is_ok() { - return Err(raw.into()); - } - - let typed_return = T::abi_decode_returns(&raw.result.0).map_err(|e| { - ForkCallError::TypedError(format!( - "Call:{:?} Error:{:?} Raw:{:?}", - type_name::(), - e, - raw - )) - })?; - Ok(ForkTypedReturn { raw, typed_return }) - } - - /// Writes to the forked EVM using alloy typed arguments. - /// # Arguments - /// * `from_address` - The address to call from. - /// * `to_address` - The address to call to. - /// * `call` - The call to make. - /// * `value` - The value to send with the call. - /// * `decode_error` - Whether to decode revert data using the error selector registry. - /// # Returns - /// A result containing the raw call result and the typed return. - pub async fn alloy_call_committing( - &mut self, - from_address: Address, - to_address: Address, - call: T, - value: U256, - decode_error: bool, - ) -> Result, ForkCallError> { - let raw: RawCallResult = self.call_committing( - from_address.as_slice(), - to_address.as_slice(), - &call.abi_encode(), - value, - )?; - - if decode_error && raw.exit_reason == InstructionResult::Revert { - // decode result bytes to error selectors if it was a revert - return Err(ForkCallError::AbiDecodedError( - AbiDecodedErrorType::selector_registry_abi_decode(&raw.result, None).await?, - )); - } - - if !raw.exit_reason.is_ok() { - return Err(raw.into()); - } - - let typed_return = T::abi_decode_returns(&raw.result.0).map_err(|e| { - ForkCallError::TypedError(format!( - "Call:{:?} Error:{:?} Raw:{:?}", - type_name::(), - e, - raw - )) - })?; - Ok(ForkTypedReturn { raw, typed_return }) - } - - /// Calls the forked EVM without committing to state. - /// # Arguments - /// * `from_address` - The address to call from. - /// * `to_address` - The address to call to. - /// * `calldata` - The calldata. - /// # Returns - /// A result containing the raw call result. - pub fn call( - &self, - from_address: &[u8], - to_address: &[u8], - calldata: &[u8], - ) -> Result { - if from_address.len() != 20 || to_address.len() != 20 { - return Err(ForkCallError::ExecutorError("invalid address!".to_owned())); - } - - self.executor - .call_raw( - Addr::from_slice(from_address), - Addr::from_slice(to_address), - Bytes::copy_from_slice(calldata), - U256::from(0), - ) - .map_err(|e| ForkCallError::ExecutorError(e.to_string())) - } - - /// Writes to the forked EVM. - /// # Arguments - /// * `from_address` - The address to call from. - /// * `to_address` - The address to call to. - /// * `calldata` - The calldata. - /// * `value` - The value to send with the call. - /// # Returns - /// A result containing the raw call result. - pub fn call_committing( - &mut self, - from_address: &[u8], - to_address: &[u8], - calldata: &[u8], - value: U256, - ) -> Result { - if from_address.len() != 20 || to_address.len() != 20 { - return Err(ForkCallError::ExecutorError("invalid address!".to_owned())); - } - - let result = self - .executor - .transact_raw( - Addr::from_slice(from_address), - Addr::from_slice(to_address), - Bytes::copy_from_slice(calldata), - value, - ) - .map_err(|e| ForkCallError::ExecutorError(e.to_string())); - - // remove to_address from persisted accounts - self.executor - .backend_mut() - .remove_persistent_account(&Addr::from_slice(to_address)); - - result - } - - /// resets the active fork to a given block number or to original fork block number if not provided - pub fn roll_fork( - &mut self, - block_number: Option, - env: Option, - ) -> Result<(), ForkCallError> { - let active_fork_local_id = self - .executor - .backend() - .active_fork_id() - .ok_or(ForkCallError::ExecutorError("no active fork!".to_owned()))?; - let mut org_block_number = None; - let mut spec_id = SpecId::default(); - for (local_id, sid, bnumber) in self.forks.values() { - if *local_id == active_fork_local_id { - spec_id = *sid; - org_block_number = Some(*bnumber); - break; - } - } - let org_block_number = - org_block_number.ok_or(ForkCallError::ExecutorError("no active fork!".to_owned()))?; - let block_number = block_number.unwrap_or(org_block_number); - - self.executor.env_mut().evm_env.block_env.number = block_number; - - self.executor - .backend_mut() - .roll_fork( - Some(active_fork_local_id), - block_number, - &mut mk_env_mut(&mut env.unwrap_or_default()), - &mut mk_journaled_state(spec_id), - ) - .map_err(|v| ForkCallError::ExecutorError(v.to_string())) - } - - /// Replays a transaction from the forked EVM. - /// # Arguments - /// * `tx_hash` - The transaction hash. - /// # Returns - /// A result containing the raw call result. - pub async fn replay_transaction( - &mut self, - tx_hash: B256, - ) -> Result { - let fork_url = self - .executor - .backend() - .active_fork_url() - .ok_or(ReplayTransactionError::NoActiveFork)?; - - // get the transaction - let shared_backend = &self - .executor - .backend() - .active_fork_db() - .ok_or(ReplayTransactionError::NoActiveFork)? - .db; - let full_tx = shared_backend.get_transaction(tx_hash).map_err(|e| { - ReplayTransactionError::DatabaseError(tx_hash.to_string(), fork_url.clone(), e) - })?; - - // get the block number from the transaction - let block_number = - full_tx - .block_number - .ok_or(ReplayTransactionError::NoBlockNumberFound( - tx_hash.to_string(), - fork_url.clone(), - ))?; - - // get the block - let block = shared_backend.get_full_block(block_number).map_err(|e| { - ReplayTransactionError::DatabaseError(block_number.to_string(), fork_url.clone(), e) - })?; - - self.add_or_select( - NewForkedEvm { - fork_url: fork_url.clone(), - fork_block_number: Some(block_number.checked_sub(1).ok_or( - ReplayTransactionError::GenesisBlockReplay( - tx_hash.to_string(), - fork_url.clone(), - ), - )?), - }, - None, - ) - .await?; - - // matching env to the env from the block the transaction is in - self.executor.env_mut().evm_env.block_env.number = block_number; - self.executor.env_mut().evm_env.block_env.timestamp = block.header.timestamp; - self.executor.env_mut().evm_env.block_env.beneficiary = block.header.beneficiary; - self.executor.env_mut().evm_env.block_env.difficulty = block.header.difficulty; - self.executor.env_mut().evm_env.block_env.prevrandao = - Some(block.header.mix_hash.unwrap_or_default()); - self.executor.env_mut().evm_env.block_env.basefee = - block.header.base_fee_per_gas.unwrap_or_default(); - self.executor.env_mut().evm_env.block_env.gas_limit = block.header.gas_limit; - - let active_fork_local_id = self - .executor - .backend() - .active_fork_id() - .ok_or(ForkCallError::ExecutorError("no active fork!".to_owned()))?; - - let mut journaled_state = JournaledState::new(); - - let env = self.executor.env().clone(); - - // replay all transactions that came before - let tx = self.executor.backend_mut().replay_until( - active_fork_local_id, - env, - tx_hash, - &mut journaled_state, - )?; - - let res = match tx { - // if to field is None, it means the tx was a contract deployment, see 'revm::primitives::TxKind' - Some(tx) => match tx.inner.kind() { - TxKind::Call(to) => self.call( - tx.inner.signer().as_slice(), - to.as_slice(), - tx.inner.input(), - )?, - TxKind::Create => { - self.call(tx.inner.signer().as_slice(), &[0u8; 20], tx.inner.input())? - } - }, - None => { - return Err(ForkCallError::ReplayTransactionError( - ReplayTransactionError::TransactionNotFound(tx_hash.to_string(), fork_url), - )); - } - }; - - Ok(res) - } -} - -#[cfg(test)] -mod tests { - use super::*; - use crate::namespace::qualify_namespace; - use alloy::eips::BlockNumberOrTag; - use alloy::sol; - use alloy::{ - primitives::{FixedBytes, U256}, - providers::Provider, - }; - use rainlang_bindings::IInterpreterStoreV3::{getCall, setCall}; - use rainlang_test_fixtures::LocalEvm; - - sol! { - interface IERC20 { - function balanceOf(address account) external view returns (uint256); - function transfer(address to, uint256 amount) external returns (bool); - function allowance(address owner, address spender) external view returns (uint256); - function approve(address spender, uint256 amount) external returns (bool); - function transferFrom(address from, address to, uint256 amount) external returns (bool); - } - } - - sol! { - interface IERC165 { - function supportsInterface(bytes4 interfaceId) external view returns (bool); - } - } - - #[tokio::test(flavor = "multi_thread", worker_threads = 1)] - async fn test_forker_read() { - let local_evm = LocalEvm::new().await; - let deployer = *local_evm.deployer.address(); - let args = NewForkedEvm { - fork_url: local_evm.url(), - fork_block_number: None, - }; - - let forker = Forker::new_with_fork(args, None, None).await.unwrap(); - - // Call supportsInterface(IERC165) on the deployer to verify alloy_call works. - let call = IERC165::supportsInterfaceCall { - interfaceId: alloy::primitives::FixedBytes([0x01, 0xff, 0xc9, 0xa7]), - }; - let result = forker - .alloy_call(Address::default(), deployer, call, false) - .await - .unwrap(); - assert!(result.typed_return); - } - - #[tokio::test(flavor = "multi_thread", worker_threads = 1)] - async fn test_forker_write() { - let local_evm = LocalEvm::new().await; - let args = NewForkedEvm { - fork_url: local_evm.url(), - fork_block_number: None, - }; - let mut forker = Forker::new_with_fork(args, None, None).await.unwrap(); - - let from_address = Address::repeat_byte(0x02); - let store_address = *local_evm.store.address(); - - let namespace = U256::from(1); - let key = >::left_padding_from(&[3u8]); - let value = >::left_padding_from(&[4u8]); - let _set = forker - .alloy_call_committing( - from_address, - store_address, - setCall { - namespace, - kvs: vec![key, value], - }, - U256::from(0), - false, - ) - .await - .unwrap(); - - let fully_quallified_namespace = qualify_namespace(namespace.into(), from_address); - - let get = forker - .alloy_call( - from_address, - store_address, - getCall { - namespace: fully_quallified_namespace.into(), - key: >::left_padding_from(&[3u8]), - }, - false, - ) - .await - .unwrap() - .typed_return; - assert_eq!(value, get); - } - - #[tokio::test(flavor = "multi_thread", worker_threads = 1)] - async fn test_multi_fork_read_write_switch_reset() -> Result<(), ForkCallError> { - let local_evm1 = LocalEvm::new_with_tokens(1).await; - let local_evm1_token = *local_evm1.tokens[0].address(); - let local_evm1_token_holder = local_evm1.anvil.addresses()[0]; - let args = NewForkedEvm { - fork_url: local_evm1.url(), - fork_block_number: None, - }; - let mut forker = Forker::new_with_fork(args, None, None).await.unwrap(); - - let from_address = Address::default(); - let to_address = local_evm1_token; - let call = IERC20::balanceOfCall { - account: local_evm1_token_holder, - }; - let result = forker - .alloy_call(from_address, to_address, call, false) - .await - .unwrap(); - let old_balance = result.typed_return; - let polygon_old_balance = result.typed_return; - - let from_address = local_evm1_token_holder; - let to_address = local_evm1_token; - let send_amount = U256::from(0xffu64); - let transfer_call = IERC20::transferCall { - to: Address::repeat_byte(0x2), - amount: send_amount, - }; - forker - .alloy_call_committing( - from_address, - to_address, - transfer_call, - U256::from(0), - false, - ) - .await - .unwrap(); - - let from_address = Address::default(); - let to_address = local_evm1_token; - let call = IERC20::balanceOfCall { - account: local_evm1_token_holder, - }; - let result = forker - .alloy_call(from_address, to_address, call, false) - .await - .unwrap(); - let new_balance = result.typed_return; - assert_eq!(new_balance, old_balance - send_amount); - let polygon_balance = new_balance; - - // switch fork - let local_evm2 = LocalEvm::new_with_tokens(1).await; - let local_evm2_token = *local_evm2.tokens[0].address(); - let local_evm2_token_holder = local_evm2.anvil.addresses()[0]; - let args = NewForkedEvm { - fork_url: local_evm2.url(), - fork_block_number: None, - }; - forker.add_or_select(args, None).await?; - - let from_address = Address::default(); - let to_address = local_evm2_token; - let call = IERC20::balanceOfCall { - account: local_evm2_token_holder, - }; - let result = forker - .alloy_call(from_address, to_address, call, false) - .await - .unwrap(); - let old_balance = result.typed_return; - - let from_address = local_evm2_token_holder; - let to_address = local_evm2_token; - let send_amount = U256::from(0xffu64); - let transfer_call = IERC20::transferCall { - to: Address::repeat_byte(0x2), - amount: send_amount, - }; - forker - .alloy_call_committing( - from_address, - to_address, - transfer_call, - U256::from(0), - false, - ) - .await - .unwrap(); - - let from_address = Address::default(); - let to_address = local_evm2_token; - let call = IERC20::balanceOfCall { - account: local_evm2_token_holder, - }; - let result = forker - .alloy_call(from_address, to_address, call, false) - .await - .unwrap(); - let new_balance = result.typed_return; - assert_eq!(new_balance, old_balance - send_amount); - - // switch fork back to fork1 - let args = NewForkedEvm { - fork_url: local_evm1.url(), - fork_block_number: None, - }; - forker.add_or_select(args, None).await?; - - let from_address = Address::default(); - let to_address = local_evm1_token; - let call = IERC20::balanceOfCall { - account: local_evm1_token_holder, - }; - let result = forker - .alloy_call(from_address, to_address, call, false) - .await - .unwrap(); - let balance = result.typed_return; - assert_eq!(balance, polygon_balance); - - // reset fork - forker.roll_fork(None, None)?; - let call = IERC20::balanceOfCall { - account: local_evm1_token_holder, - }; - let result = forker - .alloy_call(from_address, to_address, call, false) - .await - .unwrap(); - let balance = result.typed_return; - assert_eq!(balance, polygon_old_balance); - - Ok(()) - } - - #[tokio::test(flavor = "multi_thread", worker_threads = 1)] - async fn test_fork_rolls() { - // we need to roll the fork forwards and check that the env block number is updated - let local_evm = LocalEvm::new().await; - let block_number = local_evm.provider.get_block_number().await.unwrap() - 2; - let args = NewForkedEvm { - fork_url: local_evm.url(), - fork_block_number: Some(block_number), - }; - let mut forker = Forker::new_with_fork(args, None, None).await.unwrap(); - - // check the env block number is the same as the fork block number - assert_eq!(forker.executor.env().evm_env.block_env.number, block_number); - - // roll the fork forwards by 1 block - forker.roll_fork(Some(block_number + 1), None).unwrap(); - - // check the env block number is updated - assert_eq!( - forker.executor.env().evm_env.block_env.number, - block_number + 1 - ); - } - - #[tokio::test(flavor = "multi_thread", worker_threads = 1)] - async fn test_fork_replay() { - let local_evm = LocalEvm::new().await; - let block_number = local_evm.provider.get_block_number().await.unwrap(); - let tx_hash = local_evm - .provider - .get_block_by_number(BlockNumberOrTag::Number(block_number - 2)) - .await - .unwrap() - .unwrap() - .transactions - .as_hashes() - .unwrap()[0]; - let mut forker = Forker::new_with_fork( - NewForkedEvm { - fork_url: local_evm.url(), - fork_block_number: None, - }, - None, - None, - ) - .await - .unwrap(); - - let replay_result = forker.replay_transaction(tx_hash).await.unwrap(); - - assert!(replay_result.env.tx.caller == local_evm.anvil.addresses()[0]); - assert!(replay_result.exit_reason.is_ok()); - } - - #[test] - fn test_call_invalid_from_address_too_short() { - let forker = Forker::new().unwrap(); - let result = forker.call(&[0u8; 19], &[0u8; 20], &[]); - assert!( - matches!(result, Err(ForkCallError::ExecutorError(ref msg)) if msg == "invalid address!") - ); - } - - #[test] - fn test_call_invalid_from_address_too_long() { - let forker = Forker::new().unwrap(); - let result = forker.call(&[0u8; 21], &[0u8; 20], &[]); - assert!( - matches!(result, Err(ForkCallError::ExecutorError(ref msg)) if msg == "invalid address!") - ); - } - - #[test] - fn test_call_invalid_from_address_empty() { - let forker = Forker::new().unwrap(); - let result = forker.call(&[], &[0u8; 20], &[]); - assert!( - matches!(result, Err(ForkCallError::ExecutorError(ref msg)) if msg == "invalid address!") - ); - } - - #[test] - fn test_call_invalid_to_address_too_short() { - let forker = Forker::new().unwrap(); - let result = forker.call(&[0u8; 20], &[0u8; 19], &[]); - assert!( - matches!(result, Err(ForkCallError::ExecutorError(ref msg)) if msg == "invalid address!") - ); - } - - #[test] - fn test_call_invalid_to_address_too_long() { - let forker = Forker::new().unwrap(); - let result = forker.call(&[0u8; 20], &[0u8; 21], &[]); - assert!( - matches!(result, Err(ForkCallError::ExecutorError(ref msg)) if msg == "invalid address!") - ); - } - - #[test] - fn test_call_invalid_to_address_empty() { - let forker = Forker::new().unwrap(); - let result = forker.call(&[0u8; 20], &[], &[]); - assert!( - matches!(result, Err(ForkCallError::ExecutorError(ref msg)) if msg == "invalid address!") - ); - } - - #[test] - fn test_call_committing_invalid_from_address() { - let mut forker = Forker::new().unwrap(); - let result = forker.call_committing(&[0u8; 19], &[0u8; 20], &[], U256::ZERO); - assert!( - matches!(result, Err(ForkCallError::ExecutorError(ref msg)) if msg == "invalid address!") - ); - } - - #[test] - fn test_call_committing_invalid_to_address() { - let mut forker = Forker::new().unwrap(); - let result = forker.call_committing(&[0u8; 20], &[0u8; 21], &[], U256::ZERO); - assert!( - matches!(result, Err(ForkCallError::ExecutorError(ref msg)) if msg == "invalid address!") - ); - } - - #[test] - fn test_call_committing_both_addresses_invalid() { - let mut forker = Forker::new().unwrap(); - let result = forker.call_committing(&[], &[], &[], U256::ZERO); - assert!( - matches!(result, Err(ForkCallError::ExecutorError(ref msg)) if msg == "invalid address!") - ); - } - - #[test] - fn test_roll_fork_no_active_fork() { - let mut forker = Forker::new().unwrap(); - let result = forker.roll_fork(None, None); - assert!( - matches!(result, Err(ForkCallError::ExecutorError(ref msg)) if msg == "no active fork!") - ); - } - - #[test] - fn test_roll_fork_no_active_fork_with_block_number() { - let mut forker = Forker::new().unwrap(); - let result = forker.roll_fork(Some(100), None); - assert!( - matches!(result, Err(ForkCallError::ExecutorError(ref msg)) if msg == "no active fork!") - ); - } - - /// Forker::new() creates a valid empty forker, and add_or_select on an - /// empty forker populates it via the is_empty branch. - #[tokio::test(flavor = "multi_thread", worker_threads = 1)] - async fn test_forker_new_then_add_or_select() { - let local_evm = LocalEvm::new().await; - let deployer = *local_evm.deployer.address(); - let mut forker = Forker::new().unwrap(); - assert!(forker.forks.is_empty()); - - forker - .add_or_select( - NewForkedEvm { - fork_url: local_evm.url(), - fork_block_number: None, - }, - None, - ) - .await - .unwrap(); - - assert!(!forker.forks.is_empty()); - - // Verify the fork is usable by making a call. - let call = IERC165::supportsInterfaceCall { - interfaceId: alloy::primitives::FixedBytes([0x01, 0xff, 0xc9, 0xa7]), - }; - let result = forker - .alloy_call(Address::default(), deployer, call, false) - .await - .unwrap(); - assert!(result.typed_return); - } -} +//! Re-export of the generic forking executor, which now lives in `rain-forker`. +//! +//! Kept as `rain_interpreter_eval::fork` for backwards compatibility with +//! downstream consumers. The Rain-specific `fork_eval` / `fork_parse` helpers +//! live in [`crate::eval`]. +pub use rain_forker::fork::{Env, ForkId, Forker, NewForkedEvm}; +pub use rain_forker::result::{ForkTypedReturn, RawCallResult}; diff --git a/crates/eval/src/lib.rs b/crates/eval/src/lib.rs index cc7601676..384608e02 100644 --- a/crates/eval/src/lib.rs +++ b/crates/eval/src/lib.rs @@ -1,5 +1,11 @@ //! Evaluation runtime for Rainlang expressions using forked EVM contexts. +//! +//! The generic forking executor (`Forker`, `RawCallResult`, `ForkCallError`, …) +//! comes from the [`rain_forker`] crate and is re-exported here for backwards +//! compatibility; this crate adds the Rain-specific evaluation, parsing, and +//! trace decoding on top. Forking is native-only, so those modules are gated. +#[cfg(not(target_family = "wasm"))] pub mod error; #[cfg(not(target_family = "wasm"))] pub mod eval; diff --git a/crates/eval/src/trace.rs b/crates/eval/src/trace.rs index ad78b06a9..15fff8621 100644 --- a/crates/eval/src/trace.rs +++ b/crates/eval/src/trace.rs @@ -1,11 +1,11 @@ #[cfg(not(target_family = "wasm"))] use crate::fork::ForkTypedReturn; +use alloy::primitives::address; use alloy::primitives::{Address, U256}; #[cfg(not(target_family = "wasm"))] -use foundry_evm::executors::RawCallResult; +use rain_forker::RawCallResult; #[cfg(not(target_family = "wasm"))] use rainlang_bindings::IInterpreterV4::{eval4Call, eval4Return}; -use revm::primitives::address; use serde::{Deserialize, Serialize}; use thiserror::Error; #[cfg(target_family = "wasm")] @@ -120,7 +120,6 @@ impl TryFrom for RainEvalResult { .ok_or(RainEvalResultFromRawCallResultError::MissingTraces)?; let traces: Vec = trace_arena - .arena .nodes() .iter() .filter_map(|trace_node| { @@ -321,7 +320,7 @@ pub fn flattened_trace_path_names(traces: &[RainSourceTrace]) -> Vec { #[cfg(test)] mod tests { use super::*; - use crate::eval::ForkEvalArgs; + use crate::eval::{ForkEvalArgs, ForkEvalExt}; use crate::fork::{Forker, NewForkedEvm}; use rainlang_bindings::IInterpreterStoreV3::FullyQualifiedNamespace; use rainlang_test_fixtures::LocalEvm;