Skip to content

Conversation

@canepat
Copy link
Member

@canepat canepat commented Jun 18, 2024

Recently, we cloned official Ethereum JSON-RPC Execution API repository into our fork in order to:

  • experimenting in using and maybe customising the official spec for our validation needs
  • adding the metadata specification for missing namespaces (e.g. debug, trace, ots)
  • hopefully being able to contribute back some of our changes after experimentation

This PR updates our copy of the full specification to the version generated from erigontech/execution-apis@0502b44, which is equivalent to the official erigontech/execution-apis@3ae3d29 plus the following changes:

  1. fixes in eth_getStorageAt Fix eth_getStorageAt and uint256 definitions ethereum/execution-apis#509
  2. fixes in engine_forkchoiceUpdated, which we previously applied directly to the generated our copy of the full spec rpcdaemon: fix Engine API V3 in JSON-RPC spec #1924

Next Step
The next step will be a fully automated solution including our fork as Silkworm submodule (branch main_silkworm) and thus generating the full specification at build time.

Extras

  • fix null validation in our json_rpc::JsonRpcValidator
  • make unit tests more strict by checking also the validation errors
  • slightly improve comment in conan.cmake

@canepat canepat added enhancement json rpc api Create/update/delete any JSON-RPC endpoint labels Jun 18, 2024
@canepat canepat marked this pull request as ready for review June 18, 2024 17:29
@canepat canepat merged commit 92b865f into master Jun 18, 2024
@canepat canepat deleted the rpcdaemon_update_json_rpc_spec branch June 18, 2024 19:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

json rpc api Create/update/delete any JSON-RPC endpoint

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants