Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: improve Reth bindings and fix debug_traceCallMany and trace_callMany methods #1076

Closed
wants to merge 24 commits into from

Conversation

zerosnacks
Copy link
Member

@zerosnacks zerosnacks commented Jul 19, 2024

Motivation

Closes: #1074 and improves on Reth bindings added in #1092

Solution

Fixes

  • Fix debug_traceCallMany
  • Fix trace_callMany

Other

  • keys() / address() method for Reth binding - used in tracing but useful in general so you can perform transactions
  • adds random_instance() to reduce flakiness of concurrent spawned Reth nodes
  • Adds run_with_tempdir_* methods for proper handling and clean up when using tempdirs + updating tests
  • Unification Anvil errors with other nodes

Does not include the addition of eth_callMany, to be added in #1274 and requires more consideration. Ties into #328 / #1119.

PR Checklist

  • Added Tests
  • Added Documentation
  • Breaking changes

@zerosnacks zerosnacks added the blocked This cannot move forward until something else changes label Jul 19, 2024
DoTheBestToGetTheBest and others added 2 commits July 22, 2024 14:04
* Added stages to the sync info rpc type (#1079)

* added stages detail

* boxed enum

* from hashmap to vec with helper type

* serde alias and renames and dos

* Update crates/rpc-types-eth/src/syncing.rs

Co-authored-by: Matthias Seitz <[email protected]>

* Update crates/rpc-types-eth/src/syncing.rs

Co-authored-by: Matthias Seitz <[email protected]>

* property to pub

---------

Co-authored-by: Matthias Seitz <[email protected]>

* removing async get account (#1080)

* fix(node-bindings): backport fix from ethers-rs (#1081)

* feat(consensus): add `From<ConsolidationRequest>` for `Request` (#1083)

consensus: add From<ConsolidationRequest> for Request

* fix(eips): make SignedAuthorizationList arbitrary less fallible (#1084)

* chore: export rpc account type (#1075)

* Update debug.rs

* Update debug.rs

---------

Co-authored-by: Luca Provini <[email protected]>
Co-authored-by: Matthias Seitz <[email protected]>
Co-authored-by: StackOverflowExcept1on <[email protected]>
Co-authored-by: Thomas Coratger <[email protected]>
Co-authored-by: Dan Cline <[email protected]>
@yash-atreya yash-atreya removed the blocked This cannot move forward until something else changes label Sep 9, 2024
@yash-atreya
Copy link
Member

With #1062 merged this can be picked up again @zerosnacks. Let me know if you have bandwidth for this.

@zerosnacks
Copy link
Member Author

With #1062 merged this can be picked up again @zerosnacks. Let me know if you have bandwidth for this.

Yes, I'm picking it back up

@zerosnacks zerosnacks changed the title fix: all *_many methods don't work on Reth fix: debug_traceCallMany methods don't work on Reth Sep 11, 2024
@zerosnacks zerosnacks changed the title fix: debug_traceCallMany methods don't work on Reth fix: debug_traceCallMany and trace_callMany methods don't work on Reth Sep 11, 2024
Copy link
Member

@mattsse mattsse left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please undo all the unrelated changes here

crates/provider/src/ext/trace.rs Outdated Show resolved Hide resolved
crates/rpc-types-eth/src/call.rs Outdated Show resolved Hide resolved
@zerosnacks zerosnacks marked this pull request as ready for review September 11, 2024 12:24
@zerosnacks
Copy link
Member Author

zerosnacks commented Sep 11, 2024

Undone unrelated changes.

Kept:

  • keys() / address() method for Reth binding - used in tracing but useful in general
  • adds random_instance() to reduce flakiness
  • run_with_tempdir_* methods for proper handling and clean up when using tempdirs + updating tests
  • Anvil unification changes

As I think those a relevant to the newly added tests and future RPC tests

@zerosnacks zerosnacks changed the title fix: debug_traceCallMany and trace_callMany methods don't work on Reth feat: improve Reth bindings and fix debug_traceCallMany and trace_callMany methods Sep 11, 2024
@zerosnacks zerosnacks requested a review from mattsse September 11, 2024 12:36
Copy link
Member

@mattsse mattsse left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could we please split this into two, the changes to node-bindings and provider are unrelated, right?

@zerosnacks zerosnacks closed this Sep 12, 2024
@zerosnacks zerosnacks deleted the zerosnacks/fix-all-many-methods-rpc branch September 12, 2024 07:10
@zerosnacks
Copy link
Member Author

zerosnacks commented Sep 12, 2024

Makes sense, agreed that is better.

Split into two PRs: #1278, #1279

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Bug] all *_many methods don't work on Reth
4 participants