ant12334
commented at 1:09 AM on May 18, 2025:
none
<!--
*** Please remove the following help text before submitting: ***
Pull requests without a rationale and clear improvement may be closed
immediately.
GUI-related pull requests should be opened against
https://github.com/bitcoin-core/gui
first. See CONTRIBUTING.md
-->
<!--
Please provide clear motivation for your patch and explain how it improves
Bitcoin Core user experience or Bitcoin Core developer experience
significantly:
* Any test improvements or new tests that improve coverage are always welcome.
* All other changes should have accompanying unit tests (see `src/test/`) or
functional tests (see `test/`). Contributors should note which tests cover
modified code. If no tests exist for a region of modified code, new tests
should accompany the change.
* Bug fixes are most welcome when they come with steps to reproduce or an
explanation of the potential issue as well as reasoning for the way the bug
was fixed.
* Features are welcome, but might be rejected due to design or scope issues.
If a feature is based on a lot of dependencies, contributors should first
consider building the system outside of Bitcoin Core, if possible.
* Refactoring changes are only accepted if they are required for a feature or
bug fix or otherwise improve developer experience significantly. For example,
most "code style" refactoring changes require a thorough explanation why they
are useful, what downsides they have and why they *significantly* improve
developer experience or avoid serious programming bugs. Note that code style
is often a subjective matter. Unless they are explicitly mentioned to be
preferred in the [developer notes](/doc/developer-notes.md), stylistic code
changes are usually rejected.
-->
<!--
Bitcoin Core has a thorough review process and even the most trivial change
needs to pass a lot of eyes and requires non-zero or even substantial time
effort to review. There is a huge lack of active reviewers on the project, so
patches often sit for a long time.
-->
build: Bump to 28.0rc16974e30bdd
doc: Generate manpages08887d3297
examples: Generate example bitcoin.conf27b6300485
doc: Point release notes to wiki draftbd45bc611b
Merge bitcoin/bitcoin#30726: [28.x] Bump to 28.0rc1
bd45bc611b8b245d0a6bc8e0f5a224b0642f06d0 doc: Point release notes to wiki draft (Ava Chow)
27b63004851c1c2bb14387fc537052a27265145f examples: Generate example bitcoin.conf (Ava Chow)
08887d3297175ca1eed800319b958d5d8247b885 doc: Generate manpages (Ava Chow)
6974e30bdd2b32197f543050c21f8fc2cca5a0b9 build: Bump to 28.0rc1 (Ava Chow)
Pull request description:
* Bump version to 28.0rc1
* Generated manpages
* Generated example bitcoin.conf
* Point release notes to wiki
ACKs for top commit:
hebasto:
ACK bd45bc611b8b245d0a6bc8e0f5a224b0642f06d0.
Tree-SHA512: c3cd28b003ead64631b8c2d1bdbf7403d4d9f53ee5ccdc448d89ca25941678f6d1d8966c2f9a92fa021c815b3e36a84056342caa4eaacdab371f0d581e4e58dc
88f0419c1a
test: fix `TestShell` initialization (late follow-up for #30463)
test: fixing failing system_tests/run_command under some Locales
the run_command test under system_tests fails if the locale is anything
other than English ones because results such as "No such file or directory"
will be different under Non-English locales.
On the old version, a `ls nonexistingfile` was used to generate the error
output which is not ideal. In the current version we are using a Python one-liner
to generate a non 0 zero return value and "err" on stderr and check the
expected value against this.
fixes #30608
Github-Pull: #30788
Rebased-From: ae48a22a3df086fb59843b7b814619ed5df7557b
199bb09d88
depends: build libevent with -D_GNU_SOURCE
Currently, builds of libevent in depends, using CMake, fail on some
systems, like Alpine, with the following:
```bash
/bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c: In function 'evmap_signal_add_':
/bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c:456:31: error: 'NSIG' undeclared (first use in this function)
456 | if (sig < 0 || sig >= NSIG)
```
From what I can tell the `_GNU_SOURCE` "detection" in libevents CMake build
system, never? really worked, and it's not clear what a nice fix is.
For now, always use `_GNU_SOURCE` when building libevent in depends.
Github-Pull: #30743
Rebased-From: 556775408797d8e27154c3edaf139820b0979cce
b2a137929a
Merge bitcoin/bitcoin#30762: [28.x] rc backports
b2a137929a20baed161988e24de592b1f59c0096 depends: build libevent with -D_GNU_SOURCE (fanquake)
199bb09d88e28d951c5068eb65643390dbedd066 test: fixing failing system_tests/run_command under some Locales (Jadi)
342baabaffc385dc44a44f6d8cf32728a25a0356 test: Avoid intermittent timeout in p2p_headers_sync_with_minchainwork.py (MarcoFalke)
5577d5a3c0904a4805e7b768cb60144daa2a0854 test: fix `TestShell` initialization (late follow-up for #30463) (Sebastian Falbesoner)
Pull request description:
Backports:
* https://github.com/bitcoin/bitcoin/pull/30714
* https://github.com/bitcoin/bitcoin/pull/30743
* https://github.com/bitcoin/bitcoin/pull/30761
* https://github.com/bitcoin/bitcoin/pull/30788
ACKs for top commit:
willcl-ark:
ACK b2a137929a20baed161988e24de592b1f59c0096
achow101:
ACK b2a137929a20baed161988e24de592b1f59c0096
stickies-v:
ACK b2a137929a20baed161988e24de592b1f59c0096
Tree-SHA512: bf08ac0c613395def974a1b287345d4a64edc066c14f8c9f0184478b0e33e48333760eeb6e96b6b5fbafbb21b40d01875e3f526213a2734e226b2e111d71f3a3
Because AssumeUTXO nodes prioritize tip synchronization, they relay their local
address through the network before completing the background chain sync.
This, combined with the advertising of full-node service (NODE_NETWORK), can
result in an honest peer in IBD connecting to the AssumeUTXO node (while syncing)
and requesting an historical block the node does not have. This behavior leads to
an abrupt disconnection due to perceived unresponsiveness (lack of response)
from the AssumeUTXO node.
This lack of response occurs because nodes ignore getdata requests when they do
not have the block data available (further discussion can be found in PR 30385).
Fix this by refraining from signaling full-node service support while the
background chain is being synced. During this period, the node will only
signal 'NODE_NETWORK_LIMITED' support. Then, full-node ('NODE_NETWORK')
support will be re-enabled once the background chain sync is completed.
Github-Pull: bitcoin/bitcoin#30807
Rebased-From: 6d5812e5c852c233bd7ead2ceef051f8567619ed
c6b5db1d59
test: add coverage for assumeUTXO honest peers disconnection
Exercising and verifying the following points:
1. An IBD node can sync headers from an AssumeUTXO node at
any time.
2. IBD nodes do not request historical blocks from AssumeUTXO
nodes while they are syncing the background-chain.
3. The assumeUTXO node dynamically adjusts the network services
it offers according to its state.
4. IBD nodes can fully sync from AssumeUTXO nodes after they
finish the background-chain sync.
Github-Pull: bitcoin/bitcoin#30807
Rebased-From: 992f83bb6f4b29b44f4eaace1d1a2c0001d43cac
b329ed739b
test: Wait for local services to update in feature_assumeutxo
The crash occurs because 'WalletController::removeAndDeleteWallet' is called
twice for the same wallet model: first in the GUI's button connected function
'WalletController::closeWallet', and then again when the backend emits the
'WalletModel::unload' signal.
This causes the issue because 'removeAndDeleteWallet' inlines an
erase(std::remove()). So, if 'std::remove' returns an iterator to the end
(indicating the element wasn't found because it was already erased), the
subsequent call to 'erase' leads to an undefined behavior.
Github-Pull: bitcoin-core/gui#835
Rebased-From: a965f2bc07a3588f8c2b8d6a542961562e3f5d0e
674dded875
qt: Translations update
The recent translations from Transifex.com 28.x fetched with the
bitcoin-maintainer-tools/update-translations.py tool.
Github-Pull: bitcoin/bitcoin#30899
Rebased-From: ae0529576147a1a5bee992574e2cefc8a1fa37d0
validation: Disable CheckForkWarningConditions for background chainstate
The comparison of m_best_invalid with the tip of the respective chainstate
makes no sense for the background chainstate, and can lead to incorrect
error messages.
Github-Pull: bitcoin/bitcoin#30962
Rebased-From: c0a0c72b4d68a4f0c53c2c4b95f4d6e399f8e4ee
7fcd7b85c6
build: Bump to 28.05feef9ce7e
doc: generate manpages98745e03ff
doc: 28.0 Release Notes5de225f5c1
Merge bitcoin/bitcoin#30959: [28.x] backports and finalize
5de225f5c145368f70cb5f870933bcf9df6b92c8 doc: 28.0 Release Notes (Ava Chow)
98745e03ffc9f69f901b827e19e4d8d645a27112 doc: generate manpages (Ava Chow)
5feef9ce7ebf608e45aa9682512599494c0d46d8 build: Bump to 28.0 (Ava Chow)
7fcd7b85c64ffbcd67d8ff1add46d258b26b2029 validation: Disable CheckForkWarningConditions for background chainstate (Martin Zumsande)
e24a25d882ba8c8dacc1eede6b9373fe7601f85b test: Use shell builtins in run_command test case (Ava Chow)
Pull request description:
* #30952
* #30962
* Finalize 28.0 (or rc3 if additional backports are needed)
ACKs for top commit:
sipa:
utACK 5de225f5c145368f70cb5f870933bcf9df6b92c8
Tree-SHA512: b42948a04d4250f2c9ef3331a39a4c3d7de9ceb9f4f294dd283599d08f3e2b7147297ef9ec1c4276e291a015fc2daa5a72c1f1c33fb517e8ea5c740c4459bf32
1101837461
doc: Sync 28.0 release notes with website89d34cffed
Merge bitcoin/bitcoin#31034: [28.x] doc: Sync 28.0 release notes with website
89d34cffedcb6ec752fa2ca355ad32e1e413b2f0 doc: Sync 28.0 release notes with website (Ava Chow)
Pull request description:
Since there were some changes to the release notes after the tagging, update the in branch release notes to match those that ended up on the website.
ACKs for top commit:
tdb3:
ACK 89d34cffedcb6ec752fa2ca355ad32e1e413b2f0
Tree-SHA512: 1feeafb0f604d36c1817e8bf38cbaef5d41f958dd823c99a19a1a9f7f1f1d38f917872c84b536dd784d7a672904ed2399369693f200a2837cd5707a686d3e634
test: add missing sync to feature_fee_estimation.py
Fixes a race between node 1 catching up with the chain and mining a
new block in the sanity_check_rbf_estimates subtest.
Github-Pull: #31016
Rebased-From: a1576edab356053c4c736691e4950b58e9a14f76
b917334208
ci: add LLVM_SYMBOLIZER_PATH to Valgrind fuzz job
Otherwise:
```bash
NEW_FUNC[1/23]: ==4710==WARNING: invalid path to external symbolizer!
==4710==WARNING: Failed to use and restart external symbolizer!
0xb72010 (/ci_container_base/ci/scratch/build-x86_64-pc-linux-gnu/src/test/fuzz/fuzz+0xa6a010) (BuildId: 2087ad415cb752eea259ed750f3b78a7fcb0b43b)
NEW_FUNC[2/23]: 0xb72240 (/ci_container_base/ci/scratch/build-x86_64-pc-linux-gnu/src/test/fuzz/fuzz+0xa6a240) (BuildId: 2087ad415cb752eea259ed750f3b78a7fcb0b43b)
```
Github-Pull: #30961
Rebased-From: c1832584bfd1b352095bc41a13ff17564e456d43
0773560abf
key: clear out secret data in `DecodeExtKey`
Same as in `DecodeSecret`, we should also clear out the secret data from
the vector resulting from the Base58Check parsing for xprv keys. Note
that the if condition is needed in order to avoid UB, see #14242 (commit
d855e4cac8303ad4e34ac31cfa7634286589ce99).
Github-Pull: #31166
Rebased-From: 559a8dd9c0aafcecf00f9ccd9aabe5720bcebe8c
f998ac6286
depends: For mingw cross compile use -gcc-posix to prevent library conflict
CMake parses some paths from the spec of the C compiler, assuming it
will be the linker, resulting in the link to end up with
`-L/usr/lib/gcc/x86_64-w64-mingw32/12-win32` on debian bookworm if both
-win32 and -posix variants are installed, and -win32 is the default
alternative.
This results in the wrong C++ library being linked, missing
std::threads::hardware_concurrency and other threading functions.
To fix this, use the -posix variant of gcc as well when available. This
fixes a regression compared to autotools, where this scenario worked.
Github-Pull: #31013
Rebased-From: ae56b3230b287eef5a5657d3089abebffde51484
7fec638222
addrman, refactor: introduce user-defined type for internal nId
This makes it easier to track which spots refer to an nId
(as opposed to, for example, bucket index etc. which also use int)
Co-authored-by: Pieter Wuille <pieter@wuille.net>
Github-Pull: #30568
Rebased-From: 051ba3290e30e210bfc50dea974063053313ad3e
1d0411dc8f
addrman: change nid_type from int to int64_t
With nId being incremented for each addr received,
an attacker could cause an overflow in the past.
(https://bitcoincore.org/en/2024/07/31/disclose-addrman-int-overflow/)
Even though that attack was made infeasible by
rate-limiting (PR #22387), to be on the safe side change the
type to an int64_t.
Github-Pull: #30568
Rebased-From: 51f7668d31e2624e41c7ce77fe33162802808f3f
8fef83a0a03f884e0c5399b318eb55064b84b718 doc: update manual pages for 28.1rc1 (fanquake)
df7764621e2d41e2dd35e10f68f0059c0e09bf18 build: bump version to 28.1rc1 (fanquake)
9add853b652ac37214011909e7777772ec6256fa doc: update release notes for 28.1rc1 (fanquake)
1025090fbe215286239ff6dd5dbedd3291f0b196 build: disable compiling fuzz/utxo_snapshot.cpp with MSVC (fanquake)
446f5d20d6c8da951c97e5a5e52c92b0fab4728d refactor: Drop deprecated space in operator""_mst (MarcoFalke)
9976162a0e0847502c075ae8524b6e5cfefba0ed addrman: change nid_type from int to int64_t (Martin Zumsande)
1d0411dc8fea96eb4d65ffef98d71f6cc4e12af5 addrman, refactor: introduce user-defined type for internal nId (Martin Zumsande)
7fec6382221b49b7ffd5121ee0442b4f2a5169ef depends: For mingw cross compile use -gcc-posix to prevent library conflict (laanwj)
f998ac628685c6459d5de3bd7469f9046901fc47 key: clear out secret data in `DecodeExtKey` (Sebastian Falbesoner)
0773560abf991fbc60c415e1556d86c4d5505f1b ci: add LLVM_SYMBOLIZER_PATH to Valgrind fuzz job (fanquake)
b9173342084b1340a639e7a20e2b4a0f5852304a test: add missing sync to feature_fee_estimation.py (Martin Zumsande)
f072721181c727f37cf1253e0a629f865eae7178 doc: add testnet4 section header for config file (Marnix)
6643fd2145f8ef211e719dd401b8ac966c5dc9ea doc: Archive 28.0 release notes (Ava Chow)
Pull request description:
Backports:
* #30568
* #31007
* #31013
* #31016
* #31035
* #31166
Contains:
* A commit to do the same as #31307.
ACKs for top commit:
willcl-ark:
ACK 8fef83a0a03f884e0c5399b318eb55064b84b718
Tree-SHA512: 58f0c6cb9e5b7ac17ad20141acdc5423dbe8e79cc3a2cf1c4e503d289b75940632c9838c64e3ac733b1a55e65723fc1071ccdd9a860a710256cc88e29f42ccdb
d6b225f165
fuzz: add cstdlib to FuzzedDataProvider
Same as https://github.com/llvm/llvm-project/pull/113951.
Avoids compile failures under clang-20 &
`D_LIBCPP_REMOVE_TRANSITIVE_INCLUDES`:
```bash
In file included from /bitcoin/src/test/fuzz/addition_overflow.cpp:5:
/bitcoin/src/test/fuzz/FuzzedDataProvider.h:209:5: error: use of undeclared identifier 'abort'
209 | abort();
| ^
/bitcoin/src/test/fuzz/FuzzedDataProvider.h:250:5: error: use of undeclared identifier 'abort'
250 | abort();
```
Github-Pull: bitcoin/bitcoin#31448
Rebased-From: bb7e686341e437b2e7aae887827710918c00ae0f
2835158be0
util: use explicit cast in MultiIntBitSet::Fill()
The current code does not have a bug, but is implicitly casting -1 to
65535 and the sanitizer has no way to know whether we intend that or
not.
```
FUZZ=bitset src/test/fuzz/fuzz /tmp/fuz
error: implicit conversion from type 'int' of value -1 (32-bit, signed)
to type 'value_type' (aka 'unsigned short') changed the value to 65535
(16-bit, unsigned)
Base64: Qv7bX/8=
```
Github-Pull: bitcoin/bitcoin#31431
Rebased-From: edb41e4814ccc2c06a5694b2d2632dbbd22bc0cf
net, init: derive default onion port if a user specified a -port
After port collisions are no longer tolerated but lead to
a startup failure in v28.0, local setups of multiple nodes,
each with a different -port value would not be possible anymore
due to collision of the onion default port - even if the nodes
were using tor or not interested in receiving onion inbound connections.
Fix this by deriving the onion listening port to be -port + 1.
(idea by vasild / laanwj)
Co-authored-by: Vasil Dimov <vd@FreeBSD.org>
Github-Pull: bitcoin/bitcoin#31223
Rebased-From: 0e2b12b92a28a2949e75bf50f31563f52e647d6e
5576618152aff0358aeb1c5189422882b419de2d doc: update release notes for 28.1rc2 (Ava Chow)
01fe07a2cea07b6e72a33a5d230ec16118b9a26b examples: Generate example bitcoin.conf (Ava Chow)
7ddfcf32da7a0bfb40bc3b4f5d28ac078fd1c5d7 doc: Generate manpages (Ava Chow)
e0b27b234cb31f53ddd51a923d8f5d0a30f92375 build: Bump to 28.1rc2 (Ava Chow)
bdc6b3e531a107c52d73f72ddf788114381e241c Add release note for #31223 (Martin Zumsande)
a0585b6087ac2f3e54efa50795cba83caeac5ab0 test: add functional test for -port behavior (Martin Zumsande)
bbde830b97000b8bbfbaefc54504f659a34f651c net, init: derive default onion port if a user specified a -port (Martin Zumsande)
227642d5afeb9918269192500d1a41bcb64b51c5 test: fix MIN macro-redefinition (0xb10c)
b8112cf4226265a5b43e2b556ce9fa97caf3c28a util: use explicit cast in MultiIntBitSet::Fill() (Vasil Dimov)
2835158be0410fe82a56752d9ffe60e2a77dc0cd fuzz: add cstdlib to FuzzedDataProvider (fanquake)
Pull request description:
Backports:
* #31223
* #31448
* #31431
* #31419
ACKs for top commit:
hodlinator:
re-ACK 5576618152aff0358aeb1c5189422882b419de2d
Tree-SHA512: f99f3c5960f18f6894832c5f9a827f97fd3c6e086670341760ce1b77c304d53136492371c59148f3b4bbcfe2d5428c835fe632c61b229b40f1f6f6cf2b72cdca
6db725662d
rpc: Extend scope of validation mutex in generateblock
The mutex (required by TestBlockValidity) must be held after creating
the block, until TestBlockValidity is called. Otherwise, it is possible
that the chain advances in the meantime and leads to a crash in
TestBlockValidity:
Assertion failed: pindexPrev && pindexPrev == chainstate.m_chain.Tip() (validation.cpp: TestBlockValidity: 4338)
The diff can be reviewed with the git options
--ignore-all-space --function-context
Github-Pull: 31563
Rebased-From: fa62c8b1f04a5386ffa171aeff713d55bd874cbe
621c634b7f
test: generateblocks called by multiple threads
Co-Authored-By: David Gumberg <davidzgumberg@gmail.com>
Github-Pull: 31563
Rebased-From: fa63b8232f38e78d3c6413fa7d51809f376de75c
05cd448e33
depends: Fix CXXFLAGS on NetBSD
This change corrects an issue where CXXFLAGS were mistakenly overridden
by CFLAGS.
Github-Pull: 31502
Rebased-From: a10bb400e8cb0da0030114ee59f2e7c8494aef42
5b368f88a9
build: bump to 28.16a68ef9bfb
doc: generate 28.1 manpages58910279dc
doc: Update 28.1 release notes36314b8da2
Merge bitcoin/bitcoin#31594: [28.x] 28.1 backports and final changes
36314b8da2ee65afd5636fa830d436c5c22bd260 doc: Update 28.1 release notes (MarcoFalke)
58910279dcfd989a1712b3dc39a272ff3fbe1136 doc: generate 28.1 manpages (Ava Chow)
6a68ef9bfb39b27d480d4091b60d1c7f9f2d8690 build: bump to 28.1 (Ava Chow)
5b368f88a9fddd0cd48fb014ff9694c555129996 depends: Fix CXXFLAGS on NetBSD (Hennadii Stepanov)
05cd448e3328181d3fe1662bcd7af82cb51833a7 test: generateblocks called by multiple threads (MarcoFalke)
621c634b7fe14fbf151cd222eeaade3505059249 rpc: Extend scope of validation mutex in generateblock (MarcoFalke)
Pull request description:
Backports:
- #31502
- #31563
ACKs for top commit:
glozow:
reACK 36314b8da2ee65afd5636fa830d436c5c22bd260
achow101:
ACK 36314b8da2ee65afd5636fa830d436c5c22bd260
Tree-SHA512: c7a624b4c166f4322011d98d1ca814ae98eaf5fd2481a507cd65a50216f1abbb91f8643508ce81f64f8b10fa2210db1722254c343253f2a950b9c64667735e9b
This change resolves an issue where a missing space caused the value of
the `build_AR` variable to be concatenated with the "NM=" string. This
resulted in subsequent calls to `${AR}` and `${NM}` failing.
Github-Pull: #31627
Rebased-From: 8a46286da667d19414c30350df48ebf245589e32
f676da82fa
tracing: Rename the `MIN` macro to `_TRACEPOINT_TEST_MIN` in log_raw_p2p_msgs
build: use make < 3.82 syntax for define directive
From the GNU make 3.82 release announcement:
* The 'define' make directive now allows a variable assignment operator
after the variable name, to allow for simple, conditional, or appending
multi-line variable assignment.
macOS ships with 3.81. This caused the multiprocess config options
to be ignored.
Fixes #32068
Co-authored-by: Ryan Ofsky <ryan@ofsky.org>
Github-Pull: #32070
Rebased-From: 9157d9e449870851ef455e077249ac46fc2df24c
e65676216c
test: Add imports for util bpf_cflags
This is required for the next commit.
Github-Pull: #32336
Rebased-From: fa0c1baaf89805182de56d6a2e8eed2265a94b40
812e6375213e883a0c22aa926ebcde5da4d23a3e doc: update release notes for 28.x (fanquake)
2ccdfa424cba3f2e414520d49485d3242f28b283 scripted-diff: Use bpf_cflags (MarcoFalke)
3df2624ee9ab25a0281b27116740d0c5aff1c101 test: Add imports for util bpf_cflags (MarcoFalke)
e65676216c6840001dbf153cb8d4861495e231ea build: use make < 3.82 syntax for define directive (Sjors Provoost)
2d6c14efbacb08da70e6323ed44b64a35cda9f52 refactor: Remove spurious virtual from final ~CZMQNotificationInterface (MarcoFalke)
9b15b20cb17f048fedf3628dbb0e7c5db9561fc5 test: Handle empty string returned by CLI as None in RPC tests (Brandon Odiwuor)
Pull request description:
Backports:
- #32070
- #32187
- #32286
- #32336
ACKs for top commit:
willcl-ark:
ACK 812e6375213e883a0c22aa926ebcde5da4d23a3e
Tree-SHA512: b5c9c6b70588658310fd2d79dbd2d1148d8650e020daa9ac8ea2d3380c1e95a92e554b43b0dfd989308a729c5226e1f1ddb13cb1bb56dc5be571e4fc2f2795d6
a124b91339
doc: update release notes for 28.2rc1fdc629fa73
build: bump version to 28.2rc1bbfb994fc1
doc: update manual pages for 28.2rc1186e3f1fb6
Merge bitcoin/bitcoin#32480: [28.x] 28.2rc1
186e3f1fb65bb693154c0b63b690bea1d279f089 doc: update manual pages for 28.2rc1 (fanquake)
bbfb994fc1fbf16e5aa56e1726902ad25e31771e build: bump version to 28.2rc1 (fanquake)
fdc629fa736d79f5b26a73fafc58f52c16d18f03 doc: update release notes for 28.2rc1 (fanquake)
Pull request description:
Final changes for `v28.2rc1`.
ACKs for top commit:
willcl-ark:
ACK 186e3f1fb65bb693154c0b63b690bea1d279f089
Tree-SHA512: 56c192c9bfb7b2d69b7b039d8e024c18ba39dffed42dbd120f15644cac134e008333ec73ac6ef501db2f2a0f3b125b3003650c4209fa26d0ecb8b566d417374e
ac637458ef
DrahtBot
commented at 1:09 AM on May 18, 2025:
contributor
<!--e57a25ab6845829454e8d69fc972939a-->
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
This is a metadata mirror of the GitHub repository
bitcoin/bitcoin.
This site is not affiliated with GitHub.
Content is generated from a GitHub metadata backup.
generated: 2026-09-30 22:52 UTC
This site is hosted by @0xB10C More mirrored repositories can be found on mirror.b10c.me