FEATURE
- #1797 client: add FinalizedHeader/Block to use the fast finality
- #1805 vote: remove DisableBscProtocol and add flag to skip votes assmebling
BUGFIX
- #1829 fix: lagging nodes failed to sync
FEATURE
- #1780 log: reduce logs when receiving too much votes from a peer
- #1788 metrics: add txpool config into metrics server
- #1789 rpc: add GetFinalizedHeader/Block to simplify using the fast finality feature
- #1791 finality: add more check to ensure result of assembleVoteAttestation
- #1795 tool: add a tool extradump to parse extra data after luban
BUGFIX
- #1773 discov: do not filter out bootnodes
- #1778 vote: backup validator sync votes from corresponding mining validator
- #1784 fix: exclude same votes when doing malicious voting check
FEATURE
- #1775 upgrade: several hardfork block height on mainnet: Plato, Hertz(Berlin, London)
FEATURE
- #1626 eth/filters, ethclient/gethclient: add fullTx option to pending tx filter
- #1726 feat: support password flag when handling bls keys
BUGFIX
- #1734 fix: avoid to block the chain when failed to send votes
FEATURE
- #1645 lightclient: fix validator set change
- #1717 feat: support creating a bls keystore from a specified private key
- #1720 metrics: add counter for voting status of whole network
FEATURE
- #1697 upgrade: block height of Hertz(London&Berlin) on testnet
- #1686 eip3529tests: refactor tests
- #1676 EIP-3529 (BEP-212) Unit tests for Parlia Config
- #1660 feat: add a tool for submitting evidence of maliciousvoting
- #1623 P2P: try to limit the connection number per IP address
- #1608 feature: Enable Berlin EIPs
- #1597 feature: add malicious vote monitor
- #1422 core: port several London EIPs on BSC
IMPROVEMENT
- #1662 consensus, core/rawdb, miner: downgrade logs
- #1654 config: use default fork config if not specified in config.toml
- #1642 readme: update the disk requirement to 2.5TB
- #1621 upgrade: avoid to modify RialtoGenesisHash when testing in rialtoNet
BUGFIX
- #1682 fix: set the signer of parlia to the most permissive one
- #1681 fix: not double GasLimit of block upon London upgrade
- #1679 fix: check integer overflow when decode crosschain payload
- #1671 fix: voting can only be enabled when mining
- #1663 fix: ungraceful shutdown caused by malicious Vote Monitor
- #1651 fix: remove naturally finality
- #1641 fix: support getFilterChanges after NewFinalizedHeaderFilter
BUGFIX
- #1675 goleveldb: downgrade the version for performance
FEATURE
- #1636 upgrade: block height of Luban on mainnet
FEATURE
IMPROVEMENT
- #866 code: x = append(y) is equivalent to x = y
- #1488 eth/tracers, core/vm: remove
time
from trace output and tracing interface - #1547 fix: recently signed check when slashing unavailable validator
- #1573 feat: remove supports for legacy proof type
- #1576 fix: support golang 1.20 by upgrading prysm to v4
- #1578 fix: output an error log when bsc extension fail to handshake
- #1583 metrics: add a counter for validator to check work status of voting
BUGFIX
- #1566 fix: config for VoteJournalDir and BLSWalletDir
- #1572 fix: remove dynamic metric labels about fast finality
- #1575 fix: make BLST PORTABLE for release binary
- #1590 fix: fix snap flaky tests
It was skipped by a mistake, replaced by v1.2.3
IMPROVEMENT
- #1527 log: revert a log back to trace level
FEATURE
- #936 BEP-126: Introduce Fast Finality Mechanism
- #1325 genesis: add BEP174 changes to relayer contract
- #1357 Integration API for EIP-4337 bundler with an L2 validator/sequencer
- #1463 BEP-221: implement cometBFT light block validation
- #1493 bep: update the bytecode of luban fork after the contract release
IMPROVEMENT
- #1486 feature: remove diff protocol registration
- #1434 fix: improvements after testing fast finality
BUGFIX
- #1430 docker: upgrade alpine version & remove apks version
- #1458 cmd/faucet: clear reqs list when reorg to lower nonce
- #1484 fix: a deadlock caused by bsc protocol handeshake timeout
BUGFIX
- #1464 fix: panic on using WaitGroup after it is freed
FEATURE
- #1361 cmd/faucet: merge ipfaucet2 branch to develop
IMPROVEMENT
- #1412 fix: init-network with config.toml without setting TimeFormat
- #1401 log: support custom time format configuration
- #1382 consnesus/parlia: abort sealing when block in the same height has updated
- #1383 miner: no need to broadcast sidechain header mined by this validator
BUGFIX
- #1379 UT: fix some flaky tests
- #1403 Makefile: fix devtools install error
- #1381 fix: snapshot generation issue after chain reinit from a freezer
FEATURE
- #1389 upgrade: update the fork height of planck upgrade on mainnet
BUGFIX
- #1354 fix: add some boundary check for security
- #1373 tracer: enable withLog for TraceCall
- #1377 miner: add fallthrough for switch cases
FEATURE
- #1322 cmd/utils/flags.go: --diffsync flag is deprecate
- #1261 tracer: port call tracer
withLog
to bsc
IMPROVEMENT
- #1337 clean: Remove support for Ethereum testnet
- #1347 upgrade: update the fork height of planck upgrade on testnet
- #1343 upgrade: update system contracts' code of planck upgrade
- #1328 upgrade: update system contracts' code of testnet
- #1162 consensus: fix slash bug when validator set changing
- #1344 consensus: fix delete the 1st validator from snapshot.recents list
- #1149 feats: add ics23 proof support for cross chain packages
- #1333 sec: add proof ops check and key checker
BUGFIX
- #1348 core/txpool: implement additional DoS defenses
FEATURE
- #1199 mointor: implement double sign monitor
IMPROVEMENT
- #1226 eth, trie: sync with upstream v1.10.26 to solve snap sync issues
- #1212 metrics: add miner info into metrics server
- #1240 Add NewBatchWithSize API for db and use this API for BloomIndexer.Commit()
- #1254 ci: update unmaintained tools to use maintained tools
- #1256 ci: disable CGO_ENABLED when building binary
- #1274 dep: bump the version of several important library
- #1294 parlia : add a check for the length of extraData.
- #1298 dep: update tendermint to v0.31.14
Document
- #1233 doc: update readme
- #1245 comments: add comments to clarify flags and byte codes
- #1266 docs: update the readme to latest
- #1267 docs: minor fix about the readme
- #1287 docs: minor fix on geth links
BUGFIX
- #1233 doc: update readme
- #1253 fix comments: prune ancient compatibility, add prune ancient comments
- #1301 fix: p2p sync with lagging peer
- #1302 fix: eth fetcher re-queue issue
IMPROVEMENT
- #1209 metrics: add build info into metrics server
- #1204 worker: NewTxsEvent and triePrefetch reuse in mining task
- #1195 hardfork: update Gibbs fork height and system contract code
- #1192 all: sync with upstream v1.10.22
- #1186 worker: improvement of the current block generation logic to get more rewards
- #1184 worker: remove pre-seal empty block
- #1182 Parlia: Some updates of the miner worker
- #1181 all: sync with upstream v1.10.21
- #1177 core/forkid: refactor nextForkHash function
- #1174 worker: some code enhancement on work.go
- #1166 miner: disable enforceTip when get txs from txpool
BUGFIX
IMPROVEMENT
- #1114 typo: .github fix job name
- #1126 ci: specify bind-tools version
- #1140 p2p: upstream go-ethereum: use errors.Is for error comparison
- #1141 all: prefer new(big.Int) over big.NewInt(0)
- #1159 core: remove redundant func
BUGFIX
- #1138 fix: upstream patches from go-ethereum 1.10.19
- #1139 fix: upstream go-ethereum: fix duplicate fields names in the generted go struct
- #1145 consensus: the newChainHead mights not be imported to Parlia.Snapshot
- #1146 fix: upstream patches from go-ethereum 1.10.20
- #1121 vm: add two proof verifier to fix the vulnerability in range proof
- #1109 nanofork: block exploitation accounts and suspend cross chain bridge related precompile contracts
IMPROVEMENT
BUGFIX
- #1062 test: fix TestOfflineBlockPrune failed randomly
- #1076 bug: pick some patches from go-ethereum on v1.10.18
- #1079 core: fix potential goroutine leak
FEATURE
IMPROVEMENT
- #952 Improve trie prefetch
- #975 broadcast block before commit block and add metrics
- #992 Pipecommit enable trie prefetcher
- #996 Trie prefetch on state pretch
BUGFIX
- #1053 state: fix offline tool start failed when start with pruneancient
- #1060 consensus: fix the GasLimitBoundDivisor
- #1061 fix: upstream patches from go-ethereum
- #1067 fix:fix potential goroutine leak
- #1068 core trie rlp: patches from go-ethereum
- #1070 txpool: reheap the priced list if london fork not enabled
FEATURE
IMPROVEMENT
- #816 merge go-ethereum v1.10.15
- #950 code optimizations for state prefetcher
- #972 redesign triePrefetcher to make it thread safe
- #998 update dockerfile with a few enhancement
- #1015 disable noisy logs since system transaction will cause gas capping
BUGFIX
- #932 fix account root was not set correctly when committing mpt during pipeline commit
- #953 correct logic for eip check of NewEVMInterpreter
- #958 define DiscReason as uint8
- #959 update some packages' version
- #983 fix nil pointer issue when stopping mining new block
- #1002 Fix pipecommit active statedb
- #1005 freezer batch compatible offline prunblock command
- #1007 missing contract upgrades and incorrect behavior when miners enable pipecommit
- #1009 resolve the concurrent cache read and write issue for fast node
- #1011 Incorrect merkle root issue when enabling pipecommit with miner
- #1013 tools broken because of writting metadata when open a readyonly db
- #1014 fast node can not recover from force kill or panic
- #1019 memory leak issue with diff protocol
- #1020 remove diffhash patch introduced from separate node
- #1024 verify node is not treated as verify node
UPGRADE
- #927 add readme for validators about how to enter/exit maintenance
- #942 update the blockNumber of Euler Fork upgrade on BSC Mainnet
FEATURE
- #885 add Euler Hardfork, including BEP-127 and BEP-131
BUGFIX
- #856 fix logic issue: handlers.removePeer() is called twice
- #860 fix:defer bloomprocessor close
- #877 fix validator pipecommit issue
- #870 fix:Shift panic for zero length of heads
IMPROVEMENT
- #792 add shared storage for prefetching state data
- #795 implement state verification pipeline in pipecommit
- #803 prefetch state data during the mining process
- #812 skip verification on account storage root to tolerate with fastnode when doing diffsync
- #818 add shared storage to the prefetcher of miner
- #820 disable diffsync when pipecommit is enabled
- #830 change the number of prefetch threads
BUGFIX
- #797 fix race condition on preimage in pipecommit
- #808 fix code of difflayer not assign when new smart contract created
- #817 fix bugs of prune block tool
- #834 fix deadlock when failed to verify state root in pipecommit
- #835 fix deadlock on miner module when failed to commit trie
- #842 fix invalid nil check of statedb in diffsync
FEATURES
- #668 implement State Verification && Snapshot Commit pipeline
- #581 implement geth native trace
- #543 implement offline block prune tools
IMPROVEMENT
- #704 prefetch state by applying the transactions within one block
- #713 add ARM binaries for release pipeline
BUGFIX
- #667 trie: reject deletions when verifying range proofs #667
- #643 add timeout for stopping p2p server to fix can not gracefully shutdown issue
- #740 update discord link which won't expire
BUGFIX
- #628 fix state inconsistent when doing diffsync
BUGFIX
- #582 the DoS vulnerabilities fixed in go-ethereum v1.10.9
IMPROVEMENT
- #578 reduce memory allocation and upgrade snappy version
FEATURES
- #570 reannounce local pending transactions
BUGFIX
- #509 fix graceful shutdown bug
IMPROVEMENT
- #536 get diff accounts by replaying block when diff layer not found
- #527 improve diffsync protocol in many aspects
- #493 implement fast getDiffAccountsWithScope API
Improvement
BUGFIX
- #491 fix prefetcher related bugs
FEATURES
- #480 implement bep 95
Improvement
- #456 git-flow support lint, unit test, and integration test
- #449 cache bitmap and change the cache type of GetCode
- #454 fix cache key do not have hash func
- #446 parallel bloom calculation
- #442 ignore empty tx in GetDiffAccountsWithScope
- #426 add block proccess backoff time when validator is not in turn and received in turn block
- #398 ci pipeline for release page
BUGFIX
- #446 fix concurrent write of subfetcher
- #444 fix blockhash not correct for the logs of system tx receipt
- #409 fix nil point in downloader
- #408 core/state/snapshot: fix typo
FEATURES
- #431 Export get diff accounts in block api
- #412 add extension in eth protocol handshake to disable tx broadcast
- #376 implement diff sync
Security
- #379 A pre-announced hotfix release to patch a vulnerability in the EVM (CVE-2021-39137).
IMPROVEMENT
- #355 miner should propose block on a proper fork
BUGFIX
- #350 flag: fix TriesInmemory specified but not work
- #358 miner: fix null pending block
- #360 pruner: fix state bloom sync permission in Windows
- #366 fix double close channel of subfetcher
- #333 improve block fetcher efficiency
- #326 eth/tracers: improve tracing performance
- #257 performance improvement in many aspects
- #152 upgrade to go-ethereum 1.10.3
BUGFIX
- #194 bump btcd to v0.20.1-beta
BUGFIX
- #120 add health check endpoint
- #116 validator only write database state when enough distance
- #115 add batch query methods
- #112 apply max commit tx time for miner worker to avoid empty block
- #101 apply block number limit for the
eth_getLogs
api - #99 enable directbroadcast flag to decrease the block propagation time
- #90 add tini in docker image
- #84 add jq in docker image
- #68 apply mirror sync upgrade on mainnet
SECURITY
- #63 security patches from go-ethereum
- #54 les: fix GetProofsV2 that could potentially cause a panic.
FEATURES
IMPROVEMENT
BUGFIX
- #59 fix potential deadlock of pub/sub module
IMPROVEMENT
- #35 use fixed gas price when network is idle
- #38 disable noisy log from consensus engine
- #47 upgrade to golang1.15.5
- #49 Create pull request template for all developer to follow
IMPROVEMENT
- #36 add max gas allwance calculation
IMPROVEMENT
- #29 eth/tracers: revert reason in call_tracer + error for failed internal…
IMPROVEMENT
- #22 resolve best practice advice
FEATURES
- #23 enforce backoff time for out-turn validator
BUGFIX
- #25 minor fix for ramanujan upgrade
UPGRADE
- #26 update chapel network config for ramanujan fork
FEATURES
- #5 enable bep2e tokens for faucet
- #14 add cross chain contract to system contract
- #15 Allow liveness slash fail
IMPROVEMENT
- #11 remove redundant gaslimit check
BUGFIX