Merge bitcoin/bitcoin#34680: [29.x] Backports

98ea6caed5 doc: update release notes for v29.x (fanquake)
490cd874a4 netif: fix compilation warning in QueryDefaultGatewayImpl() (MarcoFalke)
98af76f875 wallet: rpc: manpage: fix example missing `fee_rate` argument (SomberNight)
532afe909e doc: Update Guix install for Debian/Ubuntu (MarcoFalke)
5910bd3b5d doc: fix broken bpftrace installation link (jayvaliya)

Pull request description:

  Backports:
  * #34093
  * #34510
  * #34561
  * #34671

ACKs for top commit:
  marcofleon:
    ACK 98ea6caed5

Tree-SHA512: 01d4c4e41f27c98c9f37d6140e0be0e2ec21f147dc82fd8652c16c9c09650fea8a8cbd7df2571cb7f108c4178c8eab8ca992a58f42ac6eab5f74bd97e435efb0
This commit is contained in:
merge-script
2026-03-09 17:07:07 +00:00
5 changed files with 24 additions and 63 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -1,6 +1,6 @@
Bitcoin Core version 29.3 is now available from:
Bitcoin Core version 29.x is now available from:
<https://bitcoincore.org/bin/bitcoin-core-29.3/>
<https://bitcoincore.org/bin/bitcoin-core-29.x/>
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/).

View File

@@ -29,6 +29,8 @@
#include <sys/sysctl.h>
#endif
#include <type_traits>
namespace {
// Linux and FreeBSD 14.0+. For FreeBSD 13.2 the code can be compiled but
@@ -93,7 +95,9 @@ std::optional<CNetAddr> 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<std::is_signed_v<decltype(NLMSG_HDRLEN)>, int64_t, decltype(NLMSG_HDRLEN)>;
for (nlmsghdr* hdr = (nlmsghdr*)response; NLMSG_OK(hdr, static_cast<recv_result_t>(recv_result)); hdr = NLMSG_NEXT(hdr, recv_result)) {
rtmsg* r = (rtmsg*)NLMSG_DATA(hdr);
int remaining_len = RTM_PAYLOAD(hdr);

View File

@@ -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
{