Releases: bnb-chain/op-geth
v0.4.2
This is the mainnet hardfork release version.
Four hard forks are scheduled to launch on the opBNB Mainnet:
Shanghai/Canyon Time: 2024-06-20 08:00:00 AM UTC
Delta Time: 2024-06-20 08:10:00 AM UTC
Cancun/Ecotone Time: 2024-06-20 08:20:00 AM UTC
Haber Time: 2024-06-20 08:30:00 AM UTC
All mainnet op-geth
have to be upgraded to this version before 2024-06-20 08:00:00 AM UTC.
The op-node
also have to be upgraded to v0.4.2 accordingly, check this for more details.
What's Changed
- fix: adjust flush condition to avoid not flush by @will-2012 in #114
- config: Mainnet Shanghai/Canyon/Cancun/Ecotone/Haber fork time by @welkin22 in #116
Docker Images
ghcr.io/bnb-chain/op-geth:v0.4.2
Full Changelog: v0.4.1...v0.4.2
v0.4.1
This is the Haber Hardfork release for opBNB Testnet.
The Haber hardfork will be activated on May 30, 2024, at 6:00 AM UTC.
All testnet nodes must upgrade to this release before the hardfork.
Upgrading for other networks is optional.
User Facing Changes
What's Changed
- cmd/dbcmd: add inspect trie tool by @sysvm in #103
- fix: cherry-picked from upstream code by @welkin22 in #109
- fix: add miss cache code after 4844 merge by @welkin22 in #110
- feat: add proof keeper by @will-2012 in #90
- feature(op-geth): add precompile for secp256r1 curve after haber hardfork by @redhdx in #112
Docker Images
- ghcr.io/bnb-chain/op-geth:v0.4.1
Full Changelog: v0.4.0...v0.4.1
v0.4.0
This release includes code merging from the upstream version v1.101308.2 to transition Testnet's DA data from calldata to blob format.
Four hard forks are scheduled to launch on the opBNB Testnet:
Snow Time: May-15-2024 06:00 AM +UTC
Shanghai/Canyon Time: May-15-2024 06:10 AM +UTC
Delta Time: May-15-2024 06:20 AM +UTC
Cancun/Ecotone Time: May-15-2024 06:30 AM +UTC
The Shanghai/Canyon fork and Cancun/Ecotone fork involve changes to op-geth.
User Facing Changes
Nodes on the Testnet need to be upgraded to this version before the first hard fork time.
Note: This is a version prepared for Testnet, Mainnet nodes do not need to upgrade to this version.
Breaking Changes
Fast Node Mode (released in version v0.3.1) has become unusable due to conflicts with upstream code.
We are working to resolve this issue and expect it to be fixed in the next version.
What's Changed
- feature(op-geth): update opBNB qanet config by @redhdx in #99
- canyon fork: revert disable create2deployer in canyon fork by @bnoieh in #100
- feature(op-geth): add opBNB qanet hard fork config by @redhdx in #101
- add precompiled contracts for light client by @keefel in #102
- feature: add opBNB V5 bootnodes by @redhdx in #104
- add bls example by @keefel in #105
- Merge upstream op-geth v1.101308.2 by @welkin22 in #87
- fix: the TrieCommitInterval not taking effect on restart by @welkin22 in #106
- config: Testnet 4844 fork time by @welkin22 in #107
Docker Images
ghcr.io/bnb-chain/op-geth:v0.4.0
Full Changelog: v0.3.1...v0.4.0
v0.4.0-alpha
This pre-release includes code merging from the upstream version v1.101308.2 to transition Testnet's DA data from calldata to blob format.
Four hard forks are scheduled to launch on the opBNB Testnet:
Snow Time: May-15-2024 06:00 AM +UTC
Shanghai/Canyon Time: May-15-2024 06:10 AM +UTC
Delta Time: May-15-2024 06:20 AM +UTC
Cancun/Ecotone Time: May-15-2024 06:30 AM +UTC
The Shanghai/Canyon fork and Cancun/Ecotone fork involve changes to op-geth.
User Facing Changes
Nodes on the Testnet need to be upgraded to this version before the first hard fork time.
Breaking Changes
Fast Node Mode (released in version v0.3.1) has become unusable due to conflicts with upstream code.
We are working to resolve this issue and expect it to be fixed in the next version.
What's Changed
- feature(op-geth): update opBNB qanet config by @redhdx in #99
- canyon fork: revert disable create2deployer in canyon fork by @bnoieh in #100
- feature(op-geth): add opBNB qanet hard fork config by @redhdx in #101
- add precompiled contracts for light client by @keefel in #102
- feature: add opBNB V5 bootnodes by @redhdx in #104
- add bls example by @keefel in #105
- Merge upstream op-geth v1.101308.2 by @welkin22 in #87
- fix: the TrieCommitInterval not taking effect on restart by @welkin22 in #106
- config: Testnet 4844 fork time by @welkin22 in #107
Docker Images
ghcr.io/bnb-chain/op-geth:v0.4.0-alpha
Full Changelog: v0.3.1...v0.4.0-alpha
v0.3.1
This is a minor release for opBNB Mainnet and Testnet.
In this release, we've introduced significant optimizations and enhancements across various modes and functionalities, including PBSS Mode optimizations, the introduction of Fast Node Mode, EVM execution improvements, and a simplified start command, aimed at enhancing performance and user experience.
Upgrading is optional.
User Facing Changes
- PBSS Mode Optimizations: We have made multiple optimizations for PBSS mode, including the implementation of an async buffer, support for obtaining withdrawal proof on PBSS, and the introduction of an HBSS to PBSS convert tool. For more details, please refer to #69, #74, and #79.
- Fast Node Mode: We have introduced a new mode called "Fast Node" to improve the performance and reduce the resources required by the node. This enhancement is aimed at providing a more efficient and streamlined experience. Please see more details in #75.
- EVM Execution Opcode Level Optimization: Our latest update includes optimizations at the EVM execution opcode level, resulting in improved performance for EVM execution. For a deeper understanding of these changes, please refer to #77 and #81.
- Simplified Start Command: We have simplified the start command by enabling the selection of default network configuration through the use of
--opBNBMainnet
or--opBNBTestnet
in the command. This enhancement aims to streamline the user experience. More information can be found in #91.
Partial Changelog
- #69: feat: add async buffer
- #71: chore: add miner perf metrics
- #74: feat: support getting withdrawal proof on pbss
- #75: feat: implement fast node
- #76: bugfix: fix Resubscribe deadlock when unsubscribing after inner sub ends
- #77: feat: EVM execution opcode level optimization
- #79: cmd/geth: add hbss to pbss convert tool
- #81: feat: introduce hash cache to improve performance
- #88: fix: fix base buffer concurrent read/write race
- #91: feat: simplify node start
Docker Images
- ghcr.io/bnb-chain/op-geth:v0.3.1
Full Changelog
v0.3.1-alpha
v0.3.1-alpha
This alpha release is meant for starting a new node with PBSS(Path-Base Scheme Storage), bringing a performance improvement.
Upgrading an existing node to this version has no effect; use it only for initiating a new PBSS node.
A PBSS node consumes less disk space and delivers improved performance. Refer to this document for details on enabling this mode, its benefits, and limitations.
User Facing Changes
NA
Partial Changelog
- #69: feat: add async buffer
Docker Images
- ghcr.io/bnb-chain/op-geth:v0.3.1-alpha
Full Changelog
v0.3.0
This is a recommended release for op-geth. This release brings in upstream updates, see #58 for the contents. This is also a ready release for the next planed fork, which will bring in canyon fork from upstream as well.
User Facing Changes
- Feature of config tries layer number in memory is removed, and related flag
--triesInMemory
is deleted. - If start a fresh node, will use pebble db as default(set
--db.engine=leveldb
if prefer leveldb) - You can start opbnb mainnet or testnet without init genesis.json, and use flag
--opBNBMainnet
or--opBNBTestnet
to start new node. If you have already inited genesis.json, you can still use these two flags, which will check whether the content of your init is correct.
Partial Changelog
- #64: fix(op-geth):fix static peer cannot reassign header tasks
- #60: feature: add opbnb networks' genesis
- #58: Merge upstream op-geth v1.101304.1
- #51: feat: sync pebble db from bsc
- #50: fix: fix task stuck and not reassign bug in concurrent-fetch logic
- #49: fix: ignore errors that caused by gap to keep peer connection
- #46: fix: prune uses the latest block height as the target by default
Docker Images
- ghcr.io/bnb-chain/op-geth:v0.3.0
Full Changelog
v0.2.2
This is a minor release for opBNB Mainnet and Testnet.
It primarily optimizes op-geth and introduces an option to re-announce remote transactions.
Upgrading is optional.
User Facing Changes
- The startup node will default to using the bootnodes of the opBNB mainnet. If the
--networkid=
is configured as testnet, the testnet bootnodes will be used. If--bootnodes=
is configured, the specified bootnodes will be used. The configured--bootnodes=
take precedence over other options.#32 - Enable re-announce remote transactions by using the flag
--txpool.reannounceremotes=true
.#33
Partial Changelog
- #14: fix: add special logic to handle ancestor errors[BNB-3]
- #16: fix: wrong event log value
- #17: fix: cache data after successful writing[BNB-12]
- #19: fix: handle error in state_prefetcher.go and blockchain.go[BNB-16]
- #20: fix: refraining from using gopool for long-running tasks[BNB-19]
- #21: fix: remove redundant lock[BNB-20]
- #22: fix: remove unnecessary newRPCTransactionFromBlockHash function[BNB-21]
- #31: ci: fix blst error and unknown architecture
- #32: feature: add opBNB bootnodes
- #33: feat: add option to reannounce remote transactions
- #34: fix: clear underpriced buffer
- #41: txpool: enhance some logs and metrics on broadcasting and annoucing
- #43: chore: add reannounce metric for txpool
- #44: chore: impr/add some metrics txpool
- #45: feat: add TrieCommitInterval configuration, commit trie every TrieCommitInterval blocks
Docker Images
- ghcr.io/bnb-chain/op-geth:v0.2.2
Full Changelog
v0.2.1
This is the Fermat Hardfork release for opBNB Mainnet.
It will be activated at block height 9397477, expected to occur on November 28, 2023, at 6 AM UTC.
All mainnet nodes must upgrade to this release before the hardfork.
Upgrading for other networks is optional.
User Facing Changes
NA
Partial Changelog
- #30: feat: add opbnb mainnet Fermat fork height
Docker Images
- ghcr.io/bnb-chain/op-geth:v0.2.1
Full Changelog
v0.2.0
This is a hardfork release for the opBNB Testnet called Fermat.
It will be activated at block height 12113000, expected to occur on November 3, 2023, at 6 AM UTC.
User Facing Changes
- Two new precompiled contracts have been introduced: blsSignatureVerify and cometBFTLightBlockValidate. The purpose of blsSignatureVerify is to verify BLS signatures in smart contracts, while cometBFTLightBlockValidate is designed to validate cometBFT light blocks. Although these contracts were primarily introduced to facilitate cross-chain communication between opBNB and Greenfield, they can also be utilized for other purposes. For instance, blsSignatureVerify can be employed to verify BLS signatures in smart contracts, and cometBFTLightBlockValidate can facilitate cross-chain communication with other blockchains based on the cosmos framework.(#7)
- Enable the layer 2 sync mechanism for opBNB by using the flag
--syncmode=snap
or--syncmode=full
to choose the sync mode. Make sure to enable thel2.engine-sync=true
flag on the op-node. (#8)
Partial Changelog
- #7: feat: add precompiled contracts for Greenfield link
- #8: feat: support snap sync for OP chains
- #11: fix: pass a SnapshotOption func when init a new pruner
- #24: snap: fix snap-tests to handle legacy code lookups
- #25: sec: update version of cometbft
Docker Images
- ghcr.io/bnb-chain/op-geth:v0.2.0