m0.9.8.testnet: to apply Berlin and London hardfork to METADIUM TESTNET ONLY
Pre-releasePlease do not apply this code to METADIUM MAINNET. THIS IS FOR METADIUM TESTNET ONLY.
Gmet m0.9.8.testnet is a MUST upgrade aimed to follow Ethereum's Berlin and London hard fork for TESTNET.
The fixed TESTNET block number for this transition is: #38076000.
Both Berlin and London HF for TESTNET has been successfully applied at 2022-09-22 13:23:20 +UTC.
Berlin Fork EIPs
EIP-2929: gas cost increases for state access opcodes
EIP-2315: simple subroutines for the EVM
EIP-2565: modexp precompile gas cost changes
EIP-2718: typed transaction envelope EIP-2930: access list transactions
London Fork EIPs
EIP-1559: Fee market change for ETH 1.0 chain
EIP-3198: BASEFEE opcode
EIP-3529: Reduction in refunds
EIP-3541: Reject new contracts starting with the 0xEF byte
Key commits are as follows
- add "meta" to ethstats (47ae953)
- core, params: drop underpriced transactions (3763ee7)
- miner: sets baseFee in pending block (548c814)
- core, params: update metadium testnet berlin & london block height to 38067000 (d5fdd66)
- metadium: fixed error handling during rewards calculation (7d802e3)
- feat: apply compact window && update check logic (2069123)
- miner: fixed pending block refresh issue (aff46db)
- consensus: abort upon rewards calculation error (a0e66b5)
- consensus/misc, core, core/vm: disabled EIP-1559 & EIP-3198, fixed --override.london option to include berlin as well (892bb78)
- internal/ethapi: fix incorrect type on empty slice (ethereum#24372) (f01e2fa)
- signer/core: fix complex typed data sign (EIP712) (ethereum#24220) (5a0d487)
- miner: avoid data race in miner (ethereum#24349) (2d20fed)
- etcd: added patched etcd (68b5f00)
- eth, miner: use miner for post-merge block production (ethereum#23256) (78636ee)
- core: moved governance initialization check after block validation fails (e51e813)
- trie: fix range prover (ethereum#24266) (ae45c97)
- core: unon fast sync completion wait for governance to be initialized in order to calculate rewards distribution correctly (880b5cb)
- ethdb/rocksdb: fixed iterator range issue (4c77062)
- crypto/ecies: use AES-192 for curve P384 (ethereum#24139) (045e90c)
- trie: use keyvalue reader for non-mutating methods (ethereum#24221) (2c58e6b)
- core/evm: RANDOM opcode (EIP-4399) (ethereum#24141) (b1e72f7)
- core: periodically flush the transaction indexes (4bd2d0e)
- core/rawdb: fix double-lock causing hang (ethereum#24189) (66a908c)
- core: ignore basefee when comparing with pool gasprice in txpool (ethereum#24080) (8bbf83e)
- core/vm: Make INVALID a defined opcode (ethereum#24017) (3e47e38)
- core, eth: improve delivery speed on header requests (ethereum#23105) (db03faa)
- miner: update pending block even after the PoS transition (ethereum#24075) (7f7877a)
- core, core/rawdb: fix transaction indexing (ethereum#24024) (69686fa)
- signer/core: move EIP-712 types to package apitypes (ethereum#24029) (619a3e7)
- core, eth, les, trie: remove the sync bloom, used by fast sync (58d1988)
- core/vm: move interpreter interruption check to jump instructions (ethereum#24026) (b02fe53)
- core/vm: remove stack.pushN (ethereum#24040) (a0f7771)
- eth: pre-process downloader responses on the peer reader thread (c893488)
- core/vm: rename opSuicide to opSelfdestruct (ethereum#24022) (2be129b)
- core/vm: Move interpreter.ReadOnly check into the opcode implementations (ethereum#23970) (9393d1f)
- core/vm: don't copy JumpTable when no EIP mods are needed (ethereum#23977) (163f166)
- core/vm: Rename SHA3 instruction to KECCAK256 (ethereum#23976) (a69d4b2)
- trie: simplify StackTrie implementation (ethereum#23950) (86fe359)
- eth: request id dispatcher and direct req/reply APIs (ethereum#23576) (c10a0a6)
- all: core rework for the merge transition (Minimized changes for the merge ethereum#23761) (3038e48)
- core/vm: simplify op lookup in contract (ethereum#23974) (519cf98)
- consensus/misc: not checking extra data on metadium mainnet (edb77d5)
- trie: reject deletions when verifying range proofs (743769f)
- core/rawdb: use AncientRange when initializing leveldb from freezer (ethereum#23612) (347c37b)
- core, eth/downloader: fix resetting below freezer threshold (d9c13d4)
- ethdb/rocksdb: fixed iterator & added tests (98bc33d)
- eth, eth/protocols/eth: transaction announcements for ETH66 only as the previous metadium protocol version was ETH65 (b89baa7)
- core/rawdb: add slow path for getting legacy logs (ethereum#23879) (c57df9c)
- core/vm: implement EIP-2681: Limit account nonce to 2^64-1 (ethereum#23853) (f32feeb)
- eth: added SynchroniseWith to synchronize with a given peer (7ddcc15)
- core: check effective tip in txpool pricelimit validation (ethereum#23855) (9489853)
- cmd/geth, cmd/utils, metadium/scripts: renamed --testnet to --meta-tesnet (a4f0f8f)
- cmd/geth: add support for sepolia testnet (ethereum#23730) (e1c000b)
- miner, consensus/clique: avoid memory leak during block stasis (ethereum#23861) (476fb56)
- rpc: linear time batch response matching (ethereum#23856) (53b94f1)
- core: more efficient nonce-update in txpool (ethereum#22231) (03bc8b7)
- accounts/abi/bind/backends: make suggestGasPrice compatible with non-1559 chains (ethereum#23840) (c2e64db)
- miner: fix receipt deep copy in worker (ethereum#23835) (c113520)
- accounts/abi/bin/backends: return basefee in suggestGasPrice (ethereum#23838) (57c252e)
- eth, eth/protocols/eth: added metadium message handlers (0121483)
- cmd/geth, cmd/evm, params: implement Arrow Glacier (EIP 4345) (ethereum#23810) (32150f8)
- internal/jsre: upgrade offline wallet for goja (f26b65a)
- ethdb: more accurate batch size calculation (ethereum#23790) (53f8157)
- core: use block difficulty for genesis (ethereum#23793) (c72b16c)
- core/rawdb, ethdb: introduce batched/atomic reads from ancients (ethereum#23566) (0e7efd6)
- core/state/snapshot: fix BAD BLOCK error when snapshot is generating (ethereum#23635) (312e02b)
- cmd/evm: add 256-bit field validations on transactions (t9n) (ethereum#23743) (84d8eb2)
- internal/ethapi: fix recover sender of pending transaction (ethereum#23765) (433f091)
- core/types: add MarshalBinary, UnmarshalBinary for Receipt (ethereum#22806) (e4f570f)
- eth: close miner on exit (instead of just stopping) (ethereum#21992) (28d30b5)
- internal/ethapi: use correct signer when serving old blocks (ethereum#23683) (48496e0)
- core: improve shutdown synchronization in BlockChain (ethereum#22853) (edb1937)
- core/types: copy tx recipient address (ethereum#23376) (4e599ee)
- eth/api: add rpc method to obtain which states are accessible (ethereum#23646) (307156c)
- internal/ethapi: make header/block rlp retrieval canonical (5240725)
- internal/ethapi: support retrieving header RLPs too (07a5bc1)
- eth/protocols/eth: simplify peer known block/txs caches (ethereum#23649) (a541fbe)
- accounts/abi/bind: check event signature before parsing (ethereum#23230) (92c5d10)
- core/rawdb: avoid unnecessary receipt processing for log filtering (ethereum#23147) (783e97e)
- core/state: move state account to core/types + abstracted "write account to trie" (ethereum#23567) (443afc9)
- p2p/enode: use unix timestamp as base ENR sequence number (ethereum#19903) (6ef3a16)
- core: fix race conditions in txpool (ethereum#23474) (067084f)
- internal/ethapi: support both input and data for personal_sendTransaction (ethereum#23476) (ffae204)
- crypto/cloudflare/bn256: fix in-place addition and unmarshalling (ethereum#23419) (887902e)
- cmd/evm: add difficulty calculation to t8n tool (ethereum#23353) (84c51bc)
- core/bloombits: avoid crash when storing errors of different type (ethereum#23437) (8e0771c)
- p2p, p2p/enode: fix data races (ethereum#23434) (8dbf261)
- core/vm: faster code analysis (ethereum#23381) (1d99573)
- eth/gasprice: feeHistory improvements (ethereum#23422) (f38abc5)
- signer/core/apitypes: remove dependency on internal/ethapi (ethereum#23362) (bb1f7eb)
- eth, internal/ethapi: make RPC block miner field show block sealer correctly (ethereum#23312) (57feabe)
- accounts/external: handle 0 chainid as not-set for the Clef API (ethereum#23394) (0a68558)
- core/rawdb: implement sequential reads in freezer_table (ethereum#23117) (5f98020)
- internal/ethapi: add back missing check for maxfee < maxPriorityFee (278ec71)
- internal/ethapi, accounts/abi/bind: cap highest gas limit by account balance for 1559 fee parameters (ethereum#23309) (a879c42)
- internal/ethapi: return maxFeePerGas for gasPrice for EIP-1559 txs (ethereum#23345) (39fe7ec)
- core: fix london-check to avoid duplication (ethereum#23333) (d60cfd2)
- core/rawdb: close database in test to avoid goroutine leak (ethereum#23287) (9e59474)
- cmd/evm: implement input txs via rlp in t8n tool (ethereum#23138) (8a24b56)
- core: check if sender is EOA (ethereum#23303) (0658712)
- core: get header from block cache (ethereum#23299) (c38fab9)
- accounts/external, internal/ethapi: fixes for London tx signing (accounts/external, internal/ethapi: make ext signer sign legacy ethereum#23274) (5c13012)
- consensus/ethash: less allocation during mining (ethereum#23199) (0730acc)
- internal/ethapi: fix panic in accesslist creation (ethereum#23225) (2faf796)
- accounts/abi/bind: set Context in TransactOpts (ethereum#23188) (3aea432)
- accounts/abi/bind: parse ABI only once, create metadata struct (ethereum#22583) (b20bc5c)
- Use hexutil.Uint for blockCount parameter in feeHistory method (ethereum#23239) (bbfa648)
- core/types: revert removal of legacy receipt support (ethereum#23247) (370680a)
- core: fix pre-check for account balance under EIP-1559 (ethereum#23244) (97aacd9)
- node: fix stopping websocket rpc.Server (node: fix stopping websocket rpc.Server ethereum#23211) (89fde59)
- consensus/clique: implement getSigner API method (ethereum#22987) (b9e6e43)
- internal: get pending and queued transaction by address (ethereum#22992) (c49e065)
- internal/ethapi: fix transaction APIs (ethereum#23179) (846badc)
- core/state: avoid unnecessary alloc in trie prefetcher (ethereum#23198) (8fe47b0)
- eth/gasprice, internal/ethapi, miner: minor feehistory fixes (dea7155)
- core/types: sanity check the basefee length inside a header (ethereum#23171) (e13d14e)
- eth, miner: add RPC method to modify miner gaslimit (pre london: ceiling) (ethereum#23134) (d21a069)
- core: fix bad parent hash when jumping to genesis in setHead (ethereum#23162) (bd56697)
- ethstats: fix full node interface post 1559 (6b6d319)
- cmd/evm, eth/ethconfig: regenerate struct codecs (ethereum#23140) (3b05318)
- all: removed blockhash from statedb (ethereum#23126) (686b288)
- internal/ethapi: fix panic in access list creation (ethereum#23133) (e7c8693)
- ethclient/gethclient: RPC client wrapper for geth-specific API (ethereum#22977) (acdf923)
- accounts/abi/bind: fix gas price suggestion with pre EIP-1559 clients (ethereum#23102) (61f4b5a)
- eth/gasprice: implement feeHistory API (ethereum#23033) (35dbf7a)
- eth/downloader: increase downloader block body allowance (ethereum#23074) (2d4eff2)
- core: transaction journal should not be executable (ethereum#23090) (4dde066)
- crypto: fix build directives (a750bf8)
- trie: small optimization of delete in fullNode case (ethereum#22979) (732a6a3)
- core/types: add DynamicFeeTx to TxData implementation list in docs (ethereum#23063) (15fe305)
- accounts/abi/bind: call ensureContext on every context (c63c2d8)
- fixed fastsync & rocksdb iterator (a001843)
- core/vm: evm fix panic (ethereum#23047) (080b6eb)
- core, graphql, internal: expose effectiveGasPrice in receipts (aa69d36)
- accounts/abi/bind: fix bounded contracts and sim backend for 1559 (ethereum#23038) (7a7abe3)
- params, core/forkid: add london testnet blocks (ethereum#23041) (087ed9c)
- core: change baseFee into baseFeePerGas in genesis json (8a4460c)
- eth/ethconfig: bump the RPC gas cap to 50M, since 1559 exceeds 25 (be1267c)
- core, internal: support various eth_call invocations post 1559 (f68a68a)
- cmd/clef, signer: support for eip-1559 txs in clef (ethereum#22966) (7a00378)
- all: rename internal 1559 gas fields, add support for graphql (ethereum#23010) (c503f98)
- core: make genesis parse baseFee correctly (f763846)
- core, eth, miner: enforce configured mining reward post 1559 too (7e915ee)
- core, eth, internal, les: RPC methods and fields for EIP 1559 (ethereum#22964) (5cff975)
- eth/ethconfig: flip the default from fast to snap sync (9aaa420)
- cmd/geth, core, params: replace baikal with calaveras (ethereum#22972) (08ea52e)
- core: add new eip-1559 tx constraints (ethereum#22970) (2d716c4)
- all: EIP-1559 tx pool support (ethereum#22898) (966ee3a)
- crypto/secp256k1: fix undefined behavior in BitCurve.Add (ethereum#22621) (0703ef6)
- p2p/rlpx: reduce allocation and syscalls (ethereum#22899) (7194c84)
- internal/ethapi: merge CallArgs and SendTxArgs (ethereum#22718) (51b32cc)
- eth: unregister peer only when handler exits (ethereum#22908) (836c647)
- core: make txpool free space calculation more accurate (ethereum#22933) (93407b1)
- rlp: optimize byte array handling (ethereum#22924) (154ca32)
- rlp: use atomic.Value for type cache (ethereum#22902) (0d076d9)
- core/rawdb: handle prefix in table.compact method (ethereum#22911) (81662fe)
- EIP-1559: miner changes (ethereum#22896) (a6c4627)
- p2p/dnsdisc: fix crash when iterator closed before first call to Next (ethereum#22906) (16bc574)
- eth, p2p/msgrate: move peer QoS tracking to its own package and use it for snap (ethereum#22876) (3e79588)
- rlp: improve decoder stream implementation (ethereum#22858) (088da24)
- core/asm: fix the bug of "00" prefix number (ethereum#22883) (b7a9166)
- core/rawdb: wait for background freezing to exit when closing freezer (ethereum#22878) (bb9f9cc)
- all: implement EIP-1559 (ethereum#22837) (94451c2)
- consensus/ethash: change eip3554 from 9.5M to 9.7M (ethereum#22870) (14bc6e5)
- cmd/evm: return json error if unmarshalling from stdin fails (ethereum#22871) (597ecb3)
- core: ensure a broken trie invariant crashes genesis creation (ethereum#22780) (a2c456a)
- cmd/geth, eth/gasprice: add configurable threshold to gas price oracle (ethereum#22752) (ca98080)
- eth/protocols/snap: adapt to uint256 API changes (ethereum#22851) (e536bb5)
- rlp: add support for optional struct fields (ethereum#22832) (700df14)
- consensus/ethash: implement EIP-3554 (bomb delay) (17b1be2)
- core, params: implement EIP-3529 (ethereum#22733) (a5669ae)
- core/vm, params: implement EIP 3541 (e69130d)
- all: define London+baikal, undefine yolov3, add london override flag (ethereum#22822) (cc606be)
- cmd/utils: use eth DNS tree for snap discovery (ethereum#22808) (b8040a4)
- cmd/utils: don't crash on nonexistent datadir (ethereum#22738) (8f94fc2)
- eth/protocols/snap: use storage batch, not account batch in st task (52b5d2d)
- core, eth: abort snapshot generation on snap sync and resume later (745757a)
- eth: restore eth_hashrate API endpoint (06f44c0)
- eth/protocols/snap: lower the packet size to avoid overloading link (558bff4)
- eth/gasprice: improve stability of estimated price (ethereum#22722) (256c5d6)
- eth/protocols/snap: generate storage trie from full dirty snap data (ethereum#22668) (caea6c4)
- core/vm: make gas cost reporting to tracers correct (ethereum#22702) (65a1c2d)
- core/rawdb: fix datarace in freezer (ethereum#22728) (9b99e3d)
- p2p/discover: improve discv5 handling of IPv4-in-IPv6 addresses (ethereum#22703) (34f3c95)
- core/state/snapshot, true: reuse dirty data instead of hitting disk when generating (ethereum#22667) (49281ab)
- eth/protocols, prp/tracker: add support for req/rep rtt tracking (ethereum#22608) (1fb9a6d)
- rpc: add HTTPError type for HTTP error responses (ethereum#22677) (9357280)
- accounts/external, signer/core: add support for EIP-2930 transactions (ethereum#22585) (67da83a)
- trie: improve the node iterator seek operation (ethereum#22470) (4b783c0)
- eth, internal: extend the TraceCall API (ethereum#22245) (dd9c322)
- trie: make stacktrie support binary marshal/unmarshal (ethereum#22685) (581539c)
- trie: make stacktrie not mutate input values (ethereum#22673) (4f3ba67)
- eth/protocols/snap: use ephemeral channels to avoid cross-sync delveries (9553c98)
- core/types: drop some relice data types (d5e5794)
- core, eth: faster snapshot generation (ethereum#22504) (7088f1e)
- eth/fetcher: avoid spurious timer events at startup (ethereum#22652) (a50251e)
- core, eth, internal/ethapi: create access list RPC API (ethereum#22550) (9d10856)
- consensus/ethash: replace a magic number with it's constant (ethereum#22618) (e275b1a)
- cmd/utils: move cache sanity check to SetEthConfig (ethereum#22510) (95219ae)
- internal/ethapi: fix eth_chainId method (ethereum#22243) (706683e)
- core/state/snapshot: fix data race in diff layer (ethereum#22540) (c79fc20)
- rpc: tighter shutdown synchronization in client subscription (ethereum#22597) (4a37ae5)
- ethstats: avoid creating subscriptions on background goroutine (ethereum#22587) (3faae5d)
- core/vm: fix Byzantium address list (ethereum#22603) (44fe466)
- core: add BlockGen.GetBalance method (ethereum#22589) (b6912c1)
- eth/protocols/snap: try to prevent requests timing out (7644795)
- core/state/pruner: move the compaction out of the pruning procedure (ethereum#22579) (76700ac)
- eth/protocols/snap: add peer id and req id to the timeout logs (099be04)
- metrics/influxdb: don't push empty histograms, no measurement != 0 (62379f0)
- eth/protocols, metrics: use resetting histograms for rare packets (2550e46)
- eth/protocols, metrics, p2p: add handler performance metrics (6d7ff6a)
- cmd/devp2p: fix comparison of TXT record value (ethereum#22572) (bed74b3)
- core: fix condition on header verification (497448b)
- eth/protocols/snap: fix the flaws in the snap sync (ethereum#22553) (c5df05b)
- core/state/snapshot: fix panic on missing parent (a31f6d5)
- all: add read-only option to database (ethereum#22407) (0c70b83)
- accounts: eip-712 signing for ledger (ethereum#22378) (aab3560)
- accounts/abi/bind: add NoSend transact option (ethereum#22446) (38ea7f2)
- eth/protocols/snap, eth/downloader: don't use bloom filter in snap sync (410089a)
- core/rawdb: fix transaction indexing/unindexing hashing error (ethereum#22457) (94ab4ea)
- core/types: reduce allocations in GasPriceCmp (ethereum#22456) (be87f76)
- core, eth: unship EIP 2315 (7834e4a)
- core/rawdb: fix the transaction indexer (ethereum#22395) (19d7a37)
- core/state: fix eta calculation on pruning (ethereum#22386) (498458b)
- rpc: add separate size limit for websocket (ethereum#22385) (27b3137)
- all: define Berlin hard fork spec (0928562)
- all: add support for EIP-2718, EIP-2930 transactions (EIP-2718: Typed Transaction Envelope + EIP-2930 ethereum#21502) (bbfb1e4)
- cmd, eth, les: enable serving light clients when non-synced (ethereum#22250) (378e961)
- internal/ethapi: reject non-replay-protected txs over RPC (ethereum#22339) (142fbcf)
- cmd/utils: disable caching preimages by default (ca76db6)
- eth: implement eth66 (ethereum#22241) (6ec1561)
- node: always show websocket url in logs (ethereum#22307) (b1835b3)
- rlp: handle case of normal EOF in Stream.readFull (ethereum#22336) (9ec32a9)
- core/state: copy the snap when copying the state (ethereum#22340) (52e5c38)
- eth/handler, broadcast: optimize tx broadcast mechanism (ethereum#22176) (e01096f)
- eth: fix snap sync cancellation (bfdff4c)
- core/state/snapshot: ensure Cap retains a min number of layers (9ec3329)
- trie: fix bloom crash on fast sync restart (e991bda)
- core: fix temp memory blowup caused by defers holding on to state (ef227c5)
- cmd/utils, eth/ethconfig: unindex txs older than ~1 year (409b16e)
- accounts/abi/bind: fixed unpacking error (ethereum#22230) (cb3c7e4)
- core/state/pruner: fix compaction range error (74dbc20)
- core/state/pruner: fix compaction after pruning (2728672)
- all: bloom-filter based pruning mechanism (ethereum#21724) (f566dd3)
- params: just to make snapshots a bit more official (d86906f)
- metrics: fix cast omission in cpu_syscall.go (ethereum#22262) (477fd42)
- cmd/utils: enable snapshots by default (994cdc6)
- consensus: remove seal verification from the consensus engine interface (ethereum#22274) (e74bd58)
- eth: don't wait for snap registration if we're not running snap (ethereum#22272) (7ed860d)
- core: reset txpool state on sethead (ethereum#22247) (3512b41)
- trie : use trie.NewStackTrie instead of new(trie.Trie) (ethereum#22246) (83e4c49)
- eth: check snap satelliteness, delegate drop to eth (ethereum#22235) (e3430ac)
- cmd,core,eth,params,tests: define yolov3 + enable EIP-2565 (ethereum#22213) (eb21c65)
- rpc: deprecate Client.ShhSubscribe (ethereum#22239) (2e5d141)
- core: speed up header import (ethereum#21967) (6816182)
- core/state: fix panic in state dumping (ethereum#22225) (14d4954)
- eth, p2p: reserve half peer slots for snap peers during snap sync (ethereum#22171) (d2779ed)
- core: reset to genesis when middle block is missing (ethereum#22135) (49cdcf5)
- snapshot: merge loops for better performance (ethereum#22160) (04a7226)
- trie: fix range prover (ethereum#22210) (9e1bd0f)
- event: add ResubscribeErr (ethereum#22191) (231040c)
- eth/filters: fix potential deadlock in filter timeout loop (ethereum#22178) (c4307a9)
- core/state: convert prefetcher to concurrent per-trie loader (42f9f1f)
- core: implement background trie prefetcher (1e1865b)
- downloader: extract findAncestor search functions (ethereum#21744) (81bf9f9)
- eth, les: add new config field SyncFromCheckpoint (ethereum#22123) (45cb1a5)
- cmd/geth: graceful shutdown if disk is full (ethereum#22103) (24c1e30)
- core/state/snapshot: write snapshot generator in batch (ethereum#22163) (5e9f5ca)
- eth/protocols/eth: fix slice resize flaw (ethereum#22181) (c76573a)
- core/state/snapshot: add generation logs to storage too (c4deebb)
- cmd/utils: avoid making console preloads absolute (ethereum#22109) (23f837c)
- eth: return error from eth_chainID during sync before EIP-155 activates (ethereum#21686) (984e752)
- common/prque: pull in tests and benchmarks from upstream (ab5e3f4)
- core: persist bad blocks (ethereum#21827) (5a1b384)
- eth/protocols/snap: speed up hash checks (ethereum#22023) (4bb5c6c)
- eth/protocols/snap: track reverts when peer rejects request (ethereum#22016) (58b9db5)
- miner: avoid sleeping in miner (ethereum#22108) (9584f56)
- node: rename startNetworking to openEndpoints (ethereum#22105) (5c2a7ce)
- eth, eth/tracers: include intrinsic gas in calltracer, expose for all tracers (ethereum#22038) (9c6b5b9)
- internal/ethapi: restore net_version RPC method (ethereum#22061) (158f72c)
- eth/download/statesync : optimize to avoid a copy in state sync hashing (ethereum#22035) (c5a3ffa)
- core, eth: split eth package, implement snap protocol (ethereum#21482) (017831d)
- abi/bind: fix error-handling in generated wrappers for functions returning structs (ethereum#22005) (38c1d59)
- consensus/ethash: implement faster difficulty calculators (ethereum#21976) (efe6dd2)
- core/txpool: remove "local" notion from the txpool price heap (ethereum#21478) (88c6962)
- miner, test: fix potential goroutine leak (ethereum#21989) (62dc59c)
- p2p/enode: avoid crashing for invalid IP (ethereum#21981) (817a3fb)
- crypto/signify, build: fix archive signing with signify (ethereum#21977) (f935b1d)
- core,les: headerchain import in batches (ethereum#21471) (40b6ccf)
- common: improve printing of Hash and Address (ethereum#21834) (bd848aa)
- accounts/abi/bind: allow specifying signer on transactOpts (ethereum#21356) (ed0670c)
- crypto/secp256k1: add workaround for go mod vendor (ethereum#21735) (6a4e730)
- cmd/geth: implement vulnerability check (ethereum#21859) (15339cf)
- core: improve contextual information on core errors (ethereum#21869) (7770e41)
- eth: fix error in tracing if reexec is set (ethereum#21830) (e9e86ae)
- accounts/keystore: add missing function doc for SignText (ethereum#21914) (566cb4c)
- accounts, signer: fix Ledger Live account derivation path (clef) (ethereum#21757) (b71334a)
- crypto: signing builds with signify/minisign (ethereum#21798) (fa572cd)