From 5910bd3b5d7588a96ff8137ece49b5c827aca6b4 Mon Sep 17 00:00:00 2001 From: jayvaliya Date: Thu, 5 Feb 2026 14:07:25 +0530 Subject: [PATCH 1/5] doc: fix broken bpftrace installation link The bpftrace project moved from iovisor/bpftrace to bpftrace/bpftraceand removed the separate INSTALL.md file. Installation instructionsare now in the README.md Quick Start section. Github-Pull: #34510 Rebased-From: 42ee31e80c99bdb4d6affdc9dc22a0f3d5da7b59 --- contrib/tracing/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/tracing/README.md b/contrib/tracing/README.md index 252053e7b87..192182e17d6 100644 --- a/contrib/tracing/README.md +++ b/contrib/tracing/README.md @@ -22,7 +22,7 @@ corresponding packages. See [installing bpftrace] and [installing BCC] for more information. For development there exist a [bpftrace Reference Guide], a [BCC Reference Guide], and a [bcc Python Developer Tutorial]. -[installing bpftrace]: https://github.com/iovisor/bpftrace/blob/master/INSTALL.md +[installing bpftrace]: https://github.com/bpftrace/bpftrace/blob/master/README.md#quick-start [installing BCC]: https://github.com/iovisor/bcc/blob/master/INSTALL.md [bpftrace Reference Guide]: https://github.com/iovisor/bpftrace/blob/master/docs/reference_guide.md [BCC Reference Guide]: https://github.com/iovisor/bcc/blob/master/docs/reference_guide.md From 532afe909e3ea983c7e2c07df7074158f671a2a7 Mon Sep 17 00:00:00 2001 From: MarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz> Date: Wed, 25 Feb 2026 19:51:24 +0100 Subject: [PATCH 2/5] doc: Update Guix install for Debian/Ubuntu Fixes https://github.com/bitcoin/bitcoin/issues/33982 Co-authored-by: Purple Ninja <129023353+ToRyVand@users.noreply.github.com> Github-Pull: #34671 Rebased-From: faa70ca7642bd653cbd2e544c17fa58d2672afa4 --- contrib/guix/INSTALL.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/contrib/guix/INSTALL.md b/contrib/guix/INSTALL.md index 910f8f25460..df2728332af 100644 --- a/contrib/guix/INSTALL.md +++ b/contrib/guix/INSTALL.md @@ -71,13 +71,13 @@ https://repology.org/project/guix/versions ### Debian / Ubuntu -Guix is available as a distribution package in [Debian -](https://packages.debian.org/search?keywords=guix) and [Ubuntu -](https://packages.ubuntu.com/search?keywords=guix). +Currently, the `guix` package is no longer present in recent Debian or Ubuntu +repositories. Any other installation option mentioned in this document may be +used. -To install: +If you previously installed `guix` via `apt`, you can remove it with: ```sh -sudo apt install guix +sudo apt purge guix ``` ### Arch Linux From 98af76f875af47fea2aadb57086046c6cd858f0b Mon Sep 17 00:00:00 2001 From: SomberNight Date: Wed, 11 Feb 2026 16:16:50 +0000 Subject: [PATCH 3/5] wallet: rpc: manpage: fix example missing `fee_rate` argument The function signature for the `send` RPC is: ``` send [{"address":amount,...},{"data":"hex"},...] ( conf_target "estimate_mode" fee_rate options version ) ``` The last example in the manpage is missing the `fee_rate` arg, but is trying to specify the `options` arg, by index. The parser confuses the intended `options` arg as the missing `fee_rate` arg. See: ``` $ bitcoin-cli -rpcuser=doggman -rpcpassword=donkey -rpcport=18554 -regtest send '{"bcrt1qusm48zmlzwr32csxdw4ar7atw260h22c9ten9l": 0.1}' 1 economical '{"add_to_wallet": false, "inputs": [{"txid":"0b7e1a471dc948b7a6187936b16e6d7d9833629b2f9dd8a392eb89928f63aaad", "vout":0}]}' error code: -8 error message: Cannot specify both conf_target and fee_rate. Please provide either a confirmation target in blocks for automatic fee estimation, or an explicit fee rate. ``` vs ``` $ bitcoin-cli -rpcuser=doggman -rpcpassword=donkey -rpcport=18554 -regtest send '{"bcrt1qusm48zmlzwr32csxdw4ar7atw260h22c9ten9l": 0.1}' 1 economical null '{"add_to_wallet": false, "inputs": [{"txid":"0b7e1a471dc948b7a6187936b16e6d7d9833629b2f9dd8a392eb89928f63aaad", "vout":0}]}' { "psbt": "cHNidP8BAHECAAAAAa2qY4+SieuSo9idL5tiM5h9bW6xNnkYprdIyR1HGn4LAAAAAAD9////AkR2DwQAAAAAFgAUpLDwJu+wFRHLQAgKAb0psk7UVd2AlpgAAAAAABYAFOQ3U4t/E4cVYgZrq9H7q3K0+6lYAAAAAAABAIUCAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////wQC4wMA/////wLIF6gEAAAAABYAFLMY1zihXrefAA0DA5nld4MCPjkrAAAAAAAAAAAmaiSqIant4vYcP3HR3v0/qZnfo2lTdVxpBol5mWK0i+vYNpdOjPkAAAAAAQEfyBeoBAAAAAAWABSzGNc4oV63nwANAwOZ5XeDAj45KwEIawJHMEQCIElTV4pbUrsPR9qHWcioowVv3QVWHizxwevfD0u/I8YyAiBCY3OzF81PSLM00h4ueQkehYuxDFZu7Jk51iejphKnnwEhA0VKdYVSyBpWoxBwTDOupB58Fi3mEBs+u+OOqEYVd2sZACICA98YLWyH7dBCfXVxe7woiLSTgV1mJN8Zc8KgZ77pVSg+GNBMeT5UAACAAQAAgAAAAIABAAAAbAAAAAAA", "txid": "625b71b314a6ac4f738634e29dc007cd5edc0427c1ae96ab706d06a62910cea2", "hex": "02000000000101adaa638f9289eb92a3d89d2f9b6233987d6d6eb1367918a6b748c91d471a7e0b0000000000fdffffff0244760f0400000000160014a4b0f026efb01511cb40080a01bd29b24ed455dd8096980000000000160014e437538b7f13871562066babd1fbab72b4fba9580247304402204953578a5b52bb0f47da8759c8a8a3056fdd05561e2cf1c1ebdf0f4bbf23c6320220426373b317cd4f48b334d21e2e79091e858bb10c566eec9939d627a3a612a79f012103454a758552c81a56a310704c33aea41e7c162de6101b3ebbe38ea84615776b1900000000", "complete": true } ``` Github-Pull: #34561 Rebased-From: 50cf6838e6aa51e0d712cbc1e13d686253bc8fe0 --- src/wallet/rpc/spend.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/wallet/rpc/spend.cpp b/src/wallet/rpc/spend.cpp index 5c0b1db23e6..53692f85114 100644 --- a/src/wallet/rpc/spend.cpp +++ b/src/wallet/rpc/spend.cpp @@ -1279,7 +1279,7 @@ RPCHelpMan send() "Send 0.3 BTC with a fee rate of 25 " + CURRENCY_ATOM + "/vB using named arguments\n" + HelpExampleCli("-named send", "outputs='{\"" + EXAMPLE_ADDRESS[0] + "\": 0.3}' fee_rate=25\n") + "Create a transaction that should confirm the next block, with a specific input, and return result without adding to wallet or broadcasting to the network\n" - + HelpExampleCli("send", "'{\"" + EXAMPLE_ADDRESS[0] + "\": 0.1}' 1 economical '{\"add_to_wallet\": false, \"inputs\": [{\"txid\":\"a08e6907dbbd3d809776dbfc5d82e371b764ed838b5655e72f463568df1aadf0\", \"vout\":1}]}'") + + HelpExampleCli("send", "'{\"" + EXAMPLE_ADDRESS[0] + "\": 0.1}' 1 economical null '{\"add_to_wallet\": false, \"inputs\": [{\"txid\":\"a08e6907dbbd3d809776dbfc5d82e371b764ed838b5655e72f463568df1aadf0\", \"vout\":1}]}'") }, [&](const RPCHelpMan& self, const JSONRPCRequest& request) -> UniValue { From 490cd874a40a1ca5845b720cf9c6f6a59472454d Mon Sep 17 00:00:00 2001 From: MarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz> Date: Sun, 14 Dec 2025 13:50:23 +0100 Subject: [PATCH 4/5] netif: fix compilation warning in QueryDefaultGatewayImpl() ``` src/common/netif.cpp:137:51: error: comparison of integers of different signs: 'int64_t' (aka 'long') and 'unsigned long' [-Werror,-Wsign-compare] 137 | for (nlmsghdr* hdr = (nlmsghdr*)response; NLMSG_OK(hdr, recv_result); hdr = NLMSG_NEXT(hdr, recv_result)) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/netlink/netlink.h:220:31: note: expanded from macro 'NLMSG_OK' 220 | #define NLMSG_OK(_hdr, _len) NL_ITEM_OK(_hdr, _len, NLMSG_HDRLEN, _NLMSG_LEN) | ^ ~~~~ ~~~~~~~~~~~~ /usr/include/netlink/netlink.h:203:10: note: expanded from macro 'NL_ITEM_OK' 203 | ((_len) >= _hlen && _LEN_M(_ptr) >= _hlen && _LEN_M(_ptr) <= (_len)) | ~~~~ ^ ~~~~~ 1 error generated. ``` Happens on FreeBSD 15.0, with the default compiler (Clang 19). On FreeBSD 14, `/usr/include/netlink/netlink.h` contains: ``` #define NLMSG_HDRLEN ((int)sizeof(struct nlmsghdr)) ``` On FreeBSD 15, `/usr/include/netlink/netlink.h` contains: ``` #define NLMSG_HDRLEN (sizeof(struct nlmsghdr)) ``` Co-authored-by: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Github-Pull: #34093 Rebased-From: c1361fc42dd60606fcd6273cede1083cd88866a2 --- src/common/netif.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/common/netif.cpp b/src/common/netif.cpp index 7424f977c7e..276be8e2f6a 100644 --- a/src/common/netif.cpp +++ b/src/common/netif.cpp @@ -29,6 +29,8 @@ #include #endif +#include + namespace { // Linux and FreeBSD 14.0+. For FreeBSD 13.2 the code can be compiled but @@ -93,7 +95,9 @@ std::optional QueryDefaultGatewayImpl(sa_family_t family) return std::nullopt; } - for (nlmsghdr* hdr = (nlmsghdr*)response; NLMSG_OK(hdr, recv_result); hdr = NLMSG_NEXT(hdr, recv_result)) { + using recv_result_t = std::conditional_t, int64_t, decltype(NLMSG_HDRLEN)>; + + for (nlmsghdr* hdr = (nlmsghdr*)response; NLMSG_OK(hdr, static_cast(recv_result)); hdr = NLMSG_NEXT(hdr, recv_result)) { rtmsg* r = (rtmsg*)NLMSG_DATA(hdr); int remaining_len = RTM_PAYLOAD(hdr); From 98ea6caed5259c279f7f4794fbafb67ab078e9ae Mon Sep 17 00:00:00 2001 From: fanquake Date: Thu, 26 Feb 2026 09:55:45 +0000 Subject: [PATCH 5/5] doc: update release notes for v29.x --- doc/release-notes.md | 67 ++++++++------------------------------------ 1 file changed, 12 insertions(+), 55 deletions(-) diff --git a/doc/release-notes.md b/doc/release-notes.md index 98713c6ceaa..764f778e5d4 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -1,6 +1,6 @@ -Bitcoin Core version 29.3 is now available from: +Bitcoin Core version 29.x is now available from: - + This release includes various bug fixes and performance improvements, as well as updated translations. @@ -37,69 +37,26 @@ unsupported systems. Notable changes =============== -### P2P +### Net -- #33050 net, validation: don't punish peers for consensus-invalid txs -- #33723 chainparams: remove dnsseed.bitcoin.dashjr-list-of-p2p-nodes.us +- #34093 netif: fix compilation warning in QueryDefaultGatewayImpl() -### Validation +### Doc -- #32473 Introduce per-txin sighash midstate cache for legacy/p2sh/segwitv0 scripts -- #33105 validation: detect witness stripping without re-running Script checks - -### Wallet - -- #33268 wallet: Identify transactions spending 0-value outputs, and add tests for anchor outputs in a wallet -- #34156 wallet: fix unnamed legacy wallet migration failure -- #34226 wallet: test: Relative wallet failed migration cleanup -- #34123 wallet: migration, avoid creating spendable wallet from a watch-only legacy wallet -- #34215 wallettool: fix unnamed createfromdump failure walletsdir deletion -- #34370 wallet: Additional cleanups for migration, and fixes for createfromdump with BDB - -### Mining - -- #33475 bugfix: miner: fix `addPackageTxs` unsigned integer overflow - -### Build - -- #34227 guix: Fix `osslsigncode` tests - -### Documentation - -- #33623 doc: document capnproto and libmultiprocess deps in 29.x - -### Test - -- #33612 test: change log rate limit version gate - -### Misc - -- #32513 ci: remove 3rd party js from windows dll gha job -- #33508 ci: fix buildx gha cache authentication on forks -- #33581 ci: Properly include $FILE_ENV in DEPENDS_HASH -- #34344 ci: update GitHub Actions versions +- #34510 doc: fix broken bpftrace installation link +- #34561 wallet: rpc: manpage: fix example missing `fee_rate` argument +- #34671 doc: Update Guix install for Debian/Ubuntu Credits ======= Thanks to everyone who directly contributed to this release: -- Anthony Towns -- Antoine Poinsot -- Ava Chow -- David Gumberg -- Eugene Siegel -- fanquake -- furszy - Hennadii Stepanov -- ismaelsadeeq -- luke-jr -- m3dwards -- Padraic Slattery -- Pieter Wuille -- SatsAndSports -- sedited -- willcl-ark +- jayvaliya +- MarcoFalke +- SomberNight +- ToRyVand As well as to everyone that helped with translations on [Transifex](https://explore.transifex.com/bitcoin/bitcoin/).