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, 16 changes were merged. Here are some I thought were interesting from this week.
p2p: Correct unrealistic headerssync unit test behavior by holdlinator
Pardon if I don’t get this completely correct, but from what I understand, this change involves running contrib/devtools/headerssync-params.py during the release process, which increases the values of constants HEADER_COMMITMENT_PERIOD and REDOWNLOAD_BUFFER_SIZE.
The issue is that during the v30 release process, REDOWNLOAD_BUFFER_SIZE exceeded the target_blocks constant. Even though the unit test may not fail, this changed the test from resembling mainnet to something that is not possible or expected.
ci: Only write docker build images to Cirrus cache by maflcko
The Cirrus CI runner offers 10GB cache per runner. This helps if there are any outages or network issues for package (ie, apt, pip, apk, git clone, …) fetching. The thing is, the GitHub Actions cache provider has a total of 10 GB for the whole repo. This cache is shared with the depends cache, ccache, and previous release cache.
Because of this, it is already full, and adding Docker build layers will cause an overflow. This fixes it by only writing to the Docker cache on Cirrus.
Fix windows libc++ fs::path fstream compile errors by ryanofsky
Windows is the bane of developers’ existence (sarcasm), and we see the reason why in this change. Dropping support for passing fs::path directly to std:ifstream and std::ofstream constructors and open() functions because this cannot continue to work in Windows builds due to compile errors.
Instead, they added a fs::path:std_path() method that returns std::filesystem::path and then use it where needed.
Open PR’s
There are always changes being updated and reviewed in real-time. Here are some notable PR’s that are still up and looking for reviews.
Rename PeerManager::RelayTransaction() to
PeerManager::InitiateTxBroadcastToAll(). The transaction is not relayed when the method returns. It is only scheduled for broadcasting at a later time. Also, there will be another method which only schedules for broadcast to Tor or I2P peers.
This is part of #29415 Broadcast own transactions only via short-lived Tor or I2P connections. Putting it in its own PR to reduce the size of #29415 and because it does not depend on the other commits from there.
IRC meeting notes
Every week on Thursday, there is an IRC meeting. Here are some short notes from that meeting.
No IRC meeting this week :’(
For the full log, check the meeting in minutes
Releases
Thank you for reading. Be sure to tune in again next week for your updates on Bitcoin Core!




