This week in Bitcoin Core
Bitcoin Core contributor kevkevin covers some of the latest updates...
Hello 👋 folks, I'm kevkevin. I'm an open-source developer and reporter for Insider Edition. Last week, I reviewed several pull requests from the Bitcoin Core repo. Here’s what I found notable.
Merged PR’s
Every week, several changes are officially added to Bitcoin Core. This week, 14 changes were merged. Here are some I thought were interesting from this week.
wallet, rpc: add v3 transaction creation and wallet support by ishaanam
This is an important change for wallets as it implements v3/TRUC transactions.
These rpc’s now have a version parameter to specify if it is a v3 transaction (createrawtransaction, createpsbt, send, sendall, walletcreatefundedpsbt). The wallet now validates if v3/TRUC policy rules are being met in addition to actually making the v3/TRUC transactions.
ipc: Handle unclean shutdowns better by ryanofsky
There were various problems with bitcoind crashing when an IPC connection hangs or is broken. I noticed a lot of the code touches the “src/ipc/libmultiprocess” directory.
Overall, this change modifies how Bitcoin Core handles shutdown
index: fix wrong assert of current_tip == m_best_block_index by HowHsu
This change corrects an assertion that was previously incorrect. From what I understand from reading this PR, briefly is that because multiple pindex updates can happen within the SYNC_LOCATOR_WRITE_INTERVAL. It can then fail the assert. Meaning that the assertion is incorrect
Add bitcoin-{node,gui} to release binaries for IPC by Sjors
This PR has depends make libmultiprocess by default. Meaning that bitcoin-node and bitcoin-gui will be added in the releases because ENABLE_IPC is switched on by default.
This change also includes various changes to the CI by switching IPC on. Sjors mentions that this PR could be split up into multiple, but it makes sense to include it all in one to avoid churn and to make everything way less confusing.
Open PR’s
There are always changes getting updated and reviewed in real time. Here are some notable PR’s that are still up and looking for reviews.
As part of the release process we often run contrib/devtools/headerssync-params.py and increase the values of the constants
HEADER_COMMITMENT_PERIOD
andREDOWNLOAD_BUFFER_SIZE
in src/headerssync.cpp as per doc/release-process.md (example: 11a2d3a). This helps fine tune the memory consumption perHeadersSyncState
-instance in the face of malicious peers.Problem: Not feeding back headers until completing sync
In the next (v30) or following release, it is very likely that
REDOWNLOAD_BUFFER_SIZE
(14827
as of v29) will exceed thetarget_blocks
constant used to control the length of chains generated for testing Headers Sync (15000
, headers_sync_chainwork_tests.cpp).
IRC meeting notes
Every week on Thursday, there is an IRC meeting. Here are some short notes from that meeting.
Kernel WG Update (TheCharlatan)
TheCharlatan: nothing to share with the wider group this week, a lot of discussions and work happening though.
MuSig2 WG Update (achow101)
achow101: Also no updates this week
30.0 feature freeze
achow101: Yesterday was feature freeze, There are still a number of PRs in the milestone, mostly bug fixes. please review these. https://github.com/bitcoin/bitcoin/milestone/72. I think we should drop #32579
l0rinc: Could we add #33224 to V30?
jon_atack: achow101: propose a smaller scoped version of #32051 (IBD only) to fix syncing on slow connections
there was some continued discussion on what to add to v30 you can read more about it in the full discussion
Releases
No releases this week
One thing to note is that the feature freeze for v30 Bitcoin Core occured August 20th 2025, here is the list of milestones for this release https://github.com/bitcoin/bitcoin/milestone/72
Thank you for reading. Be sure to tune in again next week for your updates on Bitcoin Core!