Bor v2.8.3 is a maintenance release containing bug fixes across the miner and consensus engine, a full gRPC server implementation (disabled by default), a builder-phase streaming prefetcher, and observability, configuration, and build improvements.
What's Changed
Features
- (feat): disable pending block creation loop via flag by @manav2401 in #2175
- consensus/bor, internal/cli: full grpc implementation by @marcello33 in #2194
- prefetcher: builder-phase prefetch + streaming worker pool by @lucca30 in #2192
- (feat): tracing support for state-sync transactions by @manav2401 in #2236
- security: harden gRPC server — disable by default, bind to localhost by @harshinsecurity in #2078
Bug Fixes
- consensus: fix milestone-mismatch rewind deadlock by @kamuikatsurgi in #2246
- consensus/bor, miner: fix stale pending state for non-validator nodes by @cffls in #2183
- miner, consensus/bor: fix leaked-wedge family in worker state machine by @cffls in #2220
- miner: drop PeerCount==0 gate in mainLoop by @cffls in #2238
- consensus/bor: fix race in SpanStore.PurgeCache by @lucca30 in #2235
- miner: disable tracer in vm.Config to prevent conflicts during block synchronization by @maoueh in #2206
- ethapi: include pre-Madhugiri state-sync logs in bor_getLogs by @LarryArnault45 in #2155
- eth: stop dialing before waiting on handler shutdown by @LarryArnault45 in #2158
- eth: cancel milestone subscriber on shutdown by @kamuikatsurgi in #2199
- core/state: fix GetWriteMapDump write-set output by @AaronAjose in #2156
- core/types: guard (*Header).GetValidatorBytes against short Extra by @kajaaz in #2222
- triedb/pathdb: fix exponential memory growth in preload BFS by @lucca30 in #2187
- rawdb: recover witness size from filesystem metadata miss by @AaronAjose in #2200
- metrics, build: fix time.Tick resource leaks and oss-fuzz shebang by @haoyu-haoyu in #2145
- Fix triejournaldirectory wiring by @jschnelder in #2213
Observability & Metrics
- metrics: fix ResettingSample Prometheus _count monotonicity by @lake-dunamu in #2174
- miner, consensus: more block building metrics by @manav2401 in #2228
- miner: format build-block log times as RFC3339Nano, gate on IsRunning by @kamuikatsurgi in #2239
Configuration & CLI
- internal/cli: enabled witness filestore by default by @pratikspatil024 in #2191
- templates: replace dead witnessprotocol with witness.enable hint by @apetro2 in #2204
- packaging/docs: replace deprecated rpc.batchlimit key by @odupontt in #2216
- p2p: add flag to disable snap/1 serving by @lucca30 in #2152
- Fixing amoy static peers by @sanketsaagar in #2209
Testing, CI & Build
- all: fix nightly race test flakes by @cffls in #2193
- core/vm: add hardfork precompile continuity checks by @pratikspatil024 in #2234
- miner: fix TestPrefetchRaceWithSetExtra deadlock by @wjmelements in #2233
- ethclient: bound tx indexing wait in tests by @LarryArnault45 in #2211
- eth/fetcher: refactor witness_manager to reduce complexity by @cffls in #2188
- build: bump Go to 1.26.2 and 1.26.3 to fix stdlib CVEs by @lucca30 in #2189 and #2230
- build: bump x/net for govulncheck by @lucca30 in #2240
- build(deps): bump go.opentelemetry.io/otel/sdk from 1.40.0 to 1.43.0 by @dependabot in #2182
- ci: fix kurtosis setup/cleanup action paths by @cffls in #2223
New Contributors
- @lake-dunamu made their first contribution in #2174
- @harshinsecurity made their first contribution in #2078
- @AaronAjose made their first contribution in #2156
- @haoyu-haoyu made their first contribution in #2145
- @kajaaz made their first contribution in #2222
- @apetro2 made their first contribution in #2204
- @odupontt made their first contribution in #2216
- @jschnelder made their first contribution in #2213
Full Changelog: v2.8.2...v2.8.3