Skip to content

Releases: bnb-chain/bsc

v1.4.1-alpha

11 Mar 08:14
1487e46
Compare
Choose a tag to compare
v1.4.1-alpha Pre-release
Pre-release

Description

Release v1.4.1-alpha is a maintenance release, which only applies 2 fixes based on v1.4.0-alpha.

Changelog

FEATURE

NA

BUGFIX

  • #2258 core: skip checking state root existence when do snapsync by fast node
  • #2252 fix: add missing args of bls account generate-proof cmd (#2252)

IMPROVEMENT

NA

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 99c45b0c06dd9b70164319ee1ddd144966b6e78ce945cf160e2a428005710827
geth_mac 7ea45077b0765a1df4b895d90942ce589fc2cabe8080697e1b12701fe26a9384
geth_windows 16ed5ca922941523794424083ca398884948df603288d1b40a34b1abb96ae6c8
geth_linux_arm64 11becc00e3a4429db353a290a3fe6a95792880da7a4ae51c608d8af8a073b0ef

v1.4.0-alpha

08 Mar 07:53
5ccaed1
Compare
Choose a tag to compare
v1.4.0-alpha Pre-release
Pre-release

Description

Do not use this version on critical business!!!

v1.4.0-alpha is a big maintenance release. It mainly did another round of big code sync with upstream go-thereum[v1.13.0, v1.13.11] to import new features, bug fix, code clear up from go-ethereum, especially to support several Cancun EIPs on BSC.

Since there are huge code changes on this release, there could have some unknown risks or bugs there. It is not encouraged to run this version in your crucial business, but it would be appreciated if you can help try it in some non-crucial business environment and report bugs that you find.

Change Log

There is a very long change list, including modules like: RPC, Flag, GraphQL, Client, Tracer, Txpool, Sync, P2P, PBSS, Cancun...
For detail pls refer: #2200

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 8539d41e7d9db2bc1541608a4b746cb3f59adfe8612ee1028665bd00a25e92aa
geth_mac 39d8df6bf086d5e9fc209604481fbfcd727faef012b4cfa6da4e18f0b37c0a21
geth_windows b7afe572395e8d75522a584cd2d04478593dd66eb37adb895ca0a97dd98d3a59
geth_linux_arm64 75ea2928428104018189d2c0acaa14d263de79340335dfe036da63f002e733d8

v1.3.10

04 Mar 06:43
Compare
Choose a tag to compare

Notice

BSC will switch to PBSS and gradually stop support for hash based mode, if your nodes are still running with hash based mode, pls follow this doc to upgrade to PBSS: https://forum.bnbchain.org/t/faq-pbss-pebbledb/2260/6

Description

This release is going to enable the Feynman upgrade on BSC testnet. The upgrade is forecasted to occur on 11th March 2024 at 6:00 (UTC). The full node runners on testnet must switch their software version to the latest version by 11th March.

Feyman upgrade is the most important milestone of BNB Chain Fusion. The BNB Chain Fusion is a strategic shift to migrate the Beacon Chain’s functionalities to BNB Smart Chain (BSC) and retire Beacon Chain. This move aims to streamline the network, improve efficiency, reduce security risks, and align BNB Chain's architecture with the current technological demands and future growth. BEP333 propose to securely and smoothly transit the BNB Beacon Chain and BNB Smart Chain (BSC) from a dual-chain structure into a single chain structure and thus decommission the Beacon Chain.

Due to Feyman's upgrade, it will have a significant impact on the BNB ecosystem. We welcome the community to submit issues on GitHub or Discord. Kindly remind that BNB Chain has a bug bounty program if anyone find any security issues.

For BNB Beacon Chain Asset Holders

After BC Fusion, users will find it either impossible or extremely challenging to access assets on the BNB Beacon Chain. Here is a detailed guide designed to assist digital asset issuers and holders on the BNB Beacon Chain in transferring the value of their assets, like BEP2/BEP8 tokens, both before and after the Beacon Chain Fusion.

Here is an outline of all important milestones in the BNB Chain Fusion roadmap, set to facilitate a smooth transition for the BNB Chain community.

Brief Introduction of Feynman Upgrade

BEP-294, BEP-297 and BEP-299 will be deployed in the BSC Feynman hard fork.

  1. BEP-294 will take effect immediately. Validators created on BSC will receive triple voting power when staking an equal amount of BNB. This encourages the transfer of voting power from the Beacon Chain to BSC.

  2. The BEP-297 governance functionality will not be activated immediately after the hardfork. It will only be automatically enabled once more than 10 million BNB are migrated to BSC.

  3. The smart contract of BEP-299 is not available as the merkel root in the smart contract is still empty at this time. Only after the Beacon Chain comes to a complete halt, the Token Migration feature will be initiated by setting the Merkle root for balance dump through governance.

  4. Cross-chain re-delegation, which allows users to un-delegate their stakes from Beacon Chain and then delegate them on BSC in one Beacon Chain transaction, will be enabled after governance opening the related cross-chain channel.

