👍 hebasto approved a pull request: "guix: disable libsanitizer in Linux GCC build"
(https://github.com/bitcoin/bitcoin/pull/33780#pullrequestreview-3419058547)
ACK 5c41fa2918c8fee36d0e0375e753249f1efa7c07.
My Guix build:
```
x86_64
db958b4fc80e95686eca42fdba140aa3e150c003d5bdef6e3ea34872cd674c8a guix-build-5c41fa2918c8/output/aarch64-linux-gnu/SHA256SUMS.part
1f70bdae06dc815d12821b2d7ebb17bdb0b1ca84e775ce7c1bafdbb89d745d59 guix-build-5c41fa2918c8/output/aarch64-linux-gnu/bitcoin-5c41fa2918c8-aarch64-linux-gnu-debug.tar.gz
f0cb17846e91bef73901a0f9de4614f31b9881ac445370aa5183ff8a5caa1a35 guix-build-5c41fa2918c8/output/aarch64-linux-gnu/bitcoin-5c41fa
...
(https://github.com/bitcoin/bitcoin/pull/33780#pullrequestreview-3419058547)
ACK 5c41fa2918c8fee36d0e0375e753249f1efa7c07.
My Guix build:
```
x86_64
db958b4fc80e95686eca42fdba140aa3e150c003d5bdef6e3ea34872cd674c8a guix-build-5c41fa2918c8/output/aarch64-linux-gnu/SHA256SUMS.part
1f70bdae06dc815d12821b2d7ebb17bdb0b1ca84e775ce7c1bafdbb89d745d59 guix-build-5c41fa2918c8/output/aarch64-linux-gnu/bitcoin-5c41fa2918c8-aarch64-linux-gnu-debug.tar.gz
f0cb17846e91bef73901a0f9de4614f31b9881ac445370aa5183ff8a5caa1a35 guix-build-5c41fa2918c8/output/aarch64-linux-gnu/bitcoin-5c41fa
...
📝 kwsantiago opened a pull request: "build: Upgrade depends to Qt6"
(https://github.com/bitcoin/bitcoin/pull/33787)
Upgrades the depends system to build Qt 6.7.3, preparing the codebase for Qt6 compatibility.
## Changes
- Add Qt6 (6.7.3) package definitions and patches
- Update Qt build configuration to support both Qt5 and Qt6
- Add automatic Qt version detection in depends toolchain
- Add libxcb_util_cursor package for Qt6 Linux builds
- Remove obsolete Qt5-specific patches
- Add initial `wintaskbar` infrastructure for Qt6 compatibility, which is covered in https://github.com/bitcoinknots/bitcoin
...
(https://github.com/bitcoin/bitcoin/pull/33787)
Upgrades the depends system to build Qt 6.7.3, preparing the codebase for Qt6 compatibility.
## Changes
- Add Qt6 (6.7.3) package definitions and patches
- Update Qt build configuration to support both Qt5 and Qt6
- Add automatic Qt version detection in depends toolchain
- Add libxcb_util_cursor package for Qt6 Linux builds
- Remove obsolete Qt5-specific patches
- Add initial `wintaskbar` infrastructure for Qt6 compatibility, which is covered in https://github.com/bitcoinknots/bitcoin
...
📝 luke-jr opened a pull request: "[29.x] Backport fixes for CVE-2025 46598"
(https://github.com/bitcoin/bitcoin/pull/33788)
(https://github.com/bitcoin/bitcoin/pull/33788)
💬 luke-jr commented on pull request "[29.x] Backport fixes for CVE-2025 46598":
(https://github.com/bitcoin/bitcoin/pull/33788#discussion_r2492518838)
Note: Not in master commit (another approach is used for this test)
(https://github.com/bitcoin/bitcoin/pull/33788#discussion_r2492518838)
Note: Not in master commit (another approach is used for this test)
💬 luke-jr commented on pull request "[29.x] Backport fixes for CVE-2025 46598":
(https://github.com/bitcoin/bitcoin/pull/33788#discussion_r2492519413)
Note: reject_reason could be None here, so a check was added (not in master commit)
(https://github.com/bitcoin/bitcoin/pull/33788#discussion_r2492519413)
Note: reject_reason could be None here, so a check was added (not in master commit)
💬 andrewtoth commented on pull request "validation: fetch block inputs on parallel threads >20% faster IBD":
(https://github.com/bitcoin/bitcoin/pull/31132#issuecomment-3488760623)
Benchmarked the latest up to block 921129 and it's 16% faster :rocket:. Not as fast as some of @l0rinc's numbers but it's on a laptop with an internal NVMe SSD. This change will see the most benefit for disk IO with higher latency, like network connected storage.
| Command | Mean [s] | Min [s] | Max [s] | Relative |
|:---|---:|---:|---:|---:|
| `echo d606c36a13ca2a055d1a4eb4c623fb6aa45405b2 && /usr/bin/time ./build/bin/bitcoind -printtoconsole=0 -connect=192.168.2.171 -stopatheight=921129`
...
(https://github.com/bitcoin/bitcoin/pull/31132#issuecomment-3488760623)
Benchmarked the latest up to block 921129 and it's 16% faster :rocket:. Not as fast as some of @l0rinc's numbers but it's on a laptop with an internal NVMe SSD. This change will see the most benefit for disk IO with higher latency, like network connected storage.
| Command | Mean [s] | Min [s] | Max [s] | Relative |
|:---|---:|---:|---:|---:|
| `echo d606c36a13ca2a055d1a4eb4c623fb6aa45405b2 && /usr/bin/time ./build/bin/bitcoind -printtoconsole=0 -connect=192.168.2.171 -stopatheight=921129`
...
💬 dongcarl commented on pull request "kernel: Introduce C header API":
(https://github.com/bitcoin/bitcoin/pull/30595#issuecomment-3489173537)
What a milestone. Congrats @TheCharlatan!
(https://github.com/bitcoin/bitcoin/pull/30595#issuecomment-3489173537)
What a milestone. Congrats @TheCharlatan!
🤔 trevarj reviewed a pull request: "guix: Use UCRT runtime for Windows release binaries"
(https://github.com/bitcoin/bitcoin/pull/33593#pullrequestreview-3419999713)
@hebasto thanks for working in my suggestion!
ACK dbb8359
(https://github.com/bitcoin/bitcoin/pull/33593#pullrequestreview-3419999713)
@hebasto thanks for working in my suggestion!
ACK dbb8359
💬 purpleKarrot commented on pull request "depends: add zeromq patch to fix mingw CMake file install location":
(https://github.com/bitcoin/bitcoin/pull/33778#issuecomment-3489804291)
> The current path is valid per the CMake [docs](https://cmake.org/cmake/help/latest/command/find_package.html#config-mode-search-procedure).
>
> UPD. ... on Windows, but not when cross-compiling.
When taking cross-compiling into account, there are not two, but three scenarios how mingw can be used:
1. Building on Windows
2. Building on Linux, but packaging for Windows
3. Building on and packaging for Linux
CMake searches for packages in different paths depending on the **build hos
...
(https://github.com/bitcoin/bitcoin/pull/33778#issuecomment-3489804291)
> The current path is valid per the CMake [docs](https://cmake.org/cmake/help/latest/command/find_package.html#config-mode-search-procedure).
>
> UPD. ... on Windows, but not when cross-compiling.
When taking cross-compiling into account, there are not two, but three scenarios how mingw can be used:
1. Building on Windows
2. Building on Linux, but packaging for Windows
3. Building on and packaging for Linux
CMake searches for packages in different paths depending on the **build hos
...
🤔 maflcko reviewed a pull request: "guix: use GCC 14.3.0 over 13.3.0"
(https://github.com/bitcoin/bitcoin/pull/33775#pullrequestreview-3420453767)
concept ack. 14.3 should be sufficiently propagated and tested by now, to rely on it for release builds
(https://github.com/bitcoin/bitcoin/pull/33775#pullrequestreview-3420453767)
concept ack. 14.3 should be sufficiently propagated and tested by now, to rely on it for release builds
💬 maflcko commented on pull request "guix: use GCC 14.3.0 over 13.3.0":
(https://github.com/bitcoin/bitcoin/pull/33775#discussion_r2493421654)
url is wrong, and the `maybe-uninitialized` below can be removed?
(https://github.com/bitcoin/bitcoin/pull/33775#discussion_r2493421654)
url is wrong, and the `maybe-uninitialized` below can be removed?
📝 frankomosh opened a pull request: "doc: add cmake help option in Windows build docs"
(https://github.com/bitcoin/bitcoin/pull/33789)
Follow-up to #33088.
Adds `cmake -B build -LH` documentation to Windows build guides, similar to Unix build documentation.
Based on the suggestion and example provided by @stickies-v in #33088, with minor adjustment to match existing indented code block format in `build-windows.md`.
Tested for:
- WSL Ubuntu with mingw-w64 cross-compilation
- Windows 11 with Visual Studio 2022 (MSVC)
(https://github.com/bitcoin/bitcoin/pull/33789)
Follow-up to #33088.
Adds `cmake -B build -LH` documentation to Windows build guides, similar to Unix build documentation.
Based on the suggestion and example provided by @stickies-v in #33088, with minor adjustment to match existing indented code block format in `build-windows.md`.
Tested for:
- WSL Ubuntu with mingw-w64 cross-compilation
- Windows 11 with Visual Studio 2022 (MSVC)
💬 yuvicc commented on pull request "build: Introduce internal kernel library":
(https://github.com/bitcoin/bitcoin/pull/28690#issuecomment-3489978539)
ACK a9ec7cdc0a1f6d4a3bd532649e79459074ed9f3b
(https://github.com/bitcoin/bitcoin/pull/28690#issuecomment-3489978539)
ACK a9ec7cdc0a1f6d4a3bd532649e79459074ed9f3b
💬 hodlinator commented on pull request "miniscript refactor: Remove unique_ptr-indirection (#30866 follow-up)":
(https://github.com/bitcoin/bitcoin/pull/31713#issuecomment-3490078075)
> The latest https://corecheck.dev/bitcoin/bitcoin/pulls/31713 Sonar warnings seem like false positives.
Took a closer look at https://sonarcloud.io/project/issues?issueStatuses=OPEN%2CCONFIRMED&branch=31713-a1df8547ca0711d99f05d1b31bc758a8068ba512&id=aureleoules_bitcoin&open=AZpLftZOTlsoQg18lt0A
`miniscript::Node` on master and in the PR violates the "Rule of Zero" (https://sonarcloud.io/organizations/aureleoules/rules?open=cpp%3AS3624&rule_key=cpp%3AS3624&tab=why) where if one has a cust
...
(https://github.com/bitcoin/bitcoin/pull/31713#issuecomment-3490078075)
> The latest https://corecheck.dev/bitcoin/bitcoin/pulls/31713 Sonar warnings seem like false positives.
Took a closer look at https://sonarcloud.io/project/issues?issueStatuses=OPEN%2CCONFIRMED&branch=31713-a1df8547ca0711d99f05d1b31bc758a8068ba512&id=aureleoules_bitcoin&open=AZpLftZOTlsoQg18lt0A
`miniscript::Node` on master and in the PR violates the "Rule of Zero" (https://sonarcloud.io/organizations/aureleoules/rules?open=cpp%3AS3624&rule_key=cpp%3AS3624&tab=why) where if one has a cust
...
💬 janb84 commented on pull request "cmake: Move IPC tests to `ipc/test`":
(https://github.com/bitcoin/bitcoin/pull/33774#issuecomment-3490171034)
should `src/test/kernel` also be moved to `src/kernel/test` to keep the project structure Consistent. ?
(https://github.com/bitcoin/bitcoin/pull/33774#issuecomment-3490171034)
should `src/test/kernel` also be moved to `src/kernel/test` to keep the project structure Consistent. ?
👍 willcl-ark approved a pull request: "guix: disable libsanitizer in Linux GCC build"
(https://github.com/bitcoin/bitcoin/pull/33780#pullrequestreview-3420936380)
utACK 5c41fa2918c8fee36d0e0375e753249f1efa7c07
(https://github.com/bitcoin/bitcoin/pull/33780#pullrequestreview-3420936380)
utACK 5c41fa2918c8fee36d0e0375e753249f1efa7c07
💬 fanquake commented on pull request "Modernize custom filtering":
(https://github.com/bitcoin-core/gui/pull/899#issuecomment-3490255856)
Backported to `30.x` in https://github.com/bitcoin/bitcoin/pull/33609
(https://github.com/bitcoin-core/gui/pull/899#issuecomment-3490255856)
Backported to `30.x` in https://github.com/bitcoin/bitcoin/pull/33609
🚀 fanquake merged a pull request: "guix: disable libsanitizer in Linux GCC build"
(https://github.com/bitcoin/bitcoin/pull/33780)
(https://github.com/bitcoin/bitcoin/pull/33780)
👍 rkrux approved a pull request: "test: remove obsolete `get_{key,multisig}` helpers from wallet_util.py"
(https://github.com/bitcoin/bitcoin/pull/33782#pullrequestreview-3420985296)
crACK ec8516ceb7568d7b09836b830023978bd37f8462
(https://github.com/bitcoin/bitcoin/pull/33782#pullrequestreview-3420985296)
crACK ec8516ceb7568d7b09836b830023978bd37f8462
💬 vasild commented on pull request "Broadcast own transactions only via short-lived Tor or I2P connections":
(https://github.com/bitcoin/bitcoin/pull/29415#discussion_r2493783865)
I had a f2f discussion with somebody (forgot who?) of what happens if a transaction is submitted for private broadcast and is:
1. previously submitted but not yet in the mempool
2. in the mempool (and thus not in the for-private-broadcast list)
This part of the test answers 1. - if a transaction is already in the internal for-private-broadcast list then `sendrawtransaction` will error with "Ignoring unnecessary request...".
"2." is not exercised in the test, but what will happen is tha
...
(https://github.com/bitcoin/bitcoin/pull/29415#discussion_r2493783865)
I had a f2f discussion with somebody (forgot who?) of what happens if a transaction is submitted for private broadcast and is:
1. previously submitted but not yet in the mempool
2. in the mempool (and thus not in the for-private-broadcast list)
This part of the test answers 1. - if a transaction is already in the internal for-private-broadcast list then `sendrawtransaction` will error with "Ignoring unnecessary request...".
"2." is not exercised in the test, but what will happen is tha
...