Skip to content

Releases: bnb-chain/bsc

v1.4.11

28 Jun 01:17
7194125
Compare
Choose a tag to compare

Notice

Mandatory Update: Yes

This is a hardfork release target to resolve a staking reward distribution issue on BSC testnet. This upgrade, known as the "Haber Fix" upgrade, is scheduled to take place on July 3, 2024, at 06:06:28 GMT. All clients on BSC testnet are encouraged to upgrade to the latest version.

Optional for the client running on mainnet.

Changelog

BUGFIX

  • #2534 fix: nil pointer when clear simulating bid
  • #2535 upgrade: add HaberFix hardfork

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 72118152e80ae2d3545d5a8002335b1bb43a79f6fce4ee96f431f58ddffe64eb
geth_mac 3f3a43e9a33295c3448701b79805d625a5dfd2664d2589dde6a88d1a088cccc5
geth_windows 5d42342bb28838833540ce163184ea4f887ef5dec60626e8bb418991c6807581
geth_linux_arm64 574a397d8a31bcb95a8dcb6f381655210618e7f407f89d454c8eb6eb5cdb5b0c

v1.4.10

21 Jun 08:25
f0c7795
Compare
Choose a tag to compare

Notice:
v1.4.10 solved the "BAD BLOCK" issue after Haber hard fork, pls use this version if your node has the BAD BLOCK issue.

Description

Mandatory Update: No(but strongly recommended!)
Latest Mandatory Update: v1.4.8

v1.4.10 is a maintenance release, which has several improvements and fixes:

  • improve: performance, MEV-API, less-reorg
  • fix: ethapi, UT failure, rpc:getBlobSidecars, BAD BLOCK caused by nil withdrawals.

There is no compatible change, to upgrade to v1.4.10 from v1.4.x, simply replace the binary should work.

Change Log

FEATURE

  • NA

IMPROVEMENT

  • #2512 feat: add mev helper params and func
  • #2508 perf: speedup pbss trienode read
  • #2509 perf: optimize chain commit performance for multi-database
  • #2451 core/forkchoice: improve stability when inturn block not generate

BUGFIX

  • #2518 fix: remove zero gasprice check for BSC
  • #2519 UT: random failure of TestSnapSyncWithBlobs
  • #2515 fix getBlobSidecars by ethclient
  • #2525 fix: ensure empty withdrawals after cancun before broadcast

Example

NA

Compatibility

NA

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 7d762aa5f7c3fcd2a53ee82c6fb58ab86dce2447233a55f75b60dc21e20ce66a
geth_mac e787f0651cf2a0a06ac57f641bfc62b773e349e22e229b778a63b4df0e5605ff
geth_windows 483422c9a540a96f3a22bfe6378a953bb6c9216b14ea7f1ac53b37e807b49d34
geth_linux_arm64 48986bea8185104e175e0c672fd41183aa6f574ed1c97077f4e99e947fe9844b

v1.4.9

11 Jun 06:25
4566ac7
Compare
Choose a tag to compare

Description

Mandatory Update: No
Latest Mandatory Update: v1.4.8

v1.4.9 is a maintenance release, which mainly addressed some issues about: prune-block, multi-database and MEV
There is no compatible change, to upgrade to v1.4.9 from v1.4.x, simply replace the binary should work.

Changelog

FEATURE

  • #2463 utils: add check_blobtx.js
  • #2470 jsutils: faucet successful requests within blocks
  • #2467 internal/ethapi: add optional parameter for blobSidecars

IMPROVEMENT

  • #2462 cmd/utils: add a flag to change breathe block interval for testing
  • #2497 params/config: add Bohr hardfork
  • #2479 dev: ensure consistency in BPS bundle result

BUGFIX

  • #2461 eth/handler: check lists in body before broadcast blocks
  • #2455 cmd: fix memory leak when big dataset
  • #2466 sync: fix some sync issues caused by prune-block.
  • #2475 fix: move mev op to MinerAPI & add command to console
  • #2473 fix: limit the gas price of the mev bid
  • #2484 fix: fix inspect database error
  • #2481 fix: keep 9W blocks in ancient db when prune block
  • #2495 fix: add an empty freeze db
  • #2507 fix: waiting for the last simulation before pick best bid

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 52e4ed0f6000b14f40bc5ce215e48f1f516664af7ad331b365696d93613487b4
geth_mac 0bb2f95f40920ac2c1a68d7b2501d34d1cd88456bb0c9e7307458068d06989b3
geth_windows 3f2e9c7a70a350cafa5bf08f14485acefc1ca19ae8684d97f744cb5166e4c4e2
geth_linux_arm64 24821c6130837c96830434f8be243f94b0ff35f30ceb4c0ebf6d381ba89d002a