Changelog

FEATURE

  • #2047 feat: add new fork block and precompile contract for BEP294 and BEP299
  • #2242 eth/gasprice: fix percentile validation in eth_feeHistory

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux ad893fa61ee41dba05bb20447318ae1521944efba7402d3204a4712aac1e8ca4
geth_mac 73ab0acd0a75f899e649223daa3899555f83f2dde1d951986da272b61b2a59bf
geth_windows 4e162178f84b5a103e29ba1c21ce1e7e3bb7fb735f3a4225158d3244efa2bcc2
geth_linux_arm64 519ce8f6f5e4a31eac4ea71e102f04421407a918f5a103f4337d2e261e3953e7

v1.3.9

20 Feb 11:26
5e74ea6
Compare
Choose a tag to compare

Description

Release v1.3.9 is a moderate maintenance release with some enhancements and one feature of how to keep the log, check out the change list bellow.

Changelog

FEATURE

  • #2186 log: support maxBackups in config.toml

BUGFIX

  • #2160 cmd: fix dump cli cannot work in path mode
  • #2183 p2p: resolved deadlock on p2p server shutdown
  • #2213 core/rawdb: fsync the index file after each freezer write (#28483)

IMPROVEMENT

  • #2177 build(deps): bump github.com/quic-go/quic-go from 0.39.3 to 0.39.4
  • #2185 consensus/parlia: set nonce before evm run
  • #2190 fix(legacypool): deprecate already known error
  • #2195 eth/fetcher: downgrade state tx log
  • #2220 cmd: optimize parse state scheme in cli and config

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 723cac15f18431936d9e67c8294a749b8336b84b27384bd9361c3569439045b0
geth_mac 9547b727190620e99cd21d4209b48f4f7d6054b379cfc9130318c6fd16710cda
geth_windows adf0232f1df0434fb85162f848b9a1ed0d253c38900b8ff96347727ce4823580
geth_linux_arm64 be13ab1215c847eaf7287359808f681a9fd5b82d2593515087e89a52e8757598

v1.3.8

29 Jan 06:45
c6aeee2
Compare
Choose a tag to compare

Description

v1.3.8 is a maintenance release with several enhancements, here is the summary of these updates that may affect BSC users:

  • Golang v1.21 will be needed to compile
  • a new tool to inspect the trie storage
  • some improvements on P2P module
  • some fix ups of RPC, PBSS, PebbleDB, consensus
  • improve UX, sync with BSC mainnet by default, no need to init genesis block any more
  • LES protocol has been removed, since light node can not work right now.
  • increase the SystemTxsGas reservation from 1,500,000 to 5,000,000

Changelog

FEATURE

  • #2074 faucet: new faucet client
  • #2082 cmd/dbcmd: add inspect trie tool
  • #2140 eth/fetcher: allow underpriced transactions in after timeout
  • #2115 p2p: no peer reconnect if explicitly disconnected
  • #2128 go.mod: upgrade prysm to support built with go@v1.21
  • #2151 feat: enable NoDial should still dial static nodes
  • #2144 p2p: reset disconnect set with magic enode ID

BUGFIX

  • #2095 rpc: fix ns/µs mismatch in metrics
  • #2083 triedb/pathdb: fix async node buffer diskroot mismatches when journaling
  • #2120 ethdb/pebble: cap memory table size as maxMemTableSize-1
  • #2107 cmd/geth: fix parse state scheme
  • #2121 parlia: fix verifyVoteAttestation when verify a batch of headers
  • #2132 core: fix systemcontracts.GenesisHash when run bsc firstly without init
  • #2155 cmd, core: resolve scheme from a read-write database and refactor resolveChainFreezerDir func

