What's Changed
This release combines a number of patches and cleanups in the codebase. Most visibly, this resolves a few issues that could lead nodes to getting stuck and requiring a restart to continue syncing in the case of some types of L1 reorgs.
User-facing Improvements
- Return the revert reason when the sequencer rejects a tx for reverting: #914
- Fix watchtower validators and add test: #923
- Arbowner public fix: #926
- Process headers on broadcast feed connect: #883
- Precompile Aliasing Changes: #918
- Log a warning if the latest L1 header is at least 5 minutes old: #942
- Add
NodeInterface
method for the Nitro genesis block: #950 - Set better arbos defaults for new chains: #978
Internal Highlights
- Test upgradability of RollupProxy: #886
- Combine wallet handling, add unit tests: #912
- Speed up running tests: #915
- Check that solidity methods exist: #922
- Disable RetryWrapper in RPC Aggregator: #931
- MerkleLib.calculateRoot gas optimization: #925
- Fix from and currentHeight aliasing in inbox reader: #945
- Add missingDelayed and missingSequencer to inbox reader logs: #949
- Check types when unpacking calls: #924
- Error recovery in RestfulServerListFetchDaemon: #956
- Populate ECDSA caches early in the replay binary: #963
- Delete feed from previous confirmation: #959
- Panic if keyset is invalid in replay binary: #964
- Allow a backwards delayed reorg without hard reorgs enabled: #940
- Fix expired retryable deletion on migration: #965
- Refactor contract interfaces: #848
- Patch rollup contracts and comments: #879
- Use rpc aggregator only for stores: #971
Full Changelog: v2.0.0-beta.9...v2.0.0-beta.10