From b4e5890cfb4e6164ca99d1c47948e7cad8575167 Mon Sep 17 00:00:00 2001 From: Jesse Schulman Date: Mon, 30 Dec 2024 16:07:02 -0800 Subject: [PATCH] Building using the latest telos-reth v1.1 rebase changes --- Cargo.lock | 1505 +++++++++++----------- Cargo.toml | 21 +- client/Cargo.toml | 11 +- client/src/client.rs | 19 +- client/src/config.rs | 2 +- client/src/main.rs | 3 +- client/src/main_utils.rs | 2 +- translator/Cargo.toml | 12 +- translator/src/block.rs | 22 +- translator/src/injection.rs | 2 +- translator/src/rlp/telos_rlp_decode.rs | 46 +- translator/src/tasks/final_processor.rs | 4 +- translator/src/transaction.rs | 44 +- translator/src/types/env.rs | 4 +- translator/src/types/evm_types.rs | 4 +- translator/src/types/translator_types.rs | 2 +- 16 files changed, 850 insertions(+), 853 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 08f10d9..1284909 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,6 +1,6 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 [[package]] name = "addr2line" @@ -17,18 +17,6 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" -[[package]] -name = "ahash" -version = "0.8.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" -dependencies = [ - "cfg-if", - "once_cell", - "version_check", - "zerocopy", -] - [[package]] name = "aho-corasick" version = "1.1.3" @@ -38,33 +26,11 @@ dependencies = [ "memchr", ] -[[package]] -name = "allocator-api2" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" - -[[package]] -name = "alloy" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8367891bf380210abb0d6aa30c5f85a9080cb4a066c4d5c5acadad630823751b" -dependencies = [ - "alloy-consensus", - "alloy-core", - "alloy-eips", - "alloy-genesis", - "alloy-provider", - "alloy-rpc-client", - "alloy-serde", - "alloy-transport-http", -] - [[package]] name = "alloy-chains" -version = "0.1.38" +version = "0.1.51" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "156bfc5dcd52ef9a5f33381701fa03310317e14c65093a9430d3e3557b08dcd3" +checksum = "d4e0f0136c085132939da6b753452ebed4efaa73fe523bb855b10c199c2ebfaf" dependencies = [ "alloy-primitives", "num_enum", @@ -74,46 +40,33 @@ dependencies = [ [[package]] name = "alloy-consensus" -version = "0.3.6" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "629b62e38d471cc15fea534eb7283d2f8a4e8bdb1811bcc5d66dda6cfce6fae1" +checksum = "a101d4d016f47f13890a74290fdd17b05dd175191d9337bc600791fb96e4dea8" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-rlp", "alloy-serde", + "alloy-trie", + "auto_impl", "c-kzg", + "derive_more", "serde", ] [[package]] -name = "alloy-core" -version = "0.8.8" +name = "alloy-consensus-any" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a54c7158ea4a394bef220d82d8fdd412fb9b1ca2d6024db539070b7bc01b6401" +checksum = "fa60357dda9a3d0f738f18844bd6d0f4a5924cc5cf00bfad2ff1369897966123" dependencies = [ - "alloy-dyn-abi", - "alloy-json-abi", + "alloy-consensus", + "alloy-eips", "alloy-primitives", "alloy-rlp", - "alloy-sol-types", -] - -[[package]] -name = "alloy-dyn-abi" -version = "0.8.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6228abfc751a29cde117b0879b805a3e0b3b641358f063272c83ca459a56886" -dependencies = [ - "alloy-json-abi", - "alloy-primitives", - "alloy-sol-type-parser", - "alloy-sol-types", - "const-hex", - "itoa", + "alloy-serde", "serde", - "serde_json", - "winnow", ] [[package]] @@ -129,21 +82,22 @@ dependencies = [ [[package]] name = "alloy-eip7702" -version = "0.1.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea59dc42102bc9a1905dc57901edc6dd48b9f38115df86c7d252acba70d71d04" +checksum = "4c986539255fb839d1533c128e190e557e52ff652c9ef62939e233a81dd93f7e" dependencies = [ "alloy-primitives", "alloy-rlp", + "derive_more", "k256", "serde", ] [[package]] name = "alloy-eips" -version = "0.3.6" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f923dd5fca5f67a43d81ed3ebad0880bd41f6dd0ada930030353ac356c54cd0f" +checksum = "8b6755b093afef5925f25079dd5a7c8d096398b804ba60cb5275397b06b31689" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -159,52 +113,43 @@ dependencies = [ [[package]] name = "alloy-genesis" -version = "0.3.6" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a7a18afb0b318616b6b2b0e2e7ac5529d32a966c673b48091c9919e284e6aca" +checksum = "aeec8e6eab6e52b7c9f918748c9b811e87dbef7312a2e3a2ca1729a92966a6af" dependencies = [ "alloy-primitives", "alloy-serde", + "alloy-trie", "serde", ] -[[package]] -name = "alloy-json-abi" -version = "0.8.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d46eb5871592c216d39192499c95a99f7175cb94104f88c307e6dc960676d9f1" -dependencies = [ - "alloy-primitives", - "alloy-sol-type-parser", - "serde", - "serde_json", -] - [[package]] name = "alloy-json-rpc" -version = "0.3.6" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3c717b5298fad078cd3a418335b266eba91b511383ca9bd497f742d5975d5ab" +checksum = "4fa077efe0b834bcd89ff4ba547f48fb081e4fdc3673dd7da1b295a2cf2bb7b7" dependencies = [ "alloy-primitives", "alloy-sol-types", "serde", "serde_json", - "thiserror", + "thiserror 2.0.9", "tracing", ] [[package]] name = "alloy-network" -version = "0.3.6" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb3705ce7d8602132bcf5ac7a1dd293a42adc2f183abf5907c30ac535ceca049" +checksum = "209a1882a08e21aca4aac6e2a674dc6fcf614058ef8cb02947d63782b1899552" dependencies = [ "alloy-consensus", + "alloy-consensus-any", "alloy-eips", "alloy-json-rpc", "alloy-network-primitives", "alloy-primitives", + "alloy-rpc-types-any", "alloy-rpc-types-eth", "alloy-serde", "alloy-signer", @@ -212,15 +157,18 @@ dependencies = [ "async-trait", "auto_impl", "futures-utils-wasm", - "thiserror", + "serde", + "serde_json", + "thiserror 2.0.9", ] [[package]] name = "alloy-network-primitives" -version = "0.3.6" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94ad40869867ed2d9cd3842b1e800889e5b49e6b92da346e93862b4a741bedf3" +checksum = "c20219d1ad261da7a6331c16367214ee7ded41d001fabbbd656fbf71898b2773" dependencies = [ + "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-serde", @@ -229,9 +177,9 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "0.8.8" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38f35429a652765189c1c5092870d8360ee7b7769b09b06d89ebaefd34676446" +checksum = "6259a506ab13e1d658796c31e6e39d2e2ee89243bcc505ddc613b35732e0a430" dependencies = [ "alloy-rlp", "bytes", @@ -240,61 +188,27 @@ dependencies = [ "derive_more", "foldhash", "getrandom", - "hashbrown 0.15.0", + "hashbrown 0.15.2", "hex-literal", - "indexmap 2.6.0", + "indexmap 2.7.0", "itoa", "k256", "keccak-asm", "paste", "proptest", "rand", - "ruint 1.12.3", - "rustc-hash 2.0.0", + "ruint", + "rustc-hash 2.1.0", "serde", "sha3", "tiny-keccak", ] -[[package]] -name = "alloy-provider" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "927f708dd457ed63420400ee5f06945df9632d5d101851952056840426a10dc5" -dependencies = [ - "alloy-chains", - "alloy-consensus", - "alloy-eips", - "alloy-json-rpc", - "alloy-network", - "alloy-network-primitives", - "alloy-primitives", - "alloy-rpc-client", - "alloy-rpc-types-eth", - "alloy-transport", - "alloy-transport-http", - "async-stream", - "async-trait", - "auto_impl", - "dashmap 6.1.0", - "futures", - "futures-utils-wasm", - "lru", - "pin-project", - "reqwest 0.12.8", - "serde", - "serde_json", - "thiserror", - "tokio", - "tracing", - "url", -] - [[package]] name = "alloy-rlp" -version = "0.3.8" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26154390b1d205a4a7ac7352aa2eb4f81f391399d4e2f546fb81a2f8bb383f62" +checksum = "f542548a609dca89fcd72b3b9f355928cf844d4363c5eed9c5273a3dd225e097" dependencies = [ "alloy-rlp-derive", "arrayvec", @@ -303,53 +217,43 @@ dependencies = [ [[package]] name = "alloy-rlp-derive" -version = "0.3.8" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d0f2d905ebd295e7effec65e5f6868d153936130ae718352771de3e7d03c75c" +checksum = "5a833d97bf8a5f0f878daf2c8451fff7de7f9de38baa5a45d936ec718d81255a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] -name = "alloy-rpc-client" -version = "0.3.6" +name = "alloy-rpc-types" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d82952dca71173813d4e5733e2c986d8b04aea9e0f3b0a576664c232ad050a5" +checksum = "5ab686b0fa475d2a4f5916c5f07797734a691ec58e44f0f55d4746ea39cbcefb" dependencies = [ - "alloy-json-rpc", - "alloy-transport", - "alloy-transport-http", - "futures", - "pin-project", - "reqwest 0.12.8", + "alloy-primitives", + "alloy-rpc-types-eth", + "alloy-serde", "serde", - "serde_json", - "tokio", - "tokio-stream", - "tower", - "tracing", - "url", ] [[package]] -name = "alloy-rpc-types" -version = "0.3.6" +name = "alloy-rpc-types-any" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64333d639f2a0cf73491813c629a405744e16343a4bc5640931be707c345ecc5" +checksum = "200661999b6e235d9840be5d60a6e8ae2f0af9eb2a256dd378786744660e36ec" dependencies = [ - "alloy-rpc-types-engine", + "alloy-consensus-any", "alloy-rpc-types-eth", "alloy-serde", - "serde", ] [[package]] name = "alloy-rpc-types-engine" -version = "0.3.6" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1464c4dd646e1bdfde86ae65ce5ba168dbb29180b478011fe87117ae46b1629b" +checksum = "5d297268357e3eae834ddd6888b15f764cbc0f4b3be9265f5f6ec239013f3d68" dependencies = [ "alloy-consensus", "alloy-eips", @@ -357,27 +261,25 @@ dependencies = [ "alloy-rlp", "alloy-serde", "derive_more", - "jsonwebtoken", - "rand", "serde", + "strum", ] [[package]] name = "alloy-rpc-types-eth" -version = "0.3.6" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83aa984386deda02482660aa31cb8ca1e63d533f1c31a52d7d181ac5ec68e9b8" +checksum = "a0600b8b5e2dc0cab12cbf91b5a885c35871789fb7b3a57b434bd4fced5b7a8b" dependencies = [ "alloy-consensus", + "alloy-consensus-any", "alloy-eips", "alloy-network-primitives", "alloy-primitives", "alloy-rlp", "alloy-serde", "alloy-sol-types", - "cfg-if", "derive_more", - "hashbrown 0.14.5", "itertools 0.13.0", "serde", "serde_json", @@ -385,9 +287,9 @@ dependencies = [ [[package]] name = "alloy-serde" -version = "0.3.6" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "731f75ec5d383107fd745d781619bd9cedf145836c51ecb991623d41278e71fa" +checksum = "9afa753a97002a33b2ccb707d9f15f31c81b8c1b786c95b73cc62bb1d1fd0c3f" dependencies = [ "alloy-primitives", "serde", @@ -396,132 +298,86 @@ dependencies = [ [[package]] name = "alloy-signer" -version = "0.3.6" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "307324cca94354cd654d6713629f0383ec037e1ff9e3e3d547212471209860c0" +checksum = "9b2cbff01a673936c2efd7e00d4c0e9a4dbbd6d600e2ce298078d33efbb19cd7" dependencies = [ "alloy-primitives", "async-trait", "auto_impl", "elliptic-curve", "k256", - "thiserror", + "thiserror 2.0.9", ] [[package]] name = "alloy-sol-macro" -version = "0.8.8" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b2395336745358cc47207442127c47c63801a7065ecc0aa928da844f8bb5576" +checksum = "d9d64f851d95619233f74b310f12bcf16e0cbc27ee3762b6115c14a84809280a" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] name = "alloy-sol-macro-expander" -version = "0.8.8" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed5047c9a241df94327879c2b0729155b58b941eae7805a7ada2e19436e6b39" +checksum = "6bf7ed1574b699f48bf17caab4e6e54c6d12bc3c006ab33d58b1e227c1c3559f" dependencies = [ "alloy-sol-macro-input", "const-hex", "heck", - "indexmap 2.6.0", + "indexmap 2.7.0", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "0.8.8" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dee02a81f529c415082235129f0df8b8e60aa1601b9c9298ffe54d75f57210b" +checksum = "8c02997ccef5f34f9c099277d4145f183b422938ed5322dc57a089fe9b9ad9ee" dependencies = [ "const-hex", "dunce", "heck", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", "syn-solidity", ] -[[package]] -name = "alloy-sol-type-parser" -version = "0.8.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f631f0bd9a9d79619b27c91b6b1ab2c4ef4e606a65192369a1ee05d40dcf81cc" -dependencies = [ - "serde", - "winnow", -] - [[package]] name = "alloy-sol-types" -version = "0.8.8" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2841af22d99e2c0f82a78fe107b6481be3dd20b89bfb067290092794734343a" +checksum = "1174cafd6c6d810711b4e00383037bdb458efc4fe3dbafafa16567e0320c54d8" dependencies = [ - "alloy-json-abi", "alloy-primitives", "alloy-sol-macro", "const-hex", - "serde", -] - -[[package]] -name = "alloy-transport" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33616b2edf7454302a1d48084db185e52c309f73f6c10be99b0fe39354b3f1e9" -dependencies = [ - "alloy-json-rpc", - "base64 0.22.1", - "futures-util", - "futures-utils-wasm", - "serde", - "serde_json", - "thiserror", - "tokio", - "tower", - "tracing", - "url", -] - -[[package]] -name = "alloy-transport-http" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a944f5310c690b62bbb3e7e5ce34527cbd36b2d18532a797af123271ce595a49" -dependencies = [ - "alloy-json-rpc", - "alloy-transport", - "reqwest 0.12.8", - "serde_json", - "tower", - "tracing", - "url", ] [[package]] name = "alloy-trie" -version = "0.5.3" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a46c9c4fdccda7982e7928904bd85fe235a0404ee3d7e197fff13d61eac8b4f" +checksum = "3a5fd8fea044cc9a8c8a50bb6f28e31f0385d820f116c5b98f6f4e55d6e5590b" dependencies = [ "alloy-primitives", "alloy-rlp", + "arrayvec", "derive_more", - "hashbrown 0.14.5", "nybbles", "serde", "smallvec", @@ -545,9 +401,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.15" +version = "0.6.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526" +checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b" dependencies = [ "anstyle", "anstyle-parse", @@ -560,42 +416,42 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.8" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1" +checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" [[package]] name = "anstyle-parse" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb" +checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.1.1" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a" +checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] name = "anstyle-wincon" -version = "3.0.4" +version = "3.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8" +checksum = "2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125" dependencies = [ "anstyle", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] name = "antelope-client" version = "0.3.0" -source = "git+https://github.com/telosnetwork/antelope-rs.git?branch=master#fea2203b2edb5cfcedd5365031e5286b47dc5c66" +source = "git+https://github.com/telosnetwork/antelope-rs.git?branch=master#d701cd9ca2e87e8e0fd99746f9c672cb3536e5ec" dependencies = [ "antelope-client-macros", "async-trait", @@ -620,7 +476,7 @@ dependencies = [ "serde_json", "sha2", "signature", - "thiserror", + "thiserror 1.0.69", "tokio", "tracing", ] @@ -764,27 +620,8 @@ name = "arrayvec" version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" - -[[package]] -name = "async-stream" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b5a71a6f37880a80d1d7f19efd781e4b5de42c88f0722cc13bcb6cc2cfe8476" dependencies = [ - "async-stream-impl", - "futures-core", - "pin-project-lite", -] - -[[package]] -name = "async-stream-impl" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.79", + "serde", ] [[package]] @@ -795,7 +632,7 @@ checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -822,7 +659,7 @@ checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -833,18 +670,18 @@ checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "axum" -version = "0.7.7" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "504e3947307ac8326a5437504c517c4b56716c9d98fac0028c2acc7ca47d70ae" +checksum = "edca88bc138befd0323b20752846e6587272d3b03b0343c8ea28a6f819e6e71f" dependencies = [ "async-trait", "axum-core", "bytes", "futures-util", - "http 1.1.0", + "http 1.2.0", "http-body 1.0.1", "http-body-util", - "hyper 1.4.1", + "hyper 1.5.2", "hyper-util", "itoa", "matchit", @@ -857,7 +694,7 @@ dependencies = [ "serde_json", "serde_path_to_error", "serde_urlencoded", - "sync_wrapper 1.0.1", + "sync_wrapper 1.0.2", "tokio", "tower", "tower-layer", @@ -874,13 +711,13 @@ dependencies = [ "async-trait", "bytes", "futures-util", - "http 1.1.0", + "http 1.2.0", "http-body 1.0.1", "http-body-util", "mime", "pin-project-lite", "rustversion", - "sync_wrapper 1.0.1", + "sync_wrapper 1.0.2", "tower-layer", "tower-service", "tracing", @@ -942,7 +779,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -1022,9 +859,9 @@ dependencies = [ "futures-util", "hex", "home", - "http 1.1.0", + "http 1.2.0", "http-body-util", - "hyper 1.4.1", + "hyper 1.5.2", "hyper-named-pipe", "hyper-rustls", "hyper-util", @@ -1040,7 +877,7 @@ dependencies = [ "serde_json", "serde_repr", "serde_urlencoded", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-util", "tower-service", @@ -1080,12 +917,6 @@ version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" -[[package]] -name = "bytemuck" -version = "1.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8334215b81e418a0a7bdb8ef0849474f40bb10c8b71f1c4ed315cff49f32494d" - [[package]] name = "byteorder" version = "1.5.0" @@ -1094,9 +925,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.7.2" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "428d9aa8fbc0670b7b8d6030a7fadd0f86151cae55e4dbbece15f3780a3dfaf3" +checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" dependencies = [ "serde", ] @@ -1129,9 +960,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.1.30" +version = "1.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b16803a61b81d9eabb7eae2588776c4c1e584b738ede45fdbb4c972cec1e9945" +checksum = "8d6dbb628b8f8555f86d0323c2eb39e3ec81901f4b83e091db8a6a76d316a333" dependencies = [ "jobserver", "libc", @@ -1155,9 +986,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.38" +version = "0.4.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825" dependencies = [ "android-tzdata", "iana-time-zone", @@ -1181,9 +1012,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.20" +version = "4.5.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97f376d85a664d5837dbae44bf546e6477a679ff6610010f17276f686d867e8" +checksum = "3135e7ec2ef7b10c6ed8950f0f792ed96ee093fa088608f1c76e569722700c84" dependencies = [ "clap_builder", "clap_derive", @@ -1191,9 +1022,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.20" +version = "4.5.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19bc80abd44e4bed93ca373a0704ccbd1b710dc5749406201bb018272808dc54" +checksum = "30582fc632330df2bd26877bde0c1f4470d57c582bbc070376afcd04d8cb4838" dependencies = [ "anstream", "anstyle", @@ -1210,26 +1041,26 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] name = "clap_lex" -version = "0.7.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97" +checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" [[package]] name = "colorchoice" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0" +checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" [[package]] name = "const-hex" -version = "1.13.1" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0121754e84117e65f9d90648ee6aa4882a6e63110307ab73967a4c5e7e69e586" +checksum = "4b0485bab839b018a8f1723fc5391819fea5f8f0f32288ef8a735fd096b6160c" dependencies = [ "cfg-if", "cpufeatures", @@ -1271,9 +1102,9 @@ checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "cpufeatures" -version = "0.2.14" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0" +checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3" dependencies = [ "libc", ] @@ -1302,20 +1133,26 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "critical-section" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b" + [[package]] name = "crossbeam-channel" -version = "0.5.13" +version = "0.5.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" +checksum = "06ba6d68e24814cb8de6bb986db8222d3a027d15872cabc0d18817bc3c0e4471" dependencies = [ "crossbeam-utils", ] [[package]] name = "crossbeam-deque" -version = "0.8.5" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" +checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" dependencies = [ "crossbeam-epoch", "crossbeam-utils", @@ -1332,9 +1169,9 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.20" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" +checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" [[package]] name = "crunchy" @@ -1364,27 +1201,6 @@ dependencies = [ "typenum", ] -[[package]] -name = "csv" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe" -dependencies = [ - "csv-core", - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "csv-core" -version = "0.1.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70" -dependencies = [ - "memchr", -] - [[package]] name = "darling" version = "0.20.10" @@ -1406,7 +1222,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -1417,34 +1233,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.79", -] - -[[package]] -name = "dashmap" -version = "5.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" -dependencies = [ - "cfg-if", - "hashbrown 0.14.5", - "lock_api", - "once_cell", - "parking_lot_core", -] - -[[package]] -name = "dashmap" -version = "6.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf" -dependencies = [ - "cfg-if", - "crossbeam-utils", - "hashbrown 0.14.5", - "lock_api", - "once_cell", - "parking_lot_core", + "syn 2.0.93", ] [[package]] @@ -1503,7 +1292,7 @@ dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", "unicode-xid", ] @@ -1549,6 +1338,17 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "displaydoc" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.93", +] + [[package]] name = "docker_credential" version = "1.3.1" @@ -1615,9 +1415,9 @@ dependencies = [ [[package]] name = "encoding_rs" -version = "0.8.34" +version = "0.8.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" +checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" dependencies = [ "cfg-if", ] @@ -1630,7 +1430,7 @@ checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -1641,12 +1441,12 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.9" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" dependencies = [ "libc", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -1661,9 +1461,9 @@ dependencies = [ [[package]] name = "fastrand" -version = "2.1.1" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" +checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" [[package]] name = "fastrlp" @@ -1676,6 +1476,17 @@ dependencies = [ "bytes", ] +[[package]] +name = "fastrlp" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce8dba4714ef14b8274c371879b175aa55b16b30f269663f19d576f380018dc4" +dependencies = [ + "arrayvec", + "auto_impl", + "bytes", +] + [[package]] name = "ff" version = "0.13.0" @@ -1700,9 +1511,9 @@ dependencies = [ [[package]] name = "flate2" -version = "1.0.34" +version = "1.0.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0" +checksum = "c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c" dependencies = [ "crc32fast", "miniz_oxide", @@ -1716,9 +1527,9 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "foldhash" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f81ec6369c545a7d40e4589b5597581fa1c441fe1cce96dd1de43159910a36a2" +checksum = "a0d2fde1f7b3d48b8395d5f2de76c18a528bd6a9cdde438df747bfcba3e05d6f" [[package]] name = "foreign-types" @@ -1806,7 +1617,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -1877,9 +1688,9 @@ checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" [[package]] name = "glob" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" +checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" [[package]] name = "group" @@ -1904,7 +1715,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.6.0", + "indexmap 2.7.0", "slab", "tokio", "tokio-util", @@ -1913,17 +1724,17 @@ dependencies = [ [[package]] name = "h2" -version = "0.4.6" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e8ac6999421f49a846c2d4411f337e53497d8ec55d67753beffa43c5d9205" +checksum = "ccae279728d634d083c00f6099cb58f01cc99c145b84b8be2f6c74618d79922e" dependencies = [ "atomic-waker", "bytes", "fnv", "futures-core", "futures-sink", - "http 1.1.0", - "indexmap 2.6.0", + "http 1.2.0", + "indexmap 2.7.0", "slab", "tokio", "tokio-util", @@ -1938,23 +1749,10 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" [[package]] name = "hashbrown" -version = "0.14.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" -dependencies = [ - "ahash", - "allocator-api2", - "serde", -] - -[[package]] -name = "hashbrown" -version = "0.15.0" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" dependencies = [ - "allocator-api2", - "equivalent", "foldhash", "serde", ] @@ -2006,11 +1804,11 @@ dependencies = [ [[package]] name = "home" -version = "0.5.9" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" +checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -2026,9 +1824,9 @@ dependencies = [ [[package]] name = "http" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" +checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea" dependencies = [ "bytes", "fnv", @@ -2053,7 +1851,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", - "http 1.1.0", + "http 1.2.0", ] [[package]] @@ -2064,7 +1862,7 @@ checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" dependencies = [ "bytes", "futures-util", - "http 1.1.0", + "http 1.2.0", "http-body 1.0.1", "pin-project-lite", ] @@ -2083,9 +1881,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" [[package]] name = "hyper" -version = "0.14.30" +version = "0.14.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a152ddd61dfaec7273fe8419ab357f33aee0d914c5f4efbf0d96fa749eea5ec9" +checksum = "41dfc780fdec9373c01bae43289ea34c972e40ee3c9f6b3c8801a35f35586ce7" dependencies = [ "bytes", "futures-channel", @@ -2107,15 +1905,15 @@ dependencies = [ [[package]] name = "hyper" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50dfd22e0e76d0f662d429a5f80fcaf3855009297eab6a0a9f8543834744ba05" +checksum = "256fb8d4bd6413123cc9d91832d78325c48ff41677595be797d90f42969beae0" dependencies = [ "bytes", "futures-channel", "futures-util", - "h2 0.4.6", - "http 1.1.0", + "h2 0.4.7", + "http 1.2.0", "http-body 1.0.1", "httparse", "httpdate", @@ -2133,7 +1931,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "73b7d8abf35697b81a825e386fc151e0d503e8cb5fcb93cc8669c376dfd6f278" dependencies = [ "hex", - "hyper 1.4.1", + "hyper 1.5.2", "hyper-util", "pin-project-lite", "tokio", @@ -2143,13 +1941,13 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.27.3" +version = "0.27.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" +checksum = "2d191583f3da1305256f22463b9bb0471acad48a4e534a5218b9963e9c1f59b2" dependencies = [ "futures-util", - "http 1.1.0", - "hyper 1.4.1", + "http 1.2.0", + "hyper 1.5.2", "hyper-util", "rustls", "rustls-pki-types", @@ -2165,7 +1963,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" dependencies = [ "bytes", - "hyper 0.14.30", + "hyper 0.14.32", "native-tls", "tokio", "tokio-native-tls", @@ -2179,7 +1977,7 @@ checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" dependencies = [ "bytes", "http-body-util", - "hyper 1.4.1", + "hyper 1.5.2", "hyper-util", "native-tls", "tokio", @@ -2189,16 +1987,16 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41296eb09f183ac68eec06e03cdbea2e759633d4067b2f6552fc2e009bcad08b" +checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4" dependencies = [ "bytes", "futures-channel", "futures-util", - "http 1.1.0", + "http 1.2.0", "http-body 1.0.1", - "hyper 1.4.1", + "hyper 1.5.2", "pin-project-lite", "socket2", "tokio", @@ -2214,7 +2012,7 @@ checksum = "986c5ce3b994526b3cd75578e62554abd09f0899d6206de48b3e96ab34ccc8c7" dependencies = [ "hex", "http-body-util", - "hyper 1.4.1", + "hyper 1.5.2", "hyper-util", "pin-project-lite", "tokio", @@ -2222,26 +2020,144 @@ dependencies = [ ] [[package]] -name = "iana-time-zone" -version = "0.1.61" +name = "iana-time-zone" +version = "0.1.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "icu_collections" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" +dependencies = [ + "displaydoc", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_locid" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" +dependencies = [ + "displaydoc", + "litemap", + "tinystr", + "writeable", + "zerovec", +] + +[[package]] +name = "icu_locid_transform" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_locid_transform_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_locid_transform_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" + +[[package]] +name = "icu_normalizer" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_normalizer_data", + "icu_properties", + "icu_provider", + "smallvec", + "utf16_iter", + "utf8_iter", + "write16", + "zerovec", +] + +[[package]] +name = "icu_normalizer_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" + +[[package]] +name = "icu_properties" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_locid_transform", + "icu_properties_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_properties_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" + +[[package]] +name = "icu_provider" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" +checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" dependencies = [ - "android_system_properties", - "core-foundation-sys", - "iana-time-zone-haiku", - "js-sys", - "wasm-bindgen", - "windows-core", + "displaydoc", + "icu_locid", + "icu_provider_macros", + "stable_deref_trait", + "tinystr", + "writeable", + "yoke", + "zerofrom", + "zerovec", ] [[package]] -name = "iana-time-zone-haiku" -version = "0.1.2" +name = "icu_provider_macros" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ - "cc", + "proc-macro2", + "quote", + "syn 2.0.93", ] [[package]] @@ -2252,12 +2168,23 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "idna" -version = "0.5.0" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" +dependencies = [ + "idna_adapter", + "smallvec", + "utf8_iter", +] + +[[package]] +name = "idna_adapter" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" dependencies = [ - "unicode-bidi", - "unicode-normalization", + "icu_normalizer", + "icu_properties", ] [[package]] @@ -2271,13 +2198,13 @@ dependencies = [ [[package]] name = "impl-trait-for-tuples" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb" +checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.93", ] [[package]] @@ -2299,12 +2226,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" +checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" dependencies = [ "equivalent", - "hashbrown 0.15.0", + "hashbrown 0.15.2", "serde", ] @@ -2349,9 +2276,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.11" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" +checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" [[package]] name = "jobserver" @@ -2364,10 +2291,11 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.72" +version = "0.3.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" +checksum = "6717b6b5b077764fb5966237269cb3c64edddde4b14ce42647430a78ced9e7b7" dependencies = [ + "once_cell", "wasm-bindgen", ] @@ -2436,15 +2364,15 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.159" +version = "0.2.169" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5" +checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" [[package]] name = "libloading" -version = "0.8.5" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" +checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" dependencies = [ "cfg-if", "windows-targets 0.52.6", @@ -2452,9 +2380,9 @@ dependencies = [ [[package]] name = "libm" -version = "0.2.8" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" +checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" [[package]] name = "libredox" @@ -2499,6 +2427,12 @@ version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" +[[package]] +name = "litemap" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104" + [[package]] name = "lock_api" version = "0.4.12" @@ -2515,15 +2449,6 @@ version = "0.4.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" -[[package]] -name = "lru" -version = "0.12.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" -dependencies = [ - "hashbrown 0.15.0", -] - [[package]] name = "lz4-sys" version = "1.11.1+lz4-1.10.0" @@ -2560,20 +2485,19 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.8.0" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" +checksum = "4ffbe83022cedc1d264172192511ae958937694cd57ce297164951b8b3568394" dependencies = [ "adler2", ] [[package]] name = "mio" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" +checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" dependencies = [ - "hermit-abi", "libc", "wasi", "windows-sys 0.52.0", @@ -2615,7 +2539,7 @@ dependencies = [ "rustc_version 0.4.1", "smallvec", "tagptr", - "thiserror", + "thiserror 1.0.69", "triomphe", "uuid", ] @@ -2764,7 +2688,7 @@ checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -2782,9 +2706,9 @@ dependencies = [ [[package]] name = "object" -version = "0.36.5" +version = "0.36.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aedf0a2d09c573ed1d8d85b30c119153926a2b36dce0ab28322c09a117a4683e" +checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" dependencies = [ "memchr", ] @@ -2794,12 +2718,16 @@ name = "once_cell" version = "1.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" +dependencies = [ + "critical-section", + "portable-atomic", +] [[package]] name = "op-alloy-consensus" -version = "0.2.12" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21aad1fbf80d2bcd7406880efc7ba109365f44bbb72896758ddcbfa46bf1592c" +checksum = "78f0daa0d0936d436a21b57571b1e27c5663aa2ab62f6edae5ba5be999f9f93e" dependencies = [ "alloy-consensus", "alloy-eips", @@ -2808,22 +2736,22 @@ dependencies = [ "alloy-serde", "derive_more", "serde", - "spin", + "thiserror 2.0.9", ] [[package]] name = "op-alloy-rpc-types" -version = "0.2.12" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e281fbfc2198b7c0c16457d6524f83d192662bc9f3df70f24c3038d4521616df" +checksum = "73741855ffaa2041b33cb616d7db7180c1149b648c68c23bee9e15501073fb32" dependencies = [ + "alloy-consensus", "alloy-eips", "alloy-network-primitives", "alloy-primitives", "alloy-rpc-types-eth", "alloy-serde", - "cfg-if", - "hashbrown 0.14.5", + "derive_more", "op-alloy-consensus", "serde", "serde_json", @@ -2831,9 +2759,9 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.66" +version = "0.10.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9529f4786b70a3e8c61e11179af17ab6188ad8d0ded78c5529441ed39d4bd9c1" +checksum = "6174bc48f102d208783c2c84bf931bb75927a617866870de8a4ea85597f871f5" dependencies = [ "bitflags 2.6.0", "cfg-if", @@ -2852,7 +2780,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -2863,9 +2791,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "openssl-sys" -version = "0.9.103" +version = "0.9.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6" +checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741" dependencies = [ "cc", "libc", @@ -2968,7 +2896,7 @@ dependencies = [ "regex", "regex-syntax", "structmeta", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -3004,40 +2932,40 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pest" -version = "2.7.14" +version = "2.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879952a81a83930934cbf1786752d6dedc3b1f29e8f8fb2ad1d0a36f377cf442" +checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc" dependencies = [ "memchr", - "thiserror", + "thiserror 2.0.9", "ucd-trie", ] [[package]] name = "pin-project" -version = "1.1.6" +version = "1.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf123a161dde1e524adf36f90bc5d8d3462824a9c43553ad07a8183161189ec" +checksum = "be57f64e946e500c8ee36ef6331845d40a93055567ec57e8fae13efd33759b95" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.6" +version = "1.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4502d8515ca9f32f1fb543d987f63d95a14934883db45bdb48060b6b69257f8" +checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] name = "pin-project-lite" -version = "0.2.14" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" +checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff" [[package]] name = "pin-utils" @@ -3061,6 +2989,12 @@ version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" +[[package]] +name = "portable-atomic" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" + [[package]] name = "powerfmt" version = "0.2.0" @@ -3124,14 +3058,14 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] name = "proc-macro2" -version = "1.0.87" +version = "1.0.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3e4daa0dcf6feba26f985457cdf104d4b4256fc5a09547140f3631bb076b19a" +checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" dependencies = [ "unicode-ident", ] @@ -3158,9 +3092,9 @@ dependencies = [ [[package]] name = "quanta" -version = "0.12.3" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e5167a477619228a0b284fac2674e3c388cba90631d7b7de620e6f1fcd08da5" +checksum = "773ce68d0bb9bc7ef20be3536ffe94e223e1f365bd374108b2659fac0c65cfe6" dependencies = [ "crossbeam-utils", "libc", @@ -3179,9 +3113,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quote" -version = "1.0.37" +version = "1.0.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" +checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" dependencies = [ "proc-macro2", ] @@ -3263,9 +3197,9 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.7" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f" +checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834" dependencies = [ "bitflags 2.6.0", ] @@ -3278,14 +3212,14 @@ checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ "getrandom", "libredox", - "thiserror", + "thiserror 1.0.69", ] [[package]] name = "regex" -version = "1.11.0" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38200e5ee88914975b69f657f0801b6f6dccafd44fd9326302a4aaeecfacb1d8" +checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" dependencies = [ "aho-corasick", "memchr", @@ -3295,9 +3229,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.8" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3" +checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" dependencies = [ "aho-corasick", "memchr", @@ -3324,7 +3258,7 @@ dependencies = [ "h2 0.3.26", "http 0.2.12", "http-body 0.4.6", - "hyper 0.14.30", + "hyper 0.14.32", "hyper-tls 0.5.0", "ipnet", "js-sys", @@ -3352,20 +3286,20 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.8" +version = "0.12.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f713147fbe92361e52392c73b8c9e48c04c6625bce969ef54dc901e58e042a7b" +checksum = "7fe060fe50f524be480214aba758c71f99f90ee8c83c5a36b5e9e1d568eb4eb3" dependencies = [ "base64 0.22.1", "bytes", "encoding_rs", "futures-core", "futures-util", - "h2 0.4.6", - "http 1.1.0", + "h2 0.4.7", + "http 1.2.0", "http-body 1.0.1", "http-body-util", - "hyper 1.4.1", + "hyper 1.5.2", "hyper-rustls", "hyper-tls 0.6.0", "hyper-util", @@ -3381,10 +3315,11 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", - "sync_wrapper 1.0.1", + "sync_wrapper 1.0.2", "system-configuration 0.6.1", "tokio", "tokio-native-tls", + "tower", "tower-service", "url", "wasm-bindgen", @@ -3395,8 +3330,8 @@ dependencies = [ [[package]] name = "reth-codecs" -version = "1.0.6" -source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main#63d23e00982a0ab7704a6dff97b3f5d355e11d56" +version = "1.1.4" +source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main-v1.1#1e853a435949464908385db00adbb85147b054d3" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3405,25 +3340,26 @@ dependencies = [ "alloy-trie", "bytes", "modular-bitfield", + "op-alloy-consensus", "reth-codecs-derive", "serde", ] [[package]] name = "reth-codecs-derive" -version = "1.0.6" -source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main#63d23e00982a0ab7704a6dff97b3f5d355e11d56" +version = "1.1.4" +source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main-v1.1#1e853a435949464908385db00adbb85147b054d3" dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] name = "reth-ethereum-forks" -version = "1.0.6" -source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main#63d23e00982a0ab7704a6dff97b3f5d355e11d56" +version = "1.1.4" +source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main-v1.1#1e853a435949464908385db00adbb85147b054d3" dependencies = [ "alloy-chains", "alloy-primitives", @@ -3432,33 +3368,34 @@ dependencies = [ "crc", "dyn-clone", "once_cell", - "rustc-hash 2.0.0", + "rustc-hash 2.1.0", "serde", - "thiserror-no-std", + "thiserror 2.0.9", ] [[package]] name = "reth-fs-util" -version = "1.0.6" -source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main#63d23e00982a0ab7704a6dff97b3f5d355e11d56" +version = "1.1.4" +source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main-v1.1#1e853a435949464908385db00adbb85147b054d3" dependencies = [ "serde", "serde_json", - "thiserror", + "thiserror 2.0.9", ] [[package]] name = "reth-primitives" -version = "1.0.6" -source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main#63d23e00982a0ab7704a6dff97b3f5d355e11d56" +version = "1.1.4" +source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main-v1.1#1e853a435949464908385db00adbb85147b054d3" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-genesis", + "alloy-network", "alloy-primitives", "alloy-rlp", "alloy-rpc-types", "alloy-serde", + "alloy-trie", "bytes", "c-kzg", "derive_more", @@ -3471,40 +3408,39 @@ dependencies = [ "reth-ethereum-forks", "reth-primitives-traits", "reth-static-file-types", - "reth-trie-common", + "reth-zstd-compressors", "revm-primitives", "secp256k1", "serde", - "tempfile", - "thiserror", - "zstd", + "serde_with", ] [[package]] name = "reth-primitives-traits" -version = "1.0.6" -source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main#63d23e00982a0ab7704a6dff97b3f5d355e11d56" +version = "1.1.4" +source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main-v1.1#1e853a435949464908385db00adbb85147b054d3" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-genesis", "alloy-primitives", "alloy-rlp", - "alloy-rpc-types-eth", + "auto_impl", "byteorder", "bytes", "derive_more", "modular-bitfield", + "op-alloy-consensus", "reth-codecs", "revm-primitives", - "roaring", "serde", + "serde_with", ] [[package]] name = "reth-static-file-types" -version = "1.0.6" -source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main#63d23e00982a0ab7704a6dff97b3f5d355e11d56" +version = "1.1.4" +source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main-v1.1#1e853a435949464908385db00adbb85147b054d3" dependencies = [ "alloy-primitives", "derive_more", @@ -3514,51 +3450,63 @@ dependencies = [ [[package]] name = "reth-storage-errors" -version = "1.0.6" -source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main#63d23e00982a0ab7704a6dff97b3f5d355e11d56" +version = "1.1.4" +source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main-v1.1#1e853a435949464908385db00adbb85147b054d3" dependencies = [ + "alloy-eips", + "alloy-primitives", "alloy-rlp", "derive_more", "reth-fs-util", - "reth-primitives", + "reth-primitives-traits", + "reth-static-file-types", ] [[package]] name = "reth-telos-rpc-engine-api" -version = "1.0.6" -source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main#63d23e00982a0ab7704a6dff97b3f5d355e11d56" +version = "1.1.4" +source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main-v1.1#1e853a435949464908385db00adbb85147b054d3" dependencies = [ + "alloy-consensus", + "alloy-primitives", "reth-primitives", "reth-storage-errors", "revm", + "revm-primitives", "serde", + "sha2", "tracing", ] [[package]] name = "reth-trie-common" -version = "1.0.6" -source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main#63d23e00982a0ab7704a6dff97b3f5d355e11d56" +version = "1.1.4" +source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main-v1.1#1e853a435949464908385db00adbb85147b054d3" dependencies = [ "alloy-consensus", "alloy-genesis", "alloy-primitives", "alloy-rlp", "alloy-trie", - "bytes", "derive_more", "itertools 0.13.0", "nybbles", - "reth-codecs", "reth-primitives-traits", "revm-primitives", - "serde", +] + +[[package]] +name = "reth-zstd-compressors" +version = "1.1.4" +source = "git+https://github.com/telosnetwork/telos-reth?branch=telos-main-v1.1#1e853a435949464908385db00adbb85147b054d3" +dependencies = [ + "zstd", ] [[package]] name = "revm" -version = "14.0.3" -source = "git+https://github.com/telosnetwork/telos-revm?branch=telos-main#af62c2673affaa39636744b2383c9e980aed754c" +version = "18.0.0" +source = "git+https://github.com/telosnetwork/telos-revm?branch=telos-main-v1.1#237d6322c6f5943af77fccff93fd0f85ecc204ed" dependencies = [ "auto_impl", "cfg-if", @@ -3571,8 +3519,8 @@ dependencies = [ [[package]] name = "revm-interpreter" -version = "10.0.3" -source = "git+https://github.com/telosnetwork/telos-revm?branch=telos-main#af62c2673affaa39636744b2383c9e980aed754c" +version = "14.0.0" +source = "git+https://github.com/telosnetwork/telos-revm?branch=telos-main-v1.1#237d6322c6f5943af77fccff93fd0f85ecc204ed" dependencies = [ "revm-primitives", "serde", @@ -3580,11 +3528,10 @@ dependencies = [ [[package]] name = "revm-precompile" -version = "11.0.3" -source = "git+https://github.com/telosnetwork/telos-revm?branch=telos-main#af62c2673affaa39636744b2383c9e980aed754c" +version = "15.0.0" +source = "git+https://github.com/telosnetwork/telos-revm?branch=telos-main-v1.1#237d6322c6f5943af77fccff93fd0f85ecc204ed" dependencies = [ "aurora-engine-modexp", - "blst", "c-kzg", "cfg-if", "k256", @@ -3598,8 +3545,8 @@ dependencies = [ [[package]] name = "revm-primitives" -version = "10.0.0" -source = "git+https://github.com/telosnetwork/telos-revm?branch=telos-main#af62c2673affaa39636744b2383c9e980aed754c" +version = "14.0.0" +source = "git+https://github.com/telosnetwork/telos-revm?branch=telos-main-v1.1#237d6322c6f5943af77fccff93fd0f85ecc204ed" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -3659,16 +3606,6 @@ dependencies = [ "rustc-hex", ] -[[package]] -name = "roaring" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f4b84ba6e838ceb47b41de5194a60244fac43d9fe03b71dbe8c5a201081d6d1" -dependencies = [ - "bytemuck", - "byteorder", -] - [[package]] name = "rocksdb" version = "0.22.0" @@ -3681,46 +3618,30 @@ dependencies = [ [[package]] name = "ruint" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0430214a5bb015461c0628e93d07738af2866e77a3f3db71e8264c999dda03fc" -dependencies = [ - "itertools 0.10.5", - "ruint-macro 0.2.1", - "rustc_version 0.4.1", - "thiserror", -] - -[[package]] -name = "ruint" -version = "1.12.3" +version = "1.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c3cc4c2511671f327125da14133d0c5c5d137f006a1017a16f557bc85b16286" +checksum = "f5ef8fb1dd8de3870cb8400d51b4c2023854bbafd5431a3ac7e7317243e22d2f" dependencies = [ "alloy-rlp", "ark-ff 0.3.0", "ark-ff 0.4.2", "bytes", - "fastrlp", + "fastrlp 0.3.1", + "fastrlp 0.4.0", "num-bigint", + "num-integer", "num-traits", "parity-scale-codec", "primitive-types", "proptest", "rand", "rlp", - "ruint-macro 1.2.1", + "ruint-macro", "serde", "valuable", "zeroize", ] -[[package]] -name = "ruint-macro" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0f4dd8af87bc3b385595ce5f61887b5b8efd4def9eb1679ce4300ec4d89c308" - [[package]] name = "ruint-macro" version = "1.2.1" @@ -3741,9 +3662,9 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" [[package]] name = "rustc-hash" -version = "2.0.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152" +checksum = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497" dependencies = [ "rand", ] @@ -3769,27 +3690,27 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ - "semver 1.0.23", + "semver 1.0.24", ] [[package]] name = "rustix" -version = "0.38.37" +version = "0.38.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811" +checksum = "f93dc38ecbab2eb790ff964bb77fa94faf256fd3e73285fd7ba0903b76bedb85" dependencies = [ "bitflags 2.6.0", "errno", "libc", "linux-raw-sys", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] name = "rustls" -version = "0.23.14" +version = "0.23.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "415d9944693cb90382053259f89fbb077ea730ad7273047ec63b19bc9b160ba8" +checksum = "5065c3f250cbd332cd894be57c40fa52387247659b14a2d6041d121547903b1b" dependencies = [ "once_cell", "ring", @@ -3832,9 +3753,9 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.10.0" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16f1201b3c9a7ee8039bcadc17b7e605e2945b27eee7631788c1bd2b0643674b" +checksum = "d2bf47e6ff922db3825eb750c4e2ff784c6ff8fb9e13046ef6a1d1c5401b0b37" [[package]] name = "rustls-webpki" @@ -3849,9 +3770,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248" +checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" [[package]] name = "rusty-fork" @@ -3873,9 +3794,9 @@ checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" [[package]] name = "schannel" -version = "0.1.26" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01227be5826fa0690321a2ba6c5cd57a19cf3f6a09e76973b58e61de6ab9d1c1" +checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d" dependencies = [ "windows-sys 0.59.0", ] @@ -3934,9 +3855,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.12.0" +version = "2.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea4a292869320c0272d7bc55a5a6aafaff59b4f63404a003887b679a2e05b4b6" +checksum = "1863fd3768cd83c56a7f60faa4dc0d403f1b6df0a38c3c25f44b7894e45370d5" dependencies = [ "core-foundation-sys", "libc", @@ -3953,24 +3874,24 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.23" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" +checksum = "3cb6eb87a131f756572d7fb904f6e7b68633f09cca868c5df1c4b8d1a694bbba" [[package]] name = "semver-parser" -version = "0.10.2" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7" +checksum = "9900206b54a3527fdc7b8a938bffd94a568bac4f4aa8113b209df75a09c0dec2" dependencies = [ "pest", ] [[package]] name = "serde" -version = "1.0.210" +version = "1.0.217" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" +checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" dependencies = [ "serde_derive", ] @@ -3986,22 +3907,22 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.210" +version = "1.0.217" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" +checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] name = "serde_json" -version = "1.0.128" +version = "1.0.134" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" +checksum = "d00f4175c42ee48b15416f6193a959ba3a0d67fc699a0db9ad12df9f83991c7d" dependencies = [ - "indexmap 2.6.0", + "indexmap 2.7.0", "itoa", "memchr", "ryu", @@ -4026,7 +3947,7 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -4052,15 +3973,15 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.11.0" +version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e28bdad6db2b8340e449f7108f020b3b092e8583a9e3fb82713e1d4e71fe817" +checksum = "d6b6f7f2fcb69f747921f79f3926bd1e203fce4fef62c268dd3abfb6d86029aa" dependencies = [ "base64 0.22.1", "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.6.0", + "indexmap 2.7.0", "serde", "serde_derive", "serde_json", @@ -4070,14 +3991,14 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.11.0" +version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d846214a9854ef724f3da161b426242d8de7c1fc7de2f89bb1efcb154dca79d" +checksum = "8d00caa5193a3c8362ac2b73be6b9e768aa5a4b2f721d8f4b339600c3cb51f8e" dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -4164,7 +4085,7 @@ checksum = "adc4e5204eb1910f40f9cfa375f6f05b68c3abac4b6fd879c8ff5e7ae8a0a085" dependencies = [ "num-bigint", "num-traits", - "thiserror", + "thiserror 1.0.69", "time", ] @@ -4188,9 +4109,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.5.7" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" +checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8" dependencies = [ "libc", "windows-sys 0.52.0", @@ -4201,9 +4122,6 @@ name = "spin" version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" -dependencies = [ - "lock_api", -] [[package]] name = "spki" @@ -4215,6 +4133,12 @@ dependencies = [ "der", ] +[[package]] +name = "stable_deref_trait" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" + [[package]] name = "static_assertions" version = "1.1.0" @@ -4236,7 +4160,7 @@ dependencies = [ "proc-macro2", "quote", "structmeta-derive", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -4247,7 +4171,7 @@ checksum = "152a0b65a590ff6c3da95cabe2353ee04e6167c896b28e3b14478c2636c922fc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -4269,7 +4193,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -4304,9 +4228,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.79" +version = "2.0.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590" +checksum = "9c786062daee0d6db1132800e623df74274a0a87322d8e183338e01b3d98d058" dependencies = [ "proc-macro2", "quote", @@ -4315,14 +4239,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.8.8" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebfc1bfd06acc78f16d8fd3ef846bc222ee7002468d10a7dce8d703d6eab89a3" +checksum = "219389c1ebe89f8333df8bdfb871f6631c552ff399c23cac02480b6088aad8f0" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -4333,13 +4257,24 @@ checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" [[package]] name = "sync_wrapper" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" +checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263" dependencies = [ "futures-core", ] +[[package]] +name = "synstructure" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.93", +] + [[package]] name = "system-configuration" version = "0.5.1" @@ -4398,31 +4333,22 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" name = "telos-consensus-client" version = "0.1.0" dependencies = [ - "alloy", - "alloy-consensus", - "alloy-rlp", + "alloy-primitives", "alloy-rpc-types", "alloy-rpc-types-engine", "antelope-client", "axum", - "base64 0.22.1", - "bytes", - "chrono", "clap", - "csv", "eyre", - "futures", "hex", "jsonwebtoken", - "rand", "reqwest 0.11.27", - "reth-primitives", "rocksdb", "serde", "serde_json", "telos-translator-rs", "testcontainers", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-retry", "toml", @@ -4435,35 +4361,32 @@ dependencies = [ name = "telos-translator-rs" version = "0.1.0" dependencies = [ - "alloy", "alloy-consensus", "alloy-eips", + "alloy-primitives", "alloy-rlp", "alloy-rpc-types-engine", + "alloy-trie", "antelope-client", "async-trait", "bytes", "chrono", "clap", - "dashmap 5.5.3", "eyre", "futures-util", "hex", - "k256", "lazy_static", "moka", "num-bigint", "num-traits", - "reqwest 0.12.8", + "reqwest 0.12.11", "reth-primitives", "reth-telos-rpc-engine-api", "reth-trie-common", - "rlp", - "ruint 0.3.0", "serde", "serde_json", "testcontainers", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-tungstenite", "toml", @@ -4473,9 +4396,9 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.13.0" +version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" +checksum = "28cce251fcbc87fac86a866eeb0d6c2d536fc16d06f184bb61aeae11aa4cee0c" dependencies = [ "cfg-if", "fastrand", @@ -4505,7 +4428,7 @@ dependencies = [ "serde", "serde_json", "serde_with", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-stream", "tokio-util", @@ -4514,42 +4437,42 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.64" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" +checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" dependencies = [ - "thiserror-impl", + "thiserror-impl 1.0.69", ] [[package]] -name = "thiserror-impl" -version = "1.0.64" +name = "thiserror" +version = "2.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" +checksum = "f072643fd0190df67a8bab670c20ef5d8737177d6ac6b2e9a236cb096206b2cc" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.79", + "thiserror-impl 2.0.9", ] [[package]] -name = "thiserror-impl-no-std" -version = "2.0.2" +name = "thiserror-impl" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58e6318948b519ba6dc2b442a6d0b904ebfb8d411a3ad3e07843615a72249758" +checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.93", ] [[package]] -name = "thiserror-no-std" -version = "2.0.2" +name = "thiserror-impl" +version = "2.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3ad459d94dd517257cc96add8a43190ee620011bb6e6cdc82dafd97dfafafea" +checksum = "7b50fa271071aae2e6ee85f842e2e28ba8cd2c5fb67f11fcb1fd70b276f9e7d4" dependencies = [ - "thiserror-impl-no-std", + "proc-macro2", + "quote", + "syn 2.0.93", ] [[package]] @@ -4573,9 +4496,9 @@ dependencies = [ [[package]] name = "time" -version = "0.3.36" +version = "0.3.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" +checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21" dependencies = [ "deranged", "itoa", @@ -4594,9 +4517,9 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" [[package]] name = "time-macros" -version = "0.2.18" +version = "0.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" +checksum = "2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de" dependencies = [ "num-conv", "time-core", @@ -4611,11 +4534,21 @@ dependencies = [ "crunchy", ] +[[package]] +name = "tinystr" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" +dependencies = [ + "displaydoc", + "zerovec", +] + [[package]] name = "tinyvec" -version = "1.8.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" +checksum = "022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8" dependencies = [ "tinyvec_macros", ] @@ -4628,9 +4561,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.40.0" +version = "1.42.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998" +checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551" dependencies = [ "backtrace", "bytes", @@ -4652,7 +4585,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] @@ -4678,25 +4611,23 @@ dependencies = [ [[package]] name = "tokio-rustls" -version = "0.26.0" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" +checksum = "5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37" dependencies = [ "rustls", - "rustls-pki-types", "tokio", ] [[package]] name = "tokio-stream" -version = "0.1.16" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f4e6ce100d0eb49a2734f8c0812bcd324cf357d21810932c5df6b96ef2b86f1" +checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047" dependencies = [ "futures-core", "pin-project-lite", "tokio", - "tokio-util", ] [[package]] @@ -4713,9 +4644,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.12" +version = "0.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a" +checksum = "d7fcaa8d55a2bdd6b83ace262b016eca0d79ee02818c5c1bcdf0305114081078" dependencies = [ "bytes", "futures-core", @@ -4751,7 +4682,7 @@ version = "0.22.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" dependencies = [ - "indexmap 2.6.0", + "indexmap 2.7.0", "serde", "serde_spanned", "toml_datetime", @@ -4760,14 +4691,14 @@ dependencies = [ [[package]] name = "tower" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2873938d487c3cfb9aed7546dc9f2711d867c9f90c46b889989a2cb84eba6b4f" +checksum = "d039ad9159c98b70ecfd540b2573b97f7f52c3e8d9f8ad57a24b916a536975f9" dependencies = [ "futures-core", "futures-util", "pin-project-lite", - "sync_wrapper 0.1.2", + "sync_wrapper 1.0.2", "tokio", "tower-layer", "tower-service", @@ -4788,9 +4719,9 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" -version = "0.1.40" +version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" dependencies = [ "log", "pin-project-lite", @@ -4800,20 +4731,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.27" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", ] [[package]] name = "tracing-core" -version = "0.1.32" +version = "0.1.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" dependencies = [ "once_cell", "valuable", @@ -4832,9 +4763,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.18" +version = "0.3.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008" dependencies = [ "nu-ansi-term", "sharded-slab", @@ -4865,12 +4796,12 @@ dependencies = [ "byteorder", "bytes", "data-encoding", - "http 1.1.0", + "http 1.2.0", "httparse", "log", "rand", "sha1", - "thiserror", + "thiserror 1.0.69", "utf-8", ] @@ -4904,26 +4835,11 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" -[[package]] -name = "unicode-bidi" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893" - [[package]] name = "unicode-ident" -version = "1.0.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" - -[[package]] -name = "unicode-normalization" -version = "0.1.24" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" -dependencies = [ - "tinyvec", -] +checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" [[package]] name = "unicode-segmentation" @@ -4945,9 +4861,9 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] name = "url" -version = "2.5.2" +version = "2.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" +checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60" dependencies = [ "form_urlencoded", "idna", @@ -4961,6 +4877,18 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" +[[package]] +name = "utf16_iter" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" + +[[package]] +name = "utf8_iter" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" + [[package]] name = "utf8parse" version = "0.2.2" @@ -4969,9 +4897,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314" +checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a" dependencies = [ "getrandom", ] @@ -5020,9 +4948,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.95" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" +checksum = "a474f6281d1d70c17ae7aa6a613c87fce69a127e2624002df63dcb39d6cf6396" dependencies = [ "cfg-if", "once_cell", @@ -5031,36 +4959,36 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.95" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" +checksum = "5f89bb38646b4f81674e8f5c3fb81b562be1fd936d84320f3264486418519c79" dependencies = [ "bumpalo", "log", - "once_cell", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.45" +version = "0.4.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b" +checksum = "38176d9b44ea84e9184eff0bc34cc167ed044f816accfe5922e54d84cf48eca2" dependencies = [ "cfg-if", "js-sys", + "once_cell", "wasm-bindgen", "web-sys", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.95" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" +checksum = "2cc6181fd9a7492eef6fef1f33961e3695e4579b9872a6f7c83aee556666d4fe" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -5068,28 +4996,28 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.95" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" +checksum = "30d7a95b763d3c45903ed6c81f156801839e5ee968bb07e534c44df0fcd330c2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.95" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" +checksum = "943aab3fdaaa029a6e0271b35ea10b72b943135afe9bffca82384098ad0e06a6" [[package]] name = "web-sys" -version = "0.3.72" +version = "0.3.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" +checksum = "04dd7223427d52553d3702c004d3b2fe07c148165faa56313cb00211e31c12bc" dependencies = [ "js-sys", "wasm-bindgen", @@ -5323,6 +5251,18 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "write16" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" + +[[package]] +name = "writeable" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" + [[package]] name = "wyz" version = "0.5.1" @@ -5332,6 +5272,30 @@ dependencies = [ "tap", ] +[[package]] +name = "yoke" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40" +dependencies = [ + "serde", + "stable_deref_trait", + "yoke-derive", + "zerofrom", +] + +[[package]] +name = "yoke-derive" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.93", + "synstructure", +] + [[package]] name = "zerocopy" version = "0.7.35" @@ -5350,7 +5314,28 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", +] + +[[package]] +name = "zerofrom" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e" +dependencies = [ + "zerofrom-derive", +] + +[[package]] +name = "zerofrom-derive" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.93", + "synstructure", ] [[package]] @@ -5370,14 +5355,36 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.93", +] + +[[package]] +name = "zerovec" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" +dependencies = [ + "yoke", + "zerofrom", + "zerovec-derive", +] + +[[package]] +name = "zerovec-derive" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.93", ] [[package]] name = "zstd" -version = "0.13.0" +version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bffb3309596d527cfcba7dfc6ed6052f1d39dfbd7c867aa2e865e4a449c10110" +checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" dependencies = [ "zstd-safe", ] diff --git a/Cargo.toml b/Cargo.toml index ded020c..bb884df 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,18 +11,21 @@ license = "MIT OR Apache-2.0" [workspace.dependencies] telos-translator-rs = { path = "./translator" } -reth-primitives = { git = "https://github.com/telosnetwork/telos-reth", branch = "telos-main" } -reth-trie-common = { git = "https://github.com/telosnetwork/telos-reth.git", branch = "telos-main" } -reth-telos-rpc-engine-api = { git = "https://github.com/telosnetwork/telos-reth.git", branch = "telos-main" } +reth-primitives = { git = "https://github.com/telosnetwork/telos-reth", branch = "telos-main-v1.1" } +reth-trie-common = { git = "https://github.com/telosnetwork/telos-reth.git", branch = "telos-main-v1.1" } +reth-telos-rpc-engine-api = { git = "https://github.com/telosnetwork/telos-reth.git", branch = "telos-main-v1.1" } #reth-trie-common = { path = "../telos-reth/crates/trie/common" } #reth-telos-rpc-engine-api = { path = "../telos-reth/crates/telos/rpc-engine-api" } #reth-primitives = { path = "../telos-reth/crates/primitives" } -alloy = "0.3.0" -alloy-rlp = "0.3.0" -alloy-rpc-types = "0.3.0" -alloy-rpc-types-engine = "0.3.0" -alloy-eips = "0.3.0" -alloy-consensus = "0.3.0" +alloy-primitives = { version = "0.8.11", default-features = false } +alloy-rlp = { version = "0.3.10", default-features = false } +alloy-rpc-types = { version = "0.7.3", features = [ + "eth", +], default-features = false } +alloy-rpc-types-engine = { version = "0.7.3", features = ["serde"], default-features = false } +alloy-eips = { version = "0.7.3", default-features = false } +alloy-consensus = { version = "0.7.3", default-features = false } +alloy-trie = { version = "0.7", default-features = false } antelope-client = { git = "https://github.com/telosnetwork/antelope-rs.git", branch = "master" } bytes = "1.7.1" clap = { version = "4.5.6", features = ["derive"] } diff --git a/client/Cargo.toml b/client/Cargo.toml index 7c9304a..620a9d6 100644 --- a/client/Cargo.toml +++ b/client/Cargo.toml @@ -5,14 +5,10 @@ edition = "2021" [dependencies] telos-translator-rs = { workspace = true } -reth-primitives = { workspace = true } -alloy = { workspace = true } -alloy-rlp = { workspace = true } +alloy-primitives = { workspace = true } alloy-rpc-types-engine = { workspace = true } alloy-rpc-types = { workspace = true } -alloy-consensus = { workspace = true } antelope-client = { workspace = true } -bytes = { workspace = true } clap = { workspace = true } serde = { workspace = true } eyre = { workspace = true } @@ -22,15 +18,10 @@ toml = { workspace = true } tracing = { workspace = true } tracing-subscriber = { workspace = true } hex = { workspace = true } -futures = "0.3.30" -csv = "1.3.0" rocksdb = "0.22.0" -chrono = "0.4.33" reqwest = { version = "0.11.23", features = ["json"] } -rand = "0.8.5" zeroize = "1.7.0" jsonwebtoken = "9.2.0" -base64 = "0.22.1" thiserror = "1.0.62" tokio-retry = "0.3.0" diff --git a/client/src/client.rs b/client/src/client.rs index 15e6d09..d3945e7 100644 --- a/client/src/client.rs +++ b/client/src/client.rs @@ -1,3 +1,4 @@ +use alloy_primitives::B256; use crate::client::Error::ForkChoiceUpdated; use crate::config::{AppConfig, CliArgs}; use crate::data::{self, Database, Lib}; @@ -6,8 +7,6 @@ use crate::json_rpc::JsonResponseBody; use alloy_rpc_types::Block; use alloy_rpc_types_engine::{ForkchoiceState, ForkchoiceUpdated}; use eyre::{Context, Result}; -use reth_primitives::revm_primitives::bitvec::macros::internal::funty::Fundamental; -use reth_primitives::B256; use serde_json::json; use telos_translator_rs::block::TelosEVMBlock; use tokio::sync::mpsc; @@ -106,7 +105,7 @@ impl ConsensusClient { fn latest_evm_block(&self) -> Option<(u32, String)> { let latest = self.latest_finalized_executor_block.as_ref()?; let (number, hash) = (latest.header.number, latest.header.hash); - Some((number.as_u32(), hash.to_string())) + Some((number as u32, hash.to_string())) } pub fn is_in_start_stop_range(&self, block: u32) -> bool { @@ -116,28 +115,28 @@ impl ConsensusClient { } } - pub fn is_in_check_range(&self, block: u64) -> bool { + pub fn is_in_check_range(&self, block: u32) -> bool { match ( &self.latest_finalized_executor_block, &self.latest_executor_block, ) { (None, None) => false, - (None, Some(latest)) => block < latest.header.number, + (None, Some(latest)) => block < latest.header.number as u32, (Some(_), None) => unreachable!(), (Some(valid), Some(latest)) => { - valid.header.number <= block && block <= latest.header.number + valid.header.number as u32 <= block && block <= latest.header.number as u32 } } } - pub fn latest_evm_number(&self) -> Option { + pub fn latest_evm_number(&self) -> Option { self.latest_finalized_executor_block .as_ref() - .map(|block| block.header.number.as_u32()) + .map(|block| block.header.number) } pub fn sync_range(&self) -> Option { - self.latest_evm_number()? + (self.latest_evm_number()? as u32) .checked_sub(self.config.evm_start_block) } @@ -199,7 +198,7 @@ impl ConsensusClient { let block_hash = block.block_hash; - if self.is_in_check_range(block_num.as_u64()) { + if self.is_in_check_range(block_num) { debug!("Checking if block {block_num} exists..."); let evm_block = self .execution_api diff --git a/client/src/config.rs b/client/src/config.rs index 42f34dc..396a6b9 100644 --- a/client/src/config.rs +++ b/client/src/config.rs @@ -65,7 +65,7 @@ pub struct AppConfig { pub latest_blocks_in_db_num: u32, /// Number of retry attempts - pub max_retry: Option, + pub max_retry: Option, /// Delay between retries pub retry_interval: Option, diff --git a/client/src/main.rs b/client/src/main.rs index 33be9e8..1dc887b 100644 --- a/client/src/main.rs +++ b/client/src/main.rs @@ -4,7 +4,6 @@ use std::fs; use clap::Parser; use eyre::{Context, Result}; -use reth_primitives::revm_primitives::bitvec::macros::internal::funty::Fundamental; use telos_consensus_client::{ config::{AppConfig, CliArgs}, main_utils::{parse_log_level, run_client}, @@ -26,7 +25,7 @@ async fn main() -> Result<()> { .init(); let retry_interval = config.retry_interval.unwrap_or(8000u64); - let max_retries = config.max_retry.unwrap_or(8u8).as_usize(); + let max_retries = config.max_retry.unwrap_or(8usize); let retry_strategy = FixedInterval::from_millis(retry_interval).take(max_retries); if let Err(error) = diff --git a/client/src/main_utils.rs b/client/src/main_utils.rs index a3feb96..91fb45f 100644 --- a/client/src/main_utils.rs +++ b/client/src/main_utils.rs @@ -102,7 +102,7 @@ pub async fn build_consensus_client( .as_ref() .map(|lib| lib.number + client.config.chain_id.block_delta()) .zip(client.latest_evm_number()) - .map(|(lib, latest)| cmp::min(lib, latest)); + .map(|(lib, latest)| cmp::min(lib, latest as u32)); let last_checked = match latest_number { Some(latest_number) => client.db.get_block_or_prev(latest_number)?, diff --git a/translator/Cargo.toml b/translator/Cargo.toml index cf399ef..04f3179 100644 --- a/translator/Cargo.toml +++ b/translator/Cargo.toml @@ -6,12 +6,13 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] +alloy-consensus.workspace = true +alloy-primitives.workspace = true +alloy-trie.workspace = true reth-primitives = { workspace = true } -alloy = { workspace = true } alloy-rlp = { workspace = true } alloy-rpc-types-engine = { workspace = true } alloy-eips = { workspace = true } -alloy-consensus = { workspace = true } antelope-client = { workspace = true } bytes = { workspace = true } clap = { workspace = true } @@ -26,18 +27,11 @@ hex = { workspace = true } reth-trie-common = { workspace = true } reth-telos-rpc-engine-api = { workspace = true } num-bigint = "0.4.5" -dashmap = "5.5.3" -k256 = { version = "0.13.3", features = ["ecdsa"] } moka = { version = "0.12.7", features = ["sync"] } tokio-tungstenite = "0.23.0" futures-util = "0.3.30" -ruint = "0.3.0" -rlp = "0.5.2" lazy_static = "1.5.0" - -#alloy = { version = "0.2.1", features = ["k256"] } - [dev-dependencies] testcontainers = { workspace = true } diff --git a/translator/src/block.rs b/translator/src/block.rs index 44a49b4..05bd002 100644 --- a/translator/src/block.rs +++ b/translator/src/block.rs @@ -9,7 +9,7 @@ use crate::types::ship_types::{ ActionTrace, ContractRow, GetBlocksResultV0, SignedBlock, TableDelta, TransactionTrace, }; use crate::types::translator_types::{ChainId, NameToAddressCache}; -use alloy::primitives::{Bloom, Bytes, FixedBytes, B256, U256}; +use alloy_primitives::{Bloom, Bytes, FixedBytes, B256, U256}; use alloy_consensus::constants::{EMPTY_OMMER_ROOT_HASH, EMPTY_ROOT_HASH}; use alloy_consensus::{Header, Transaction, TxEnvelope}; use alloy_eips::eip2718::Encodable2718; @@ -21,12 +21,13 @@ use antelope::serializer::Packer; use eyre::eyre; use reth_primitives::ReceiptWithBloom; use reth_telos_rpc_engine_api::structs::TelosEngineAPIExtraFields; -use reth_trie_common::root::ordered_trie_root_with_encoder; +use alloy_trie::root::ordered_trie_root_with_encoder; use std::cmp::{max, Ordering}; use std::collections::HashMap; +use alloy_consensus::transaction::RlpEcdsaTx; use tracing::{debug, warn}; -const MINIMUM_FEE_PER_GAS: u128 = 7; +const MINIMUM_FEE_PER_GAS: u64 = 7; pub trait BasicTrace { fn action_name(&self) -> u64; @@ -97,7 +98,7 @@ pub struct ProcessingEVMBlock { block_traces: Option>, contract_rows: Option>, cumulative_gas_used: u64, - dyn_gas_limit: Option, + dyn_gas_limit: Option, pub decoded_rows: Vec, pub transactions: Vec<(TelosEVMTransaction, ReceiptWithBloom)>, pub new_gas_price: Option<(u64, U256)>, @@ -246,8 +247,8 @@ impl ProcessingEVMBlock { fn add_transaction(&mut self, transaction: TelosEVMTransaction) { let full_receipt = transaction.receipt(self.cumulative_gas_used); - let gas_limit = transaction.envelope.gas_limit() + self.cumulative_gas_used as u128; - self.cumulative_gas_used = full_receipt.receipt.cumulative_gas_used; + let gas_limit = transaction.envelope.gas_limit() + self.cumulative_gas_used; + self.cumulative_gas_used = full_receipt.receipt.cumulative_gas_used as u64; self.transactions.push((transaction, full_receipt)); if self.dyn_gas_limit.is_none() { @@ -470,7 +471,7 @@ impl ProcessingEVMBlock { if envelope.is_eip1559() { let stx = envelope.as_eip1559().unwrap(); - stx.tx().encode_with_signature_fields(stx.signature(), buf); + stx.tx().rlp_encode_signed(stx.signature(), buf); } else { panic!("unimplemented tx type"); } @@ -481,7 +482,7 @@ impl ProcessingEVMBlock { ordered_trie_root_with_encoder(&self.transactions, |(_trx, r), buf| r.encode(buf)); let mut logs_bloom = Bloom::default(); for (_trx, receipt) in &self.transactions { - logs_bloom.accrue_bloom(&receipt.bloom); + logs_bloom.accrue_bloom(&receipt.logs_bloom); } let gas_limit = if let Some(dyn_gas) = self.dyn_gas_limit { @@ -503,7 +504,7 @@ impl ProcessingEVMBlock { difficulty: Default::default(), number: (self.block_num - block_delta) as u64, gas_limit, - gas_used: self.cumulative_gas_used as u128, + gas_used: self.cumulative_gas_used, timestamp: (((self.signed_block.clone().unwrap().header.header.timestamp as u64) * ANTELOPE_INTERVAL_MS) + ANTELOPE_EPOCH_MS) @@ -514,8 +515,9 @@ impl ProcessingEVMBlock { blob_gas_used: None, excess_blob_gas: None, parent_beacon_block_root: None, - requests_root: None, + requests_hash: None, extra_data: Bytes::from(self.block_hash.data), + target_blobs_per_block: None, }; let base_fee_per_gas = U256::from( diff --git a/translator/src/injection.rs b/translator/src/injection.rs index 8d22163..e897b15 100644 --- a/translator/src/injection.rs +++ b/translator/src/injection.rs @@ -1,4 +1,4 @@ -use alloy::primitives::{Address, Bytes, U256}; +use alloy_primitives::{Address, Bytes, U256}; use antelope::api::client::{APIClient, DefaultProvider}; use antelope::api::v1::structs::{GetTableRowsParams, TableIndexType}; use antelope::chain::checksum::{Checksum160, Checksum256}; diff --git a/translator/src/rlp/telos_rlp_decode.rs b/translator/src/rlp/telos_rlp_decode.rs index 53ae8f0..f96b189 100644 --- a/translator/src/rlp/telos_rlp_decode.rs +++ b/translator/src/rlp/telos_rlp_decode.rs @@ -1,7 +1,7 @@ -use alloy::primitives::private::alloy_rlp::{Decodable, Error, Header}; -use alloy::primitives::{Bytes, Parity, Signature, TxKind, U256}; +use alloy_primitives::private::alloy_rlp::{Decodable, Error, Header}; +use alloy_primitives::{normalize_v, Bytes, Parity, PrimitiveSignature, Signature, TxKind, U256}; use alloy_consensus::{SignableTransaction, Signed, TxLegacy}; - +use alloy_consensus::transaction::from_eip155_value; use alloy_rlp::Result; use bytes::Buf; use tracing::error; @@ -9,7 +9,7 @@ use tracing::error; fn decode_fields(data: &mut &[u8]) -> Result { let nonce = u64::decode(data).map_err(|_| Error::Custom("Failed to decode nonce"))?; let gas_price = u128::decode(data).map_err(|_| Error::Custom("Failed to decode gas price"))?; - let gas_limit = u128::decode(data).map_err(|_| Error::Custom("Failed to decode gas limit"))?; + let gas_limit = u64::decode(data).map_err(|_| Error::Custom("Failed to decode gas limit"))?; let to = TxKind::decode(data).map_err(|_| Error::Custom("Failed to decode to"))?; let value = decode_telos_u256(data).map_err(|_| Error::Custom("Failed to decode value"))?; let input = Bytes::decode(data).map_err(|_| Error::Custom("Failed to decode input"))?; @@ -28,8 +28,8 @@ fn decode_fields(data: &mut &[u8]) -> Result { pub trait TelosTxDecodable { fn decode_telos_signed_fields( buf: &mut &[u8], - sig: Option, - ) -> Result, Error> + sig: Option, + ) -> Result<(Self, PrimitiveSignature)> where Self: Sized; } @@ -37,8 +37,8 @@ pub trait TelosTxDecodable { impl TelosTxDecodable for TxLegacy { fn decode_telos_signed_fields( buf: &mut &[u8], - provided_sig: Option, - ) -> Result, Error> { + provided_sig: Option, + ) -> Result<(Self, PrimitiveSignature)> { let header = Header::decode(buf)?; if !header.list { return Err(Error::Custom("Not a list.")); @@ -62,11 +62,16 @@ impl TelosTxDecodable for TxLegacy { } else if buf[0] == 0 { buf.advance(buf.len()); } else { - let decoded_signature = Signature::decode_rlp_vrs(buf)?; - let v = decoded_signature.v(); + let mut decoded_v: u128 = 0; + let decoded_signature = PrimitiveSignature::decode_rlp_vrs(buf, |buf| { + let decoded_v = Decodable::decode(buf)?; + let (parity, _chain_id) = + from_eip155_value(decoded_v).ok_or(Error::Custom("invalid parity value"))?; + Ok(parity) + })?; let r = decoded_signature.r(); let s = decoded_signature.s(); - if v.to_u64() != 0 || r != U256::ZERO || s != U256::ZERO { + if decoded_v != 0 || r != U256::ZERO || s != U256::ZERO { return Err(Error::Custom( "Unsigned Telos Native trx with signature data", )); @@ -79,24 +84,23 @@ impl TelosTxDecodable for TxLegacy { if buf.is_empty() { return Err(Error::Custom("Trx without signature")); } - - let parity: Parity = Decodable::decode(buf)?; + let v: u128 = Decodable::decode(buf)?; + let (parity, chain_id) = + from_eip155_value(v).ok_or(Error::Custom("invalid parity value"))?; + let r = decode_telos_u256(buf)?; let s = decode_telos_u256(buf)?; - - Signature::from_rs_and_parity(r, s, parity) - .map_err(|_| Error::Custom("attempted to decode invalid field element"))? + tx.chain_id = chain_id; + PrimitiveSignature::new(r, s, parity) } }; - tx.chain_id = sig.v().chain_id(); - - let signed = tx.into_signed(sig); + // let signed = tx.into_signed(sig); if buf.len() + header.payload_length == original_len || buf.iter().all(|&b| b == 128) { - return Ok(signed); + return Ok((tx, sig)); } - error!("Transaction has trailing non-zero RLP values: {:?}", signed); + error!("Transaction has trailing non-zero RLP values, tx: {:?} sig: {:?}", tx, sig); Err(Error::ListLengthMismatch { expected: header.payload_length, got: original_len - buf.len(), diff --git a/translator/src/tasks/final_processor.rs b/translator/src/tasks/final_processor.rs index 62a1c9d..d4c09ed 100644 --- a/translator/src/tasks/final_processor.rs +++ b/translator/src/tasks/final_processor.rs @@ -5,12 +5,12 @@ use crate::{ block::ProcessingEVMBlock, translator::TranslatorConfig, types::translator_types::NameToAddressCache, }; -use alloy::primitives::{Address, Bytes, FixedBytes, U256}; +use alloy_primitives::{Address, Bytes, FixedBytes, U256}; use alloy_rlp::Encodable; use antelope::api::client::{APIClient, DefaultProvider}; use eyre::{eyre, Context, Result}; use hex::encode; -use reth_primitives::B256; +use alloy_primitives::B256; use reth_telos_rpc_engine_api::structs::{ TelosAccountStateTableRow, TelosAccountTableRow, TelosEngineAPIExtraFields, }; diff --git a/translator/src/transaction.rs b/translator/src/transaction.rs index 4c319a1..95b8f38 100644 --- a/translator/src/transaction.rs +++ b/translator/src/transaction.rs @@ -1,23 +1,23 @@ use crate::rlp::telos_rlp_decode::TelosTxDecodable; use crate::types::evm_types::{PrintedReceipt, RawAction, TransferAction, WithdrawAction}; use crate::types::translator_types::NameToAddressCache; -use alloy::primitives::private::alloy_rlp::Error; -use alloy::primitives::TxKind::Call; -use alloy::primitives::{Address, Bloom, Log, Signature, B256, U256}; -use alloy_consensus::{SignableTransaction, TxEnvelope, TxLegacy}; +use alloy_primitives::private::alloy_rlp::Error; +use alloy_primitives::TxKind::Call; +use alloy_primitives::{normalize_v, Address, Bloom, Log, PrimitiveSignature, B256, U256}; +use alloy_consensus::{Eip658Value, Receipt, ReceiptWithBloom, SignableTransaction, Signed, TxEnvelope, TxLegacy}; +use alloy_consensus::transaction::RlpEcdsaTx; use alloy_rlp::Decodable; use antelope::chain::checksum::Checksum256; use num_bigint::{BigUint, ToBigUint}; -use reth_primitives::{Receipt, ReceiptWithBloom}; const ADDRESS_HEX_SIZE: usize = 42; +pub const TELOS_SIGNED_V_VALUE: u64 = 42u64; pub fn make_unique_vrs( block_hash_native: Checksum256, sender_address: Address, trx_index: usize, -) -> Signature { - let v = 42u64; +) -> PrimitiveSignature { let hash_biguint = BigUint::from_bytes_be(&block_hash_native.data); let trx_index_biguint: BigUint = trx_index.to_biguint().unwrap(); let r_biguint = hash_biguint + trx_index_biguint; @@ -26,7 +26,7 @@ pub fn make_unique_vrs( s_bytes[..20].copy_from_slice(sender_address.as_slice()); let r = U256::from_be_slice(r_biguint.to_bytes_be().as_slice()); let s = U256::from_be_slice(&s_bytes); - Signature::from_rs_and_parity(r, s, v).expect("Failed to create signature") + PrimitiveSignature::from_scalars_and_parity(r.into(), s.into(), normalize_v(TELOS_SIGNED_V_VALUE).unwrap()) } #[derive(Clone, Debug)] @@ -48,7 +48,7 @@ impl TelosEVMTransaction { let tx_raw = &mut raw.tx.as_slice(); if tx_raw[0] >= 0xc0 && tx_raw[0] <= 0xfe { - let mut signed_legacy_result = TxLegacy::decode_signed_fields(tx_raw); + let mut signed_legacy_result = TxLegacy::rlp_decode_with_signature(tx_raw); // If we fail to decode with the strict RLP from reth, // and we don't have a raw.sender which suggests a native signed trx // then try the telos legacy decode without passing a signature @@ -64,30 +64,29 @@ impl TelosEVMTransaction { .data, ); let sig = make_unique_vrs(block_hash, address, trx_index); - let unsigned_legacy = TxLegacy::decode_telos_signed_fields( + let (tx_legacy, signature) = TxLegacy::decode_telos_signed_fields( &mut raw.tx.clone().as_slice(), Some(sig), )?; - let envelope = TxEnvelope::Legacy(unsigned_legacy); + let envelope = TxEnvelope::Legacy(tx_legacy.into_signed(signature)); return Ok(TelosEVMTransaction { envelope, receipt }); } - let signed_legacy = signed_legacy_result.unwrap(); + let (tx_legacy, signature) = signed_legacy_result.unwrap(); // Align with contract, if BOTH are zero it's zero and raw.sender is used // https://github.com/telosnetwork/telos.evm/blob/9f2024a2a65e7c6b9bb98b36b368c359e24e6885/eosio.evm/include/eosio.evm/transaction.hpp#L205 - if signed_legacy.signature().r().is_zero() && signed_legacy.signature().s().is_zero() { + if signature.r().is_zero() && signature.s().is_zero() { let address = Address::from( raw.sender .expect("Failed to get address from sender in unsigned transaction, signed_legacy signature is zero") .data, ); let sig = make_unique_vrs(block_hash, address, trx_index); - let unsigned_legacy = signed_legacy.strip_signature().into_signed(sig); - let envelope = TxEnvelope::Legacy(unsigned_legacy); + let envelope = TxEnvelope::Legacy(tx_legacy.into_signed(sig)); return Ok(TelosEVMTransaction { envelope, receipt }); } - let envelope = TxEnvelope::Legacy(signed_legacy); + let envelope = TxEnvelope::Legacy(tx_legacy.into_signed(signature)); Ok(TelosEVMTransaction { envelope, receipt }) } else { let type_bit = tx_raw[0]; @@ -133,7 +132,7 @@ impl TelosEVMTransaction { let sig = make_unique_vrs(block_hash, Address::ZERO, trx_index); let signed_legacy = tx_legacy.clone().into_signed(sig); let mut raw: Vec = vec![]; - tx_legacy.encode_with_signature_fields(&sig, &mut raw); + tx_legacy.rlp_encode_signed(&sig, &mut raw); let envelope = TxEnvelope::Legacy(signed_legacy); Ok(TelosEVMTransaction { envelope, @@ -222,19 +221,18 @@ impl TelosEVMTransaction { pub fn receipt(&self, cumulative_gas_used: u64) -> ReceiptWithBloom { let tx_gas_used = u64::from_str_radix(&self.receipt.gasused, 16).unwrap(); let logs = self.receipt.logs.clone(); - let mut bloom = Bloom::default(); + let mut logs_bloom = Bloom::default(); for log in &logs { - bloom.accrue_log(log); + logs_bloom.accrue_log(log); } let success = self.receipt.status == 1u8; ReceiptWithBloom { receipt: Receipt { - tx_type: Default::default(), - cumulative_gas_used: cumulative_gas_used + tx_gas_used, + cumulative_gas_used: (cumulative_gas_used + tx_gas_used) as u128, logs, - success, + status: Eip658Value::from(success), }, - bloom, + logs_bloom, } } } diff --git a/translator/src/types/env.rs b/translator/src/types/env.rs index 1e7f28f..a1ab7a3 100644 --- a/translator/src/types/env.rs +++ b/translator/src/types/env.rs @@ -1,6 +1,6 @@ use std::str::FromStr; -use alloy::primitives::FixedBytes; +use alloy_primitives::FixedBytes; use lazy_static::lazy_static; use crate::translator::{default_channel_size, TranslatorConfig}; @@ -10,7 +10,7 @@ pub const ANTELOPE_INTERVAL_MS: u64 = 500; pub const ZERO_HASH_HEX: &str = "0000000000000000000000000000000000000000000000000000000000000000"; -pub const DEFAULT_GAS_LIMIT: u128 = 0x7fffffff; +pub const DEFAULT_GAS_LIMIT: u64 = 0x7fffffffu64; pub const TESTNET_DEPLOY_STATE: &str = include_str!("testnet-evm-deploy-state.json"); diff --git a/translator/src/types/evm_types.rs b/translator/src/types/evm_types.rs index 352c38c..ead4fdf 100644 --- a/translator/src/types/evm_types.rs +++ b/translator/src/types/evm_types.rs @@ -1,5 +1,5 @@ -use alloy::primitives::aliases::BlockTimestamp; -use alloy::primitives::{Address, Log, B256}; +use alloy_primitives::aliases::BlockTimestamp; +use alloy_primitives::{Address, Log, B256}; use antelope::chain::asset::Asset; use antelope::chain::binary_extension::BinaryExtension; use antelope::chain::checksum::{Checksum160, Checksum256}; diff --git a/translator/src/types/translator_types.rs b/translator/src/types/translator_types.rs index d273867..344859f 100644 --- a/translator/src/types/translator_types.rs +++ b/translator/src/types/translator_types.rs @@ -1,7 +1,7 @@ use crate::block::ProcessingEVMBlock; use crate::types::evm_types::AccountRow; use crate::types::names::{ACCOUNT, EOSIO_EVM}; -use alloy::primitives::{Address, Bytes, U256}; +use alloy_primitives::{Address, Bytes, U256}; use antelope::api::client::{APIClient, DefaultProvider}; use antelope::api::v1::structs::{ GetTableRowsParams, GetTableRowsResponse, IndexPosition, TableIndexType,