IMPROVEMENT

  • #2099 params/config: remove useless toml tag for hardforks
  • #2100 core/genesis: support chapel to run without geth init
  • #2101 core: add metrics for bad block
  • #2109 cmd/geth: tidy flags for geth command
  • #1953 build(deps): bump github.com/docker/docker
  • #2086 build(deps): bump golang.org/x/crypto from 0.12.0 to 0.17.0
  • #2106 params: use rialto to test builtin network logic
  • #2098 cmd, les, tests: remove light client code
  • #2114 p2p: add serve metrics
  • #2123 p2p, eth: improve logs
  • #2116 tests: revive evm test cases
  • #2161 code: remove IsEuler check from worker.go
  • #2167 improve: increase SystemTxsGas from 1,500,000 to 5,000,000
  • #2172 improve: remove sharedpool from miner
  • #1332 core/state: no need to prune block if the same

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux e41aea542b14076a491f6301b3eba8cf23d0212f75d860ba442bb83ee71bf066
geth_mac 1fcd0a5ee0e47df7792b639bf876f294f98003bd75da97aea4c803d08f62ed05
geth_windows 912820d83eee5bbdc7936b4db9c1571e44c181435449209e565e3c47d9648b64
geth_linux_arm64 3faf2832ec2d709d82c6501705ccc410cf613b7a0c9f6b3342d7fb9bcf499795

v1.3.7

19 Dec 07:12
f28b98a
Compare
Choose a tag to compare

Important:
For Kepler hard fork, pls use v1.3.7.

Description

Release v1.3.7 is another maintenance release, it mainly fixes an important ChainConfig issue and also provides the new RPC API: eth_getBlockReceipts, which was supported on Ethereum since Sep 2023.
For detail, pls refer the following change log.

Changelog

FEATURE

  • #2067 cmd/geth: add check func to validate state scheme
  • #2068 internal/ethapi: implement eth_getBlockReceipts

BUGFIX

  • #2035 all: pull snap sync PRs from upstream v1.13.5
  • #2072 fix: fix the pebble config of level option
  • #2078 core: LoadChainConfig return the predefined config for built-in networks firstly

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux a82951d91bc3ef901086d78ad13cfdfd04df25e88c1a899eb9c25c1608271e86
geth_mac 4def1d34a6c372f10f22e550020bffc1cb9b3bd00e675b2d617b12581f1d7d0c
geth_windows c89ecced7331200c446fea01de0410efc4bb64d4d8bb91ea3223b5b2d442438d
geth_linux_arm64 9bda37ff00921b56794f2d35a598b4c1ef31af3e26bf17e74faa3db2e8b8219d

v1.3.6

14 Dec 06:36
5ee77bb
Compare
Choose a tag to compare

Important:
Pls replace v1.3.5 with v1.3.6 for Kepler hard fork, otherwise your node will need to setup the Kepler hard fork timestamp in config.toml, which is inconvenient and not recommended.

Description