v1.4.8

21 May 10:44
f5ba30e
Compare
Choose a tag to compare

Notice

Mandatory Update: Yes

Haber and Tycho(Cancun: BlobTx) hard fork will be enabled on BSC mainnet simultaneously, so this release also supports the Tycho hard fork, detail of Tycho hard fork may refer https://github.com/bnb-chain/bsc/releases/edit/v1.4.7

Description

Release v1.4.8 is a cut-in hard fork release for BSC Testnet and Mainnet, the HF name is: Haber, it only supports one BEP: BEP-381: Precompile for secp256r1 Curve Support

As there is strong demand for supporting of secp256r1 pre-compile contract, we decide to move it faster.
And BSC would use address 0x100, which is same as other major chains to make it easier for developers.
Developers may refer this code on how to use this pre-compile contract: https://github.com/getclave/clave-contracts/blob/master/contracts/helpers/VerifierCaller.sol

The target Haber hard fork time will be:

  • Testnet: 2024-05-29 06:07:00 AM UTC
  • Mainnet: 2024-06-20 06:05:00 AM UTC

Changelog

FEATURE

  • #2483 core/vm: add secp256r1 into PrecompiledContractsHaber
  • #2400 RIP-7212: Precompile for secp256r1 Curve Support

IMPROVEMENT

NA

BUGFIX

NA

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 8310f250fe8f628ec839d5954ff4e3e70ca1a0248e3b76243f4885945dd5ce3e
geth_mac c99ede9b07d09fe5960a03bce0cd3c92c8f93d0022741b3cb7ccf3ecbb7070e4
geth_windows ec7d777c7a200612e301da863a64b1ddf5ed76e5dba575e496479174453cd4d8
geth_linux_arm64 a2a7ee2872dc2d0dc4fadd7417d31f7fcdf6e553cf1b90cb630fcd6c0dcff845

v1.4.7

17 May 08:35
f45305b
Compare
Choose a tag to compare

Description

Release v1.4.7 is a hard fork release for BSC Mainnet, the HF name is: Tycho, it mainly support Cancun EIPs on BSC:

But BSC won’t support “EIP-4788: BeaconRoot”, as there is no CL on BSC.

The target Tycho hard fork time will be:

  • Mainnet: 2024-06-20 06:05:00 AM UTC

After Tycho hard fork, BSC will also support Blob Transaction, which will provide similar mechanism as Ethereum EIP-4844. And BSC L2 rollup could take advantage of it to reduce the rollup cost.
If you have any question about it, pls refer: FAQ: About EIP-4844 on BSC

Changelog

FEATURE

  • #2439 config: setup Mainnet Tycho(Cancun) hardfork date

IMPROVEMENT

  • #2396 metrics: add blockInsertMgaspsGauge to trace mgasps
  • #2411 build(deps): bump golang.org/x/net from 0.19.0 to 0.23.0
  • #2435 txpool: limit max gas when mining is enabled
  • #2438 fix: performance issue when load journal
  • #2440 nancy: add files .nancy-ignore

BUGFIX

NA

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 84853f993eb30b38a5c35cfdb65e036ccddb9b697c54483870cb034d2b055cba
geth_mac eb7fa9993cff3b9f203766170e46266e3c2169c0434d7f7ed746113260244fbc
geth_windows f52e5ef1abbf6be565e0696fcba46f86cefc1d4170b76577af34e4b5fe206f1c
geth_linux_arm64 ade5dfdc85d79ca5086bae6821599e598a154a7e644c7608bc243f472395cd5f

v1.4.6

29 Apr 06:18
43b2ffa
Compare
Choose a tag to compare

Description

Release v1.4.6 is a maintenance release. It mainly includes 2 features and several enhancements.
The 2 features are:

You may check the Change Log for detail.

Changelog

FEATURE

  • #2227 core: separated databases for block data
  • #2404 cmd, p2p: filter peers by regex on name

