diff --git a/Cargo.lock b/Cargo.lock index 5f7febd6c..8a83c505f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -91,7 +91,7 @@ checksum = "8158b4878c67837e5413721cc44298e6a2d88d39203175ea025e51892a16ba4c" dependencies = [ "num_enum 0.7.3", "serde", - "strum 0.26.3", + "strum", ] [[package]] @@ -897,7 +897,7 @@ dependencies = [ "anvil-server", "async-trait", "auto_impl", - "axum 0.7.5", + "axum", "bytes", "chrono", "clap", @@ -970,7 +970,7 @@ version = "0.0.2" dependencies = [ "anvil-rpc", "async-trait", - "axum 0.7.5", + "axum", "bytes", "clap", "futures 0.3.30", @@ -1174,17 +1174,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "async-lock" -version = "3.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18" -dependencies = [ - "event-listener 5.3.1", - "event-listener-strategy", - "pin-project-lite", -] - [[package]] name = "async-priority-channel" version = "0.2.0" @@ -1348,6 +1337,33 @@ dependencies = [ "zeroize", ] +[[package]] +name = "aws-lc-rs" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdd82dba44d209fddb11c190e0a94b78651f95299598e472215667417a03ff1d" +dependencies = [ + "aws-lc-sys", + "mirai-annotations", + "paste", + "zeroize", +] + +[[package]] +name = "aws-lc-sys" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df7a4168111d7eb622a31b214057b8509c0a7e1794f44c546d742330dc793972" +dependencies = [ + "bindgen 0.69.5", + "cc", + "cmake", + "dunce", + "fs_extra", + "libc", + "paste", +] + [[package]] name = "aws-runtime" version = "1.4.3" @@ -1625,34 +1641,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "axum" -version = "0.6.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" -dependencies = [ - "async-trait", - "axum-core 0.3.4", - "bitflags 1.3.2", - "bytes", - "futures-util", - "http 0.2.12", - "http-body 0.4.6", - "hyper 0.14.30", - "itoa", - "matchit", - "memchr", - "mime", - "percent-encoding", - "pin-project-lite", - "rustversion", - "serde", - "sync_wrapper 0.1.2", - "tower 0.4.13", - "tower-layer", - "tower-service", -] - [[package]] name = "axum" version = "0.7.5" @@ -1660,7 +1648,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf" dependencies = [ "async-trait", - "axum-core 0.4.3", + "axum-core", "base64 0.21.7", "bytes", "futures-util", @@ -1690,23 +1678,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "axum-core" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" -dependencies = [ - "async-trait", - "bytes", - "futures-util", - "http 0.2.12", - "http-body 0.4.6", - "mime", - "rustversion", - "tower-layer", - "tower-service", -] - [[package]] name = "axum-core" version = "0.4.3" @@ -1728,6 +1699,18 @@ dependencies = [ "tracing", ] +[[package]] +name = "backon" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d67782c3f868daa71d3533538e98a8e13713231969def7536e8039606fc46bf0" +dependencies = [ + "fastrand", + "futures-core", + "pin-project 1.1.5", + "tokio", +] + [[package]] name = "backtrace" version = "0.3.71" @@ -1805,38 +1788,28 @@ dependencies = [ ] [[package]] -name = "bellman_ce" -version = "0.3.2" -source = "git+https://github.com/matter-labs/bellman?branch=dev#5520aa2274afe73d281373c92b007a2ecdebfbea" +name = "bigdecimal" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6773ddc0eafc0e509fb60e48dff7f450f8e674a0686ae8605e8d9901bd5eefa" dependencies = [ - "arrayvec 0.7.6", - "bit-vec", - "blake2s_const", - "blake2s_simd", - "byteorder", - "cfg-if 1.0.0", - "crossbeam 0.7.3", - "futures 0.3.30", - "hex", - "lazy_static", - "num_cpus", - "pairing_ce 0.28.6", - "rand 0.4.6", + "num-bigint", + "num-integer", + "num-traits", "serde", - "smallvec", - "tiny-keccak 1.5.0", ] [[package]] name = "bigdecimal" -version = "0.3.1" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6773ddc0eafc0e509fb60e48dff7f450f8e674a0686ae8605e8d9901bd5eefa" +checksum = "51d712318a27c7150326677b321a5fa91b55f6d9034ffd67f20319e147d40cee" dependencies = [ + "autocfg", + "libm", "num-bigint", "num-integer", "num-traits", - "serde", ] [[package]] @@ -1875,6 +1848,29 @@ dependencies = [ "syn 2.0.77", ] +[[package]] +name = "bindgen" +version = "0.69.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "271383c67ccabffb7381723dea0672a673f292304fcb45c01cc648c7a8d58088" +dependencies = [ + "bitflags 2.6.0", + "cexpr", + "clang-sys", + "itertools 0.10.5", + "lazy_static", + "lazycell", + "log", + "prettyplease", + "proc-macro2", + "quote", + "regex", + "rustc-hash 1.1.0", + "shlex", + "syn 2.0.77", + "which 4.4.2", +] + [[package]] name = "bit-set" version = "0.5.3" @@ -1944,23 +1940,14 @@ dependencies = [ ] [[package]] -name = "blake2" +name = "blake2_ce" version = "0.10.6" -source = "git+https://github.com/RustCrypto/hashes.git?rev=1f727ce37ff40fa0cce84eb8543a45bdd3ca4a4e#1f727ce37ff40fa0cce84eb8543a45bdd3ca4a4e" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90cef65f11dd09a6c58914148161dbf190e5dcc02c87ed2aa47b3b97d3e7ce76" dependencies = [ "digest 0.10.7", ] -[[package]] -name = "blake2s_const" -version = "0.6.0" -source = "git+https://github.com/matter-labs/bellman?branch=dev#5520aa2274afe73d281373c92b007a2ecdebfbea" -dependencies = [ - "arrayref", - "arrayvec 0.5.2", - "constant_time_eq", -] - [[package]] name = "blake2s_simd" version = "0.5.11" @@ -2017,12 +2004,42 @@ checksum = "df88daa33db46d683967ca09a4f04817c38950483f2501a771d497669a8a4bb1" dependencies = [ "arrayvec 0.7.6", "bincode", - "blake2 0.10.6 (registry+https://github.com/rust-lang/crates.io-index)", + "blake2", + "const_format", + "convert_case 0.6.0", + "crossbeam", + "crypto-bigint 0.5.5", + "cs_derive", + "derivative", + "ethereum-types 0.14.1", + "firestorm", + "itertools 0.10.5", + "lazy_static", + "num-modular", + "num_cpus", + "pairing_ce", + "rand 0.8.5", + "rayon", + "serde", + "sha2 0.10.8", + "sha3_ce", + "smallvec", + "unroll", +] + +[[package]] +name = "boojum" +version = "0.30.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68ec2f007ff8f90cc459f03e9f30ca1065440170f013c868823646e2e48d0234" +dependencies = [ + "arrayvec 0.7.6", + "bincode", + "blake2", "const_format", "convert_case 0.6.0", - "crossbeam 0.8.4", + "crossbeam", "crypto-bigint 0.5.5", - "cs_derive 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "derivative", "ethereum-types 0.14.1", "firestorm", @@ -2030,7 +2047,6 @@ dependencies = [ "lazy_static", "num-modular", "num_cpus", - "pairing_ce 0.28.6", "rand 0.8.5", "rayon", "serde", @@ -2038,6 +2054,8 @@ dependencies = [ "sha3_ce", "smallvec", "unroll", + "zksync_cs_derive", + "zksync_pairing", ] [[package]] @@ -2275,6 +2293,12 @@ dependencies = [ "shlex", ] +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + [[package]] name = "cexpr" version = "0.6.0" @@ -2336,7 +2360,7 @@ dependencies = [ "serde_json", "serial_test", "solang-parser", - "strum 0.26.3", + "strum", "tikv-jemallocator", "time", "tokio", @@ -2400,109 +2424,118 @@ dependencies = [ [[package]] name = "circuit_encodings" -version = "0.1.40" -source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.0#39665dffd576cff5007c80dd0e1b5334e230bd3b" +version = "0.140.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf6b7cc842eadb4c250cdc6a8bc1dd97624d9f08bbe54db3e11fb23c3a72be07" dependencies = [ "derivative", "serde", - "zk_evm 1.4.0", - "zkevm_circuits 1.4.0", + "zk_evm 0.140.0", + "zkevm_circuits 0.140.3", ] [[package]] name = "circuit_encodings" -version = "0.1.41" -source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.1#f7bd71fd4216e2c51ab7b09a95909fe48c75f35b" +version = "0.141.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7898ffbf3cd413576b4b674fe1545a35488c67eb16bd5a4148425e42c2a2b65b" dependencies = [ "derivative", "serde", - "zk_evm 1.4.1", - "zkevm_circuits 1.4.1", + "zk_evm 0.141.0", + "zkevm_circuits 0.141.2", ] [[package]] name = "circuit_encodings" -version = "0.1.42" -source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.2#3149a162a729581005fbad6dbcef027a3ee1b214" +version = "0.142.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8364ecafcc4b2c896023f8d3af952c52a500aa55f14fd268bb5d9ab07f837369" dependencies = [ "derivative", "serde", - "zk_evm 1.4.1", - "zkevm_circuits 1.4.1", + "zk_evm 0.141.0", + "zkevm_circuits 0.141.2", ] [[package]] name = "circuit_encodings" -version = "0.1.50" -source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.5.0#5d6a06c37f4656d26a4170d22f2298cd7716c070" +version = "0.150.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e67617688c66640c84f9b98ff26d48f7898dca4faeb45241a4f21ec333788e7b" dependencies = [ "derivative", "serde", - "zk_evm 1.5.0", - "zkevm_circuits 1.5.0", + "zk_evm 0.150.5", + "zkevm_circuits 0.150.5", ] [[package]] name = "circuit_sequencer_api" -version = "0.1.0" -source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.3.3#aba8f2a32767b79838aca7d7d00d9d23144df32f" +version = "0.133.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb959b1f8c6bbd8be711994d182e85452a26a5d2213a709290b71c8262af1331" dependencies = [ - "bellman_ce", "derivative", "rayon", "serde", - "zk_evm 1.3.3 (git+https://github.com/matter-labs/era-zk_evm.git?branch=v1.3.3)", + "zk_evm 0.133.0", + "zksync_bellman", ] [[package]] name = "circuit_sequencer_api" -version = "0.1.40" -source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.0#39665dffd576cff5007c80dd0e1b5334e230bd3b" +version = "0.140.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa5f22311ce609d852d7d9f4943535ea4610aeb785129ae6ff83d5201c4fb387" dependencies = [ - "bellman_ce", - "circuit_encodings 0.1.40", + "circuit_encodings 0.140.3", "derivative", "rayon", "serde", - "zk_evm 1.4.0", + "zk_evm 0.140.0", + "zksync_bellman", ] [[package]] name = "circuit_sequencer_api" -version = "0.1.41" -source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.1#f7bd71fd4216e2c51ab7b09a95909fe48c75f35b" +version = "0.141.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c47c71d6ba83a8beb0af13af70beffd627f5497caf3d44c6f96363e788b07ea" dependencies = [ - "bellman_ce", - "circuit_encodings 0.1.41", + "circuit_encodings 0.141.2", "derivative", "rayon", "serde", - "zk_evm 1.4.1", + "zk_evm 0.141.0", + "zksync_bellman", ] [[package]] name = "circuit_sequencer_api" -version = "0.1.42" -source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.2#3149a162a729581005fbad6dbcef027a3ee1b214" +version = "0.142.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e264723359e6a1aad98110bdccf1ae3ad596e93e7d31da9e40f6adc07e4add54" dependencies = [ - "bellman_ce", - "circuit_encodings 0.1.42", + "circuit_encodings 0.142.2", "derivative", "rayon", "serde", - "zk_evm 1.4.1", + "zk_evm 0.141.0", + "zksync_bellman", ] [[package]] name = "circuit_sequencer_api" -version = "0.1.50" -source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.5.0#5d6a06c37f4656d26a4170d22f2298cd7716c070" +version = "0.150.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21017310971d4a051e4a52ad70eed11d1ae69defeca8314f73a3a4bad16705a9" dependencies = [ - "bellman_ce", - "circuit_encodings 0.1.50", + "circuit_encodings 0.150.5", "derivative", "rayon", "serde", + "zksync_bellman", ] [[package]] @@ -2587,7 +2620,7 @@ dependencies = [ "nix 0.28.0", "terminfo", "thiserror", - "which", + "which 6.0.3", "winapi", ] @@ -2600,6 +2633,15 @@ dependencies = [ "error-code", ] +[[package]] +name = "cmake" +version = "0.1.51" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb1e43aa7fd152b1f968787f7dbcdeb306d1867ff373c69955211876c053f91a" +dependencies = [ + "cc", +] + [[package]] name = "coins-bip32" version = "0.8.7" @@ -2769,6 +2811,16 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "combine" +version = "4.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +dependencies = [ + "bytes", + "memchr", +] + [[package]] name = "comfy-table" version = "7.1.1" @@ -2776,8 +2828,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b34115915337defe99b2aff5c2ce6771e5fbc4079f4b506301f5cf394c8452f7" dependencies = [ "crossterm 0.27.0", - "strum 0.26.3", - "strum_macros 0.26.4", + "strum", + "strum_macros", "unicode-width", ] @@ -2807,7 +2859,7 @@ version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" dependencies = [ - "crossbeam-utils 0.8.20", + "crossbeam-utils", ] [[package]] @@ -2980,41 +3032,17 @@ dependencies = [ "itertools 0.10.5", ] -[[package]] -name = "crossbeam" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69323bff1fb41c635347b8ead484a5ca6c3f11914d784170b158d8449ab07f8e" -dependencies = [ - "cfg-if 0.1.10", - "crossbeam-channel 0.4.4", - "crossbeam-deque 0.7.4", - "crossbeam-epoch 0.8.2", - "crossbeam-queue 0.2.3", - "crossbeam-utils 0.7.2", -] - [[package]] name = "crossbeam" version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8" dependencies = [ - "crossbeam-channel 0.5.13", - "crossbeam-deque 0.8.5", - "crossbeam-epoch 0.9.18", - "crossbeam-queue 0.3.11", - "crossbeam-utils 0.8.20", -] - -[[package]] -name = "crossbeam-channel" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87" -dependencies = [ - "crossbeam-utils 0.7.2", - "maybe-uninit", + "crossbeam-channel", + "crossbeam-deque", + "crossbeam-epoch", + "crossbeam-queue", + "crossbeam-utils", ] [[package]] @@ -3023,18 +3051,7 @@ version = "0.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" dependencies = [ - "crossbeam-utils 0.8.20", -] - -[[package]] -name = "crossbeam-deque" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c20ff29ded3204c5106278a81a38f4b482636ed4fa1e6cfbeef193291beb29ed" -dependencies = [ - "crossbeam-epoch 0.8.2", - "crossbeam-utils 0.7.2", - "maybe-uninit", + "crossbeam-utils", ] [[package]] @@ -3043,23 +3060,8 @@ version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" dependencies = [ - "crossbeam-epoch 0.9.18", - "crossbeam-utils 0.8.20", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace" -dependencies = [ - "autocfg", - "cfg-if 0.1.10", - "crossbeam-utils 0.7.2", - "lazy_static", - "maybe-uninit", - "memoffset 0.5.6", - "scopeguard", + "crossbeam-epoch", + "crossbeam-utils", ] [[package]] @@ -3068,18 +3070,7 @@ version = "0.9.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" dependencies = [ - "crossbeam-utils 0.8.20", -] - -[[package]] -name = "crossbeam-queue" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570" -dependencies = [ - "cfg-if 0.1.10", - "crossbeam-utils 0.7.2", - "maybe-uninit", + "crossbeam-utils", ] [[package]] @@ -3088,18 +3079,7 @@ version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35" dependencies = [ - "crossbeam-utils 0.8.20", -] - -[[package]] -name = "crossbeam-utils" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8" -dependencies = [ - "autocfg", - "cfg-if 0.1.10", - "lazy_static", + "crossbeam-utils", ] [[package]] @@ -3199,14 +3179,13 @@ dependencies = [ ] [[package]] -name = "cs_derive" -version = "0.2.2" -source = "git+https://github.com/matter-labs/era-boojum.git?branch=main#c0e75ec49c9ece30fda67996dfe2ffc587627689" +name = "ctor" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edb49164822f3ee45b17acd4a208cfc1251410cf0cad9a833234c9890774dd9f" dependencies = [ - "proc-macro-error", - "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.77", ] [[package]] @@ -3345,7 +3324,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf" dependencies = [ "cfg-if 1.0.0", - "crossbeam-utils 0.8.20", + "crossbeam-utils", "hashbrown 0.14.5", "lock_api", "once_cell", @@ -3510,6 +3489,12 @@ dependencies = [ "zeroize", ] +[[package]] +name = "diff" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" + [[package]] name = "digest" version = "0.9.0" @@ -3823,20 +3808,32 @@ dependencies = [ ] [[package]] -name = "enumn" -version = "0.1.14" +name = "enum_dispatch" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" +checksum = "aa18ce2bc66555b3218614519ac839ddb759a7d6720732f979ef8d13be147ecd" dependencies = [ + "once_cell", "proc-macro2", "quote", "syn 2.0.77", ] [[package]] -name = "env_filter" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" +name = "enumn" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.77", +] + +[[package]] +name = "env_filter" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4f2c92ceda6ceec50f43169f9ee8424fe2db276791afde7b2cd8bc084cb376ab" dependencies = [ "log", @@ -3886,11 +3883,11 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "era_test_node" -version = "0.1.0-alpha.25" -source = "git+https://github.com/matter-labs/era-test-node.git?rev=2041018903aa7e00e74c450f8c0baf799c056d86#2041018903aa7e00e74c450f8c0baf799c056d86" +version = "0.1.0-alpha.29" +source = "git+https://github.com/matter-labs/era-test-node.git?rev=ceee937055a5a373e27b0ff9bf2e42391de78c59#ceee937055a5a373e27b0ff9bf2e42391de78c59" dependencies = [ "anyhow", - "bigdecimal", + "bigdecimal 0.3.1", "chrono", "clap", "colored", @@ -3905,7 +3902,6 @@ dependencies = [ "jsonrpc-derive", "jsonrpc-http-server", "lazy_static", - "multivm", "once_cell", "openssl-sys", "reqwest 0.11.27", @@ -3921,10 +3917,11 @@ dependencies = [ "zkevm_opcode_defs 1.5.0", "zksync_basic_types", "zksync_contracts", + "zksync_multivm", "zksync_node_fee_model", "zksync_state", "zksync_types", - "zksync_utils 0.1.0 (git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d)", + "zksync_utils", "zksync_web3_decl", ] @@ -4185,7 +4182,7 @@ dependencies = [ "rlp", "serde", "serde_json", - "strum 0.26.3", + "strum", "syn 2.0.77", "tempfile", "thiserror", @@ -4324,12 +4321,6 @@ dependencies = [ "yansi 0.5.1", ] -[[package]] -name = "event-listener" -version = "2.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" - [[package]] name = "event-listener" version = "4.0.3" @@ -4352,16 +4343,6 @@ dependencies = [ "pin-project-lite", ] -[[package]] -name = "event-listener-strategy" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1" -dependencies = [ - "event-listener 5.3.1", - "pin-project-lite", -] - [[package]] name = "evm-disassembler" version = "0.5.0" @@ -4628,7 +4609,7 @@ dependencies = [ "alloy-transport", "anvil", "async-trait", - "axum 0.7.5", + "axum", "chrono", "clap", "clap_complete", @@ -4685,7 +4666,7 @@ dependencies = [ "similar-asserts", "solang-parser", "soldeer", - "strum 0.26.3", + "strum", "svm-rs 0.5.7", "tempfile", "thiserror", @@ -5023,7 +5004,7 @@ dependencies = [ "regex", "serde", "strsim 0.11.1", - "strum 0.26.3", + "strum", "tempfile", "tokio", "tracing", @@ -5569,7 +5550,6 @@ dependencies = [ "foundry-evm-abi", "foundry-zksync-compiler", "itertools 0.13.0", - "multivm", "revm", "serde", "serde_json", @@ -5578,9 +5558,10 @@ dependencies = [ "zksync-web3-rs", "zksync_basic_types", "zksync_contracts", + "zksync_multivm", "zksync_state", "zksync_types", - "zksync_utils 0.1.0 (git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync)", + "zksync_utils", ] [[package]] @@ -5836,7 +5817,7 @@ dependencies = [ "serde", "serde_json", "tokio", - "tonic 0.12.2", + "tonic", "tower 0.5.1", "tower-layer", "tower-util", @@ -6301,9 +6282,9 @@ dependencies = [ [[package]] name = "hashlink" -version = "0.8.4" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" +checksum = "6ba4ff7128dee98c7dc9794b6a411377e1404dba1c97deb8d1a55297bd25d8af" dependencies = [ "hashbrown 0.14.5", ] @@ -6313,9 +6294,6 @@ name = "heck" version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" -dependencies = [ - "unicode-segmentation", -] [[package]] name = "heck" @@ -6575,6 +6553,7 @@ dependencies = [ "http 1.1.0", "hyper 1.4.1", "hyper-util", + "log", "rustls 0.23.13", "rustls-native-certs 0.8.0", "rustls-pki-types", @@ -6584,18 +6563,6 @@ dependencies = [ "webpki-roots 0.26.6", ] -[[package]] -name = "hyper-timeout" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" -dependencies = [ - "hyper 0.14.30", - "pin-project-lite", - "tokio", - "tokio-io-timeout", -] - [[package]] name = "hyper-timeout" version = "0.5.1" @@ -6703,7 +6670,7 @@ version = "0.4.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d89fd380afde86567dfba715db065673989d6253f42b88179abd3eae47bda4b" dependencies = [ - "crossbeam-deque 0.8.5", + "crossbeam-deque", "globset", "log", "memchr", @@ -6980,6 +6947,26 @@ version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" +[[package]] +name = "jni" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6df18c2e3db7e453d3c6ac5b3e9d5182664d28788126d39b91f2d1e22b017ec" +dependencies = [ + "cesu8", + "combine", + "jni-sys", + "log", + "thiserror", + "walkdir", +] + +[[package]] +name = "jni-sys" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" + [[package]] name = "jobserver" version = "0.1.32" @@ -7105,9 +7092,9 @@ dependencies = [ [[package]] name = "jsonrpsee" -version = "0.21.0" +version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9579d0ca9fb30da026bac2f0f7d9576ec93489aeb7cd4971dd5b4617d82c79b2" +checksum = "62b089779ad7f80768693755a031cc14a7766aba707cbe886674e3f79e9b7e47" dependencies = [ "jsonrpsee-client-transport", "jsonrpsee-core", @@ -7123,41 +7110,44 @@ dependencies = [ [[package]] name = "jsonrpsee-client-transport" -version = "0.21.0" +version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9f9ed46590a8d5681975f126e22531698211b926129a40a2db47cbca429220" +checksum = "08163edd8bcc466c33d79e10f695cdc98c00d1e6ddfb95cec41b6b0279dd5432" dependencies = [ + "base64 0.22.1", "futures-channel", "futures-util", "gloo-net", - "http 0.2.12", + "http 1.1.0", "jsonrpsee-core", "pin-project 1.1.5", - "rustls-native-certs 0.7.3", + "rustls 0.23.13", "rustls-pki-types", + "rustls-platform-verifier", "soketto", "thiserror", "tokio", - "tokio-rustls 0.25.0", + "tokio-rustls 0.26.0", "tokio-util 0.7.12", "tracing", "url", - "webpki-roots 0.26.6", ] [[package]] name = "jsonrpsee-core" -version = "0.21.0" +version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "776d009e2f591b78c038e0d053a796f94575d66ca4e77dd84bfc5e81419e436c" +checksum = "79712302e737d23ca0daa178e752c9334846b08321d439fd89af9a384f8c830b" dependencies = [ "anyhow", - "async-lock", "async-trait", "beef", + "bytes", "futures-timer", "futures-util", - "hyper 0.14.30", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", "jsonrpsee-types", "parking_lot 0.12.3", "pin-project 1.1.5", @@ -7174,15 +7164,20 @@ dependencies = [ [[package]] name = "jsonrpsee-http-client" -version = "0.21.0" +version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78b7de9f3219d95985eb77fd03194d7c1b56c19bce1abfcc9d07462574b15572" +checksum = "2d90064e04fb9d7282b1c71044ea94d0bbc6eff5621c66f1a0bce9e9de7cf3ac" dependencies = [ "async-trait", - "hyper 0.14.30", - "hyper-rustls 0.24.2", + "base64 0.22.1", + "http-body 1.0.1", + "hyper 1.4.1", + "hyper-rustls 0.27.3", + "hyper-util", "jsonrpsee-core", "jsonrpsee-types", + "rustls 0.23.13", + "rustls-platform-verifier", "serde", "serde_json", "thiserror", @@ -7194,26 +7189,30 @@ dependencies = [ [[package]] name = "jsonrpsee-proc-macros" -version = "0.21.0" +version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d94b7505034e2737e688e1153bf81e6f93ad296695c43958d6da2e4321f0a990" +checksum = "7895f186d5921065d96e16bd795e5ca89ac8356ec423fafc6e3d7cf8ec11aee4" dependencies = [ - "heck 0.4.1", - "proc-macro-crate 2.0.0", + "heck 0.5.0", + "proc-macro-crate 3.2.0", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.77", ] [[package]] name = "jsonrpsee-server" -version = "0.21.0" +version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cc7c6d1a2c58f6135810284a390d9f823d0f508db74cd914d8237802de80f98" +checksum = "654afab2e92e5d88ebd8a39d6074483f3f2bfdf91c5ac57fe285e7127cdd4f51" dependencies = [ + "anyhow", "futures-util", - "http 0.2.12", - "hyper 0.14.30", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "hyper 1.4.1", + "hyper-util", "jsonrpsee-core", "jsonrpsee-types", "pin-project 1.1.5", @@ -7231,12 +7230,12 @@ dependencies = [ [[package]] name = "jsonrpsee-types" -version = "0.21.0" +version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3266dfb045c9174b24c77c2dfe0084914bb23a6b2597d70c9dc6018392e1cd1b" +checksum = "d9c465fbe385238e861fdc4d1c85e04ada6c1fd246161d26385c1b311724d2af" dependencies = [ - "anyhow", "beef", + "http 1.1.0", "serde", "serde_json", "thiserror", @@ -7244,9 +7243,9 @@ dependencies = [ [[package]] name = "jsonrpsee-wasm-client" -version = "0.21.0" +version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30f36d27503d0efc0355c1630b74ecfb367050847bf7241a0ed75fab6dfa96c0" +checksum = "4727ac037f834c6f04c0912cada7532dbddb54e92fbc64e33d6cb8c24af313c9" dependencies = [ "jsonrpsee-client-transport", "jsonrpsee-core", @@ -7255,11 +7254,11 @@ dependencies = [ [[package]] name = "jsonrpsee-ws-client" -version = "0.21.0" +version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "073c077471e89c4b511fa88b3df9a0f0abdf4a0a2e6683dd2ab36893af87bb2d" +checksum = "1c28759775f5cb2f1ea9667672d3fe2b0e701d1f4b7b67954e60afe7fd058b5e" dependencies = [ - "http 0.2.12", + "http 1.1.0", "jsonrpsee-client-transport", "jsonrpsee-core", "jsonrpsee-types", @@ -7454,7 +7453,7 @@ version = "0.11.0+8.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3386f101bcb4bd252d8e9d2fb41ec3b0862a15a62b478c355b2982efa469e3e" dependencies = [ - "bindgen", + "bindgen 0.65.1", "bzip2-sys", "cc", "glob", @@ -7466,9 +7465,9 @@ dependencies = [ [[package]] name = "libsqlite3-sys" -version = "0.27.0" +version = "0.30.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4e226dcd58b4be396f7bd3c20da8fdee2911400705297ba7d2d7cc2c30f716" +checksum = "2e99fb7a497b1e3339bc746195567ed8d3e24945ecd636e3619d20b9de9e9149" dependencies = [ "cc", "pkg-config", @@ -7498,26 +7497,6 @@ dependencies = [ "vcpkg", ] -[[package]] -name = "linkme" -version = "0.3.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccb76662d78edc9f9bf56360d6919bdacc8b7761227727e5082f128eeb90bbf5" -dependencies = [ - "linkme-impl", -] - -[[package]] -name = "linkme-impl" -version = "0.3.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8dccda732e04fa3baf2e17cf835bfe2601c7c2edafd64417c627dabae3a8cda" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - [[package]] name = "linux-raw-sys" version = "0.4.14" @@ -7657,12 +7636,6 @@ version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" -[[package]] -name = "maybe-uninit" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" - [[package]] name = "md-5" version = "0.10.6" @@ -7716,15 +7689,6 @@ dependencies = [ "libc", ] -[[package]] -name = "memoffset" -version = "0.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa" -dependencies = [ - "autocfg", -] - [[package]] name = "memoffset" version = "0.7.1" @@ -7813,8 +7777,8 @@ version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c325dfab65f261f386debee8b0969da215b3fa0037e74c8a1234db7ba986d803" dependencies = [ - "crossbeam-channel 0.5.13", - "crossbeam-utils 0.8.20", + "crossbeam-channel", + "crossbeam-utils", "dashmap 5.5.3", "skeptic", "smallvec", @@ -7871,6 +7835,12 @@ dependencies = [ "windows-sys 0.52.0", ] +[[package]] +name = "mirai-annotations" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9be0862c1b3f26a88803c4a49de6889c10e608b3ee9344e6ef5b45fb37ad3d1" + [[package]] name = "mockall" version = "0.13.0" @@ -7903,36 +7873,6 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03" -[[package]] -name = "multivm" -version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" -dependencies = [ - "anyhow", - "circuit_sequencer_api 0.1.0", - "circuit_sequencer_api 0.1.40", - "circuit_sequencer_api 0.1.41", - "circuit_sequencer_api 0.1.42", - "circuit_sequencer_api 0.1.50", - "hex", - "itertools 0.10.5", - "once_cell", - "serde", - "thiserror", - "tracing", - "vise", - "zk_evm 1.3.1", - "zk_evm 1.3.3 (git+https://github.com/matter-labs/era-zk_evm.git?tag=v1.3.3-rc2)", - "zk_evm 1.4.0", - "zk_evm 1.4.1", - "zk_evm 1.5.0", - "zksync_contracts", - "zksync_state", - "zksync_system_constants", - "zksync_types", - "zksync_utils 0.1.0 (git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync)", -] - [[package]] name = "native-tls" version = "0.2.12" @@ -7994,7 +7934,7 @@ dependencies = [ "bitflags 1.3.2", "cfg-if 1.0.0", "libc", - "memoffset 0.7.1", + "memoffset", "pin-utils", ] @@ -8060,7 +8000,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d" dependencies = [ "bitflags 2.6.0", - "crossbeam-channel 0.5.13", + "crossbeam-channel", "filetime", "fsevent-sys", "inotify", @@ -8436,102 +8376,96 @@ dependencies = [ [[package]] name = "opentelemetry" -version = "0.20.0" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9591d937bc0e6d2feb6f71a559540ab300ea49955229c347a517a28d27784c54" +checksum = "4c365a63eec4f55b7efeceb724f1336f26a9cf3427b70e59e2cd2a5b947fba96" dependencies = [ - "opentelemetry_api", - "opentelemetry_sdk", + "futures-core", + "futures-sink", + "js-sys", + "once_cell", + "pin-project-lite", + "thiserror", +] + +[[package]] +name = "opentelemetry-appender-tracing" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b84de945cb3a6f1e0d6317cbd998bbd0519ab00f4b790db67e0ff4fdcf7cedb6" +dependencies = [ + "opentelemetry", + "tracing", + "tracing-core", + "tracing-subscriber", ] [[package]] name = "opentelemetry-http" -version = "0.9.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7594ec0e11d8e33faf03530a4c49af7064ebba81c1480e01be67d90b356508b" +checksum = "ad31e9de44ee3538fb9d64fe3376c1362f406162434609e79aea2a41a0af78ab" dependencies = [ "async-trait", "bytes", - "http 0.2.12", - "opentelemetry_api", - "reqwest 0.11.27", + "http 1.1.0", + "opentelemetry", + "reqwest 0.12.7", ] [[package]] name = "opentelemetry-otlp" -version = "0.13.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e5e5a5c4135864099f3faafbe939eb4d7f9b80ebf68a8448da961b32a7c1275" +checksum = "6b925a602ffb916fb7421276b86756027b37ee708f9dce2dbdcc51739f07e727" dependencies = [ "async-trait", "futures-core", - "http 0.2.12", + "http 1.1.0", + "opentelemetry", "opentelemetry-http", "opentelemetry-proto", - "opentelemetry-semantic-conventions", - "opentelemetry_api", "opentelemetry_sdk", - "prost 0.11.9", - "reqwest 0.11.27", + "prost 0.13.2", + "reqwest 0.12.7", "thiserror", "tokio", - "tonic 0.9.2", + "tonic", ] [[package]] name = "opentelemetry-proto" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1e3f814aa9f8c905d0ee4bde026afd3b2577a97c10e1699912e3e44f0c4cbeb" +checksum = "30ee9f20bff9c984511a02f082dc8ede839e4a9bf15cc2487c8d6fea5ad850d9" dependencies = [ - "opentelemetry_api", + "opentelemetry", "opentelemetry_sdk", - "prost 0.11.9", - "tonic 0.9.2", + "prost 0.13.2", + "tonic", ] [[package]] name = "opentelemetry-semantic-conventions" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73c9f9340ad135068800e7f1b24e9e09ed9e7143f5bf8518ded3d3ec69789269" -dependencies = [ - "opentelemetry", -] - -[[package]] -name = "opentelemetry_api" -version = "0.20.0" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a81f725323db1b1206ca3da8bb19874bbd3f57c3bcd59471bfb04525b265b9b" -dependencies = [ - "futures-channel", - "futures-util", - "indexmap 1.9.3", - "js-sys", - "once_cell", - "pin-project-lite", - "thiserror", - "urlencoding", -] +checksum = "1cefe0543875379e47eb5f1e68ff83f45cc41366a92dfd0d073d513bf68e9a05" [[package]] name = "opentelemetry_sdk" -version = "0.20.0" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa8e705a0612d48139799fcbaba0d4a90f06277153e43dd2bdc16c6f0edd8026" +checksum = "692eac490ec80f24a17828d49b40b60f5aeaccdfe6a503f939713afd22bc28df" dependencies = [ "async-trait", - "crossbeam-channel 0.5.13", "futures-channel", "futures-executor", "futures-util", + "glob", "once_cell", - "opentelemetry_api", - "ordered-float 3.9.2", + "opentelemetry", "percent-encoding", "rand 0.8.5", - "regex", "serde_json", "thiserror", "tokio", @@ -8553,15 +8487,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "ordered-float" -version = "3.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1e1c390732d15f1d48471625cd92d154e66db2c56645e29a9cd26f4699f72dc" -dependencies = [ - "num-traits", -] - [[package]] name = "os_info" version = "3.8.2" @@ -8603,18 +8528,6 @@ dependencies = [ "sha2 0.10.8", ] -[[package]] -name = "pairing_ce" -version = "0.28.5" -source = "git+https://github.com/matter-labs/pairing.git?rev=d24f2c5871089c4cd4f54c0ca266bb9fef6115eb#d24f2c5871089c4cd4f54c0ca266bb9fef6115eb" -dependencies = [ - "byteorder", - "cfg-if 1.0.0", - "ff_ce", - "rand 0.4.6", - "serde", -] - [[package]] name = "pairing_ce" version = "0.28.6" @@ -9148,6 +9061,16 @@ dependencies = [ "termtree", ] +[[package]] +name = "pretty_assertions" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ae130e2f271fbc2ac3a40fb1d07180839cdbbe443c7a27e1e3c13c5cac0116d" +dependencies = [ + "diff", + "yansi 1.0.1", +] + [[package]] name = "prettyplease" version = "0.2.22" @@ -9213,15 +9136,6 @@ dependencies = [ "toml_edit 0.19.15", ] -[[package]] -name = "proc-macro-crate" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e8366a6159044a37876a2b9817124296703c586a5c92e2c53751fa06d8d43e8" -dependencies = [ - "toml_edit 0.20.7", -] - [[package]] name = "proc-macro-crate" version = "3.2.0" @@ -9384,16 +9298,6 @@ dependencies = [ "syn 2.0.77", ] -[[package]] -name = "prost" -version = "0.11.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd" -dependencies = [ - "bytes", - "prost-derive 0.11.9", -] - [[package]] name = "prost" version = "0.12.6" @@ -9435,19 +9339,6 @@ dependencies = [ "tempfile", ] -[[package]] -name = "prost-derive" -version = "0.11.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4" -dependencies = [ - "anyhow", - "itertools 0.10.5", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "prost-derive" version = "0.12.6" @@ -9863,8 +9754,8 @@ dependencies = [ "itertools 0.13.0", "lru", "paste", - "strum 0.26.3", - "strum_macros 0.26.4", + "strum", + "strum_macros", "unicode-segmentation", "unicode-truncate", "unicode-width", @@ -9886,8 +9777,8 @@ version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" dependencies = [ - "crossbeam-deque 0.8.5", - "crossbeam-utils 0.8.20", + "crossbeam-deque", + "crossbeam-utils", ] [[package]] @@ -10033,7 +9924,7 @@ dependencies = [ "serde_json", "serde_urlencoded", "sync_wrapper 0.1.2", - "system-configuration", + "system-configuration 0.5.1", "tokio", "tokio-native-tls", "tokio-rustls 0.24.1", @@ -10055,9 +9946,11 @@ dependencies = [ "async-compression", "base64 0.22.1", "bytes", + "encoding_rs", "futures-channel", "futures-core", "futures-util", + "h2 0.4.6", "http 1.1.0", "http-body 1.0.1", "http-body-util", @@ -10083,6 +9976,7 @@ dependencies = [ "serde_json", "serde_urlencoded", "sync_wrapper 1.0.1", + "system-configuration 0.6.1", "tokio", "tokio-native-tls", "tokio-rustls 0.26.0", @@ -10484,26 +10378,13 @@ dependencies = [ "sct", ] -[[package]] -name = "rustls" -version = "0.22.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432" -dependencies = [ - "log", - "ring 0.17.8", - "rustls-pki-types", - "rustls-webpki 0.102.8", - "subtle", - "zeroize", -] - [[package]] name = "rustls" version = "0.23.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2dabaac7466917e566adb06783a81ca48944c6898a1b08b9374106dd671f4c8" dependencies = [ + "aws-lc-rs", "log", "once_cell", "ring 0.17.8", @@ -10576,6 +10457,33 @@ version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc0a2ce646f8655401bb81e7927b812614bd5d91dbc968696be50603510fcaf0" +[[package]] +name = "rustls-platform-verifier" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afbb878bdfdf63a336a5e63561b1835e7a8c91524f51621db870169eac84b490" +dependencies = [ + "core-foundation", + "core-foundation-sys", + "jni", + "log", + "once_cell", + "rustls 0.23.13", + "rustls-native-certs 0.7.3", + "rustls-platform-verifier-android", + "rustls-webpki 0.102.8", + "security-framework", + "security-framework-sys", + "webpki-roots 0.26.6", + "winapi", +] + +[[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.101.7" @@ -10592,6 +10500,7 @@ version = "0.102.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9" dependencies = [ + "aws-lc-rs", "ring 0.17.8", "rustls-pki-types", "untrusted 0.9.0", @@ -10880,6 +10789,7 @@ dependencies = [ "core-foundation", "core-foundation-sys", "libc", + "num-bigint", "security-framework-sys", ] @@ -11061,7 +10971,7 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f3a1a3341211875ef120e117ea7fd5228530ae7e7036a779fdc9117be6b3282c" dependencies = [ - "ordered-float 2.10.1", + "ordered-float", "serde", ] @@ -11158,6 +11068,7 @@ version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "678b5a069e50bf00ecd22d0cd8ddf7c236f68581b03db652061ed5eb13a312ff" dependencies = [ + "hex", "serde", "serde_with_macros", ] @@ -11212,19 +11123,6 @@ dependencies = [ "syn 2.0.77", ] -[[package]] -name = "sha-1" -version = "0.9.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99cd6713db3cf16b6c84e06321e049a9b9f699826e16096d23bbcc44d15d51a6" -dependencies = [ - "block-buffer 0.9.0", - "cfg-if 1.0.0", - "cpufeatures", - "digest 0.9.0", - "opaque-debug", -] - [[package]] name = "sha1" version = "0.10.6" @@ -11257,8 +11155,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.6" -source = "git+https://github.com/RustCrypto/hashes.git?rev=1731ced4a116d61ba9dc6ee6d0f38fb8102e357a#1731ced4a116d61ba9dc6ee6d0f38fb8102e357a" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ "cfg-if 1.0.0", "cpufeatures", @@ -11266,10 +11165,10 @@ dependencies = [ ] [[package]] -name = "sha2" -version = "0.10.8" +name = "sha2_ce" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +checksum = "eca2daa77078f4ddff27e75c4bf59e4c2697525f56dbb3c842d34a5d1f2b04a2" dependencies = [ "cfg-if 1.0.0", "cpufeatures", @@ -11288,15 +11187,6 @@ dependencies = [ "opaque-debug", ] -[[package]] -name = "sha3" -version = "0.10.6" -source = "git+https://github.com/RustCrypto/hashes.git?rev=7a187e934c1f6c68e4b4e5cf37541b7a0d64d303#7a187e934c1f6c68e4b4e5cf37541b7a0d64d303" -dependencies = [ - "digest 0.10.7", - "keccak", -] - [[package]] name = "sha3" version = "0.10.8" @@ -11518,18 +11408,18 @@ dependencies = [ [[package]] name = "soketto" -version = "0.7.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41d1c5305e39e09653383c2c7244f2f78b3bcae37cf50c64cb4789c9f5096ec2" +checksum = "37468c595637c10857701c990f93a40ce0e357cedb0953d1c26c8d8027f9bb53" dependencies = [ - "base64 0.13.1", + "base64 0.22.1", "bytes", "futures 0.3.30", - "http 0.2.12", + "http 1.1.0", "httparse", "log", "rand 0.8.5", - "sha-1", + "sha1", ] [[package]] @@ -11624,9 +11514,9 @@ dependencies = [ [[package]] name = "sqlx" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9a2ccff1a000a5a59cd33da541d9f2fdcd9e6e8229cc200565942bff36d0aaa" +checksum = "93334716a037193fac19df402f8571269c84a00852f6a7066b5d2616dcd64d3e" dependencies = [ "sqlx-core", "sqlx-macros", @@ -11637,25 +11527,25 @@ dependencies = [ [[package]] name = "sqlx-core" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24ba59a9342a3d9bab6c56c118be528b27c9b60e490080e9711a04dccac83ef6" +checksum = "d4d8060b456358185f7d50c55d9b5066ad956956fddec42ee2e8567134a8936e" dependencies = [ - "ahash 0.8.11", "atoi", - "bigdecimal", + "bigdecimal 0.4.5", "byteorder", "bytes", "chrono", "crc", - "crossbeam-queue 0.3.11", + "crossbeam-queue", "either", - "event-listener 2.5.3", + "event-listener 5.3.1", "futures-channel", "futures-core", "futures-intrusive", "futures-io", "futures-util", + "hashbrown 0.14.5", "hashlink", "hex", "indexmap 2.5.0", @@ -11681,26 +11571,26 @@ dependencies = [ [[package]] name = "sqlx-macros" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ea40e2345eb2faa9e1e5e326db8c34711317d2b5e08d0d5741619048a803127" +checksum = "cac0692bcc9de3b073e8d747391827297e075c7710ff6276d9f7a1f3d58c6657" dependencies = [ "proc-macro2", "quote", "sqlx-core", "sqlx-macros-core", - "syn 1.0.109", + "syn 2.0.77", ] [[package]] name = "sqlx-macros-core" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5833ef53aaa16d860e92123292f1f6a3d53c34ba8b1969f152ef1a7bb803f3c8" +checksum = "1804e8a7c7865599c9c79be146dc8a9fd8cc86935fa641d3ea58e5f0688abaa5" dependencies = [ "dotenvy", "either", - "heck 0.4.1", + "heck 0.5.0", "hex", "once_cell", "proc-macro2", @@ -11712,7 +11602,7 @@ dependencies = [ "sqlx-mysql", "sqlx-postgres", "sqlx-sqlite", - "syn 1.0.109", + "syn 2.0.77", "tempfile", "tokio", "url", @@ -11720,13 +11610,13 @@ dependencies = [ [[package]] name = "sqlx-mysql" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ed31390216d20e538e447a7a9b959e06ed9fc51c37b514b46eb758016ecd418" +checksum = "64bb4714269afa44aef2755150a0fc19d756fb580a67db8885608cf02f47d06a" dependencies = [ "atoi", - "base64 0.21.7", - "bigdecimal", + "base64 0.22.1", + "bigdecimal 0.4.5", "bitflags 2.6.0", "byteorder", "bytes", @@ -11765,13 +11655,13 @@ dependencies = [ [[package]] name = "sqlx-postgres" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c824eb80b894f926f89a0b9da0c7f435d27cdd35b8c655b114e58223918577e" +checksum = "6fa91a732d854c5d7726349bb4bb879bb9478993ceb764247660aee25f67c2f8" dependencies = [ "atoi", - "base64 0.21.7", - "bigdecimal", + "base64 0.22.1", + "bigdecimal 0.4.5", "bitflags 2.6.0", "byteorder", "chrono", @@ -11808,9 +11698,9 @@ dependencies = [ [[package]] name = "sqlx-sqlite" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b244ef0a8414da0bed4bb1910426e890b19e5e9bccc27ada6b797d05c55ae0aa" +checksum = "d5b2cf34a45953bfd3daaf3db0f7a7878ab9b7a6b91b422d24a7a9e4c857b680" dependencies = [ "atoi", "chrono", @@ -11824,10 +11714,10 @@ dependencies = [ "log", "percent-encoding", "serde", + "serde_urlencoded", "sqlx-core", "tracing", "url", - "urlencoding", ] [[package]] @@ -11906,35 +11796,13 @@ version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" -[[package]] -name = "strum" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" -dependencies = [ - "strum_macros 0.24.3", -] - [[package]] name = "strum" version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" dependencies = [ - "strum_macros 0.26.4", -] - -[[package]] -name = "strum_macros" -version = "0.24.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" -dependencies = [ - "heck 0.4.1", - "proc-macro2", - "quote", - "rustversion", - "syn 1.0.109", + "strum_macros", ] [[package]] @@ -12091,7 +11959,18 @@ checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" dependencies = [ "bitflags 1.3.2", "core-foundation", - "system-configuration-sys", + "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.6.0", + "core-foundation", + "system-configuration-sys 0.6.0", ] [[package]] @@ -12104,6 +11983,16 @@ 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 = "tagptr" version = "0.2.0" @@ -12342,16 +12231,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "tokio-io-timeout" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf" -dependencies = [ - "pin-project-lite", - "tokio", -] - [[package]] name = "tokio-macros" version = "2.4.0" @@ -12383,17 +12262,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "tokio-rustls" -version = "0.25.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f" -dependencies = [ - "rustls 0.22.4", - "rustls-pki-types", - "tokio", -] - [[package]] name = "tokio-rustls" version = "0.26.0" @@ -12542,17 +12410,6 @@ dependencies = [ "winnow 0.5.40", ] -[[package]] -name = "toml_edit" -version = "0.20.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81" -dependencies = [ - "indexmap 2.5.0", - "toml_datetime", - "winnow 0.5.40", -] - [[package]] name = "toml_edit" version = "0.22.21" @@ -12568,41 +12425,13 @@ dependencies = [ [[package]] name = "tonic" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3082666a3a6433f7f511c7192923fa1fe07c69332d3c6a2e6bb040b569199d5a" -dependencies = [ - "async-trait", - "axum 0.6.20", - "base64 0.21.7", - "bytes", - "futures-core", - "futures-util", - "h2 0.3.26", - "http 0.2.12", - "http-body 0.4.6", - "hyper 0.14.30", - "hyper-timeout 0.4.1", - "percent-encoding", - "pin-project 1.1.5", - "prost 0.11.9", - "tokio", - "tokio-stream", - "tower 0.4.13", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "tonic" -version = "0.12.2" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6f6ba989e4b2c58ae83d862d3a3e27690b6e3ae630d0deb59f3697f32aa88ad" +checksum = "877c5b330756d856ffcc4553ab34a5684481ade925ecc54bcd1bf02b1d0d4d52" dependencies = [ "async-stream", "async-trait", - "axum 0.7.5", + "axum", "base64 0.22.1", "bytes", "h2 0.4.6", @@ -12610,12 +12439,12 @@ dependencies = [ "http-body 1.0.1", "http-body-util", "hyper 1.4.1", - "hyper-timeout 0.5.1", + "hyper-timeout", "hyper-util", "percent-encoding", "pin-project 1.1.5", "prost 0.13.2", - "rustls-native-certs 0.7.3", + "rustls-native-certs 0.8.0", "rustls-pemfile 2.1.3", "socket2", "tokio", @@ -12769,17 +12598,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "tracing-log" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f751112709b4e791d8ce53e32c4ed2d353565a795ce84da2285393f41557bdf2" -dependencies = [ - "log", - "once_cell", - "tracing-core", -] - [[package]] name = "tracing-log" version = "0.2.0" @@ -12793,18 +12611,20 @@ dependencies = [ [[package]] name = "tracing-opentelemetry" -version = "0.21.0" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75327c6b667828ddc28f5e3f169036cb793c3f588d83bf0f262a7f062ffed3c8" +checksum = "a9784ed4da7d921bc8df6963f8c80a0e4ce34ba6ba76668acadd3edbd985ff3b" dependencies = [ + "js-sys", "once_cell", "opentelemetry", "opentelemetry_sdk", "smallvec", "tracing", "tracing-core", - "tracing-log 0.1.4", + "tracing-log", "tracing-subscriber", + "web-time", ] [[package]] @@ -12835,7 +12655,7 @@ dependencies = [ "time", "tracing", "tracing-core", - "tracing-log 0.2.0", + "tracing-log", "tracing-serde", ] @@ -13203,59 +13023,40 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "vise" -version = "0.1.0" -source = "git+https://github.com/matter-labs/vise.git?rev=a5bb80c9ce7168663114ee30e794d6dc32159ee4#a5bb80c9ce7168663114ee30e794d6dc32159ee4" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90ade36f3548b1524396f4de7b36f4f210c8a01dfab568eb2bff466af64eb6e5" dependencies = [ "compile-fmt", + "ctor", "elsa", - "linkme", "once_cell", "prometheus-client", "vise-macros", ] [[package]] -name = "vise-macros" -version = "0.1.0" -source = "git+https://github.com/matter-labs/vise.git?rev=a5bb80c9ce7168663114ee30e794d6dc32159ee4#a5bb80c9ce7168663114ee30e794d6dc32159ee4" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "vlog" -version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" +name = "vise-exporter" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "671d3b894d5d0849f0a597f56bf071f42d4f2a1cbcf2f78ca21f870ab7c0cc2b" dependencies = [ - "chrono", - "opentelemetry", - "opentelemetry-otlp", - "opentelemetry-semantic-conventions", - "sentry", - "serde", - "serde_json", + "hyper 0.14.30", + "once_cell", + "tokio", "tracing", - "tracing-opentelemetry", - "tracing-subscriber", + "vise", ] [[package]] -name = "vlog" -version = "0.1.0" -source = "git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d#0d51cd6f3e65eef1bda981fe96f3026d8e12156d" +name = "vise-macros" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a511871dc5de990a3b2a0e715facfbc5da848c0c0395597a1415029fb7c250a" dependencies = [ - "chrono", - "opentelemetry", - "opentelemetry-otlp", - "opentelemetry-semantic-conventions", - "sentry", - "serde", - "serde_json", - "tracing", - "tracing-opentelemetry", - "tracing-subscriber", + "proc-macro2", + "quote", + "syn 2.0.77", ] [[package]] @@ -13483,6 +13284,16 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "web-time" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + [[package]] name = "webpki-roots" version = "0.25.4" @@ -13498,6 +13309,18 @@ dependencies = [ "rustls-pki-types", ] +[[package]] +name = "which" +version = "4.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" +dependencies = [ + "either", + "home", + "once_cell", + "rustix", +] + [[package]] name = "which" version = "6.0.3" @@ -13983,7 +13806,7 @@ dependencies = [ "bzip2", "constant_time_eq", "crc32fast", - "crossbeam-utils 0.8.20", + "crossbeam-utils", "flate2", "hmac", "pbkdf2 0.11.0", @@ -14001,7 +13824,7 @@ dependencies = [ "arbitrary", "bzip2", "crc32fast", - "crossbeam-utils 0.8.20", + "crossbeam-utils", "displaydoc", "flate2", "indexmap 2.5.0", @@ -14023,40 +13846,27 @@ dependencies = [ [[package]] name = "zk_evm" -version = "1.3.1" -source = "git+https://github.com/matter-labs/era-zk_evm.git?tag=v1.3.1-rc2#0a7c775932db4839ff6b7fb0db9bdb3583ab54c0" +version = "0.131.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2b83ee7887fb29fda57c6b26a0f64c9b211459d718f8a26310f962e69f0b764" dependencies = [ - "blake2 0.10.6 (git+https://github.com/RustCrypto/hashes.git?rev=1f727ce37ff40fa0cce84eb8543a45bdd3ca4a4e)", + "blake2_ce", "k256 0.11.6", "lazy_static", "num", "serde", "serde_json", - "sha2 0.10.6", - "sha3 0.10.6", - "static_assertions", - "zkevm_opcode_defs 1.3.1", -] - -[[package]] -name = "zk_evm" -version = "1.3.3" -source = "git+https://github.com/matter-labs/era-zk_evm.git?tag=v1.3.3-rc2#fbee20f5bac7d6ca3e22ae69b2077c510a07de4e" -dependencies = [ - "anyhow", - "lazy_static", - "num", - "serde", - "serde_json", + "sha2_ce", + "sha3_ce", "static_assertions", - "zk_evm_abstractions 0.1.0", - "zkevm_opcode_defs 1.3.2", + "zkevm_opcode_defs 0.131.0", ] [[package]] name = "zk_evm" -version = "1.3.3" -source = "git+https://github.com/matter-labs/era-zk_evm.git?branch=v1.3.3#fbee20f5bac7d6ca3e22ae69b2077c510a07de4e" +version = "0.133.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9af08e9284686a1b0c89ec4931eb915ac0729367f1247abd06164874fe738106" dependencies = [ "anyhow", "lazy_static", @@ -14064,14 +13874,15 @@ dependencies = [ "serde", "serde_json", "static_assertions", - "zk_evm_abstractions 0.1.0", - "zkevm_opcode_defs 1.3.2", + "zk_evm_abstractions 0.140.0", + "zkevm_opcode_defs 0.132.0", ] [[package]] name = "zk_evm" -version = "1.4.0" -source = "git+https://github.com/matter-labs/era-zk_evm.git?branch=v1.4.0#dd76fc5badf2c05278a21b38015a7798fe2fe358" +version = "0.140.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349bb8320d12578537658792df708f43c52e6330f0df071f812cb93b04ade962" dependencies = [ "anyhow", "lazy_static", @@ -14079,14 +13890,15 @@ dependencies = [ "serde", "serde_json", "static_assertions", - "zk_evm_abstractions 0.1.0", - "zkevm_opcode_defs 1.3.2", + "zk_evm_abstractions 0.140.0", + "zkevm_opcode_defs 0.132.0", ] [[package]] name = "zk_evm" -version = "1.4.1" -source = "git+https://github.com/matter-labs/era-zk_evm.git?branch=v1.4.1#6250dbf64b2d14ced87a127735da559f27a432d5" +version = "0.141.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8886ba5989b952b7b76096469eeb6fdfaf3369770e9e22a6f67dc4b7d65f9243" dependencies = [ "anyhow", "lazy_static", @@ -14094,14 +13906,15 @@ dependencies = [ "serde", "serde_json", "static_assertions", - "zk_evm_abstractions 1.4.1", - "zkevm_opcode_defs 1.4.1", + "zk_evm_abstractions 0.141.0", + "zkevm_opcode_defs 0.141.0", ] [[package]] name = "zk_evm" -version = "1.5.0" -source = "git+https://github.com/matter-labs/era-zk_evm.git?branch=v1.5.0#0c5cdca00cca4fa0a8c49147a11048c24f8a4b12" +version = "0.150.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a6e69931f24db5cf333b714721e8d80ff88bfdb7da8c3dc7882612ffddb8d27" dependencies = [ "anyhow", "lazy_static", @@ -14109,54 +13922,57 @@ dependencies = [ "serde", "serde_json", "static_assertions", - "zk_evm_abstractions 1.5.0", + "zk_evm_abstractions 0.150.5", ] [[package]] name = "zk_evm_abstractions" -version = "0.1.0" -source = "git+https://github.com/matter-labs/era-zk_evm_abstractions.git#32dd320953841aa78579d9da08abbc70bcaed175" +version = "0.140.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be696258861eba4e6625a5665084b2266720bb67f4ba69819469700ac5c6a401" dependencies = [ "anyhow", "num_enum 0.6.1", "serde", "static_assertions", - "zkevm_opcode_defs 1.3.2", + "zkevm_opcode_defs 0.132.0", ] [[package]] name = "zk_evm_abstractions" -version = "1.4.1" -source = "git+https://github.com/matter-labs/era-zk_evm_abstractions.git?branch=v1.4.1#0aac08c3b097ee8147e748475117ac46bddcdcef" +version = "0.141.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "637a3cb6cb475bb238bee3e450763205d36fe6c92dc1b23300655927915baf03" dependencies = [ "anyhow", "num_enum 0.6.1", "serde", "static_assertions", - "zkevm_opcode_defs 1.4.1", + "zkevm_opcode_defs 0.141.0", ] [[package]] name = "zk_evm_abstractions" -version = "1.5.0" -source = "git+https://github.com/matter-labs/era-zk_evm_abstractions.git?branch=v1.5.0#e464b2cf2b146d883be80e7d690c752bf670ff05" +version = "0.150.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93d6b0720261ab55490fe3a96e96de30d5d7b277940b52ea7f52dbf564eb1748" dependencies = [ "anyhow", "num_enum 0.6.1", "serde", "static_assertions", - "zkevm_opcode_defs 1.5.0", + "zkevm_opcode_defs 0.150.5", ] [[package]] name = "zkevm_circuits" -version = "1.4.0" -source = "git+https://github.com/matter-labs/era-zkevm_circuits.git?branch=v1.4.0#fb3e2574b5c890342518fc930c145443f039a105" +version = "0.140.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3c365c801e0c6eda83fbd153df45575172beb406bfb663d386f9154b4325eda" dependencies = [ "arrayvec 0.7.6", "bincode", - "boojum", - "cs_derive 0.2.2 (git+https://github.com/matter-labs/era-boojum.git?branch=main)", + "boojum 0.2.2", "derivative", "hex", "itertools 0.10.5", @@ -14166,18 +13982,19 @@ dependencies = [ "serde", "serde_json", "smallvec", - "zkevm_opcode_defs 1.3.2", + "zkevm_opcode_defs 0.132.0", + "zksync_cs_derive", ] [[package]] name = "zkevm_circuits" -version = "1.4.1" -source = "git+https://github.com/matter-labs/era-zkevm_circuits.git?branch=v1.4.1#8bf24543ffc5bafab34182388394e887ecb37d17" +version = "0.141.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ccd0352e122a4e6f0046d2163b7e692e627b23fc3264faa77331a21b65833fd" dependencies = [ "arrayvec 0.7.6", "bincode", - "boojum", - "cs_derive 0.2.2 (git+https://github.com/matter-labs/era-boojum.git?branch=main)", + "boojum 0.2.2", "derivative", "hex", "itertools 0.10.5", @@ -14187,17 +14004,18 @@ dependencies = [ "serde", "serde_json", "smallvec", - "zkevm_opcode_defs 1.4.1", + "zkevm_opcode_defs 0.141.0", + "zksync_cs_derive", ] [[package]] name = "zkevm_circuits" -version = "1.5.0" -source = "git+https://github.com/matter-labs/era-zkevm_circuits.git?branch=v1.5.0#b7a86c739e8a8f88e788e90893c6e7496f6d7dfc" +version = "0.150.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "784fa7cfb51e17c5ced112bca43da30b3468b2347b7af0427ad9638759fb140e" dependencies = [ "arrayvec 0.7.6", - "boojum", - "cs_derive 0.2.2 (git+https://github.com/matter-labs/era-boojum.git?branch=main)", + "boojum 0.30.1", "derivative", "hex", "itertools 0.10.5", @@ -14206,13 +14024,15 @@ dependencies = [ "seq-macro", "serde", "smallvec", - "zkevm_opcode_defs 1.5.0", + "zkevm_opcode_defs 0.150.5", + "zksync_cs_derive", ] [[package]] name = "zkevm_opcode_defs" -version = "1.3.1" -source = "git+https://github.com/matter-labs/era-zkevm_opcode_defs.git?branch=v1.3.1#00d4ad2292bd55374a0fa10fe11686d7a109d8a0" +version = "0.131.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49e0154bd4ae8202c96c52b29dd44f944bfd08c1c233fef843744463964de957" dependencies = [ "bitflags 1.3.2", "ethereum-types 0.14.1", @@ -14222,28 +14042,47 @@ dependencies = [ [[package]] name = "zkevm_opcode_defs" -version = "1.3.2" -source = "git+https://github.com/matter-labs/era-zkevm_opcode_defs.git?branch=v1.3.2#dffacadeccdfdbff4bc124d44c595c4a6eae5013" +version = "0.132.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0769f7b27d8fb06e715da3290c575cac5d04d10a557faef180e847afce50ac4" dependencies = [ "bitflags 2.6.0", - "blake2 0.10.6 (git+https://github.com/RustCrypto/hashes.git?rev=1f727ce37ff40fa0cce84eb8543a45bdd3ca4a4e)", + "blake2", "ethereum-types 0.14.1", "k256 0.11.6", "lazy_static", - "sha2 0.10.6", - "sha3 0.10.6", + "sha2_ce", + "sha3_ce", ] [[package]] name = "zkevm_opcode_defs" -version = "1.4.1" -source = "git+https://github.com/matter-labs/era-zkevm_opcode_defs.git?branch=v1.4.1#ba8228ff0582d21f64d6a319d50d0aec48e9e7b6" +version = "0.141.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6be7bd5f0e0b61211f544147289640b4712715589d7f2fe5229d92a7a3ac64c0" +dependencies = [ + "bitflags 2.6.0", + "blake2", + "ethereum-types 0.14.1", + "k256 0.13.3", + "lazy_static", + "sha2 0.10.8", + "sha3 0.10.8", +] + +[[package]] +name = "zkevm_opcode_defs" +version = "0.150.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79055eae1b6c1ab80793ed9d77d2964c9c896afa4b5dfed278cf58cd10acfe8f" dependencies = [ "bitflags 2.6.0", - "blake2 0.10.6 (registry+https://github.com/rust-lang/crates.io-index)", + "blake2", "ethereum-types 0.14.1", "k256 0.13.3", "lazy_static", + "p256", + "serde", "sha2 0.10.8", "sha3 0.10.8", ] @@ -14254,7 +14093,7 @@ version = "1.5.0" source = "git+https://github.com/matter-labs/era-zkevm_opcode_defs.git?branch=v1.5.0#28d2edabf902ea9b08f6a26a4506831fd89346b9" dependencies = [ "bitflags 2.6.0", - "blake2 0.10.6 (registry+https://github.com/rust-lang/crates.io-index)", + "blake2", "ethereum-types 0.14.1", "k256 0.13.3", "lazy_static", @@ -14288,7 +14127,7 @@ dependencies = [ [[package]] name = "zksync_basic_types" version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "anyhow", "chrono", @@ -14298,16 +14137,40 @@ dependencies = [ "serde", "serde_json", "serde_with", - "strum 0.24.1", + "strum", "thiserror", "tiny-keccak 2.0.2", "url", ] +[[package]] +name = "zksync_bellman" +version = "0.30.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ffa03efe9bdb137a4b36b97d1a74237e18c9ae42b755163d903a9d48c1a5d80" +dependencies = [ + "arrayvec 0.7.6", + "bit-vec", + "blake2s_simd", + "byteorder", + "cfg-if 1.0.0", + "crossbeam", + "futures 0.3.30", + "hex", + "lazy_static", + "num_cpus", + "rand 0.4.6", + "serde", + "smallvec", + "tiny-keccak 1.5.0", + "zksync_pairing", +] + [[package]] name = "zksync_concurrency" -version = "0.1.0" -source = "git+https://github.com/matter-labs/era-consensus.git?rev=3e6f101ee4124308c4c974caaa259d524549b0c6#3e6f101ee4124308c4c974caaa259d524549b0c6" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4724d51934e475c846ba9e6ed169e25587385188b928a9ecfbbf616092a1c17" dependencies = [ "anyhow", "once_cell", @@ -14325,45 +14188,33 @@ dependencies = [ [[package]] name = "zksync_config" version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" -dependencies = [ - "anyhow", - "rand 0.8.5", - "secrecy", - "serde", - "zksync_basic_types", - "zksync_consensus_utils", - "zksync_crypto_primitives 0.1.0 (git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync)", -] - -[[package]] -name = "zksync_config" -version = "0.1.0" -source = "git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d#0d51cd6f3e65eef1bda981fe96f3026d8e12156d" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "anyhow", "rand 0.8.5", "secrecy", "serde", + "url", "zksync_basic_types", + "zksync_concurrency", "zksync_consensus_utils", - "zksync_crypto_primitives 0.1.0 (git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d)", + "zksync_crypto_primitives", ] [[package]] name = "zksync_consensus_crypto" -version = "0.1.0" -source = "git+https://github.com/matter-labs/era-consensus.git?rev=3e6f101ee4124308c4c974caaa259d524549b0c6#3e6f101ee4124308c4c974caaa259d524549b0c6" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7760e7a140f16f0435fbf2ad9a4b09feaad74568d05b553751d222f4803a42e" dependencies = [ "anyhow", "blst", "ed25519-dalek", - "ff_ce", + "elliptic-curve 0.13.8", "hex", + "k256 0.13.3", "num-bigint", "num-traits", - "pairing_ce 0.28.5", - "rand 0.4.6", "rand 0.8.5", "sha3 0.10.8", "thiserror", @@ -14373,8 +14224,9 @@ dependencies = [ [[package]] name = "zksync_consensus_roles" -version = "0.1.0" -source = "git+https://github.com/matter-labs/era-consensus.git?rev=3e6f101ee4124308c4c974caaa259d524549b0c6#3e6f101ee4124308c4c974caaa259d524549b0c6" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96f903187836210602beba27655e111e22efb229ef90bd2a95a3d6799b31685c" dependencies = [ "anyhow", "bit-vec", @@ -14394,8 +14246,9 @@ dependencies = [ [[package]] name = "zksync_consensus_storage" -version = "0.1.0" -source = "git+https://github.com/matter-labs/era-consensus.git?rev=3e6f101ee4124308c4c974caaa259d524549b0c6#3e6f101ee4124308c4c974caaa259d524549b0c6" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff43cfd03ea205c763e74362dc6ec5a4d74b6b1baef0fb134dde92a8880397f7" dependencies = [ "anyhow", "async-trait", @@ -14405,6 +14258,7 @@ dependencies = [ "tracing", "vise", "zksync_concurrency", + "zksync_consensus_crypto", "zksync_consensus_roles", "zksync_protobuf", "zksync_protobuf_build", @@ -14412,9 +14266,11 @@ dependencies = [ [[package]] name = "zksync_consensus_utils" -version = "0.1.0" -source = "git+https://github.com/matter-labs/era-consensus.git?rev=3e6f101ee4124308c4c974caaa259d524549b0c6#3e6f101ee4124308c4c974caaa259d524549b0c6" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1020308512c01ab80327fb874b5b61c6fd513a6b26c8a5fce3e077600da04e4b" dependencies = [ + "anyhow", "rand 0.8.5", "thiserror", "zksync_concurrency", @@ -14423,7 +14279,7 @@ dependencies = [ [[package]] name = "zksync_contracts" version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "envy", "ethabi 18.0.0", @@ -14431,62 +14287,46 @@ dependencies = [ "once_cell", "serde", "serde_json", - "zksync_utils 0.1.0 (git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync)", -] - -[[package]] -name = "zksync_crypto" -version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" -dependencies = [ - "blake2 0.10.6 (registry+https://github.com/rust-lang/crates.io-index)", - "hex", - "once_cell", - "serde", - "sha2 0.10.8", - "thiserror", - "zksync_basic_types", + "zksync_utils", ] [[package]] name = "zksync_crypto_primitives" version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "anyhow", + "blake2", "hex", "rand 0.8.5", "secp256k1 0.27.0", "serde", "serde_json", + "sha2 0.10.8", "thiserror", "zksync_basic_types", - "zksync_utils 0.1.0 (git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync)", + "zksync_utils", ] [[package]] -name = "zksync_crypto_primitives" -version = "0.1.0" -source = "git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d#0d51cd6f3e65eef1bda981fe96f3026d8e12156d" +name = "zksync_cs_derive" +version = "0.30.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5939e2df4288c263c706ff18ac718e984149223ad4289d6d957d767dcfc04c81" dependencies = [ - "anyhow", - "hex", - "rand 0.8.5", - "secp256k1 0.27.0", - "serde", - "serde_json", - "thiserror", - "zksync_basic_types", - "zksync_utils 0.1.0 (git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d)", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] name = "zksync_dal" version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "anyhow", - "bigdecimal", + "bigdecimal 0.4.5", "bincode", "chrono", "hex", @@ -14496,11 +14336,12 @@ dependencies = [ "serde", "serde_json", "sqlx", - "strum 0.24.1", + "strum", "thiserror", "tokio", "tracing", "vise", + "zksync_concurrency", "zksync_consensus_roles", "zksync_consensus_storage", "zksync_contracts", @@ -14509,13 +14350,14 @@ dependencies = [ "zksync_protobuf_build", "zksync_system_constants", "zksync_types", - "zksync_utils 0.1.0 (git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync)", + "zksync_utils", + "zksync_vm_interface", ] [[package]] name = "zksync_db_connection" version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "anyhow", "rand 0.8.5", @@ -14527,13 +14369,12 @@ dependencies = [ "tracing", "vise", "zksync_basic_types", - "zksync_health_check", ] [[package]] name = "zksync_eth_client" version = "0.1.0" -source = "git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d#0d51cd6f3e65eef1bda981fe96f3026d8e12156d" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "async-trait", "jsonrpsee", @@ -14541,7 +14382,7 @@ dependencies = [ "thiserror", "tracing", "vise", - "zksync_config 0.1.0 (git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d)", + "zksync_config", "zksync_contracts", "zksync_eth_signer", "zksync_types", @@ -14551,7 +14392,7 @@ dependencies = [ [[package]] name = "zksync_eth_signer" version = "0.1.0" -source = "git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d#0d51cd6f3e65eef1bda981fe96f3026d8e12156d" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "async-trait", "rlp", @@ -14560,52 +14401,110 @@ dependencies = [ ] [[package]] -name = "zksync_health_check" -version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" +name = "zksync_ff" +version = "0.30.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9524b06780b5e164e84b38840c7c428c739f051f35af6efc4d1285f629ceb88e" dependencies = [ - "async-trait", - "futures 0.3.30", + "byteorder", + "hex", + "rand 0.4.6", "serde", - "serde_json", - "thiserror", - "tokio", - "tracing", - "vise", + "zksync_ff_derive", +] + +[[package]] +name = "zksync_ff_derive" +version = "0.30.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f91e58e75d65877f09f83bc3dca8f054847ae7ec4f3e64bfa610a557edd8e8e" +dependencies = [ + "num-bigint", + "num-integer", + "num-traits", + "proc-macro2", + "quote", + "serde", + "syn 1.0.109", ] [[package]] name = "zksync_mini_merkle_tree" version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "once_cell", "zksync_basic_types", - "zksync_crypto", + "zksync_crypto_primitives", +] + +[[package]] +name = "zksync_multivm" +version = "0.1.0" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" +dependencies = [ + "anyhow", + "circuit_sequencer_api 0.133.1", + "circuit_sequencer_api 0.140.3", + "circuit_sequencer_api 0.141.2", + "circuit_sequencer_api 0.142.2", + "circuit_sequencer_api 0.150.5", + "hex", + "itertools 0.10.5", + "once_cell", + "thiserror", + "tracing", + "vise", + "zk_evm 0.131.0-rc.2", + "zk_evm 0.133.0", + "zk_evm 0.140.0", + "zk_evm 0.141.0", + "zk_evm 0.150.5", + "zksync_contracts", + "zksync_system_constants", + "zksync_types", + "zksync_utils", + "zksync_vm2", + "zksync_vm_interface", ] [[package]] name = "zksync_node_fee_model" version = "0.1.0" -source = "git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d#0d51cd6f3e65eef1bda981fe96f3026d8e12156d" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "anyhow", "async-trait", + "bigdecimal 0.4.5", "tokio", "tracing", "vise", - "zksync_config 0.1.0 (git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d)", + "zksync_config", "zksync_dal", "zksync_eth_client", "zksync_types", - "zksync_utils 0.1.0 (git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d)", + "zksync_utils", "zksync_web3_decl", ] +[[package]] +name = "zksync_pairing" +version = "0.30.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8412ae5574472fa567a097e183f9a01974b99dd0b5da3bfa1bbe6c57c579aa2" +dependencies = [ + "byteorder", + "cfg-if 1.0.0", + "rand 0.4.6", + "serde", + "zksync_ff", +] + [[package]] name = "zksync_protobuf" -version = "0.1.0" -source = "git+https://github.com/matter-labs/era-consensus.git?rev=3e6f101ee4124308c4c974caaa259d524549b0c6#3e6f101ee4124308c4c974caaa259d524549b0c6" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d2d9ce9b9697daae6023c8da5cfe8764690a9d9c91ff32b8e1e54a7c8301fb3" dependencies = [ "anyhow", "bit-vec", @@ -14624,8 +14523,9 @@ dependencies = [ [[package]] name = "zksync_protobuf_build" -version = "0.1.0" -source = "git+https://github.com/matter-labs/era-consensus.git?rev=3e6f101ee4124308c4c974caaa259d524549b0c6#3e6f101ee4124308c4c974caaa259d524549b0c6" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "903c23a12e160a703f9b68d0dd961daa24156af912ca1bc9efb74969f3acc645" dependencies = [ "anyhow", "heck 0.5.0", @@ -14641,7 +14541,7 @@ dependencies = [ [[package]] name = "zksync_shared_metrics" version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "rustc_version 0.4.1", "tracing", @@ -14653,10 +14553,11 @@ dependencies = [ [[package]] name = "zksync_state" version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "anyhow", "async-trait", + "backon", "chrono", "itertools 0.10.5", "mini-moka", @@ -14668,13 +14569,14 @@ dependencies = [ "zksync_shared_metrics", "zksync_storage", "zksync_types", - "zksync_utils 0.1.0 (git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync)", + "zksync_utils", + "zksync_vm_interface", ] [[package]] name = "zksync_storage" version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "num_cpus", "once_cell", @@ -14687,20 +14589,21 @@ dependencies = [ [[package]] name = "zksync_system_constants" version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "once_cell", "zksync_basic_types", - "zksync_utils 0.1.0 (git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync)", + "zksync_utils", ] [[package]] name = "zksync_types" version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "anyhow", - "blake2 0.10.6 (registry+https://github.com/rust-lang/crates.io-index)", + "bigdecimal 0.4.5", + "blake2", "chrono", "derive_more 1.0.0", "hex", @@ -14713,69 +14616,110 @@ dependencies = [ "secp256k1 0.27.0", "serde", "serde_json", - "strum 0.24.1", + "serde_with", + "strum", "thiserror", + "tracing", "zksync_basic_types", - "zksync_config 0.1.0 (git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync)", + "zksync_config", "zksync_contracts", - "zksync_crypto_primitives 0.1.0 (git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync)", + "zksync_crypto_primitives", "zksync_mini_merkle_tree", "zksync_protobuf", "zksync_protobuf_build", "zksync_system_constants", - "zksync_utils 0.1.0 (git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync)", + "zksync_utils", ] [[package]] name = "zksync_utils" version = "0.1.0" -source = "git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync#0ddd5c0c362f9fff5c43830763ffff06ce113d73" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "anyhow", - "bigdecimal", + "bigdecimal 0.4.5", "futures 0.3.30", "hex", - "itertools 0.10.5", "num", "once_cell", - "reqwest 0.11.27", + "reqwest 0.12.7", "serde", "serde_json", "thiserror", "tokio", "tracing", - "vlog 0.1.0 (git+http://github.com/Moonsong-Labs/zksync-era?branch=foundry-zksync)", - "zk_evm 1.3.3 (git+https://github.com/matter-labs/era-zk_evm.git?tag=v1.3.3-rc2)", + "zk_evm 0.133.0", "zksync_basic_types", + "zksync_vlog", ] [[package]] -name = "zksync_utils" +name = "zksync_vlog" version = "0.1.0" -source = "git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d#0d51cd6f3e65eef1bda981fe96f3026d8e12156d" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "anyhow", - "bigdecimal", - "futures 0.3.30", - "hex", - "itertools 0.10.5", - "num", - "once_cell", - "reqwest 0.11.27", + "chrono", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry_sdk", + "sentry", "serde", "serde_json", "thiserror", + "time", "tokio", "tracing", - "vlog 0.1.0 (git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d)", - "zk_evm 1.3.3 (git+https://github.com/matter-labs/era-zk_evm.git?tag=v1.3.3-rc2)", - "zksync_basic_types", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "vise", + "vise-exporter", +] + +[[package]] +name = "zksync_vm2" +version = "0.1.0" +source = "git+https://github.com/matter-labs/vm2.git?rev=74577d9be13b1bff9d1a712389731f669b179e47#74577d9be13b1bff9d1a712389731f669b179e47" +dependencies = [ + "enum_dispatch", + "primitive-types 0.12.2", + "zk_evm_abstractions 0.150.5", + "zkevm_opcode_defs 0.150.5", + "zksync_vm2_interface", +] + +[[package]] +name = "zksync_vm2_interface" +version = "0.1.0" +source = "git+https://github.com/matter-labs/vm2.git?rev=74577d9be13b1bff9d1a712389731f669b179e47#74577d9be13b1bff9d1a712389731f669b179e47" +dependencies = [ + "primitive-types 0.12.2", +] + +[[package]] +name = "zksync_vm_interface" +version = "0.1.0" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" +dependencies = [ + "anyhow", + "async-trait", + "hex", + "pretty_assertions", + "serde", + "thiserror", + "tracing", + "zksync_contracts", + "zksync_system_constants", + "zksync_types", ] [[package]] name = "zksync_web3_decl" version = "0.1.0" -source = "git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d#0d51cd6f3e65eef1bda981fe96f3026d8e12156d" +source = "git+https://github.com/matter-labs/zksync-era.git?rev=7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7#7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" dependencies = [ "anyhow", "async-trait", @@ -14783,13 +14727,14 @@ dependencies = [ "jsonrpsee", "pin-project-lite", "rlp", + "rustls 0.23.13", "serde", "serde_json", "thiserror", "tokio", "tracing", "vise", - "zksync_config 0.1.0 (git+https://github.com/matter-labs/zksync-era.git?rev=0d51cd6f3e65eef1bda981fe96f3026d8e12156d)", + "zksync_config", "zksync_types", ] diff --git a/Cargo.toml b/Cargo.toml index a56e16880..f8dddee75 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -122,7 +122,7 @@ axum.opt-level = 3 scrypt.opt-level = 3 # zksync -multivm.opt-level = 3 +zksync_multivm.opt-level = 3 # Override packages which aren't perf-sensitive for faster compilation speed and smaller binary size. [profile.release.package] @@ -230,15 +230,16 @@ alloy-trie = "0.5.0" op-alloy-rpc-types = "0.2.9" ## zksync -era_test_node = { git="https://github.com/matter-labs/era-test-node.git" , rev = "2041018903aa7e00e74c450f8c0baf799c056d86" } +era_test_node = { git="https://github.com/matter-labs/era-test-node.git" , rev = "ceee937055a5a373e27b0ff9bf2e42391de78c59" } zksync-web3-rs = {git = "https://github.com/jrigada/zksync-web3-rs.git", rev = "bc3e6d3e75b7ff3747ff2dccefa9fb74d770931b"} -zksync_basic_types = { git = "https://github.com/Moonsong-Labs/zksync-era.git", branch = "foundry-zksync" } -zksync_types = { git = "https://github.com/Moonsong-Labs/zksync-era.git", branch = "foundry-zksync" } -zksync_state = { git = "https://github.com/Moonsong-Labs/zksync-era.git", branch = "foundry-zksync" } -multivm = { git = "https://github.com/Moonsong-Labs/zksync-era.git", branch = "foundry-zksync" } -zksync_web3_decl = { git = "https://github.com/Moonsong-Labs/zksync-era.git", branch = "foundry-zksync" } -zksync_utils = { git = "https://github.com/Moonsong-Labs/zksync-era.git", branch = "foundry-zksync" } -zksync_contracts = { git = "https://github.com/Moonsong-Labs/zksync-era.git", branch = "foundry-zksync" } +# zksync-web3-rs = {git = "https://github.com/lambdaclass/zksync-web3-rs.git", rev = "56653345d14331e0865a6785c77cdda63c94eeba"} +zksync_basic_types = { git = "https://github.com/matter-labs/zksync-era.git", rev = "7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" } +zksync_types = { git = "https://github.com/matter-labs/zksync-era.git", rev = "7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" } +zksync_state = { git = "https://github.com/matter-labs/zksync-era.git", rev = "7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" } +zksync_multivm = { git = "https://github.com/matter-labs/zksync-era.git", rev = "7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" } +zksync_web3_decl = { git = "https://github.com/matter-labs/zksync-era.git", rev = "7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" } +zksync_utils = { git = "https://github.com/matter-labs/zksync-era.git", rev = "7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" } +zksync_contracts = { git = "https://github.com/matter-labs/zksync-era.git", rev = "7ad0425e00a44e0dd1c3abf38ab2f6335c2f86e7" } ## misc async-trait = "0.1" @@ -296,40 +297,3 @@ tower-http = "0.5" soldeer = "=0.3.4" proptest = "1" comfy-table = "7" - -# [patch.crates-io] -# alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-contract = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-signer-aws = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-signer-gcp = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-signer-ledger = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-signer-trezor = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } -# alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "7fab7ee" } - -[patch.'https://github.com/matter-labs/zksync-era.git'] -# era-test-node uses the original ones -zksync_state = { git = "http://github.com/Moonsong-Labs/zksync-era", branch = "foundry-zksync" } -multivm = { git = "http://github.com/Moonsong-Labs/zksync-era", branch = "foundry-zksync" } -zksync_basic_types = { git = "http://github.com/Moonsong-Labs/zksync-era", branch = "foundry-zksync" } -zksync_contracts = { git = "http://github.com/Moonsong-Labs/zksync-era", branch = "foundry-zksync" } -zksync_types = { git = "http://github.com/Moonsong-Labs/zksync-era", branch = "foundry-zksync" } -zksync_dal = { git = "http://github.com/Moonsong-Labs/zksync-era", branch = "foundry-zksync" } - -[patch.'https://github.com/matter-labs/era-boojum.git'] -boojum = "0.2.2" diff --git a/crates/zksync/core/Cargo.toml b/crates/zksync/core/Cargo.toml index a61328f1e..49116a36f 100644 --- a/crates/zksync/core/Cargo.toml +++ b/crates/zksync/core/Cargo.toml @@ -42,7 +42,7 @@ serde.workspace = true serde_json.workspace = true # zk -multivm.workspace = true +zksync_multivm.workspace = true zksync_basic_types.workspace = true zksync_types.workspace = true zksync-web3-rs.workspace = true diff --git a/crates/zksync/core/src/lib.rs b/crates/zksync/core/src/lib.rs index a6cc27a21..db79325d2 100644 --- a/crates/zksync/core/src/lib.rs +++ b/crates/zksync/core/src/lib.rs @@ -35,9 +35,9 @@ use serde::{Deserialize, Serialize}; pub use utils::{fix_l2_gas_limit, fix_l2_gas_price}; pub use vm::{balance, encode_create_params, nonce}; +pub use zksync_multivm::interface::{Call, CallType}; use zksync_types::utils::storage_key_for_eth_balance; pub use zksync_types::{ - vm_trace::{Call, CallType}, ACCOUNT_CODE_STORAGE_ADDRESS, CONTRACT_DEPLOYER_ADDRESS, H256, L2_BASE_TOKEN_ADDRESS, NONCE_HOLDER_ADDRESS, }; diff --git a/crates/zksync/core/src/vm/db.rs b/crates/zksync/core/src/vm/db.rs index 7a96a3db6..c9c6a9fd3 100644 --- a/crates/zksync/core/src/vm/db.rs +++ b/crates/zksync/core/src/vm/db.rs @@ -10,11 +10,11 @@ use alloy_primitives::{Address, U256 as rU256}; use foundry_cheatcodes_common::record::RecordAccess; use revm::{primitives::Account, Database, EvmContext, InnerEvmContext}; use zksync_basic_types::{L2ChainId, H160, H256, U256}; -use zksync_state::ReadStorage; +use zksync_state::interface::ReadStorage; use zksync_types::{ get_code_key, get_nonce_key, get_system_context_init_logs, utils::{decompose_full_nonce, storage_key_for_eth_balance}, - Nonce, StorageKey, StorageLog, StorageLogKind, StorageValue, + Nonce, StorageKey, StorageLog, StorageValue, }; use zksync_utils::{bytecode::hash_bytecode, h256_to_u256}; @@ -92,8 +92,7 @@ where }) .chain(system_context_init_log) .for_each(|log| { - (log.kind == StorageLogKind::Write) - .then_some(override_keys.insert(log.key, log.value)); + (log.is_write()).then_some(override_keys.insert(log.key, log.value)); }); let mut factory_deps = contracts diff --git a/crates/zksync/core/src/vm/env.rs b/crates/zksync/core/src/vm/env.rs index 0eabbb1b4..91e74f044 100644 --- a/crates/zksync/core/src/vm/env.rs +++ b/crates/zksync/core/src/vm/env.rs @@ -1,13 +1,10 @@ -use multivm::{ - interface::{L1BatchEnv, L2BlockEnv, SystemEnv}, - vm_latest::{ - constants::BATCH_COMPUTATIONAL_GAS_LIMIT, utils::l2_blocks::load_last_l2_block, - TxExecutionMode, - }, -}; use zksync_basic_types::{AccountTreeId, L1BatchNumber, L2BlockNumber, L2ChainId, H160}; use zksync_contracts::BaseSystemContracts; -use zksync_state::{ReadStorage, StoragePtr}; +use zksync_multivm::{ + interface::{L1BatchEnv, L2BlockEnv, SystemEnv, TxExecutionMode}, + vm_latest::{constants::BATCH_COMPUTATIONAL_GAS_LIMIT, utils::l2_blocks::load_last_l2_block}, +}; +use zksync_state::interface::{ReadStorage, StoragePtr}; use zksync_types::{ block::{unpack_block_info, L2BlockHasher}, fee_model::L1PeggedBatchFeeModelInput, @@ -20,7 +17,7 @@ pub(crate) fn create_l1_batch_env( l1_gas_price: u64, fair_l2_gas_price: u64, ) -> L1BatchEnv { - let mut first_l2_block = if let Some(last_l2_block) = load_last_l2_block(storage.clone()) { + let mut first_l2_block = if let Some(last_l2_block) = load_last_l2_block(&storage) { L2BlockEnv { number: last_l2_block.number + 1, timestamp: last_l2_block.timestamp + 1, diff --git a/crates/zksync/core/src/vm/farcall.rs b/crates/zksync/core/src/vm/farcall.rs index 5766eb3a1..844ce8f53 100644 --- a/crates/zksync/core/src/vm/farcall.rs +++ b/crates/zksync/core/src/vm/farcall.rs @@ -4,7 +4,8 @@ use std::{collections::HashMap, default, fmt::Debug}; use alloy_primitives::{hex, Address}; use itertools::Itertools; -use multivm::{ +use zksync_basic_types::{H160, U256}; +use zksync_multivm::{ vm_1_3_2::zk_evm_1_3_3::zkevm_opcode_defs::RetABI, vm_latest::{BootloaderState, HistoryMode, SimpleMemory, ZkSyncVmState}, zk_evm_latest::{ @@ -20,8 +21,7 @@ use multivm::{ }, }, }; -use zksync_basic_types::{H160, U256}; -use zksync_state::{StoragePtr, WriteStorage}; +use zksync_state::interface::{StoragePtr, WriteStorage}; use zksync_types::MSG_VALUE_SIMULATOR_ADDRESS; use crate::convert::{ConvertAddress, ConvertH256, ConvertU256}; diff --git a/crates/zksync/core/src/vm/inspect.rs b/crates/zksync/core/src/vm/inspect.rs index 14bdaac6e..063b47a23 100644 --- a/crates/zksync/core/src/vm/inspect.rs +++ b/crates/zksync/core/src/vm/inspect.rs @@ -6,14 +6,6 @@ use era_test_node::{ utils::bytecode_to_factory_dep, }; use itertools::Itertools; -use multivm::{ - interface::{Halt, VmInterface, VmRevertReason}, - tracers::CallTracer, - vm_latest::{ - ExecutionResult, HistoryDisabled, ToTracerPointer, Vm, VmExecutionMode, - VmExecutionResultAndLogs, - }, -}; use revm::{ db::states::StorageSlot, primitives::{ @@ -25,10 +17,18 @@ use revm::{ }; use tracing::{debug, error, info, trace, warn}; use zksync_basic_types::{ethabi, L2ChainId, Nonce, H160, H256, U256}; -use zksync_state::{ReadStorage, StoragePtr, WriteStorage}; +use zksync_multivm::{ + interface::{ + Call, CallType, ExecutionResult, Halt, VmEvent, VmExecutionResultAndLogs, VmFactory, + VmInterface, VmRevertReason, + }, + tracers::CallTracer, + vm_latest::{HistoryDisabled, ToTracerPointer, Vm}, +}; +use zksync_state::interface::{ReadStorage, StoragePtr, WriteStorage}; use zksync_types::{ - l2::L2Tx, vm_trace::Call, PackedEthSignature, StorageKey, Transaction, VmEvent, - ACCOUNT_CODE_STORAGE_ADDRESS, CONTRACT_DEPLOYER_ADDRESS, + l2::L2Tx, PackedEthSignature, StorageKey, Transaction, ACCOUNT_CODE_STORAGE_ADDRESS, + CONTRACT_DEPLOYER_ADDRESS, }; use zksync_utils::{be_words_to_bytes, h256_to_account_address, h256_to_u256, u256_to_h256}; @@ -430,7 +430,6 @@ fn inspect_inner( let tx: Transaction = l2_tx.clone().into(); - vm.push_transaction(tx.clone()); let call_tracer_result = Arc::default(); let cheatcode_tracer_result = Arc::default(); let mut expected_calls = HashMap::<_, _>::new(); @@ -455,7 +454,10 @@ fn inspect_inner( ) .into_tracer_pointer(), ]; - let mut tx_result = vm.inspect(tracers.into(), VmExecutionMode::OneTx); + let (compressed_bytecodes, mut tx_result) = + vm.inspect_transaction_with_bytecode_compression(&mut tracers.into(), tx, true); + let compressed_bytecodes = compressed_bytecodes.expect("failed compressing bytecodes"); + let mut call_traces = Arc::try_unwrap(call_tracer_result).unwrap().take().unwrap_or_default(); trace!(?tx_result.result, "zk vm result"); @@ -540,8 +542,7 @@ fn inspect_inner( formatter::print_event(event, resolve_hashes); } - let bytecodes = vm - .get_last_tx_compressed_bytecodes() + let bytecodes = compressed_bytecodes .iter() .map(|b| { bytecode_to_factory_dep(b.original.clone()) @@ -606,7 +607,7 @@ fn call_traces_patch_create( storage: StoragePtr>, call: &mut Call, ) { - if matches!(call.r#type, zksync_types::vm_trace::CallType::Create) { + if matches!(call.r#type, CallType::Create) { if let Some(hash) = deployed_bytecode_hashes.get(&call.to).cloned() { let maybe_bytecode = bytecodes .get(&h256_to_u256(hash)) @@ -767,7 +768,7 @@ fn split_tx_by_factory_deps(mut tx: L2Tx) -> Vec { let mut txs = Vec::with_capacity(batched.len() + 1); for deps in batched.into_iter() { txs.push(L2Tx::new( - H160::zero(), + Some(H160::zero()), Vec::default(), tx.common_data.nonce, tx.common_data.fee.clone(), diff --git a/crates/zksync/core/src/vm/runner.rs b/crates/zksync/core/src/vm/runner.rs index 1f563c940..5bb099765 100644 --- a/crates/zksync/core/src/vm/runner.rs +++ b/crates/zksync/core/src/vm/runner.rs @@ -49,7 +49,7 @@ where let (gas_limit, max_fee_per_gas) = gas_params(&mut ecx, caller, &PaymasterParams::default()); debug!(?gas_limit, ?max_fee_per_gas, "tx gas parameters"); let tx = L2Tx::new( - transact_to, + Some(transact_to), env.tx.data.to_vec(), nonce, Fee { @@ -147,7 +147,7 @@ where info!(?gas_limit, ?max_fee_per_gas, "tx gas parameters"); let tx = L2Tx::new( - CONTRACT_DEPLOYER_ADDRESS, + Some(CONTRACT_DEPLOYER_ADDRESS), calldata, nonce, Fee { @@ -206,7 +206,7 @@ where info!(?gas_limit, ?max_fee_per_gas, "tx gas parameters"); let tx = L2Tx::new( - call.bytecode_address.to_h160(), + Some(call.bytecode_address.to_h160()), call.input.to_vec(), nonce, Fee { diff --git a/crates/zksync/core/src/vm/storage_view.rs b/crates/zksync/core/src/vm/storage_view.rs index 58b9e0d03..bb7542e80 100644 --- a/crates/zksync/core/src/vm/storage_view.rs +++ b/crates/zksync/core/src/vm/storage_view.rs @@ -1,6 +1,6 @@ use std::{cell::RefCell, collections::HashMap, fmt, rc::Rc}; -use zksync_state::{ReadStorage, WriteStorage}; +use zksync_state::interface::{ReadStorage, WriteStorage}; use zksync_types::{StorageKey, StorageValue, ACCOUNT_CODE_STORAGE_ADDRESS, H160, H256}; use crate::convert::ConvertH160; @@ -151,7 +151,7 @@ impl WriteStorage for StorageView { #[cfg(test)] mod test { use super::*; - use zksync_state::InMemoryStorage; + use zksync_state::interface::InMemoryStorage; use zksync_types::{AccountTreeId, Address, H256}; #[test] diff --git a/crates/zksync/core/src/vm/tracers/cheatcode.rs b/crates/zksync/core/src/vm/tracers/cheatcode.rs index b46783ba9..0b2c0b20d 100644 --- a/crates/zksync/core/src/vm/tracers/cheatcode.rs +++ b/crates/zksync/core/src/vm/tracers/cheatcode.rs @@ -10,15 +10,16 @@ use foundry_cheatcodes_common::{ mock::{MockCallDataContext, MockCallReturnData}, record::RecordAccess, }; -use multivm::{ - interface::{dyn_tracers::vm_1_5_0::DynTracer, tracer::TracerExecutionStatus}, +use zksync_multivm::{ + interface::tracer::TracerExecutionStatus, + tracers::dynamic::vm_1_5_0::DynTracer, vm_latest::{BootloaderState, HistoryMode, SimpleMemory, VmTracer, ZkSyncVmState}, zk_evm_latest::{ tracing::{AfterDecodingData, AfterExecutionData, BeforeExecutionData, VmLocalStateData}, zkevm_opcode_defs::{FatPointer, Opcode, CALL_IMPLICIT_CALLDATA_FAT_PTR_REGISTER}, }, }; -use zksync_state::{ReadStorage, StoragePtr, WriteStorage}; +use zksync_state::interface::{ReadStorage, StoragePtr, WriteStorage}; use zksync_types::{ get_code_key, StorageValue, BOOTLOADER_ADDRESS, CONTRACT_DEPLOYER_ADDRESS, H256, SYSTEM_CONTEXT_ADDRESS, U256, @@ -393,7 +394,7 @@ impl VmTracer for CheatcodeTracer { &mut self, _state: &mut ZkSyncVmState, _bootloader_state: &BootloaderState, - _stop_reason: multivm::interface::tracer::VmExecutionStopReason, + _stop_reason: zksync_multivm::interface::tracer::VmExecutionStopReason, ) { let cell = self.result.as_ref(); cell.set(CheatcodeTracerResult { expected_calls: self.expected_calls.clone() }).unwrap(); diff --git a/crates/zksync/core/src/vm/tracers/error.rs b/crates/zksync/core/src/vm/tracers/error.rs index 5a166e075..fc1d21697 100644 --- a/crates/zksync/core/src/vm/tracers/error.rs +++ b/crates/zksync/core/src/vm/tracers/error.rs @@ -1,12 +1,12 @@ -use multivm::{ - interface::dyn_tracers::vm_1_5_0::DynTracer, +use zksync_multivm::{ + tracers::dynamic::vm_1_5_0::DynTracer, vm_latest::{HistoryMode, SimpleMemory, VmTracer}, zk_evm_latest::{ tracing::{AfterDecodingData, VmLocalStateData}, vm_state::ErrorFlags, }, }; -use zksync_state::{ReadStorage, WriteStorage}; +use zksync_state::interface::{ReadStorage, WriteStorage}; /// A tracer to allow logging low-level vm errors. #[derive(Debug, Default)]