Release v1.3.6 is a maintenance release, it mainly solved the default Kepler hard fork timestamp issue(#2058). Its usage is same as v1.3.5.
Besides this important fix up, there are several other improvement, such as:

  • support to disable log rotate by hours
  • enable Pebble on 32 bits and OpenBSD
  • change default network to BSC
  • provide 2 JS tools for simple chain status analyze
  • delay FastFinality vote on node start up, to avoid voting again the rule when node switch.
  • allow HTTPHost and WSHost flags precede

Changelog

FEATURE

  • #2012 cmd, core, ethdb: enable Pebble on 32 bits and OpenBSD
  • #2063 log: support to disable log rotate by hours
  • #2064 log: limit rotateHours in range [0,23]

BUGFIX

  • #2058 params: set default hardfork times

IMPROVEMENT

  • #2015 cmd, core, eth: change default network from ETH to BSC
  • #2036 cmd/jsutils: add 2 tools get validator version and block txs number
  • #2037 core/txpool/legacypool: respect nolocals-setting
  • #2042 core/systemcontracts: update CommitUrl for keplerUpgrade
  • #2043 tests/truffle: adapt changes in bsc-genesis-contracts
  • #2051 core/vote: wait some blocks before voting since mining begin
  • #2060 cmd/utils: allow HTTPHost and WSHost flags precede

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 7d0194cc39f9ba977fcb20f89bf8286bc4bd8cf8bd87405e3befc74c78560e8b
geth_mac e5034f92923e56bc4684b9bdcb6b245b22eb10a2bf4efcdbb9529de4c13ffc55
geth_windows 2e8860fd16a782722d4dee04e42ec33f6ac1d83a13f029f8c35e00302382a5fe
geth_linux_arm64 f4e62812bcc8c0777a01f9cf4811a4bd7cf7f72f0eba8b43ed05396a6ca2031c

v1.3.5

08 Dec 07:29
fe928d4
Compare
Choose a tag to compare

Notice

  • BSC will gradually switch to PBSS + PebbleDB mode, for BSC node-operators, you will need to know what it is and how can it impact your business.
    We created a FAQ on forum page, pls check and welcome to give us your feedback: https://forum.bnbchain.org/t/faq-pbss-pebbledb/2260
  • v1.2.x don't support Kepler hard fork, pls rebase your code to v1.3.5 ASAP, we will only support v1.3.5 once Kepler is enabled.

Description

Release v1.3.5 is a hard fork release for BSC.
It will enable the Kepler(Shanghai) hard fork on BSC testnet and mainnet, for details of the hard fork, pls refer: BSC Kepler Hard Fork

The target Kepler/Shanghai hard fork time will be:

  • Testnet: Tuesday, December 19, 2023 8:00:00 AM UTC
  • Mainnet: Tuesday, January 23, 2024 8:00:00 AM UTC

Instead of block number, BSC hard fork will be based on unix timestamp since Kepler(Shanghai). All validators and full node operators on Testnet/Mainnet should update their node to v1.3.5 before the respective hard fork time.

Kepler BEPs

Changelog

FEATURE

  • #1970 core: enable Shanghai EIPs
  • #1973 core/systemcontracts: include BEP-319 on kepler hardfork

BUGFIX

  • #1964 consensus/parlia: hardfork block can be epoch block
  • #1979 fix: upgrade pebble and improve config
  • #1980 internal/ethapi: fix null effectiveGasPrice in GetTransactionReceipt

IMPROVEMENT

  • #1977 doc: add instructions for starting fullnode with pbss

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 7e1e16f2afbb038d28db407c098fe6fc60d651e1fb5829117896f2b342187f01
geth_mac 01a7c3d8977831ed74143adf56d12d8d15a77d16d7fb6e7dc63fbde1ef18aa86
geth_windows 05d3fe6ac6b4d66525781bcc77d9c0a5fd360394c4ad26d0d3a10c9827af5150
geth_linux_arm64 54067e5d224d0ac2d5cd7201e9e88d3b0addaae45cdde23c290f4c6e4ab3f0e7

v1.3.4

04 Dec 11:17
Compare
Choose a tag to compare

Attention

If your node meet the following 2 condition and it failed to sync after upgrade to v1.3.4 or v1.2.15, you may need to download the fastnode snapshot and sync again: https://github.com/48Club/bsc-snapshots.

  • running fast node(--tries-verify-mode=none)
  • did not upgrade to v1.3.4 or v1.2.15 before the Hertzfix hard fork, 07th Dec ~8am UTC

Refer: #2046

Description

This is a bugfix hard fork release named: Hertzfix, check About The HertzFix

Hardfork will be enabled:

All BSC node operators will be required to upgrade their node, depending on the current version that you are using:

  • If you are using v1.2.x BSC, pls upgrade to v1.2.15
  • If you are using v1.3.x BSC, pls upgrade to v1.3.4

Attention
Since v1.3.3, the flags --txlookuplimit has been abandoned and replaced by --history.transactions. Make sure you no longer use --txlookuplimit, otherwise the node will crash.

Changelog

BUGFIX

  • fix: remove pipecommit in miner
  • add a hard fork: Hertzfix

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux eca561863b1db895a7ccc7f041c19f98ac75aa16aeeafacffd738582d4bbc296
geth_mac c29714a61eadbf98a93761707e56913cea3494e61c26b01bd08884e66e76d8c5
geth_windows 03f67e8fb3fd504f34ac9f6a72d63a4788d31cd96b95a73e03c336bb40fd5ec7
geth_linux_arm64 6c13fb89bf9d2bb604c0c333e8c84e2e6e015a4aa1dd6e74942aca3e98996cd9

v1.2.15

04 Dec 11:14
Compare
Choose a tag to compare

Description

This is a bugfix hard fork release named: Hertzfix, we will reveal more detail later.

Hardfork will be enabled:

All BSC node operators will be required to upgrade their node, depending on the current version that you are using:

  • If you are using v1.2.x BSC, pls upgrade to v1.2.15
  • If you are using v1.3.x BSC, pls upgrade to v1.3.4

Changelog

BUGFIX

  • fix: remove pipecommit in miner
  • add a hard fork: Hertzfix

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux a0e2e4362506e7711a3de88ec65d5da9d64400af2b4cd9a2049d7acbebbf4edf
geth_mac 19e005f5743f60754c51b39d6b0fc3407cdbdaeb10909c816739233e9f24060c
geth_windows 8e6eb8d4c0454716ce6aaf4756b3a9b3c3f0e31b3fab202ec01b47d4ce4f6079
geth_linux_arm64 0048079319c9f8f9b1f6283579a6a6971978b7e9fcda20d4d99a7038aaa17083