Version Update (1.14.7)
Release Highlights
We’re pleased to announce the latest update incorporating changes from Go-Ethereum v1.14.7. This update brings important improvements, fixes, and optimizations tailored for enhanced network performance and reliability.
Key Features and Updates:
Performance Enhancements:
Optimized transaction pool management, reducing memory usage and improving transaction propagation efficiency.
Improved sync performance, ensuring faster and more reliable peer connectivity.
Bug Fixes:
Resolved issues related to uncle handling and block propagation under certain network conditions.
Addressed edge cases in JSON-RPC interactions for better API reliability.
Security Improvements:
Integrated essential security patches from Go-Ethereum v1.14.7 to fortify network resilience against vulnerabilities.
Improved safeguards against potential DoS attack vectors.
Developer Experience:
Enhanced logging and diagnostics for easier debugging and network monitoring.
Updated API behaviors to improve compatibility with tooling and frameworks.
Developer Notes:
This release is fully backwards-compatible with earlier versions. However, upgrading is recommended to leverage the latest improvements.
Developers utilizing JSON-RPC or custom APIs should verify changes for compatibility with their integrations.
Upgrade Instructions:
To upgrade your client:
- Safely stop your node using the recommended shutdown procedures.
- Download the latest binary for your operating system.
- Replace the existing binary with the new version.
- Restart the node and monitor logs to ensure proper functionality.
For additional support, please visit our Discord Server.
Changes:
- 18d17e3 Increased payload generation timeout
- ad6afa0 Stratis related fixes
- 8e48f67 Merge tag 'v1.14.7' into upgrade
- aa55f5e Merge branch 'master' into release/1.14
- 0aafbb3 params: go-ethereum v1.14.7 stable
- 803dc6b core/txpool/blobpool: revert ethereum#29989, WLock on Nonce (ethereum#30142)
- 37590b2 eth/catalyst: fix params in failure log (ethereum#30131)
- 10467ac go.mod: update uint256 to 1.3.0 (ethereum#30134)
- c4b4d05 crypto: remove hardcoded value for secp256k1.N (ethereum#30126)
- 2d9d423 build: upgrade -dlgo version to Go 1.22.5 (ethereum#30112)
See More
- c6cae0f Merge remote-tracking branch 'gballet/release-1.14.6'
- aadddf3 params: release Geth v1.14.6
- 640e0f1 params: begin v1.14.7 release cycle
- 6f2e1cf params: release Geth v1.14.6
- de366fd accounts/abi: embed Go template instead of string literal (ethereum#30098)
- 0905660 core/state: fix inconsistent verkle test error messages (ethereum#29753)
- 41abab9 build: add check for stale generated files (ethereum#30037)
- a4e338f accounts/usbwallet/trezor: upgrade to generate with protoc 27.1 (ethereum#30058)
- 7cfff30 rpc: truncate call error data logs (ethereum#30028)
- 06f1d07 all: replace division with right shift if possible (ethereum#29911)
- 4939c25 cmd/evm/internal/t8ntool: log writeTraceResult error message (ethereum#30038)
- 36d67be core/txpool/blobpool: improve newPriceHeap function (ethereum#30050)
- 19c3c1e triedb/pathdb: fix flaky test in pathdb (ethereum#29901)
- 045b971 trie: relocate state execution logic into pathdb package (ethereum#29861)
- 269e80b eth/tracers,trie: remove unnecessary check (ethereum#30071)
- 9298d2d trie/trienode: remove unnecessary check in Summary (ethereum#30047)
- 98b5930 core/txpool/blobpool: avoid use *map as parameter. (ethereum#30048)
- ed8fd0a all: stateless witness builder and (self-)cross validator (ethereum#29719)
- 73f7e7c internal/debug: remove unnecessary log level assignment (ethereum#30044)
- fe0c0b0 accounts/keystore: use t.TempDir in test (ethereum#30052)
- 0a651f8 .github: add lightclient as codeowner to relevant packages (ethereum#30062)
- d8ea7ac cmd/blsync: use debug.Setup for logging configuration (ethereum#30065)
- a71f6f9 p2p/discover: improve flaky revalidation tests (ethereum#30023)
- c10ac4f Revert "core/state/snapshot: tiny fixes" (ethereum#30039) [ ethereum#29995 ]
- e0e45db core/state/snapshot: tiny fixes (ethereum#29995)
- 27654d3 p2p/rlpx: 2KB maximum size for handshake messages (ethereum#30029)
- 00675c5 trie/trienode: avoid unnecessary copy (ethereum#30019)
- 2700840 core/txpool/blobpool: change rw-lock to r-lock (ethereum#29989)
- c11aac2 common: using
ParseUint
instead ofParseInt
(ethereum#30020) - 0e3a0a6 trie: don't reset tracer at the end of Commit (ethereum#30024)
- 67a862d cmd/geth, ethdb/pebble: improve database statistic (ethereum#29948)
- 7cf6a63 core/state/snapshot: acquire the lock on Release (ethereum#30011)
- d866449 common/math: fix out of bounds access in json unmarshalling (ethereum#30014)
- c736b04 triedb/pathdb: use maps.Clone and maps.Keys (ethereum#29985)
- 115d154 trie, triedb/pathdb: prealloc capacity for map and slice (ethereum#29986)
- b78d235 log: fix some functions comments (ethereum#29907)
- a58e4f0 go.mod: update Pebble to sort out a deleted upstream dependency (ethereum#30010)
- 34b46a2 core/state/snapshot: add a missing lock (ethereum#30001)
- fd5078c trie/triedb: add Reader to backend interface (ethereum#29988)
- 86150af beacon/light: fix shutdown issues (ethereum#29946)
- 69351e8 core/state, eth/protocols, trie, triedb/pathdb: remove unused error from trie Commit (ethereum#29869)
- 3687c34 accounts: avoid duplicate regex compilation (ethereum#29943)
- 1e97148 all: fix inconsistent receiver name and add lint rule for it (ethereum#29974)
- b6f2bbd p2p/simulations: update doc of HTTP endpoints (ethereum#29894)
- c732039 .github: disable cache in actions run (ethereum#29926)
- caa066d cmd/devp2p: fix log output (ethereum#29972)
- ffb29be ethconfig: regenerate config (ethereum#29970)
- 3aa874b core/state: rename all the AccessList receivers to 'al' (ethereum#29921)
- 85587d5 cmd, core: prefetch reads too from tries if requested (ethereum#29807)
- 2eb185c core, rlp: remove duplicated words (ethereum#29964)
- db273c8 core: initialize developer genesis beacon root contract with 0 balance (ethereum#29963)
- 8bda642 p2p: use package slices to sort in PeersInfo (ethereum#29957)
- 349fcdd p2p/discover: add missing lock when calling tab.handleAddNode (ethereum#29960)
- 1098d14 cmd/geth: remove unused param (ethereum#29952)
- deaf109 cmd/clef, cmd/evm: fix markdown issues in README (ethereum#29954)
- 6a49d13 go.mod : tidy
- 4405f18 cmd/evm/internal/t8ntool: remove unused parameter (ethereum#29930)
- 4461c1f params: begin v1.14.6 release cycle
- 0dd173a params: release Geth v1.14.5
- 85459e1 p2p/discover: unwrap 4-in-6 UDP source addresses (ethereum#29944)
- 0750cb0 p2p/netutil: fix comments (ethereum#29942)
- cbbfa3e rlp: no need to repeat called len method (ethereum#29936)
- 6c518fe build: upgrade -dlgo version to Go 1.22.4 (ethereum#29938)
- bc65694 p2p: use netip.Addr where possible (ethereum#29891)
- d09ddac core/rawdb: remove unused deriveLogFields (ethereum#29913)
- e85e21c core/state, eth/tracers: fix typos (ethereum#29932)
- fc40d68 params: begin v1.14.5 release cycle
- 5550d83 params: release Geth v1.14.4
- 125fb1f core/state: avoid data race (ethereum#29924)
- 682ae83 internal/ethapi: recap higher args.Gas with block GasLimit in DoEstimateGas (ethereum#29738)
- 68c0ec0 trie: iterate values pre-order and fix seek behavior (ethereum#27838)
- adbbd8c core/state: prefetch account trie while starting a prefetcher (ethereum#29919)
- a6751d6 core/rawdb,eth/protocols,p2p: prealloc slice size (ethereum#29893)
- 7270cba log: fix a typo (ethereum#29883)
- b36c738 beacon/engine: prealloc capacity for map and slice (ethereum#29903)
- 50405e2 cmd/evm/internal/t8ntool: fix a typo (ethereum#29887)
- d38b88a core/state: introduce stateupdate structure (ethereum#29530)
- c9e0b31 Supply delta live tracer (ethereum#29347)
- d4b81f0 CODEOWNERS: @s1na owns core/tracing (ethereum#29899)
- 2613523 miner: lower default min miner tip from 1 gwei to 0.001 gwei (ethereum#29895)
- bdc62f9 common/math: rename variable name
int
ton
(ethereum#29890) - 5d7d48f eth/gasprice: add comment to constant (ethereum#29892)
- 2262bf3 crypto/secp256k1: change receiver variable name to lowercase (ethereum#29889)
- e015c11 ethdb: remove unnecessary function wrapper (ethereum#29888)
- 6bb13e8 eth/catalyst: ensure TxPool is synced in Fork (ethereum#29876)
- 2f06c1e cmd/devp2p: fix node.TCP -> node.UDP (ethereum#29879)
- 3fef534 build: upgrade to golangci-lint v1.59.0 (ethereum#29875)
- 94a8b29 p2p/discover: refactor node and endpoint representation (ethereum#29844)
- e26fa9e core/state: fix typo in comment (ethereum#29639)
- 2f0e63e eth/downloader, eth/tracer: fix typos in comments (ethereum#29707)
- 06263b1 all: fix typos in comments (ethereum#29873)
- b8cf163 accounts: fix TestUpdateKeyfileContents (ethereum#29867)
- 153f8da p2p/nodestate: remove unused package (ethereum#29872)
- daf4f72 p2p/simulations: remove stale information about docker adapter (ethereum#29874)
- 5534c84 go.mod: update a number of dependencies (ethereum#29763)
- cc22e0c p2p/discover: fix update logic in handleAddNode (ethereum#29836) [ ethereum#29572 ]
- 171430c core/state: remove unused error from prefetcher trie method (ethereum#29768)
- e517183 eth, eth/downloader: remove references to LightChain, LightSync (ethereum#29711)
- af0a327 p2p/discover: fix crash when revalidated node is removed (ethereum#29864) [ ethereum#29572 ]
- b88051e core/rawdb, triedb/pathdb: fix freezer read-only option (ethereum#29823)
- 61932e4 cmd/geth: update testdata (vulncheck) (ethereum#29714)
- 871e55d core/state: fix typos in comments (ethereum#29767)
- 42471d7 core/vm/runtime: set random to enable merge-opcodes (ethereum#29799)
- caafa93 all: improve some error strings (ethereum#29842)
- ea6c160 eth/tracers: clear error for non-reverting pre-homestead fail (ethereum#29824)
- 5132768 eth/downloader: fix flaky test (ethereum#29852)
- 1a4e4a4 miner: fix TestBuildPayload sporadic failure (ethereum#29853)
- 7224576 core, eth/protocols/snap, internal/ethapi: remove redundant types (ethereum#29841)
- 7f5cc02 metrics: fix function comment (ethereum#29843)
- d1d9f34 core/types: clarify set inclusion in comments (ethereum#29839)
- b6474e9 metrics: add test for
SampleSnapshot.Sum
(ethereum#29831) - 64b1cd8 p2p: fix typos (ethereum#29828)
- 08fe6a8 metrics: fix flaky test
TestExpDecaySampleNanosecondRegression
(ethereum#29832) - 61b3d93 p2p/enode: fix TCPEndpoint (ethereum#29827)
- cc9e2bd p2p/enode: fix endpoint determination for IPv6 (ethereum#29801)
- 6a9158b p2p/discover: improved node revalidation (ethereum#29572)
- 70bee97 metrics: fix out of range error message (ethereum#29821)
- b779e46 Makefile: add fmt, update help (ethereum#29777)
- fa58176 eth/tracers: fix json logger for evm blocktest (ethereum#29795)
- 0d4cdb3 internal/ethapi: fix typos (ethereum#29784)
- 7fd7c1f eth/tracers: fix basefee context for traceBlock (ethereum#29811)
- be5df74 trie: update the
valid
function comments (ethereum#29809) - 473ee8f trie, eth/protocols/snap: sanitize the committed node data (ethereum#29485)
- 7ed52c9 core: move balanceCheck addition in buyGas (ethereum#29762)
- d2f00cb .github: upgrade to action versions with node20 (ethereum#29776)
- 8919c5c core: deploy EIP-4788 contract in dev mode genesis (ethereum#29655)
- be32843 core/state: remove useless operation (ethereum#29769)
- 5b3e3cd tests: update tests (ethereum#29730)
- 2ac83e1 core/state: blocking prefetcher on term signal, parallel updates (ethereum#29519)
- 44a50c9 cmd, core, params, trie: add verkle access witness gas charging (ethereum#29338)
- 47af69c core, beacon, ethdb: fix typos (ethereum#29748)
- 603fd89 event: fix typo (ethereum#29749)
- e5f5eae core/state: remove slot dirtyness if it's set back to origin value (ethereum#29731)
- 74edc93 params: gofmt
- 0e456d9 .travis.yml: disable normal unit tests in cron job (ethereum#29746)
- 6d51c1f params: begin v1.14.4 release cycle
- ab48ba4 params: release go-ethereum v1.14.3 stable
- 804afb8 .travis.yml: restore PPA condition and bump timeouts (ethereum#29742)
- faff03c .travis.yml: enable PPA upload on push and fix apt-get command (ethereum#29741)
- 1a79f8f params: begin v1.14.3 release cycle
- 35b2d07 params: release go-ethereum v1.14.2 stable
- eeb2208 .travis.yml: fix package install on PPA builder
- 14f4228 params: begin v1.14.2 release cycle
- dd09f7e params: release go-ethereum v1.14.1 stable
- 6154f87 .travis.yml: fix apt-get options (ethereum#29734)
- dd4afb9 .travis.yml: fix install of gcc-multilib (ethereum#29733)
- 9ec5008 core: use in-memory freezer for tests (ethereum#29720)
- e96de64 build: upgrade to go 1.22.3 (ethereum#29725)
- 71aa15c travis: use ubuntu noble (24.04) instead of bionic (18.04) (ethereum#29723)
- d6e91e2 eth/gasestimator: include blobs in virtual balance computation (ethereum#29703) [ ethereum#29702 ]
- e4b8058 eth/gasprice: add query limit for FeeHistory to defend DDOS attack (ethereum#29644)
- 3e896c8 ethdb/pebble: fix pebble metrics registration (ethereum#29699)
- 43cbcd7 core, core/state: move TriesInMemory to state package (ethereum#29701)
- a09a610 core/tracing: add system call callback when performing
ProcessBeaconBlockRoot
(ethereum#29355) - 905e325 p2p/discover/v5wire: add tests for invalid handshake and auth data size (ethereum#29708)
- 86a1f0c core/rawdb: fix ancient root folder (ethereum#29697)
- 2c67fab trie/pathdb: preallocate map capacity (ethereum#29690)
- fbf6238 params: fix misleading comments (ethereum#29684)
- bc609e8 core/vm: remove redundant error checks (ethereum#29692)
- 682ee82 core/state: parallelise parts of state commit (ethereum#29681)
- 9f96e07 core/rawdb, trie: improve db APIs for accessing trie nodes (ethereum#29362)
- f8820f1 accounts, cmd/geth, core: close opened files (ethereum#29598)
- 45baf21 eth/downloader: purge pre-merge sync code (ethereum#29281)
- 2e8e35f all: refactor so
NewBlock
,WithBody
taketypes.Body
(ethereum#29482) - 5e07054 internal/ethapi: listen to ctx cancellation in access list (ethereum#29686)
- bd6bc37 core/vm: add subgroup checks for mul/mulexp for G1/G2 (ethereum#29637)
- 7c7e3a7 eth/tracers/native: fix flatCallTracer Stop() bug (ethereum#29623)
- ea89f9a core/vm: remove a redundant zero check in opAddmod (ethereum#29672)
- 242b24a trie/trienode: minor speedup in nodeset merging (ethereum#29683)
- f46c878 core/rawdb: implement in-memory freezer (ethereum#29135)
- c04b8e6 cmd/utils: require TTD and difficulty to be zero at genesis for dev mode (ethereum#29579)
- 69f815f params: print time value instead of pointer in ConfigCompatError (ethereum#29514)
- fecc8a0 cmd/evm/internal/t8ntool, core: prealloc map sizes where possible (ethereum#29620)
- 8c3fc56 p2p/simulations/adapters: use maps.Clone (ethereum#29626)
- 4bdbaab params: clarify consensus engine config
String
s (ethereum#29643) - 4253030 core/state: move metrics out of state objects (ethereum#29665)
- 8d42e11 core/state: revert pending storage updates if they revert to original (ethereum#29661)
- ad4fb2c build: drop trusty from PPA builds, EOL and incompatible (ethereum#29651)
- 634d037 travis: revert the PPA fix hot-build, it works (ethereum#29649)
- a0282fc travis: temporarilly enable PPA builds for testing (ethereum#29648)
- 1f628d8 build: build all the builders to build all the builders (ethereum#29647)
- 243cde0 core/state: better randomized testing (postcheck) on journalling (ethereum#29627)
- a13b925 eth/protocols/eth,p2p/discover: remove unnecessary checks (ethereum#29590)
- 2f6ff49 internal/ethapi: typo (ethereum#29636)
- 4f4f9d8 core/state: storage journal entry should revert dirtyness too (ethereum#29641)
- 7362691 trie, consensus/clique: use maps.Clone (ethereum#29616)
- ac21f9b trie: preallocate capacity for fields slice (ethereum#29614)
- 0d4c388 core/state: remove account reset operation v2 (ethereum#29520)
- 938734b params: begin 1.14.1 release cycle
- 87246f3 params: release Geth v1.14.0
- 5f3c58f eth/downloader: fix case where skeleton reorgs below the filled block (ethereum#29358)
- ade7515 eth, eth/tracers: process beacon root before transactions (ethereum#29402)
- fb08fd3 core/tracing: Add OnClose Trace Hook (ethereum#29629)
- 882d1e2 cmd/geth, cmd/utils: rename config and flag to
VMTraceJsonConfig
(ethereum#29573) - 9457993 core/vm: fix Prague contracts (ethereum#29612)
- 256d4b0 beacon/light: request finality update explicitly when necessary (ethereum#29567)
- b2b0e1d all: fix various typos (ethereum#29600)
- 709e0b3 metrics: remove librato (ethereum#29624)
- 0e380dd miner: fix typos (ethereum#29625)
- 853e0c2 eth/catalyst, trie/pathdb: fix flaky tests (ethereum#29571)
- acd1eaa core: remove bad block checks (ethereum#29609)
- e6689fe beacon/light/sync: print error log if checkpoint retrieval fails (ethereum#29532)
- 1ec7af2 eth: Add eth_blobBaseFee RPC and blob fields to eth_feeHistory (ethereum#29140)
- c2dfe7a go.mod: update golang/x repos (ethereum#29604)
- 82b0dec eth/filters: remove support for pending logs (ethereum#29574)
- ad3d8cb cmd/geth: remove unused parameter (ethereum#29602)
- 28ccb2b build: fix string compare for SortFunc (ethereum#29595)
- 98f504f p2p/discover: fix test error messages (ethereum#29592)
- 2e06fbd core/vm: add KZG benchmark (ethereum#29583)
- cce879b tests: define cancun-to-prague at 15K chainconig (ethereum#29557)
- 81349ff eth/catalyst: fix typo (ethereum#29580)
- 823719b core/vm: enable bls-precompiles for Prague (ethereum#29552)
- b5902cf core: remove unused fields (ethereum#29569)
- 5f95145 eth/ethconfig: regenerate autogen files (ethereum#29559)
- 0da69e8 beacon/blsync: proceed with empty finalized hash if proof is not expected soon (ethereum#29449)
- 1e9bf2a core/state: fix bug in statedb.Copy and remove unnecessary preallocation (ethereum#29563)
- 74e8d2d trie/utils: simplify codeChunkIndex (ethereum#29480)
- 27de7de ethdb/pebble: print warning log if pebble performance degrades (ethereum#29478)
- 92da96b core/vm: refactor push-functions to use
min
builtin (ethereum#29515) - 0a51028 all: fix various typos (ethereum#29542)
- 5ffd940 core: go fmt (ethereum#29544)
- 65e32d4 go.mod: clean up indirection (ethereum#29553)
- 72f6936 c.d/utils: rename vmtrace.config to vmtrace.jsonconfig (ethereum#29554)
- fadd9d8 eth/catalyst: fix log (ethereum#29549)
- f437307 core/vm: update gascosts for BLS12-381 + use gnark instead of kilic (ethereum#29441)
- 71c78bf rpc: close Clients in tests (ethereum#29512)
- e4ecaf8 rpc: implement Unwrap() for wsHandshakeError (ethereum#29522)
- d3c4466 core, eth/protocols/snap, trie: fix cause for snap-sync corruption, implement gentrie (ethereum#29313)
- ef5ac3f eth/filters: enforce topic-limit early on filter criterias (ethereum#29535)
- 67422e2 p2p/nat: fix typos in comments (ethereum#29536)
- 84b12df core/rawdb: add sanity-limit to header accessor (ethereum#29534)
- 3705acd cmd/utils: fix typo in comment (ethereum#29528)
- b179b7b all: remove duplicate word in comments (ethereum#29531)
- bd91810 cmd: fix some typos in readmes (ethereum#29405)
- b9010f3 rpc: fix comment grammar (ethereum#29507)
- 9dcf8aa eth/protocols/snap: skip retrieval for completed storages (ethereum#29378)
- 34aac1d all: use big.Sign to compare with zero (ethereum#29490)
- f202dfd core/tracing: add changelog (ethereum#29388)
- 0bbd88b all: use timer instead of time.After in loops, to avoid memleaks (ethereum#29241)
- 1126c6d core: add txlookup lock (ethereum#29343)
This list of changes was auto generated.