XLayer Reth is a customized implementation of Reth optimized for the XLayer network, an Optimism-based Layer 2 solution.
This project provides a high-performance, production-ready Ethereum execution client tailored for XLayer's specific requirements. It builds upon the upstream Reth codebase with custom optimizations and features for the XLayer network.
This repository provides the exact same functionality as the Reth-based implementation we currently use and will eventually replace the Reth repository.
What's Changed
✨ New Features
- Flashblocks Subscription Support: Added
eth_subscribesupport for flashblocks with configurable address filtering (#62, #76) - Subscription Enable Flag: Added configuration flag to enable/disable flashblocks subscription (#84)
- Version Crate: Introduced a new version crate for compile-time version management (#74, #79, #81)
🔧 Improvements
- Updated to reth latest version (#65)
- Updated to builder release tag v0.2.0 and removed rollup boost dependency (#68)
- Refactored innerTx initialization using reth
tablesmacro (#69) - Added justfile aliases for improved developer experience (#61)
- Changed debug log level to trace for reduced log verbosity (#63)
- Widened check scope for better validation (#73)
- Purged unused dependencies (#60)
- Removed unused bridge intercept args (#59)
🐛 Bug Fixes
- Fixed flashblocks config flag parsing (#85)
- Fixed flashblocks RPC service logging level on init (#82)
- Fixed version crate formatting, clippy warnings, and removed std::env usage (#81)
- Fixed chainspec crate compilation (#72)
- Fixed commit id default value in Docker image (#56, #57)
🧪 Testing
🏗️ Infrastructure
⚠️ Breaking Changes
- Reverted innerTx flashblock support (#77)
Full Changelog: https://github.com/okx/op/xlayer-reth/compare/v0.0.1...v0.0.4