ethereum / trin

An Ethereum portal client: a json-rpc server with nearly instant sync, and low CPU & storage usage
365 stars 113 forks source link

feat: implement eth_call and refactor trin-execution to support async db #1415

Closed morph-dev closed 2 weeks ago

morph-dev commented 4 weeks ago

What was wrong?

The eth_call wasn't supported.

How was it fixed?

Refactored logic in trin-execution crate to make functionality more reusable (and added support for async database). Also refactored rpc/src/eth_rpc.rs by extracting state related functionality into separate file.

To-Do

morph-dev commented 4 weeks ago

@KolbyML , would like your early feedback on this PR, especially on the work in trin-execution.

Note: I didn't test if this actually works, as I don't have data in the state network to test it with. I will have to manually create and seed data needed but it's not simple as I have to seed many trie nodes, for multiple accounts and storage slots (and at least one contract bytecode). Other than testing, I would say that this PR is mostly ready as is.

morph-dev commented 2 weeks ago

Closing in favor of #1439