IMPROVEMENT

  • #2201 chore: render system bytecode by go:embed
  • #2363 feat: greedy merge tx in bid
  • #2389 deps: update prsym to solve warning about quic-go version
  • #2341 core/trie: persist TrieJournal to journal file instead of kv database
  • #2395 fix: trieJournal format compatible old db format
  • #2406 feat: adaptive for loading journal file or journal kv during loadJournal
  • #2390 chore: fix function names in comment
  • #2399 chore: fix some typos in comments
  • #2408 chore: fix some typos in comments
  • #2416 fix: fix function names
  • #2424 feat: recommit bid when newBidCh is empty to maximize mev reward
  • #2430 fix: oom caused by non-discarded mev simulation env
  • #2428 chore: add metric & log for blobTx
  • #2419 metrics: add doublesign counter

BUGFIX

  • #2244 cmd/geth: fix importBlock
  • #2391 fix: print value instead of pointer in ConfigCompatError
  • #2398 fix: no import blocks before or equal to the finalized height
  • #2401 fix: allow fast node to rewind after abnormal shutdown
  • #2403 fix: a nil point error in mev worker
  • #2423 eth/gasprice: add query limit to defend DDOS attack
  • #2425 fix: adapt journal for cmd

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 067722de6ee4d34e2a5e309f34edc4c252b383b68f3da10d106d1e284ec0d652
geth_mac 05c4c878776a13e7f4ff1c8decdd05e2d60d807005ebeb3d10dc13e59926fe30
geth_windows 2f2948e94c06de86b450d2c56760d49b2ab8d9c32e50c705024ac630647bf5fc
geth_linux_arm64 9ca3b2d85f60ef6cbc7bb90d0d59e59a37246d70b555594c64dcaa28f751f37e

v1.4.5

10 Apr 13:46
a057245
Compare
Choose a tag to compare

Description

Release v1.4.5 is a hard fork release for BSC Chapel Testnet, the HF name is: Tycho, it mainly support Cancun EIPs on BSC:

But BSC won’t support “EIP-4788: BeaconRoot”, as there is no CL on BSC.

The target Tycho hard fork time will be:

  • Testnet: 2024-04-17 05:07:22 AM UTC
  • Mainnet: To be determined, could be around Mid of Jun 2024

After Tycho hard fork, BSC will also support Blob Transaction, which will provide similar mechanism as Ethereum EIP-4844. And BSC L2 rollup could take advantage of it to reduce the rollup cost.
If you have any question about it, pls refer: FAQ: About EIP-4844 on BSC

Changelog

FEATURE

  • #2378 config: setup Testnet Tycho(Cancun) hardfork date

IMPROVEMENT

  • #2333 remove code that will not be executed
  • #2369 core: stateDb has no trie and no snap return err

BUGFIX

  • #2359 triedb: do not open state freezer under notries

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 6345521912693de147aa41eda78837021ce69fccb2391472f2aebb5059247590
geth_mac 9ff72d449c6ee21e6a28c48dcab498ee5d8fb04615ed9e7fff1cd2fddabebe2a
geth_windows c3345c52e9377ae95d146ba2cac7a6482e4a8dc7a18576ac6c628a7160d1418e
geth_linux_arm64 8ad39c6bb30aa52cdd66aef8f34d953c2b27ebe179232af75e1d1edf18af3e88

v1.4.4-beta

03 Apr 01:55
46df9b4
Compare
Choose a tag to compare
v1.4.4-beta Pre-release
Pre-release

Description

Release v1.4.4-beta mainly contains 2 parts:

  • it supports mainnet Feynman hard fork
  • it includes the code of BSC-4844, which will be enabled on Tycho hardfork after Feynman

However, it is still at beta phase, for the upcoming mainnet Feynman hard fork, pls use stable release v1.3.13

Change Log

FEATURE

  • #2279 BlobTx: implement EIP-4844 on BSC
  • #2337 4844: bugfix and improve
  • #2339 fix: missing block asigment WithSidecars
  • #2350 cancun: change empty withdrawHash value of header
  • #2335 upgrade: update system contracts bytes code and hardfork time of Feynman upgrade
  • #2323 feat: export GasCeil in mev_params
  • #2357 feat: add bid fee ceil in mev_params

IMPROVEMENT

  • #2321 test: use full syncmode to run rpc node
  • #2338 cmd: include more node info in metrics
  • #2342 p2p: add metrics for inbound/outbound peers
  • #2334 core: improve chain rewinding mechanism
  • #2352 core: fix block report when chain is not setHead

