Skip to content

Draft release v1.6.4#3465

Merged
buddh0 merged 21 commits intomasterfrom
develop
Dec 4, 2025
Merged

Draft release v1.6.4#3465
buddh0 merged 21 commits intomasterfrom
develop

Conversation

@buddh0
Copy link
Contributor

@buddh0 buddh0 commented Nov 28, 2025

Description

v1.6.4 is for BSC Mainnet Fermi hard fork, which is expected to be enabled at: 2026-01-14 02:30:00 AM UTC.

Changelog

v1.6.4

FEATURE

#3466 config: update BSC Mainnet hardfork time: Fermi
#3454 eth: support fetch commit id info from extra data

BUGFIX

#3448 TxPool: change lifetime back to 3 hours
#3457 cmd/geth: stop supporting multidatabase flag
#3467 go.mod: downgrade bls-eth-go-binary to run on windows

IMPROVEMENT

#3445 eth: improve prefetch by using cached reader
#3459 feat: transactionReceipts auto-unsubscribe implementation
#3468 metric: add metric for vote count

allformless and others added 20 commits November 13, 2025 14:47
rollback the lifetime change made in PR#3111
3 hours could be reasonable for non-validator nodes
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.36.0 to 0.45.0.
- [Commits](golang/crypto@v0.36.0...v0.45.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.45.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: lx <92799281+brilliant-lx@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* eth: fix stuck when starting up a new network

* eth: fix UT

* eth: improve fixing UT
Signed-off-by: hongmengning <hongmengning@outlook.com>
Signed-off-by: stellrust <gohunter@foxmail.com>
* refactor: replace Split in loops with more efficient SplitSeq

Signed-off-by: pinglanlu <pinglanlu@outlook.com>

* Update node/api.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Signed-off-by: pinglanlu <pinglanlu@outlook.com>
Co-authored-by: buddho <7995985+buddh0@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: rifeplight <rifeplight@outlook.com>
* metric: add metric for vote count

* metric: add metric for vote count
* release: prepare for release v1.6.4

* version: update version
@buddh0 buddh0 marked this pull request as ready for review December 2, 2025 01:47
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This is a maintenance release (v1.6.4) that primarily configures the BSC Mainnet hardfork schedule for Fermi (January 14, 2026) and introduces the Mendel fork configuration. The PR also includes code modernization by adopting Go 1.23/1.24 features, various bugfixes, and improvements to the voting and prefetching systems.

Key changes:

  • Fermi hardfork scheduled for BSC Mainnet (timestamp: 1768357800)
  • Added Mendel fork configuration as the next planned fork after Osaka
  • Modernized codebase with Go 1.23+ iterator-based APIs (strings.SplitSeq, bytes.SplitSeq) and slices.Contains
  • Enhanced extra data format to include commit ID for better version tracking
  • Implemented auto-unsubscribe for transactionReceipts subscriptions
  • Fixed vote pool filtering to include source block number validation

Reviewed changes

Copilot reviewed 79 out of 80 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
version/version.go Version bump from 1.6.3 to 1.6.4
params/config.go Added Fermi timestamp for mainnet, added Mendel fork configuration, reordered fork checks
params/forks/forks.go Added Mendel fork constant and string mapping
eth/backend.go Updated extra data format to include commit ID (8-char hex) and shortened OS name
eth/filters/api.go Implemented auto-unsubscribe for transactionReceipts after grace period
core/vote/vote_pool.go Enhanced FetchVotesByBlockHash to filter by source block number
core/vote/vote_manager.go Moved voting time check to after validator check for efficiency
consensus/parlia/parlia.go Updated to pass source block number to FetchVotesByBlockHash
consensus/parlia/snapshot.go Added metric for attestation vote count
miner/bid_simulator.go Updated to use StateForPrefetch() instead of CopyDoPrefetch()
core/state_prefetcher.go Minor comment cleanup
core/txpool/legacypool/legacypool.go Restored transaction lifetime to 3 hours from 10 minutes
cmd/geth/main.go Commented out MultiDataBaseFlag (deprecated)
cmd/utils/flags.go Added OverrideOsaka and OverrideMendel flags
eth/sync.go, eth/handler.go, eth/handler_eth.go Special handling for block #1 broadcast during network initialization
cmd/jsutils/getchainstatus.js Added parser for new extra data format with commit ID
p2p/peer.go, miner/worker.go Replaced manual loops with slices.Contains
node/api.go, log/handler_glog.go, etc. Adopted strings.SplitSeq iterator-based API
Multiple build tag files Removed legacy // +build comments, kept modern //go:build
go.mod, go.sum Updated dependencies including golang.org/x packages
.github/workflows/*.yml Added temporary BLS downgrade for Windows builds
eth/ethconfig/*.go Added OverrideMendel configuration support
eth/tracers/api.go Added override support for all BSC-specific forks
consensus/misc/eip4844/eip4844.go Mendel fork uses Osaka blob config
cmd/geth/chaincmd.go Refactored createNodeConfig to remove staticConnect parameter
core/state_prefetcher_test.go Modernized to use t.Context() instead of manual context cancellation

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@buddh0 buddh0 merged commit 0f7131f into master Dec 4, 2025
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants