Bitcoin Core v26.1: Bug Fixes & Performance Improvements

This release includes various bug fixes and performance improvements, as well as updated translations.

Bitcoin Core v26.1: Bug Fixes & Performance Improvements

What's changed

Wallet

  • #28994 wallet: skip BnB when SFFO is enabled
  • #28920 wallet: birth time update during tx scanning
  • #29176 wallet: Fix use-after-free in WalletBatch::EraseRecords
  • #29510 wallet: getrawchangeaddress and getnewaddress failures should not affect keypools for descriptor wallets

RPC

  • #29003 rpc: fix getrawtransaction segfault
  • #28784 rpc: keep .cookie file if it was not generated

Logs

  • #29227 log mempool loading progress

P2P and network changes

  • #29200 net: create I2P sessions using both ECIES-X25519 and ElGamal encryption
  • #29412 p2p: Don't process mutated blocks
  • #29524 p2p: Don't consider blocks mutated if they don't connect to known prev block

Build

  • #29127 Use hardened runtime on macOS release builds.
  • #29195 build: Fix -Xclang -internal-isystem option

CI

  • #28992 ci: Use Ubuntu 24.04 Noble for asan,tsan,tidy,fuzz
  • #29080 ci: Set HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK to avoid unrelated failures
  • #29610 ci: Fix "macOS native" job

Miscellaneous

  • #28391 refactor: Simplify CTxMempool/BlockAssembler fields, remove some external mapTx access
  • #29179 test: wallet rescan with reorged parent + IsFromMe child in mempool
  • #28791 snapshots: don't core dump when running -checkblockindex after loadtxoutset
  • #29357 test: Drop x modifier in fsbridge::fopen call for MinGW builds
  • #29529 fuzz: restrict fopencookie usage to Linux & FreeBSD

GitHub Repo