BUGFIX

  • #2367 fix: don't switch to snapsync for fast node

Example

NA

Compatibility

NA

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 4b6e02ed25ce93debfe3dc956be19d1431101d687dde7a245201323d5aa76a80
geth_mac 8cc144fe75a4deb3ff8ce23db088af56fe34cd243c85692ead048f32519700d5
geth_windows df0743250903fd30f5eb94307c6b9cd01a6683551f8c991b0a2554aaf4367949
geth_linux_arm64 3fba458cefa9d22cc4ea3c71ea46b864ff1762d64e47b3b3ab5c3eab6fa90f35

v1.3.13

01 Apr 05:55
Compare
Choose a tag to compare

Description

This release is going to enable the Feynman upgrade on BSC mainnet. The upgrade is forecasted to occur on 18th April 2024 at 05:49 (UTC). The full node runners on mainnet must switch their software version to the latest version by 18th April.

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

  • #2358 doc: add Feynman upgrade for mainnet
  • #2335 upgrade: update system contracts bytes code and hardfork time of Feynman upgrade

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux e48b613a8da2607fd4ab3f41ec320c8cf56aab975ea4362fc329208d0b90b368
geth_mac 89f248c051296b5a8194b19ded434c6b9940178144bb1517c11a0a812c21e178
geth_windows 4b7e54cb06616d2c620d14d18e3d0ffb93f1f9ca88b711d28c910403b7603d34
geth_linux_arm64 37e990242a2be465bfa007bf1e73d7ce95239933bc3761d7af52304df7d7364d

v1.4.3-alpha

21 Mar 14:33
7f3f72e
Compare
Choose a tag to compare
v1.4.3-alpha Pre-release
Pre-release

Notice

BSC uses PBSS&PebbleDB as the default and primary mode now, will mainly focus the stability and performance of PBSS&PebbleDB. And for HashBased&LevelDB mode, it still can work, but the support will be limited.
If you are still running BSC with HashBased & LevelDB, you'd better switch to PBSS&PebbleDB mode ASAP.
For more detail, pls refer: FAQ: PBSS & PebbleDB

Description

Release v1.4.3-alpha is a maintenance release, although it includes PR of Testnet FeynmanFix hard fork, but as 1.4.x is still at alpha status, for FeymanFix hard fork, you'd better try v1.3.12

v1.4.3-alpha mainly includes these parts:

  • 1.Use PebbleDB as the default database
  • 2.Use PBSS as the default state scheme
  • 3.Some non-critical changes, like: no snap sync for fastnode; new flag: --instance; new cmd to delete trie state; some bugfix.

Same as previous v1.4.x-alpha, it 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

FEATURE

  • #2241 cmd/utils, core/rawdb, triedb/pathdb: flip hash to path scheme
  • #2312 cmd/utils, node: switch to Pebble as the default db if none exists

IMPROVEMENT

  • #2228 core: rephrase TriesInMemory log

  • #2234 cmd/utils: disable snap protocol for fast node

  • #2236 build(deps): bump github.com/quic-go/quic-go from 0.39.3 to 0.39.4

  • #2240 core/state: fix taskResult typo

  • #2280 cmd/utils, core: only full sync for fast nodes

  • #2298 cmd, node: initialize ports with --instance

  • #2302 cmd/geth, core/rawdb: add dbDeleteTrieState

  • #2304 eth/ethconfig: remove overridekepler and overrideshanghai

  • #2307 internal/ethapi: add net_nodeInfo

  • #2311 Port cancun related changes from unreleased v1.14.0

  • #2313 tests/truffle: use hbss to run test

  • #2314 cmd/jsutil: dump MinGasPrice for validator

  • #2317 feat: add mev metrics

BUGFIX

  • #2272 parlia: add state prepare for internal SC transaction
  • #2277 fix: systemTx should be always at the end of block
  • #2299 fix: add FeynmanFix upgrade for a testnet issue
  • #2310 core/vm: fix PrecompiledContractsCancun

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 1209556f6265d8bd419c385e38b7f80afad7c379b90e00bf834ba5185acf850e
geth_mac d416d679b545186009cef8fd5aeaa0be9f477da4bf8c92ceb96134745ded239a
geth_windows 60ff50823491d03e672984ee1c9411eac2ee4dac4b9416988f2b55b97b4240ce
geth_linux_arm64 b28f217601fbc514021ffbc0dcdba8625769a8746cdf9c68169c825a984e3303