From a01b028647458ef0c1ef03a3a547113a1b7f01f5 Mon Sep 17 00:00:00 2001 From: Dima Pristupa Date: Fri, 22 May 2026 18:32:07 +0300 Subject: [PATCH 1/6] Alloy breakdown --- Cargo.lock | 1414 ++--------------------------------- Cargo.toml | 29 +- examples/eth.rs | 5 +- examples/peaq.rs | 5 +- src/config.rs | 2 +- src/convert/decoded.rs | 12 +- src/convert/hybrid.rs | 10 +- src/convert/mod.rs | 5 +- src/convert/raw.rs | 2 +- src/provider.rs | 34 +- src/stream.rs | 15 +- src/udf.rs | 8 +- src/utils.rs | 2 +- tests/tests/chain.rs | 15 +- tests/tests/test_convert.rs | 23 +- tests/tests/test_stream.rs | 8 +- 16 files changed, 161 insertions(+), 1428 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a1f6e3f..2088fef 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -52,36 +52,6 @@ version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" -[[package]] -name = "alloy" -version = "1.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4973038846323e4e69a433916522195dce2947770076c03078fc21c80ea0f1c4" -dependencies = [ - "alloy-consensus", - "alloy-contract", - "alloy-core", - "alloy-eips", - "alloy-genesis", - "alloy-network", - "alloy-node-bindings", - "alloy-provider", - "alloy-pubsub", - "alloy-rpc-client", - "alloy-rpc-types", - "alloy-serde", - "alloy-signer", - "alloy-signer-aws", - "alloy-signer-gcp", - "alloy-signer-ledger", - "alloy-signer-local", - "alloy-signer-turnkey", - "alloy-transport", - "alloy-transport-http", - "alloy-transport-ws", - "alloy-trie", -] - [[package]] name = "alloy-chains" version = "0.2.33" @@ -117,7 +87,7 @@ dependencies = [ "serde", "serde_json", "serde_with", - "thiserror 2.0.18", + "thiserror", ] [[package]] @@ -147,27 +117,13 @@ dependencies = [ "alloy-network-primitives", "alloy-primitives", "alloy-provider", - "alloy-pubsub", "alloy-rpc-types-eth", "alloy-sol-types", "alloy-transport", "futures", "futures-util", "serde_json", - "thiserror 2.0.18", -] - -[[package]] -name = "alloy-core" -version = "1.5.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23e8604b0c092fabc80d075ede181c9b9e596249c70b99253082d7e689836529" -dependencies = [ - "alloy-dyn-abi", - "alloy-json-abi", - "alloy-primitives", - "alloy-rlp", - "alloy-sol-types", + "thiserror", ] [[package]] @@ -197,7 +153,7 @@ dependencies = [ "alloy-rlp", "crc", "serde", - "thiserror 2.0.18", + "thiserror", ] [[package]] @@ -222,7 +178,7 @@ dependencies = [ "alloy-rlp", "borsh", "serde", - "thiserror 2.0.18", + "thiserror", ] [[package]] @@ -257,8 +213,8 @@ dependencies = [ "either", "serde", "serde_with", - "sha2 0.10.9", - "thiserror 2.0.18", + "sha2", + "thiserror", ] [[package]] @@ -271,9 +227,7 @@ dependencies = [ "alloy-primitives", "alloy-serde", "alloy-trie", - "borsh", "serde", - "serde_with", ] [[package]] @@ -309,10 +263,10 @@ checksum = "ff42cd777eea61f370c0b10f2648a1c81e0b783066cd7269228aa993afd487f7" dependencies = [ "alloy-primitives", "alloy-sol-types", - "http 1.4.0", + "http", "serde", "serde_json", - "thiserror 2.0.18", + "thiserror", "tracing", ] @@ -339,7 +293,7 @@ dependencies = [ "futures-utils-wasm", "serde", "serde_json", - "thiserror 2.0.18", + "thiserror", ] [[package]] @@ -372,7 +326,7 @@ dependencies = [ "rand 0.8.5", "serde_json", "tempfile", - "thiserror 2.0.18", + "thiserror", "tracing", "url", ] @@ -416,11 +370,9 @@ dependencies = [ "alloy-json-rpc", "alloy-network", "alloy-network-primitives", - "alloy-node-bindings", "alloy-primitives", "alloy-pubsub", "alloy-rpc-client", - "alloy-rpc-types-anvil", "alloy-rpc-types-eth", "alloy-signer", "alloy-sol-types", @@ -436,11 +388,11 @@ dependencies = [ "futures-utils-wasm", "lru", "parking_lot", - "pin-project 1.1.11", + "pin-project", "reqwest", "serde", "serde_json", - "thiserror 2.0.18", + "thiserror", "tokio", "tracing", "url", @@ -504,7 +456,7 @@ dependencies = [ "alloy-transport-http", "alloy-transport-ws", "futures", - "pin-project 1.1.11", + "pin-project", "reqwest", "serde", "serde_json", @@ -516,30 +468,6 @@ dependencies = [ "wasmtimer", ] -[[package]] -name = "alloy-rpc-types" -version = "1.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bdcbf9dfd5eea8bfeb078b1d906da8cd3a39c4d4dbe7a628025648e323611f6" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-eth", - "alloy-serde", - "serde", -] - -[[package]] -name = "alloy-rpc-types-anvil" -version = "1.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0a3100b76987c1b1dc81f3abe592b7edc29e92b1242067a69d65e0030b35cf9" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-eth", - "alloy-serde", - "serde", -] - [[package]] name = "alloy-rpc-types-any" version = "1.7.3" @@ -569,7 +497,7 @@ dependencies = [ "serde", "serde_json", "serde_with", - "thiserror 2.0.18", + "thiserror", ] [[package]] @@ -589,72 +517,13 @@ version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2425c6f314522c78e8198979c8cbf6769362be4da381d4152ea8eefce383535d" dependencies = [ - "alloy-dyn-abi", "alloy-primitives", - "alloy-sol-types", "async-trait", "auto_impl", "either", "elliptic-curve", "k256", - "thiserror 2.0.18", -] - -[[package]] -name = "alloy-signer-aws" -version = "1.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e38b411077d7b17e464de7dfa599f5b94161cdffc25c2f28a90a3a345b6d6490" -dependencies = [ - "alloy-consensus", - "alloy-network", - "alloy-primitives", - "alloy-signer", - "async-trait", - "aws-config", - "aws-sdk-kms", - "k256", - "spki", - "thiserror 2.0.18", - "tracing", -] - -[[package]] -name = "alloy-signer-gcp" -version = "1.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "485d0c73c53a36580be4d882a5c6c9a069759088de88ff759e59342a793adb16" -dependencies = [ - "alloy-consensus", - "alloy-network", - "alloy-primitives", - "alloy-signer", - "async-trait", - "gcloud-sdk", - "k256", - "spki", - "thiserror 2.0.18", - "tracing", -] - -[[package]] -name = "alloy-signer-ledger" -version = "1.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff7a41e469bce9a836a9fbba7c09f8eba25703062accf6a64bd90b5ed61c1b01" -dependencies = [ - "alloy-consensus", - "alloy-dyn-abi", - "alloy-network", - "alloy-primitives", - "alloy-signer", - "alloy-sol-types", - "async-trait", - "coins-ledger", - "futures-util", - "semver 1.0.27", - "thiserror 2.0.18", - "tracing", + "thiserror", ] [[package]] @@ -670,23 +539,7 @@ dependencies = [ "async-trait", "k256", "rand 0.8.5", - "thiserror 2.0.18", -] - -[[package]] -name = "alloy-signer-turnkey" -version = "1.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589b334f4cf9de0d80568e8eaf11479b492e74dc2c08991306361065bde2321a" -dependencies = [ - "alloy-consensus", - "alloy-network", - "alloy-primitives", - "alloy-signer", - "async-trait", - "thiserror 2.0.18", - "tracing", - "turnkey_client", + "thiserror", ] [[package]] @@ -709,7 +562,6 @@ version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "489f1620bb7e2483fb5819ed01ab6edc1d2f93939dce35a5695085a1afd1d699" dependencies = [ - "alloy-json-abi", "alloy-sol-macro-input", "const-hex", "heck", @@ -728,14 +580,12 @@ version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56cef806ad22d4392c5fc83cf8f2089f988eb99c7067b4e0c6f1971fc1cca318" dependencies = [ - "alloy-json-abi", "const-hex", "dunce", "heck", "macro-string", "proc-macro2", "quote", - "serde_json", "syn 2.0.117", "syn-solidity", ] @@ -777,7 +627,7 @@ dependencies = [ "parking_lot", "serde", "serde_json", - "thiserror 2.0.18", + "thiserror", "tokio", "tower", "tracing", @@ -810,7 +660,7 @@ dependencies = [ "alloy-pubsub", "alloy-transport", "futures", - "http 1.4.0", + "http", "serde_json", "tokio", "tokio-tungstenite", @@ -830,7 +680,7 @@ dependencies = [ "nybbles", "serde", "smallvec", - "thiserror 2.0.18", + "thiserror", "tracing", ] @@ -1328,18 +1178,6 @@ dependencies = [ "regex-syntax", ] -[[package]] -name = "async-compression" -version = "0.4.42" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79b3f8a79cccc2898f31920fc69f304859b3bd567490f75ebf51ae1c792a9ac" -dependencies = [ - "compression-codecs", - "compression-core", - "pin-project-lite", - "tokio", -] - [[package]] name = "async-stream" version = "0.3.6" @@ -1416,341 +1254,6 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" -[[package]] -name = "aws-config" -version = "1.8.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50f156acdd2cf55f5aa53ee416c4ac851cf1222694506c0b1f78c85695e9ca9d" -dependencies = [ - "aws-credential-types", - "aws-runtime", - "aws-sdk-sts", - "aws-smithy-async", - "aws-smithy-http", - "aws-smithy-json", - "aws-smithy-runtime", - "aws-smithy-runtime-api", - "aws-smithy-types", - "aws-types", - "bytes", - "fastrand", - "http 1.4.0", - "time", - "tokio", - "tracing", - "url", -] - -[[package]] -name = "aws-credential-types" -version = "1.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f20799b373a1be121fe3005fba0c2090af9411573878f224df44b42727fcaf7" -dependencies = [ - "aws-smithy-async", - "aws-smithy-runtime-api", - "aws-smithy-types", - "zeroize", -] - -[[package]] -name = "aws-runtime" -version = "1.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dcd93c82209ac7413532388067dce79be5a8780c1786e5fae3df22e4dee2864" -dependencies = [ - "aws-credential-types", - "aws-sigv4", - "aws-smithy-async", - "aws-smithy-http", - "aws-smithy-runtime", - "aws-smithy-runtime-api", - "aws-smithy-types", - "aws-types", - "bytes", - "bytes-utils", - "fastrand", - "http 1.4.0", - "http-body 1.0.1", - "percent-encoding", - "pin-project-lite", - "tracing", - "uuid", -] - -[[package]] -name = "aws-sdk-kms" -version = "1.106.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2336350f96efcf9c2552b7fdb4dd07a0c1fef11f22b28fb020a9e33e7925cf9d" -dependencies = [ - "aws-credential-types", - "aws-runtime", - "aws-smithy-async", - "aws-smithy-http", - "aws-smithy-json", - "aws-smithy-observability", - "aws-smithy-runtime", - "aws-smithy-runtime-api", - "aws-smithy-types", - "aws-types", - "bytes", - "fastrand", - "http 0.2.12", - "http 1.4.0", - "regex-lite", - "tracing", -] - -[[package]] -name = "aws-sdk-sts" -version = "1.103.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2249b81a2e73a8027c41c378463a81ec39b8510f184f2caab87de912af0f49b" -dependencies = [ - "aws-credential-types", - "aws-runtime", - "aws-smithy-async", - "aws-smithy-http", - "aws-smithy-json", - "aws-smithy-observability", - "aws-smithy-query", - "aws-smithy-runtime", - "aws-smithy-runtime-api", - "aws-smithy-types", - "aws-smithy-xml", - "aws-types", - "fastrand", - "http 0.2.12", - "http 1.4.0", - "regex-lite", - "tracing", -] - -[[package]] -name = "aws-sigv4" -version = "1.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68dc0b907359b120170613b5c09ccc61304eac3998ff6274b97d93ee6490115a" -dependencies = [ - "aws-credential-types", - "aws-smithy-http", - "aws-smithy-runtime-api", - "aws-smithy-types", - "bytes", - "form_urlencoded", - "hex", - "hmac 0.13.0", - "http 0.2.12", - "http 1.4.0", - "percent-encoding", - "sha2 0.11.0", - "time", - "tracing", -] - -[[package]] -name = "aws-smithy-async" -version = "1.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ffcaf626bdda484571968400c326a244598634dc75fd451325a54ad1a59acfc" -dependencies = [ - "futures-util", - "pin-project-lite", - "tokio", -] - -[[package]] -name = "aws-smithy-http" -version = "0.63.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba1ab2dc1c2c3749ead27180d333c42f11be8b0e934058fb4b2258ee8dbe5231" -dependencies = [ - "aws-smithy-runtime-api", - "aws-smithy-types", - "bytes", - "bytes-utils", - "futures-core", - "futures-util", - "http 1.4.0", - "http-body 1.0.1", - "http-body-util", - "percent-encoding", - "pin-project-lite", - "pin-utils", - "tracing", -] - -[[package]] -name = "aws-smithy-json" -version = "0.62.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9648b0bb82a2eedd844052c6ad2a1a822d1f8e3adee5fbf668366717e428856a" -dependencies = [ - "aws-smithy-types", -] - -[[package]] -name = "aws-smithy-observability" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a06c2315d173edbf1920da8ba3a7189695827002e4c0fc961973ab1c54abca9c" -dependencies = [ - "aws-smithy-runtime-api", -] - -[[package]] -name = "aws-smithy-query" -version = "0.60.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a56d79744fb3edb5d722ef79d86081e121d3b9422cb209eb03aea6aa4f21ebd" -dependencies = [ - "aws-smithy-types", - "urlencoding", -] - -[[package]] -name = "aws-smithy-runtime" -version = "1.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0504b1ab12debb5959e5165ee5fe97dd387e7aa7ea6a477bfd7635dfe769a4f5" -dependencies = [ - "aws-smithy-async", - "aws-smithy-http", - "aws-smithy-observability", - "aws-smithy-runtime-api", - "aws-smithy-types", - "bytes", - "fastrand", - "http 0.2.12", - "http 1.4.0", - "http-body 0.4.6", - "http-body 1.0.1", - "http-body-util", - "pin-project-lite", - "pin-utils", - "tokio", - "tracing", -] - -[[package]] -name = "aws-smithy-runtime-api" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b71a13df6ada0aafbf21a73bdfcdf9324cfa9df77d96b8446045be3cde61b42e" -dependencies = [ - "aws-smithy-async", - "aws-smithy-runtime-api-macros", - "aws-smithy-types", - "bytes", - "http 0.2.12", - "http 1.4.0", - "pin-project-lite", - "tokio", - "tracing", - "zeroize", -] - -[[package]] -name = "aws-smithy-runtime-api-macros" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d7396fd9500589e62e460e987ecb671bad374934e55ec3b5f498cc7a8a8a7b7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "aws-smithy-types" -version = "1.4.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d73dbfbaa8e4bc57b9045137680b958d274823509a360abfd8e1d514d40c95c" -dependencies = [ - "base64-simd", - "bytes", - "bytes-utils", - "http 0.2.12", - "http 1.4.0", - "http-body 0.4.6", - "http-body 1.0.1", - "http-body-util", - "itoa", - "num-integer", - "pin-project-lite", - "pin-utils", - "ryu", - "serde", - "time", -] - -[[package]] -name = "aws-smithy-xml" -version = "0.60.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ce02add1aa3677d022f8adf81dcbe3046a95f17a1b1e8979c145cd21d3d22b3" -dependencies = [ - "xmlparser", -] - -[[package]] -name = "aws-types" -version = "1.3.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f4bbcaa9304ea40902d3d5f42a0428d1bd895a2b0f6999436fb279ffddc58ac" -dependencies = [ - "aws-credential-types", - "aws-smithy-async", - "aws-smithy-runtime-api", - "aws-smithy-types", - "rustc_version 0.4.1", - "tracing", -] - -[[package]] -name = "axum" -version = "0.8.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31b698c5f9a010f6573133b09e0de5408834d0c82f8d7475a89fc1867a71cd90" -dependencies = [ - "axum-core", - "bytes", - "futures-util", - "http 1.4.0", - "http-body 1.0.1", - "http-body-util", - "itoa", - "matchit", - "memchr", - "mime", - "percent-encoding", - "pin-project-lite", - "serde_core", - "sync_wrapper", - "tower", - "tower-layer", - "tower-service", -] - -[[package]] -name = "axum-core" -version = "0.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08c78f31d7b1291f7ee735c1c6780ccde7785daae9a9206026862dab7d8792d1" -dependencies = [ - "bytes", - "futures-core", - "http 1.4.0", - "http-body 1.0.1", - "http-body-util", - "mime", - "pin-project-lite", - "sync_wrapper", - "tower-layer", - "tower-service", -] - [[package]] name = "base16ct" version = "0.2.0" @@ -1763,16 +1266,6 @@ version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" -[[package]] -name = "base64-simd" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195" -dependencies = [ - "outref", - "vsimd", -] - [[package]] name = "base64ct" version = "1.8.3" @@ -1829,12 +1322,6 @@ dependencies = [ "hex-conservative", ] -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - [[package]] name = "bitflags" version = "2.11.0" @@ -1862,15 +1349,6 @@ dependencies = [ "generic-array", ] -[[package]] -name = "block-buffer" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdd35008169921d80bc60d3d0ab416eecb028c4cd653352907921d95084790be" -dependencies = [ - "hybrid-array", -] - [[package]] name = "blst" version = "0.3.16" @@ -1955,16 +1433,6 @@ dependencies = [ "serde", ] -[[package]] -name = "bytes-utils" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dafe3a8757b027e2be6e4e5601ed563c55989fcf1546e933c66c8eb3a058d35" -dependencies = [ - "bytes", - "either", -] - [[package]] name = "c-kzg" version = "2.1.7" @@ -2014,45 +1482,16 @@ dependencies = [ "num-traits", "serde", "windows-link", -] - -[[package]] -name = "chrono-tz" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6139a8597ed92cf816dfb33f5dd6cf0bb93a6adc938f11039f371bc5bcd26c3" -dependencies = [ - "chrono", - "phf", -] - -[[package]] -name = "cmov" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f88a43d011fc4a6876cb7344703e297c71dda42494fee094d5f7c76bf13f746" +] [[package]] -name = "coins-ledger" -version = "0.12.0" +name = "chrono-tz" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab9bc0994d0aa0f4ade5f3a9baf4a8d936f250278c85a1124b401860454246ab" +checksum = "a6139a8597ed92cf816dfb33f5dd6cf0bb93a6adc938f11039f371bc5bcd26c3" dependencies = [ - "async-trait", - "byteorder", - "cfg-if", - "const-hex", - "getrandom 0.2.17", - "hidapi-rusb", - "js-sys", - "log", - "nix", - "once_cell", - "thiserror 1.0.69", - "tokio", - "tracing", - "wasm-bindgen", - "wasm-bindgen-futures", + "chrono", + "phf", ] [[package]] @@ -2071,23 +1510,6 @@ dependencies = [ "unicode-width", ] -[[package]] -name = "compression-codecs" -version = "0.4.38" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce2548391e9c1929c21bf6aa2680af86fe4c1b33e6cea9ac1cfeec0bd11218cf" -dependencies = [ - "compression-core", - "flate2", - "memchr", -] - -[[package]] -name = "compression-core" -version = "0.4.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc14f565cf027a105f7a44ccf9e5b424348421a1d8952a8fc9d499d313107789" - [[package]] name = "const-hex" version = "1.18.1" @@ -2095,7 +1517,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "531185e432bb31db1ecda541e9e7ab21468d4d844ad7505e0546a49b4945d49b" dependencies = [ "cfg-if", - "cpufeatures 0.2.17", + "cpufeatures", "proptest", "serde_core", ] @@ -2106,12 +1528,6 @@ version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" -[[package]] -name = "const-oid" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6ef517f0926dd24a1582492c791b6a4818a4d94e789a334894aa15b0d12f55c" - [[package]] name = "const-random" version = "0.1.18" @@ -2161,16 +1577,6 @@ dependencies = [ "unicode-segmentation", ] -[[package]] -name = "core-foundation" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6" -dependencies = [ - "core-foundation-sys", - "libc", -] - [[package]] name = "core-foundation-sys" version = "0.8.7" @@ -2186,15 +1592,6 @@ dependencies = [ "libc", ] -[[package]] -name = "cpufeatures" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201" -dependencies = [ - "libc", -] - [[package]] name = "crc" version = "3.4.0" @@ -2210,15 +1607,6 @@ version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" -[[package]] -name = "crc32fast" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" -dependencies = [ - "cfg-if", -] - [[package]] name = "crossbeam-utils" version = "0.8.21" @@ -2253,15 +1641,6 @@ dependencies = [ "typenum", ] -[[package]] -name = "crypto-common" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77727bb15fa921304124b128af125e7e3b968275d1b108b379190264f4423710" -dependencies = [ - "hybrid-array", -] - [[package]] name = "csv" version = "1.4.0" @@ -2283,15 +1662,6 @@ dependencies = [ "memchr", ] -[[package]] -name = "ctutils" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d5515a3834141de9eafb9717ad39eea8247b5674e6066c404e8c4b365d2a29e" -dependencies = [ - "cmov", -] - [[package]] name = "darling" version = "0.21.3" @@ -2656,7 +2026,16 @@ checksum = "5c93ad9e37730d2c7196e68616f3f2dd3b04c892e03acd3a8eeca6e177f3c06a" name = "datafusion-ethers" version = "53.0.1" dependencies = [ - "alloy", + "alloy-contract", + "alloy-dyn-abi", + "alloy-json-abi", + "alloy-network", + "alloy-node-bindings", + "alloy-primitives", + "alloy-provider", + "alloy-rpc-types-eth", + "alloy-sol-types", + "alloy-transport", "async-stream", "async-trait", "datafusion", @@ -2666,7 +2045,7 @@ dependencies = [ "pretty_assertions", "serde_json", "test-log", - "thiserror 2.0.18", + "thiserror", "tokio", "tracing", "tracing-subscriber", @@ -3064,8 +2443,7 @@ version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" dependencies = [ - "const-oid 0.9.6", - "pem-rfc7468", + "const-oid", "zeroize", ] @@ -3134,24 +2512,12 @@ version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "block-buffer 0.10.4", - "const-oid 0.9.6", - "crypto-common 0.1.6", + "block-buffer", + "const-oid", + "crypto-common", "subtle", ] -[[package]] -name = "digest" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1dd6dbb5841937940781866fa1281a1ff7bd3bf827091440879f9994983d5c2" -dependencies = [ - "block-buffer 0.12.0", - "const-oid 0.10.2", - "crypto-common 0.2.1", - "ctutils", -] - [[package]] name = "displaydoc" version = "0.2.5" @@ -3223,7 +2589,6 @@ dependencies = [ "ff", "generic-array", "group", - "pem-rfc7468", "pkcs8", "rand_core 0.6.4", "sec1", @@ -3357,7 +2722,7 @@ version = "25.12.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "35f6839d7b3b98adde531effaf34f0c2badc6f4735d26fe74709d8e513a96ef3" dependencies = [ - "bitflags 2.11.0", + "bitflags", "rustc_version 0.4.1", ] @@ -3367,7 +2732,6 @@ version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "843fba2746e448b37e26a819579957415c8cef339bf08564fe8b7ddbd959573c" dependencies = [ - "crc32fast", "miniz_oxide", "zlib-rs", ] @@ -3499,34 +2863,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "42012b0f064e01aa58b545fe3727f90f7dd4020f4a3ea735b50344965f5a57e9" -[[package]] -name = "gcloud-sdk" -version = "0.27.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8458d2ad7741b6a16981b84e66b7e4d8026423096da721894769c6980d06ecc" -dependencies = [ - "async-trait", - "bytes", - "chrono", - "futures", - "hyper", - "jsonwebtoken", - "once_cell", - "prost 0.13.5", - "prost-types 0.13.5", - "reqwest", - "secret-vault-value", - "serde", - "serde_json", - "tokio", - "tonic", - "tower", - "tower-layer", - "tower-util", - "tracing", - "url", -] - [[package]] name = "generic-array" version = "0.14.9" @@ -3595,25 +2931,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "h2" -version = "0.4.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "171fefbc92fe4a4de27e0698d6a5b392d6a0e333506bc49133760b3bcf948733" -dependencies = [ - "atomic-waker", - "bytes", - "fnv", - "futures-core", - "futures-sink", - "http 1.4.0", - "indexmap 2.13.0", - "slab", - "tokio", - "tokio-util", - "tracing", -] - [[package]] name = "half" version = "2.7.1" @@ -3687,18 +3004,6 @@ dependencies = [ "arrayvec", ] -[[package]] -name = "hidapi-rusb" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efdc2ec354929a6e8f3c6b6923a4d97427ec2f764cfee8cd4bfe890946cdf08b" -dependencies = [ - "cc", - "libc", - "pkg-config", - "rusb", -] - [[package]] name = "hmac" version = "0.12.1" @@ -3708,26 +3013,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "hmac" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6303bc9732ae41b04cb554b844a762b4115a61bfaa81e3e83050991eeb56863f" -dependencies = [ - "digest 0.11.3", -] - -[[package]] -name = "http" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" -dependencies = [ - "bytes", - "fnv", - "itoa", -] - [[package]] name = "http" version = "1.4.0" @@ -3738,17 +3023,6 @@ dependencies = [ "itoa", ] -[[package]] -name = "http-body" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" -dependencies = [ - "bytes", - "http 0.2.12", - "pin-project-lite", -] - [[package]] name = "http-body" version = "1.0.1" @@ -3756,7 +3030,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", - "http 1.4.0", + "http", ] [[package]] @@ -3767,8 +3041,8 @@ checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" dependencies = [ "bytes", "futures-core", - "http 1.4.0", - "http-body 1.0.1", + "http", + "http-body", "pin-project-lite", ] @@ -3778,27 +3052,12 @@ version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" -[[package]] -name = "httpdate" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" - [[package]] name = "humantime" version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" -[[package]] -name = "hybrid-array" -version = "0.4.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3944cf8cf766b40e2a1a333ee5e9b563f854d5fa49d6a8ca2764e97c6eddb214" -dependencies = [ - "typenum", -] - [[package]] name = "hyper" version = "1.8.1" @@ -3809,11 +3068,9 @@ dependencies = [ "bytes", "futures-channel", "futures-core", - "h2", - "http 1.4.0", - "http-body 1.0.1", + "http", + "http-body", "httparse", - "httpdate", "itoa", "pin-project-lite", "pin-utils", @@ -3828,11 +3085,10 @@ version = "0.27.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58" dependencies = [ - "http 1.4.0", + "http", "hyper", "hyper-util", "rustls", - "rustls-native-certs", "rustls-pki-types", "tokio", "tokio-rustls", @@ -3840,19 +3096,6 @@ dependencies = [ "webpki-roots 1.0.6", ] -[[package]] -name = "hyper-timeout" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b90d566bffbce6a75bd8b09a05aa8c2cb1fabb6cb348f8840c9e4c90a0d83b0" -dependencies = [ - "hyper", - "hyper-util", - "pin-project-lite", - "tokio", - "tower-service", -] - [[package]] name = "hyper-util" version = "0.1.20" @@ -3863,14 +3106,14 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "http 1.4.0", - "http-body 1.0.1", + "http", + "http-body", "hyper", "ipnet", "libc", "percent-encoding", "pin-project-lite", - "socket2 0.6.3", + "socket2", "tokio", "tower-service", "tracing", @@ -4162,21 +3405,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "jsonwebtoken" -version = "9.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a87cc7a48537badeae96744432de36f4be2b4a34a05a5ef32e9dd8a1c169dde" -dependencies = [ - "base64", - "js-sys", - "pem", - "ring", - "serde", - "serde_json", - "simple_asn1", -] - [[package]] name = "k256" version = "0.13.4" @@ -4188,7 +3416,7 @@ dependencies = [ "elliptic-curve", "once_cell", "serdect", - "sha2 0.10.9", + "sha2", ] [[package]] @@ -4197,7 +3425,7 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb26cec98cce3a3d96cbb7bced3c4b16e3d13f27ec56dbd62cbc8f39cfb9d653" dependencies = [ - "cpufeatures 0.2.17", + "cpufeatures", ] [[package]] @@ -4291,18 +3519,6 @@ version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" -[[package]] -name = "libusb1-sys" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da050ade7ac4ff1ba5379af847a10a10a8e284181e060105bf8d86960ce9ce0f" -dependencies = [ - "cc", - "libc", - "pkg-config", - "vcpkg", -] - [[package]] name = "linux-raw-sys" version = "0.12.1" @@ -4374,43 +3590,12 @@ dependencies = [ "regex-automata", ] -[[package]] -name = "matchit" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47e1ffaa40ddd1f3ed91f717a33c8c0ee23fff369e3aa8772b9605cc1d22f4c3" - [[package]] name = "memchr" version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" -[[package]] -name = "memoffset" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4" -dependencies = [ - "autocfg", -] - -[[package]] -name = "mime" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" - -[[package]] -name = "mime_guess" -version = "2.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e" -dependencies = [ - "mime", - "unicase", -] - [[package]] name = "miniz_oxide" version = "0.8.9" @@ -4432,19 +3617,6 @@ dependencies = [ "windows-sys 0.61.2", ] -[[package]] -name = "nix" -version = "0.26.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" -dependencies = [ - "bitflags 1.3.2", - "cfg-if", - "libc", - "memoffset", - "pin-utils", -] - [[package]] name = "nu-ansi-term" version = "0.50.3" @@ -4555,12 +3727,12 @@ dependencies = [ "futures-channel", "futures-core", "futures-util", - "http 1.4.0", + "http", "humantime", "itertools 0.14.0", "parking_lot", "percent-encoding", - "thiserror 2.0.18", + "thiserror", "tokio", "tracing", "url", @@ -4581,12 +3753,6 @@ version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" -[[package]] -name = "openssl-probe" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe" - [[package]] name = "ordered-float" version = "2.10.1" @@ -4596,24 +3762,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "outref" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e" - -[[package]] -name = "p256" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" -dependencies = [ - "ecdsa", - "elliptic-curve", - "primeorder", - "sha2 0.10.9", -] - [[package]] name = "parity-scale-codec" version = "3.7.5" @@ -4707,25 +3855,6 @@ version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" -[[package]] -name = "pem" -version = "3.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d30c53c26bc5b31a98cd02d20f25a7c8567146caf63ed593a9d87b2775291be" -dependencies = [ - "base64", - "serde_core", -] - -[[package]] -name = "pem-rfc7468" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" -dependencies = [ - "base64ct", -] - [[package]] name = "percent-encoding" version = "2.3.2" @@ -4782,33 +3911,13 @@ dependencies = [ "siphasher", ] -[[package]] -name = "pin-project" -version = "0.4.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ef0f924a5ee7ea9cbcea77529dba45f8a9ba9f622419fe3386ca581a3ae9d5a" -dependencies = [ - "pin-project-internal 0.4.30", -] - [[package]] name = "pin-project" version = "1.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1749c7ed4bcaf4c3d0a3efc28538844fb29bcdd7d2b67b2be7e20ba861ff517" dependencies = [ - "pin-project-internal 1.1.11", -] - -[[package]] -name = "pin-project-internal" -version = "0.4.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "851c8d0ce9bebe43790dedfc86614c23494ac9f423dd618d3a61fc693eafe61e" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", + "pin-project-internal", ] [[package]] @@ -4900,15 +4009,6 @@ dependencies = [ "syn 2.0.117", ] -[[package]] -name = "primeorder" -version = "0.13.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" -dependencies = [ - "elliptic-curve", -] - [[package]] name = "primitive-types" version = "0.12.2" @@ -4968,7 +4068,7 @@ checksum = "4b45fcc2344c680f5025fe57779faef368840d0bd1f42f216291f0dc4ace4744" dependencies = [ "bit-set", "bit-vec", - "bitflags 2.11.0", + "bitflags", "num-traits", "rand 0.9.2", "rand_chacha 0.9.0", @@ -4979,102 +4079,6 @@ dependencies = [ "unarray", ] -[[package]] -name = "prost" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29" -dependencies = [ - "bytes", - "prost-derive 0.12.6", -] - -[[package]] -name = "prost" -version = "0.13.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2796faa41db3ec313a31f7624d9286acf277b52de526150b7e69f3debf891ee5" -dependencies = [ - "bytes", - "prost-derive 0.13.5", -] - -[[package]] -name = "prost" -version = "0.14.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2ea70524a2f82d518bce41317d0fae74151505651af45faf1ffbd6fd33f0568" -dependencies = [ - "bytes", - "prost-derive 0.14.3", -] - -[[package]] -name = "prost-derive" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" -dependencies = [ - "anyhow", - "itertools 0.10.5", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "prost-derive" -version = "0.13.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a56d757972c98b346a9b766e3f02746cde6dd1cd1d1d563472929fdd74bec4d" -dependencies = [ - "anyhow", - "itertools 0.10.5", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "prost-derive" -version = "0.14.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27c6023962132f4b30eb4c172c91ce92d933da334c59c23cddee82358ddafb0b" -dependencies = [ - "anyhow", - "itertools 0.10.5", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "prost-types" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0" -dependencies = [ - "prost 0.12.6", -] - -[[package]] -name = "prost-types" -version = "0.13.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52c2c1bf36ddb1a1c396b3601a3cec27c2462e45f07c386894ec3ccf5332bd16" -dependencies = [ - "prost 0.13.5", -] - -[[package]] -name = "prost-types" -version = "0.14.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8991c4cbdb8bc5b11f0b074ffe286c30e523de90fee5ba8132f1399f23cb3dd7" -dependencies = [ - "prost 0.14.3", -] - [[package]] name = "pyo3" version = "0.28.2" @@ -5154,8 +4158,8 @@ dependencies = [ "quinn-udp", "rustc-hash", "rustls", - "socket2 0.6.3", - "thiserror 2.0.18", + "socket2", + "thiserror", "tokio", "tracing", "web-time", @@ -5176,7 +4180,7 @@ dependencies = [ "rustls", "rustls-pki-types", "slab", - "thiserror 2.0.18", + "thiserror", "tinyvec", "tracing", "web-time", @@ -5191,7 +4195,7 @@ dependencies = [ "cfg_aliases", "libc", "once_cell", - "socket2 0.6.3", + "socket2", "tracing", "windows-sys 0.60.2", ] @@ -5309,7 +4313,7 @@ version = "0.5.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" dependencies = [ - "bitflags 2.11.0", + "bitflags", ] [[package]] @@ -5355,12 +4359,6 @@ dependencies = [ "regex-syntax", ] -[[package]] -name = "regex-lite" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cab834c73d247e67f4fae452806d17d3c7501756d98c8808d7c9c7aa7d18f973" - [[package]] name = "regex-syntax" version = "0.8.10" @@ -5376,22 +4374,18 @@ dependencies = [ "base64", "bytes", "futures-core", - "futures-util", - "h2", - "http 1.4.0", - "http-body 1.0.1", + "http", + "http-body", "http-body-util", "hyper", "hyper-rustls", "hyper-util", "js-sys", "log", - "mime_guess", "percent-encoding", "pin-project-lite", "quinn", "rustls", - "rustls-native-certs", "rustls-pki-types", "serde", "serde_json", @@ -5399,14 +4393,12 @@ dependencies = [ "sync_wrapper", "tokio", "tokio-rustls", - "tokio-util", "tower", "tower-http", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", - "wasm-streams", "web-sys", "webpki-roots 1.0.6", ] @@ -5417,7 +4409,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" dependencies = [ - "hmac 0.12.1", + "hmac", "subtle", ] @@ -5479,16 +4471,6 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" -[[package]] -name = "rusb" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab9f9ff05b63a786553a4c02943b74b34a988448671001e9a27e2f0565cc05a4" -dependencies = [ - "libc", - "libusb1-sys", -] - [[package]] name = "rustc-hash" version = "2.1.1" @@ -5525,7 +4507,7 @@ version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" dependencies = [ - "bitflags 2.11.0", + "bitflags", "errno", "libc", "linux-raw-sys", @@ -5538,7 +4520,6 @@ version = "0.23.37" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "758025cb5fccfd3bc2fd74708fd4682be41d99e5dff73c377c0646c6012c73a4" dependencies = [ - "log", "once_cell", "ring", "rustls-pki-types", @@ -5547,18 +4528,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "rustls-native-certs" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "612460d5f7bea540c490b2b6395d8e34a953e52b491accd6c86c8164c5932a63" -dependencies = [ - "openssl-probe", - "rustls-pki-types", - "schannel", - "security-framework", -] - [[package]] name = "rustls-pki-types" version = "1.14.0" @@ -5613,15 +4582,6 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "schannel" -version = "0.1.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91c1b7e4904c873ef0710c1f407dde2e6287de2bebc1bbbf7d430bb7cbffd939" -dependencies = [ - "windows-sys 0.61.2", -] - [[package]] name = "schemars" version = "0.9.0" @@ -5688,42 +4648,6 @@ dependencies = [ "cc", ] -[[package]] -name = "secret-vault-value" -version = "0.3.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "662c7f8e99d46c9d3a87561d771a970c29efaccbab4bbdc6ab65d099d2358077" -dependencies = [ - "prost 0.14.3", - "prost-types 0.14.3", - "serde", - "serde_json", - "zeroize", -] - -[[package]] -name = "security-framework" -version = "3.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7f4bc775c73d9a02cde8bf7b2ec4c9d12743edf609006c7facc23998404cd1d" -dependencies = [ - "bitflags 2.11.0", - "core-foundation", - "core-foundation-sys", - "libc", - "security-framework-sys", -] - -[[package]] -name = "security-framework-sys" -version = "2.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ce2691df843ecc5d231c0b14ece2acc3efb62c0a398c7e1d875f3983ce020e3" -dependencies = [ - "core-foundation-sys", - "libc", -] - [[package]] name = "semver" version = "0.11.0" @@ -5863,7 +4787,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ "cfg-if", - "cpufeatures 0.2.17", + "cpufeatures", "digest 0.10.7", ] @@ -5874,21 +4798,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" dependencies = [ "cfg-if", - "cpufeatures 0.2.17", + "cpufeatures", "digest 0.10.7", ] -[[package]] -name = "sha2" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "446ba717509524cb3f22f17ecc096f10f4822d76ab5c0b9822c5f9c284e825f4" -dependencies = [ - "cfg-if", - "cpufeatures 0.3.0", - "digest 0.11.3", -] - [[package]] name = "sha3" version = "0.10.8" @@ -5946,18 +4859,6 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" -[[package]] -name = "simple_asn1" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d585997b0ac10be3c5ee635f1bab02d512760d14b7c468801ac8a01d9ae5f1d" -dependencies = [ - "num-bigint", - "num-traits", - "thiserror 2.0.18", - "time", -] - [[package]] name = "siphasher" version = "1.0.2" @@ -5985,16 +4886,6 @@ version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b6b67fb9a61334225b5b790716f609cd58395f895b3fe8b328786812a40bc3b" -[[package]] -name = "socket2" -version = "0.5.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e22376abed350d73dd1cd119b57ffccad95b4e585a7cda43e286245ce23c0678" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - [[package]] name = "socket2" version = "0.6.3" @@ -6182,33 +5073,13 @@ dependencies = [ "syn 2.0.117", ] -[[package]] -name = "thiserror" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" -dependencies = [ - "thiserror-impl 1.0.69", -] - [[package]] name = "thiserror" version = "2.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4" dependencies = [ - "thiserror-impl 2.0.18", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", + "thiserror-impl", ] [[package]] @@ -6326,7 +5197,7 @@ dependencies = [ "libc", "mio", "pin-project-lite", - "socket2 0.6.3", + "socket2", "tokio-macros", "windows-sys 0.61.2", ] @@ -6423,37 +5294,6 @@ dependencies = [ "winnow 1.0.0", ] -[[package]] -name = "tonic" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e581ba15a835f4d9ea06c55ab1bd4dce26fc53752c69a04aac00703bfb49ba9" -dependencies = [ - "async-trait", - "axum", - "base64", - "bytes", - "h2", - "http 1.4.0", - "http-body 1.0.1", - "http-body-util", - "hyper", - "hyper-timeout", - "hyper-util", - "percent-encoding", - "pin-project 1.1.11", - "prost 0.13.5", - "rustls-native-certs", - "socket2 0.5.10", - "tokio", - "tokio-rustls", - "tokio-stream", - "tower", - "tower-layer", - "tower-service", - "tracing", -] - [[package]] name = "tower" version = "0.5.3" @@ -6462,15 +5302,11 @@ checksum = "ebe5ef63511595f1344e2d5cfa636d973292adc0eec1f0ad45fae9f0851ab1d4" dependencies = [ "futures-core", "futures-util", - "indexmap 2.13.0", "pin-project-lite", - "slab", "sync_wrapper", "tokio", - "tokio-util", "tower-layer", "tower-service", - "tracing", ] [[package]] @@ -6479,18 +5315,13 @@ version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8" dependencies = [ - "async-compression", - "bitflags 2.11.0", + "bitflags", "bytes", - "futures-core", "futures-util", - "http 1.4.0", - "http-body 1.0.1", - "http-body-util", + "http", + "http-body", "iri-string", "pin-project-lite", - "tokio", - "tokio-util", "tower", "tower-layer", "tower-service", @@ -6508,18 +5339,6 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" -[[package]] -name = "tower-util" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1093c19826d33807c72511e68f73b4a0469a3f22c2bd5f7d5212178b4b89674" -dependencies = [ - "futures-core", - "futures-util", - "pin-project 0.4.30", - "tower-service", -] - [[package]] name = "tracing" version = "0.1.44" @@ -6595,51 +5414,17 @@ checksum = "4793cb5e56680ecbb1d843515b23b6de9a75eb04b66643e256a396d43be33c13" dependencies = [ "bytes", "data-encoding", - "http 1.4.0", + "http", "httparse", "log", "rand 0.9.2", "rustls", "rustls-pki-types", "sha1", - "thiserror 2.0.18", + "thiserror", "utf-8", ] -[[package]] -name = "turnkey_api_key_stamper" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3b72664037582371dfa96bfaa2e272446ea2551e269455e9fe3166445c76736" -dependencies = [ - "base64", - "hex", - "k256", - "p256", - "rand_core 0.6.4", - "serde", - "serde_json", - "thiserror 2.0.18", -] - -[[package]] -name = "turnkey_client" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cbf8cea094b6536ecc5cfad42cd45d2f9abf523cc7dacf7de23f132412d0ec3" -dependencies = [ - "mime", - "prost 0.12.6", - "prost-types 0.12.6", - "reqwest", - "serde", - "serde_json", - "serde_with", - "thiserror 2.0.18", - "tokio", - "turnkey_api_key_stamper", -] - [[package]] name = "twox-hash" version = "2.1.2" @@ -6676,12 +5461,6 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" -[[package]] -name = "unicase" -version = "2.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbc4bc3a9f746d862c45cb89d705aa10f187bb96c76001afab07a0d35ce60142" - [[package]] name = "unicode-ident" version = "1.0.24" @@ -6725,12 +5504,6 @@ dependencies = [ "serde_derive", ] -[[package]] -name = "urlencoding" -version = "2.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" - [[package]] name = "utf-8" version = "0.7.6" @@ -6766,24 +5539,12 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" -[[package]] -name = "vcpkg" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" - [[package]] name = "version_check" version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" -[[package]] -name = "vsimd" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" - [[package]] name = "wait-timeout" version = "0.2.1" @@ -6917,26 +5678,13 @@ dependencies = [ "wasmparser", ] -[[package]] -name = "wasm-streams" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15053d8d85c7eccdbefef60f06769760a563c7f0a9d6902a13d35c7800b0ad65" -dependencies = [ - "futures-util", - "js-sys", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - [[package]] name = "wasmparser" version = "0.244.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe" dependencies = [ - "bitflags 2.11.0", + "bitflags", "hashbrown 0.15.5", "indexmap 2.13.0", "semver 1.0.27", @@ -7294,7 +6042,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2" dependencies = [ "anyhow", - "bitflags 2.11.0", + "bitflags", "indexmap 2.13.0", "log", "serde", @@ -7343,7 +6091,7 @@ dependencies = [ "pharos", "rustc_version 0.4.1", "send_wrapper", - "thiserror 2.0.18", + "thiserror", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -7358,12 +6106,6 @@ dependencies = [ "tap", ] -[[package]] -name = "xmlparser" -version = "0.13.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66fee0b777b0f5ac1c69bb06d361268faafa61cd4682ae064a171c16c433e9e4" - [[package]] name = "yansi" version = "1.0.1" diff --git a/Cargo.toml b/Cargo.toml index 29391c4..1f8b656 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,20 +10,22 @@ license = "Apache-2.0" [features] -eip712 = ["alloy/eip712"] +eip712 = ["alloy-dyn-abi/eip712"] [dependencies] async-stream = { version = "0.3" } async-trait = { version = "0.1" } -alloy = { version = "1", default-features = false, features = [ - "dyn-abi", - "json-abi", - "network", - "providers", - "rpc-types-eth", +alloy-dyn-abi = { version = "1", default-features = false, features = ["std"] } +alloy-json-abi = { version = "1", default-features = false, features = ["std"] } +alloy-network = { version = "1", default-features = false } +alloy-primitives = { version = "1", default-features = false, features = ["std"] } +alloy-provider = { version = "1", default-features = false } +alloy-rpc-types-eth = { version = "1", default-features = false, features = [ "std", + "serde", ] } +alloy-transport = { version = "1", default-features = false } datafusion = { version = "53", default-features = false, features = ["sql"] } futures = { version = "0.3" } serde_json = { version = "1" } @@ -33,14 +35,14 @@ tracing = { version = "0.1", default-features = false } [dev-dependencies] -alloy = { version = "1", default-features = false, features = [ - "contract", - "node-bindings", - "provider-http", - "provider-ws", +alloy-contract = { version = "1", default-features = false } +alloy-node-bindings = { version = "1", default-features = false } +alloy-provider = { version = "1", default-features = false, features = [ + "ws", + "reqwest", "reqwest-rustls-tls", - "sol-types", ] } +alloy-sol-types = { version = "1", default-features = false, features = ["std"] } datafusion = { version = "53", default-features = false, features = [ "parquet", ] } @@ -49,6 +51,7 @@ indoc = { version = "2" } pretty_assertions = { version = "1" } test-log = { version = "0.2", features = ["trace"] } tokio = { version = "1", default-features = false, features = [ + "macros", "rt-multi-thread", ] } tracing-subscriber = { version = "0.3" } diff --git a/examples/eth.rs b/examples/eth.rs index abf0f0f..01feac1 100644 --- a/examples/eth.rs +++ b/examples/eth.rs @@ -1,6 +1,7 @@ use std::sync::Arc; -use alloy::providers::{Provider, ProviderBuilder}; +use alloy_network::AnyNetwork; +use alloy_provider::{Provider, ProviderBuilder}; use datafusion::prelude::*; #[tokio::main] @@ -12,7 +13,7 @@ async fn main() { tracing::info!(url, "Fetching data from Ethereum Mainnet"); - let rpc_client = ProviderBuilder::new_with_network::() + let rpc_client = ProviderBuilder::new_with_network::() .connect(url) .await .unwrap() diff --git a/examples/peaq.rs b/examples/peaq.rs index e337aec..53470f8 100644 --- a/examples/peaq.rs +++ b/examples/peaq.rs @@ -1,6 +1,7 @@ use std::sync::Arc; -use alloy::providers::{Provider, ProviderBuilder}; +use alloy_network::AnyNetwork; +use alloy_provider::{Provider, ProviderBuilder}; use datafusion::prelude::*; #[tokio::main] @@ -11,7 +12,7 @@ async fn main() { tracing::info!(url, "Fetching data from PEAQ network"); - let rpc_client = ProviderBuilder::new_with_network::() + let rpc_client = ProviderBuilder::new_with_network::() .connect(url) .await .unwrap() diff --git a/src/config.rs b/src/config.rs index 9e53d16..e4150d9 100644 --- a/src/config.rs +++ b/src/config.rs @@ -1,4 +1,4 @@ -use alloy::rpc::types::eth::{BlockNumberOrTag, Filter}; +use alloy_rpc_types_eth::{BlockNumberOrTag, Filter}; use datafusion::{ config::{ConfigEntry, ConfigExtension, ExtensionOptions}, error::DataFusionError, diff --git a/src/convert/decoded.rs b/src/convert/decoded.rs index 5be932b..4f06a79 100644 --- a/src/convert/decoded.rs +++ b/src/convert/decoded.rs @@ -1,7 +1,7 @@ -use alloy::dyn_abi::{DecodedEvent, DynSolEvent, DynSolType, DynSolValue, Specifier}; -use alloy::json_abi::{Event, EventParam}; -use alloy::primitives::Sign; -use alloy::rpc::types::eth::Log; +use alloy_dyn_abi::{DecodedEvent, DynSolEvent, DynSolType, DynSolValue, Specifier}; +use alloy_json_abi::{Event, EventParam}; +use alloy_primitives::Sign; +use alloy_rpc_types_eth::Log; use datafusion::arrow::array::{self, Array, ArrayBuilder, RecordBatch}; use datafusion::arrow::datatypes::{DataType, Field, Schema, SchemaRef}; use std::sync::Arc; @@ -47,8 +47,8 @@ impl EthDecodedLogsToArrow { } } - pub fn new_from_signature(signature: &str) -> Result { - let event_type = alloy::json_abi::Event::parse(signature)?; + pub fn new_from_signature(signature: &str) -> Result { + let event_type = alloy_json_abi::Event::parse(signature)?; let resolved_type = event_type.resolve()?; Ok(Self::new(event_type, resolved_type)) } diff --git a/src/convert/hybrid.rs b/src/convert/hybrid.rs index 55a85bf..5148ca5 100644 --- a/src/convert/hybrid.rs +++ b/src/convert/hybrid.rs @@ -1,6 +1,6 @@ -use alloy::dyn_abi::{DynSolEvent, Specifier}; -use alloy::json_abi::Event; -use alloy::rpc::types::eth::Log; +use alloy_dyn_abi::{DynSolEvent, Specifier}; +use alloy_json_abi::Event; +use alloy_rpc_types_eth::Log; use datafusion::arrow::array::RecordBatch; use datafusion::arrow::datatypes::{DataType, Field, SchemaBuilder, SchemaRef}; use std::sync::Arc; @@ -40,8 +40,8 @@ impl EthRawAndDecodedLogsToArrow { pub fn new_from_signature( options: &StreamOptions, signature: &str, - ) -> Result { - let event_type = alloy::json_abi::Event::parse(signature)?; + ) -> Result { + let event_type = alloy_json_abi::Event::parse(signature)?; let resolved_type = event_type.resolve()?; Ok(Self::new(options, event_type, resolved_type)) } diff --git a/src/convert/mod.rs b/src/convert/mod.rs index 7255741..5eb86df 100644 --- a/src/convert/mod.rs +++ b/src/convert/mod.rs @@ -2,7 +2,8 @@ mod decoded; mod hybrid; mod raw; -use alloy::rpc::types::eth::{Filter, Log}; +use alloy_dyn_abi::Error as DynAbiError; +use alloy_rpc_types_eth::{Filter, Log}; use datafusion::arrow::array::RecordBatch; use datafusion::arrow::datatypes::SchemaRef; pub use decoded::*; @@ -28,7 +29,7 @@ pub trait Transcoder { #[derive(Debug, thiserror::Error)] pub enum AppendError { #[error(transparent)] - EventDecodingError(#[from] alloy::dyn_abi::Error), + EventDecodingError(#[from] DynAbiError), } /////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/src/convert/raw.rs b/src/convert/raw.rs index 57e4d40..2cb4524 100644 --- a/src/convert/raw.rs +++ b/src/convert/raw.rs @@ -1,4 +1,4 @@ -use alloy::rpc::types::eth::Log; +use alloy_rpc_types_eth::Log; use datafusion::arrow::array::{self, ArrayBuilder}; use datafusion::arrow::datatypes::{DataType, Field, Schema, SchemaRef, TimeUnit}; use std::sync::Arc; diff --git a/src/provider.rs b/src/provider.rs index a03cbf8..098cfab 100644 --- a/src/provider.rs +++ b/src/provider.rs @@ -1,6 +1,7 @@ -use alloy::primitives::{Address, B256}; -use alloy::providers::DynProvider; -use alloy::rpc::types::eth::{BlockNumberOrTag, Filter, FilterBlockOption}; +use alloy_network::AnyNetwork; +use alloy_primitives::{Address, B256}; +use alloy_provider::DynProvider; +use alloy_rpc_types_eth::{BlockNumberOrTag, Filter, FilterBlockOption}; use datafusion::catalog::{CatalogProvider, SchemaProvider, Session}; use datafusion::error::{DataFusionError, Result as DfResult}; use datafusion::execution::TaskContext; @@ -31,14 +32,11 @@ use crate::utils::*; #[derive(Debug)] pub struct EthCatalog { config: EthProviderConfig, - rpc_client: DynProvider, + rpc_client: DynProvider, } impl EthCatalog { - pub fn new( - config: EthProviderConfig, - rpc_client: DynProvider, - ) -> Self { + pub fn new(config: EthProviderConfig, rpc_client: DynProvider) -> Self { Self { config, rpc_client } } } @@ -71,14 +69,11 @@ impl CatalogProvider for EthCatalog { #[derive(Debug)] pub struct EthSchema { config: EthProviderConfig, - rpc_client: DynProvider, + rpc_client: DynProvider, } impl EthSchema { - pub fn new( - config: EthProviderConfig, - rpc_client: DynProvider, - ) -> Self { + pub fn new(config: EthProviderConfig, rpc_client: DynProvider) -> Self { Self { config, rpc_client } } } @@ -115,14 +110,11 @@ impl SchemaProvider for EthSchema { #[derive(Debug)] pub struct EthLogsTable { schema: SchemaRef, - rpc_client: DynProvider, + rpc_client: DynProvider, } impl EthLogsTable { - pub fn new( - config: &EthProviderConfig, - rpc_client: DynProvider, - ) -> Self { + pub fn new(config: &EthProviderConfig, rpc_client: DynProvider) -> Self { let encoder = crate::convert::EthRawLogsToArrow::new(&config.stream_options()); let schema = encoder.schema(); @@ -403,7 +395,7 @@ impl TableProvider for EthLogsTable { pub struct EthGetLogs { projected_schema: SchemaRef, projection: Option>, - rpc_client: DynProvider, + rpc_client: DynProvider, filter: Filter, stream_options: StreamOptions, limit: Option, @@ -412,7 +404,7 @@ pub struct EthGetLogs { impl EthGetLogs { pub fn new( - rpc_client: DynProvider, + rpc_client: DynProvider, projected_schema: SchemaRef, projection: Option>, filter: Filter, @@ -454,7 +446,7 @@ impl EthGetLogs { } fn execute_impl( - rpc_client: DynProvider, + rpc_client: DynProvider, filter: Filter, options: StreamOptions, projection: Option>, diff --git a/src/stream.rs b/src/stream.rs index 13ccb8a..4e1bec9 100644 --- a/src/stream.rs +++ b/src/stream.rs @@ -1,8 +1,7 @@ -use alloy::{ - providers::{DynProvider, Provider}, - rpc::types::eth::{BlockNumberOrTag, Filter, FilterBlockOption, Log}, - transports::{RpcError, TransportErrorKind}, -}; +use alloy_network::AnyNetwork; +use alloy_provider::{DynProvider, Provider}; +use alloy_rpc_types_eth::{BlockNumberOrTag, Filter, FilterBlockOption, Log}; +use alloy_transport::{RpcError, TransportErrorKind}; /////////////////////////////////////////////////////////////////////////////////////////////////// @@ -54,7 +53,7 @@ impl RawLogsStream { // TODO: Re-org detection and handling /// Streams batches of raw logs efficient and resumable pagination over `eth_getLogs` RPC endpoint, pub fn paginate( - rpc_client: DynProvider, + rpc_client: DynProvider, mut filter: Filter, options: StreamOptions, resume_from_state: Option, @@ -127,7 +126,7 @@ impl RawLogsStream { /// and approximates the timestamps for blocks in between by interpolating. /// NOTE: This might not be reproducible if stride changes between runs async fn populate_block_timestamps_fallback( - rpc_client: &DynProvider, + rpc_client: &DynProvider, logs: &mut [Log], ) -> Result<(), RpcError> { let first_log = logs.first().unwrap(); @@ -167,7 +166,7 @@ impl RawLogsStream { } pub async fn filter_to_block_range( - rpc_client: &DynProvider, + rpc_client: &DynProvider, block_option: &FilterBlockOption, ) -> Result<(u64, u64), RpcError> { match block_option { diff --git a/src/udf.rs b/src/udf.rs index 0502408..405dccf 100644 --- a/src/udf.rs +++ b/src/udf.rs @@ -1,10 +1,10 @@ use std::any::Any; use std::sync::Arc; -use alloy::dyn_abi::{DecodedEvent, DynSolValue, EventExt as _}; -use alloy::hex::ToHexExt; -use alloy::json_abi::Event; -use alloy::primitives::B256; +use alloy_dyn_abi::{DecodedEvent, DynSolValue, EventExt as _}; +use alloy_json_abi::Event; +use alloy_primitives::B256; +use alloy_primitives::hex::ToHexExt; use datafusion::arrow::array::{self, Array as _}; use datafusion::error::DataFusionError; use datafusion::execution::FunctionRegistry; diff --git a/src/utils.rs b/src/utils.rs index 569e290..fa2709c 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -1,4 +1,4 @@ -use alloy::rpc::types::eth::{BlockNumberOrTag, Filter, FilterBlockOption}; +use alloy_rpc_types_eth::{BlockNumberOrTag, Filter, FilterBlockOption}; /////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/tests/tests/chain.rs b/tests/tests/chain.rs index 66d94e3..8fb14f2 100644 --- a/tests/tests/chain.rs +++ b/tests/tests/chain.rs @@ -1,14 +1,11 @@ use std::{path::PathBuf, sync::Arc}; -use alloy::hex::ToHexExt; -use alloy::network::AnyNetwork; -use alloy::providers::{DynProvider, Provider}; -use alloy::sol; -use alloy::{ - node_bindings::{Anvil, AnvilInstance}, - primitives::Address, - providers::ProviderBuilder, -}; +use alloy_network::AnyNetwork; +use alloy_node_bindings::{Anvil, AnvilInstance}; +use alloy_primitives::Address; +use alloy_primitives::hex::ToHexExt; +use alloy_provider::{DynProvider, Provider, ProviderBuilder}; +use alloy_sol_types::sol; use tokio::sync::{Mutex, MutexGuard}; /////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/tests/tests/test_convert.rs b/tests/tests/test_convert.rs index d49899c..2f4aaea 100644 --- a/tests/tests/test_convert.rs +++ b/tests/tests/test_convert.rs @@ -1,13 +1,12 @@ use std::sync::Arc; -use alloy::dyn_abi::Specifier; -use alloy::hex; -use alloy::providers::Provider; -use alloy::{ - primitives::{Address, B256}, - providers::ProviderBuilder, - rpc::types::eth::{BlockNumberOrTag, FilterBlockOption, FilterSet, Log}, -}; +use alloy_dyn_abi::Specifier; +use alloy_network::AnyNetwork; +use alloy_primitives::hex; +use alloy_primitives::{Address, B256, Log as PrimitiveLog}; +use alloy_provider::{Provider, ProviderBuilder}; +use alloy_rpc_types_eth::{BlockNumberOrTag, FilterBlockOption, FilterSet, Log}; +use alloy_sol_types::sol; use datafusion::prelude::*; use datafusion_ethers::convert::Transcoder as _; use datafusion_ethers::stream::StreamOptions; @@ -15,7 +14,7 @@ use indoc::indoc; /////////////////////////////////////////////////////////////////////////////////////////////////// -alloy::sol! { +sol! { event SendRequest(uint64 indexed requestId, address indexed consumerAddr, bytes request); } @@ -28,7 +27,7 @@ fn get_sample_log() -> Log { request: hex!("ff00bbaa").into(), }; - let inner = alloy::primitives::Log::::new_from_event_unchecked( + let inner = PrimitiveLog::::new_from_event_unchecked( "bbccddaabbccddaabbccddaabbccddaabbccddaa".parse().unwrap(), event, ) @@ -106,7 +105,7 @@ async fn test_raw_logs_to_record_batch() { #[test_log::test(tokio::test)] async fn test_decoded_logs_to_record_batch() { - let event = alloy::json_abi::Event::parse( + let event = alloy_json_abi::Event::parse( "event SendRequest(uint64 indexed requestId, address indexed consumerAddr, bytes request)", ) .unwrap(); @@ -357,7 +356,7 @@ async fn test_udf_eth_event_selector() { #[test_log::test(tokio::test)] async fn test_sql_to_pushdown_filter() { - let rpc_client = ProviderBuilder::new_with_network::() + let rpc_client = ProviderBuilder::new_with_network::() .connect("http://localhost:12345") .await .unwrap() diff --git a/tests/tests/test_stream.rs b/tests/tests/test_stream.rs index 3bd50fd..62853b9 100644 --- a/tests/tests/test_stream.rs +++ b/tests/tests/test_stream.rs @@ -1,8 +1,6 @@ -use alloy::{ - network::AnyNetwork, - providers::DynProvider, - rpc::types::eth::{BlockNumberOrTag, Filter}, -}; +use alloy_network::AnyNetwork; +use alloy_provider::DynProvider; +use alloy_rpc_types_eth::{BlockNumberOrTag, Filter}; use datafusion_ethers::stream::{StreamOptions, StreamState}; use futures::TryStreamExt as _; From 026877a356224349f3119808e3d6e163c5012dce Mon Sep 17 00:00:00 2001 From: Dima Pristupa Date: Fri, 22 May 2026 18:33:59 +0300 Subject: [PATCH 2/6] Alloy breakdown --- CHANGELOG.md | 4 ++++ Cargo.lock | 2 +- Cargo.toml | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 947f1e3..c22e94d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [53.0.2] - 2026-05-22 +### Changed +- Use `alloy` sub-crates directly instead of the meta-crate to reduce bloat + ## [53.0.1] - 2026-05-19 ### Added - Added `eip712` feature diff --git a/Cargo.lock b/Cargo.lock index 2088fef..d461801 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2024,7 +2024,7 @@ checksum = "5c93ad9e37730d2c7196e68616f3f2dd3b04c892e03acd3a8eeca6e177f3c06a" [[package]] name = "datafusion-ethers" -version = "53.0.1" +version = "53.0.2" dependencies = [ "alloy-contract", "alloy-dyn-abi", diff --git a/Cargo.toml b/Cargo.toml index 1f8b656..e716c8e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "datafusion-ethers" -version = "53.0.1" +version = "53.0.2" edition = "2024" repository = "https://github.com/kamu-data/datafusion-ethers" description = "Ethereum RPC bridge for Apache Datafusion" From a83034d233f4fb9880f82458520575722359e317 Mon Sep 17 00:00:00 2001 From: Dima Pristupa Date: Fri, 22 May 2026 18:48:49 +0300 Subject: [PATCH 3/6] alloy-core --- Cargo.lock | 21 +++++++++++++++++---- Cargo.toml | 12 +++++++----- src/convert/decoded.rs | 10 +++++----- src/convert/hybrid.rs | 9 +++++---- src/convert/mod.rs | 2 +- src/provider.rs | 2 +- src/udf.rs | 8 ++++---- tests/tests/chain.rs | 6 +++--- tests/tests/test_convert.rs | 11 ++++++----- 9 files changed, 49 insertions(+), 32 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d461801..35d0bb3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -126,6 +126,19 @@ dependencies = [ "thiserror", ] +[[package]] +name = "alloy-core" +version = "1.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23e8604b0c092fabc80d075ede181c9b9e596249c70b99253082d7e689836529" +dependencies = [ + "alloy-dyn-abi", + "alloy-json-abi", + "alloy-primitives", + "alloy-rlp", + "alloy-sol-types", +] + [[package]] name = "alloy-dyn-abi" version = "1.5.7" @@ -562,6 +575,7 @@ version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "489f1620bb7e2483fb5819ed01ab6edc1d2f93939dce35a5695085a1afd1d699" dependencies = [ + "alloy-json-abi", "alloy-sol-macro-input", "const-hex", "heck", @@ -580,12 +594,14 @@ version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56cef806ad22d4392c5fc83cf8f2089f988eb99c7067b4e0c6f1971fc1cca318" dependencies = [ + "alloy-json-abi", "const-hex", "dunce", "heck", "macro-string", "proc-macro2", "quote", + "serde_json", "syn 2.0.117", "syn-solidity", ] @@ -2027,14 +2043,11 @@ name = "datafusion-ethers" version = "53.0.2" dependencies = [ "alloy-contract", - "alloy-dyn-abi", - "alloy-json-abi", + "alloy-core", "alloy-network", "alloy-node-bindings", - "alloy-primitives", "alloy-provider", "alloy-rpc-types-eth", - "alloy-sol-types", "alloy-transport", "async-stream", "async-trait", diff --git a/Cargo.toml b/Cargo.toml index e716c8e..74a26f9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,16 +10,18 @@ license = "Apache-2.0" [features] -eip712 = ["alloy-dyn-abi/eip712"] +eip712 = ["alloy-core/eip712"] [dependencies] async-stream = { version = "0.3" } async-trait = { version = "0.1" } -alloy-dyn-abi = { version = "1", default-features = false, features = ["std"] } -alloy-json-abi = { version = "1", default-features = false, features = ["std"] } +alloy-core = { version = "1.5.7", default-features = false, features = [ + "std", + "dyn-abi", + "json-abi", +] } alloy-network = { version = "1", default-features = false } -alloy-primitives = { version = "1", default-features = false, features = ["std"] } alloy-provider = { version = "1", default-features = false } alloy-rpc-types-eth = { version = "1", default-features = false, features = [ "std", @@ -42,7 +44,7 @@ alloy-provider = { version = "1", default-features = false, features = [ "reqwest", "reqwest-rustls-tls", ] } -alloy-sol-types = { version = "1", default-features = false, features = ["std"] } +alloy-core = { version = "1", default-features = false, features = ["sol-types"] } datafusion = { version = "53", default-features = false, features = [ "parquet", ] } diff --git a/src/convert/decoded.rs b/src/convert/decoded.rs index 4f06a79..9e8b36d 100644 --- a/src/convert/decoded.rs +++ b/src/convert/decoded.rs @@ -1,6 +1,6 @@ -use alloy_dyn_abi::{DecodedEvent, DynSolEvent, DynSolType, DynSolValue, Specifier}; -use alloy_json_abi::{Event, EventParam}; -use alloy_primitives::Sign; +use alloy_core::dyn_abi::{DecodedEvent, DynSolEvent, DynSolType, DynSolValue, Specifier}; +use alloy_core::json_abi::{Event, EventParam}; +use alloy_core::primitives::Sign; use alloy_rpc_types_eth::Log; use datafusion::arrow::array::{self, Array, ArrayBuilder, RecordBatch}; use datafusion::arrow::datatypes::{DataType, Field, Schema, SchemaRef}; @@ -47,8 +47,8 @@ impl EthDecodedLogsToArrow { } } - pub fn new_from_signature(signature: &str) -> Result { - let event_type = alloy_json_abi::Event::parse(signature)?; + pub fn new_from_signature(signature: &str) -> Result { + let event_type = Event::parse(signature)?; let resolved_type = event_type.resolve()?; Ok(Self::new(event_type, resolved_type)) } diff --git a/src/convert/hybrid.rs b/src/convert/hybrid.rs index 5148ca5..ef63456 100644 --- a/src/convert/hybrid.rs +++ b/src/convert/hybrid.rs @@ -1,5 +1,6 @@ -use alloy_dyn_abi::{DynSolEvent, Specifier}; -use alloy_json_abi::Event; +use alloy_core::dyn_abi::Error as DynAbiError; +use alloy_core::dyn_abi::{DynSolEvent, Specifier}; +use alloy_core::json_abi::Event; use alloy_rpc_types_eth::Log; use datafusion::arrow::array::RecordBatch; use datafusion::arrow::datatypes::{DataType, Field, SchemaBuilder, SchemaRef}; @@ -40,8 +41,8 @@ impl EthRawAndDecodedLogsToArrow { pub fn new_from_signature( options: &StreamOptions, signature: &str, - ) -> Result { - let event_type = alloy_json_abi::Event::parse(signature)?; + ) -> Result { + let event_type = Event::parse(signature)?; let resolved_type = event_type.resolve()?; Ok(Self::new(options, event_type, resolved_type)) } diff --git a/src/convert/mod.rs b/src/convert/mod.rs index 5eb86df..70c0453 100644 --- a/src/convert/mod.rs +++ b/src/convert/mod.rs @@ -2,7 +2,7 @@ mod decoded; mod hybrid; mod raw; -use alloy_dyn_abi::Error as DynAbiError; +use alloy_core::dyn_abi::Error as DynAbiError; use alloy_rpc_types_eth::{Filter, Log}; use datafusion::arrow::array::RecordBatch; use datafusion::arrow::datatypes::SchemaRef; diff --git a/src/provider.rs b/src/provider.rs index 098cfab..3d6a08b 100644 --- a/src/provider.rs +++ b/src/provider.rs @@ -1,5 +1,5 @@ use alloy_network::AnyNetwork; -use alloy_primitives::{Address, B256}; +use alloy_core::primitives::{Address, B256}; use alloy_provider::DynProvider; use alloy_rpc_types_eth::{BlockNumberOrTag, Filter, FilterBlockOption}; use datafusion::catalog::{CatalogProvider, SchemaProvider, Session}; diff --git a/src/udf.rs b/src/udf.rs index 405dccf..4a99a99 100644 --- a/src/udf.rs +++ b/src/udf.rs @@ -1,10 +1,10 @@ use std::any::Any; use std::sync::Arc; -use alloy_dyn_abi::{DecodedEvent, DynSolValue, EventExt as _}; -use alloy_json_abi::Event; -use alloy_primitives::B256; -use alloy_primitives::hex::ToHexExt; +use alloy_core::dyn_abi::{DecodedEvent, DynSolValue, EventExt as _}; +use alloy_core::hex::ToHexExt; +use alloy_core::json_abi::Event; +use alloy_core::primitives::B256; use datafusion::arrow::array::{self, Array as _}; use datafusion::error::DataFusionError; use datafusion::execution::FunctionRegistry; diff --git a/tests/tests/chain.rs b/tests/tests/chain.rs index 8fb14f2..ba41d5e 100644 --- a/tests/tests/chain.rs +++ b/tests/tests/chain.rs @@ -1,11 +1,11 @@ use std::{path::PathBuf, sync::Arc}; +use alloy_core::hex::ToHexExt; +use alloy_core::primitives::Address; +use alloy_core::sol; use alloy_network::AnyNetwork; use alloy_node_bindings::{Anvil, AnvilInstance}; -use alloy_primitives::Address; -use alloy_primitives::hex::ToHexExt; use alloy_provider::{DynProvider, Provider, ProviderBuilder}; -use alloy_sol_types::sol; use tokio::sync::{Mutex, MutexGuard}; /////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/tests/tests/test_convert.rs b/tests/tests/test_convert.rs index 2f4aaea..416fef8 100644 --- a/tests/tests/test_convert.rs +++ b/tests/tests/test_convert.rs @@ -1,12 +1,13 @@ use std::sync::Arc; -use alloy_dyn_abi::Specifier; +use alloy_core::dyn_abi::Specifier; +use alloy_core::hex; +use alloy_core::json_abi::Event; +use alloy_core::primitives::{Address, B256, Log as PrimitiveLog}; +use alloy_core::sol; use alloy_network::AnyNetwork; -use alloy_primitives::hex; -use alloy_primitives::{Address, B256, Log as PrimitiveLog}; use alloy_provider::{Provider, ProviderBuilder}; use alloy_rpc_types_eth::{BlockNumberOrTag, FilterBlockOption, FilterSet, Log}; -use alloy_sol_types::sol; use datafusion::prelude::*; use datafusion_ethers::convert::Transcoder as _; use datafusion_ethers::stream::StreamOptions; @@ -105,7 +106,7 @@ async fn test_raw_logs_to_record_batch() { #[test_log::test(tokio::test)] async fn test_decoded_logs_to_record_batch() { - let event = alloy_json_abi::Event::parse( + let event = Event::parse( "event SendRequest(uint64 indexed requestId, address indexed consumerAddr, bytes request)", ) .unwrap(); From ff31802ba9f9a8418ac3a4cd8e88a7cc14d16b9e Mon Sep 17 00:00:00 2001 From: Dima Pristupa Date: Fri, 22 May 2026 19:24:26 +0300 Subject: [PATCH 4/6] Deps features clean-up --- Cargo.lock | 53 ++++++++++++++---------------------- Cargo.toml | 9 ++---- src/provider.rs | 2 +- tests/tests/test_provider.rs | 4 +-- 4 files changed, 25 insertions(+), 43 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 35d0bb3..527048e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -135,7 +135,6 @@ dependencies = [ "alloy-dyn-abi", "alloy-json-abi", "alloy-primitives", - "alloy-rlp", "alloy-sol-types", ] @@ -1764,9 +1763,9 @@ dependencies = [ [[package]] name = "data-encoding" -version = "2.10.0" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7a1e2f27636f116493b8b860f5546edb47c8d8f8ea73e1d2a20be88e28d1fea" +checksum = "a4ae5f15dda3c708c0ade84bfee31ccab44a3da4f88015ed22f63732abe300c8" [[package]] name = "datafusion" @@ -3073,9 +3072,9 @@ checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" [[package]] name = "hyper" -version = "1.8.1" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ab2d4f250c3d7b1c9fcdff1cece94ea4e2dfbec68614f7b87cb205f24ca9d11" +checksum = "6299f016b246a94207e63da54dbe807655bf9e00044f73ded42c3ac5305fbcca" dependencies = [ "atomic-waker", "bytes", @@ -3086,7 +3085,6 @@ dependencies = [ "httparse", "itoa", "pin-project-lite", - "pin-utils", "smallvec", "tokio", "want", @@ -3094,19 +3092,18 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.27.7" +version = "0.27.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58" +checksum = "33ca68d021ef39cf6463ab54c1d0f5daf03377b70561305bb89a8f83aab66e0f" dependencies = [ "http", "hyper", "hyper-util", "rustls", - "rustls-pki-types", "tokio", "tokio-rustls", "tower-service", - "webpki-roots 1.0.6", + "webpki-roots 1.0.7", ] [[package]] @@ -3334,16 +3331,6 @@ version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d98f6fed1fde3f8c21bc40a1abb88dd75e67924f9cffc3ef95607bad8017f8e2" -[[package]] -name = "iri-string" -version = "0.7.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8e7418f59cc01c88316161279a7f665217ae316b388e58a0d10e29f54f1e5eb" -dependencies = [ - "memchr", - "serde", -] - [[package]] name = "is_terminal_polyfill" version = "1.70.2" @@ -3621,9 +3608,9 @@ dependencies = [ [[package]] name = "mio" -version = "1.1.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a69bcab0ad47271a0234d9422b131806bf3968021e5dc9328caf2d4cd58557fc" +checksum = "50b7e5b27aa02a74bac8c3f23f448f8d87ff11f92d3aac1a6ed369ee08cc56c1" dependencies = [ "libc", "wasi", @@ -4413,7 +4400,7 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots 1.0.6", + "webpki-roots 1.0.7", ] [[package]] @@ -4529,9 +4516,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.37" +version = "0.23.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "758025cb5fccfd3bc2fd74708fd4682be41d99e5dff73c377c0646c6012c73a4" +checksum = "ef86cd5876211988985292b91c96a8f2d298df24e75989a43a3c73f2d4d8168b" dependencies = [ "once_cell", "ring", @@ -4543,9 +4530,9 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.14.0" +version = "1.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be040f8b0a225e40375822a563fa9524378b9d63112f53e19ffff34df5d33fdd" +checksum = "30a7197ae7eb376e574fe940d068c30fe0462554a3ddbe4eca7838e049c937a9" dependencies = [ "web-time", "zeroize", @@ -5324,20 +5311,20 @@ dependencies = [ [[package]] name = "tower-http" -version = "0.6.8" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8" +checksum = "4cfcf7e2740e6fc6d4d688b4ef00650406bb94adf4731e43c096c3a19fe40840" dependencies = [ "bitflags", "bytes", "futures-util", "http", "http-body", - "iri-string", "pin-project-lite", "tower", "tower-layer", "tower-service", + "url", ] [[package]] @@ -5743,14 +5730,14 @@ version = "0.26.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "521bc38abb08001b01866da9f51eb7c5d647a19260e00054a8c7fd5f9e57f7a9" dependencies = [ - "webpki-roots 1.0.6", + "webpki-roots 1.0.7", ] [[package]] name = "webpki-roots" -version = "1.0.6" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22cfaf3c063993ff62e73cb4311efde4db1efb31ab78a3e5c457939ad5cc0bed" +checksum = "52f5ee44c96cf55f1b349600768e3ece3a8f26010c05265ab73f945bb1a2eb9d" dependencies = [ "rustls-pki-types", ] diff --git a/Cargo.toml b/Cargo.toml index 74a26f9..6b7ff23 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,16 +17,12 @@ eip712 = ["alloy-core/eip712"] async-stream = { version = "0.3" } async-trait = { version = "0.1" } alloy-core = { version = "1.5.7", default-features = false, features = [ - "std", "dyn-abi", "json-abi", ] } alloy-network = { version = "1", default-features = false } alloy-provider = { version = "1", default-features = false } -alloy-rpc-types-eth = { version = "1", default-features = false, features = [ - "std", - "serde", -] } +alloy-rpc-types-eth = { version = "1", default-features = false } alloy-transport = { version = "1", default-features = false } datafusion = { version = "53", default-features = false, features = ["sql"] } futures = { version = "0.3" } @@ -40,11 +36,10 @@ tracing = { version = "0.1", default-features = false } alloy-contract = { version = "1", default-features = false } alloy-node-bindings = { version = "1", default-features = false } alloy-provider = { version = "1", default-features = false, features = [ - "ws", "reqwest", "reqwest-rustls-tls", + "ws", ] } -alloy-core = { version = "1", default-features = false, features = ["sol-types"] } datafusion = { version = "53", default-features = false, features = [ "parquet", ] } diff --git a/src/provider.rs b/src/provider.rs index 3d6a08b..5e60677 100644 --- a/src/provider.rs +++ b/src/provider.rs @@ -1,5 +1,5 @@ -use alloy_network::AnyNetwork; use alloy_core::primitives::{Address, B256}; +use alloy_network::AnyNetwork; use alloy_provider::DynProvider; use alloy_rpc_types_eth::{BlockNumberOrTag, Filter, FilterBlockOption}; use datafusion::catalog::{CatalogProvider, SchemaProvider, Session}; diff --git a/tests/tests/test_provider.rs b/tests/tests/test_provider.rs index bbe7fa9..1e7facd 100644 --- a/tests/tests/test_provider.rs +++ b/tests/tests/test_provider.rs @@ -17,11 +17,11 @@ async fn test_pushdown_common_cfg( ) { let test_chain = super::chain::get_test_chain().await; - // Turn off extra optimizations that create noise in prhysical plans + // Turn off extra optimizations that create noise in physical plans let mut cfg = SessionConfig::new() .with_target_partitions(1) .with_coalesce_batches(false) - .with_option_extension(datafusion_ethers::config::EthProviderConfig::default()); + .with_option_extension(EthProviderConfig::default()); set_cfg(cfg.options_mut()); From a8330bbd9c35dd2734a118b479ef3ac4a78862df Mon Sep 17 00:00:00 2001 From: Dima Pristupa Date: Fri, 22 May 2026 19:47:45 +0300 Subject: [PATCH 5/6] Add a NOTE re alloy sub-crates and dependencies --- Cargo.toml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Cargo.toml b/Cargo.toml index 6b7ff23..5c6be82 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -16,6 +16,9 @@ eip712 = ["alloy-core/eip712"] [dependencies] async-stream = { version = "0.3" } async-trait = { version = "0.1" } +# NOTE: We use alloy sub-crates instead of the meta-crate to avoid pulling in optional dependencies +# that get included anyway due to an old known issue: +# Details: https://github.com/rust-lang/cargo/issues/10801 alloy-core = { version = "1.5.7", default-features = false, features = [ "dyn-abi", "json-abi", From edc96e4ca9089a209f4e0732ba93cc84c74a18bf Mon Sep 17 00:00:00 2001 From: Dima Pristupa Date: Fri, 22 May 2026 19:51:34 +0300 Subject: [PATCH 6/6] alloy-core: remove explicit version --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 5c6be82..39bfca5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -19,7 +19,7 @@ async-trait = { version = "0.1" } # NOTE: We use alloy sub-crates instead of the meta-crate to avoid pulling in optional dependencies # that get included anyway due to an old known issue: # Details: https://github.com/rust-lang/cargo/issues/10801 -alloy-core = { version = "1.5.7", default-features = false, features = [ +alloy-core = { version = "1", default-features = false, features = [ "dyn-abi", "json-abi", ] }