reth icon indicating copy to clipboard operation
reth copied to clipboard

feat: bsc sdk

Open loocapro opened this issue 8 months ago • 2 comments
trafficstars

Prototyping BSC SDK changes required to execute blocks:

  • [x] Specification
  • [x] TxEnv BSC fields
  • [x] EVM Handler
  • [x] Precompiles
    • istanbul adds 2 more precompiles to the standard behaviour
    • berlin replaces with plato precompiles
    • cancun replaces with feynman
    • latest is replaced with bsc latest
  • [x] Revm Api
  • [x] ConfigureEvm impl
  • [x] BscBlock executor: - apply_pre_execution_changes - execute_transaction_with_state_closure - finish - set_state_hook - evm_mut
  • [x] Node Apis - BscConsensus (remove extra_data max size validation) - BscEngineVaidator (remove extra_data max size validation)
  • [x] Bsc distribute block rewards
  • [x] Can sync integration test: - Can sync from file - Can sync from p2p
  • [x] Synced blocks via pipeline sync via:
RUST_LOG=info \
cargo run --package example-bsc-sdk \
--bin example-bsc-sdk --all-features \
node \
--chain bsc \
--debug.tip "0xaca533a947b6a4d6f5f34735aaf5d8fdec8a6e356ed83209994ad34674247410" \

loocapro avatar Mar 17 '25 15:03 loocapro

@rakita are you familiar with the previous changes for bsc for revm v19?

I am not familiar, do you have doc/link/repo or something that I look at? cc @loocapro

rakita avatar Mar 19 '25 12:03 rakita

CodSpeed Performance Report

Merging #15089 will not alter performance

Comparing loocapro:bsc-evm (96acf85) with main (256a1eb)

Summary

✅ 77 untouched benchmarks

codspeed-hq[bot] avatar Apr 19 '25 17:04 codspeed-hq[bot]

Closing in favor of:

https://github.com/loocapro/reth-bsc

loocapro avatar Jun 03 '25 14:06 loocapro