46218 Commits

Author SHA1 Message Date
merge-script
abb6ae2ec5
Merge bitcoin/bitcoin#34209: [30.x]: Final backports & 30.2rc1
483d158f538c3d7c1cac30d2b299bc10b256972e doc: update manual pages for v30.2rc1 (fanquake)
747a863f5b6f45f6a4bb8ad6811ef800cf4afb58 build: bump version to v30.2rc1 (fanquake)
cc3cdbe9214f80ab43b66af121fb78abcb9e2d1d doc: update release notes for v30.2rc1 (fanquake)
c4082a45e64d81dda5ec093a8ba3b6dad4b946a8 wallettool: do not use fs::remove_all in createfromdump cleanup (Ava Chow)
185ca0e391aea530db37dd5bbc0e150286083ea9 test: coverage for migration failure when last sync is beyond prune height (furszy)
bc71372c0e3b552fff174772ef9e5c65177405c3 wallet: migration, fix watch-only and solvables wallets names (furszy)
bef4b1fdee1f386662855fb66409c323eee4bae4 wallet: improve post-migration logging (furszy)
ac940ac2ca6d427970b7ebbd8227154cf0159875 test: restorewallet, coverage for existing dirs, unnamed wallet and prune failure (furszy)
8e5c02a77f1b18ae37829200f96ef3fa1cc91246 test: add coverage for unnamed wallet migration failure (furszy)
ac4d0956ccccb43082991d89a8601c39d490d3a5 wallet: fix unnamed wallet migration failure (furszy)
454ac8e7db0f8b2c000b1d2e943bde95dff0127d wallet: RestoreWallet failure, erase only what was created (furszy)

Pull request description:

  Backports:
  * #34156
  * #34215

ACKs for top commit:
  darosior:
    ACK 483d158f538c3d7c1cac30d2b299bc10b256972e
  willcl-ark:
    tACK 483d158f538c3d7c1cac30d2b299bc10b256972e
  janb84:
    ACK 483d158f538c3d7c1cac30d2b299bc10b256972e
  w0xlt:
    ACK 483d158f53
  marcofleon:
    lgtm ACK 483d158f538c3d7c1cac30d2b299bc10b256972e

Tree-SHA512: b43485a8745a663d3a031113a6a266af699b3e70b77f72a0e69ea1986adcaa0ee0d4ce51aacd0fde91611cb4bdba9b6be52e5dca59ff8b12135715b8b1ed5ef2
v30.2rc1
2026-01-07 15:44:56 +00:00
fanquake
483d158f53
doc: update manual pages for v30.2rc1 2026-01-07 14:34:29 +00:00
fanquake
747a863f5b
build: bump version to v30.2rc1 2026-01-07 14:34:28 +00:00
fanquake
cc3cdbe921
doc: update release notes for v30.2rc1 2026-01-07 14:34:24 +00:00
Ava Chow
c4082a45e6
wallettool: do not use fs::remove_all in createfromdump cleanup
Github-Pull: #34215
Rebased-From: f78f6f1dc8e16d5a8a23749e77bc3bf17c91ae42
2026-01-07 14:33:39 +00:00
furszy
185ca0e391
test: coverage for migration failure when last sync is beyond prune height
Github-Pull: #34156
Rebased-From: b7c34d08dd9549a95cffc6ec1ffa4bb4f81e35eb
2026-01-07 11:20:07 +00:00
furszy
bc71372c0e
wallet: migration, fix watch-only and solvables wallets names
Because the default wallet has no name, the watch-only and solvables
wallets created during migration end up having no name either.

This fixes it by applying the same prefix name we use for the backup
file for an unnamed default wallet.

Before: watch-only wallet named "_watchonly"
After:  watch-only wallet named "default_wallet_watchonly"

Github-Pull: #34156
Rebased-From: 82caa8193a3e36f248dcc949e0cd41def191efac
2026-01-07 11:20:04 +00:00
furszy
bef4b1fdee
wallet: improve post-migration logging
Right now, after migration the last message users see is "migration completed",
but the migration isn't actually finished yet. We still need to load the new wallets
to ensure consistency, and if that fails, the migration will be rolled back. This
can be confusing for users.

This change logs the post-migration loading step and if a wallet fails to load and
the migration will be rolled back.

Github-Pull: #34156
Rebased-From: d70b159c42008ac3b63d1c43d99d4f1316d2f1ef
2026-01-07 11:20:00 +00:00
furszy
ac940ac2ca
test: restorewallet, coverage for existing dirs, unnamed wallet and prune failure
The first test verifies that restoring into an existing empty directory
or a directory with no .dat db files succeeds, while restoring into a
dir with a .dat file fails.

The second test covers restoring into the default unnamed wallet
(wallet.dat), which also implicitly exercises the recovery path used
after a failed migration.

The third test covers failure during restore on a prune node. When
the wallet last sync was beyond the pruning height.

Github-Pull: #34156
Rebased-From: f011e0f0680a8c39988ae57dae57eb86e92dd449
2026-01-07 11:19:57 +00:00
furszy
8e5c02a77f
test: add coverage for unnamed wallet migration failure
Verifies that a failed migration of the unnamed (default) wallet
does not erase the main /wallets/ directory, and also that the
backup file exists.

Github-Pull: #34156
Rebased-From: 36093bde63286e19821a9e62cdff1712b6245dc7
2026-01-07 11:19:39 +00:00
furszy
ac4d0956cc
wallet: fix unnamed wallet migration failure
When migrating any legacy unnamed wallet, a failed migration would
cause the cleanup logic to remove its parent directory. Since this
type of legacy wallet lives directly in the main '/wallets/' folder,
this resulted in unintentionally erasing all wallets, including the
backup file.

To be fully safe, we will no longer call `fs::remove_all`. Instead,
we only erase the individual db files we have created, leaving
everything else intact. The created wallets parent directories are
erased only if they are empty.
As part of this last change, `RestoreWallet` was modified to allow
an existing directory as the destination, since we no longer remove
the original wallet directory (we only remove the files we created
inside it). This also fixes the restore of top-level default wallets
during failures, which were failing due to the directory existence
check that always returns true for the /wallets/ directory.

This bug started after:
f6ee59b6e2
Previously, the `fs::copy_file` call was failing for top-level wallets,
which prevented the `fs::remove_all` call from being reached.

Github-Pull: #34156
Rebased-From: f4c7e28e80bf9af50b03a770b641fd309a801589
2026-01-07 11:19:35 +00:00
furszy
454ac8e7db
wallet: RestoreWallet failure, erase only what was created
Track what RestoreWallet creates so only those files and directories
are removed during a failure and nothing else. Preexisting paths
must be left untouched.

Note:
Using fs::remove_all() instead of fs::remove() in RestoreWallet does
not cause any problems currently, but the change is necessary for the
next commit which extends RestoreWallet to work with existing directories,
which may contain files that must not be deleted.

Github-Pull: #34156
Rebased-From: 4ed0693a3f2a427ef9e7ad016930ec29fa244995
2026-01-07 11:18:38 +00:00
merge-script
e9f73b8149
Merge bitcoin/bitcoin#34192: [30.x] Backports
f22122bc27b52f4d82fb0a79e5e145f1e4112732 doc: update release notes for v30.x (fanquake)
7568bc3ab08e7a4c9b7bdbf4e14e73f5c5fcbfe1 test: Avoid hard time.sleep(1) in feature_init.py (MarcoFalke)
c065bcd2d7edd79b60c3224911640817b3cb837a init: Signal m_tip_block_cv on Ctrl-C (Ryan Ofsky)
6983c7d7695198b8cefe67b43b7061de93320aa1 test: Test SIGTERM handling during waitforblockheight call (Ryan Ofsky)
8769c718f419519e9267b282475c342bf4688cb9 doc: Update OpenBSD Build Guide (Hennadii Stepanov)
ed0774bd08b83813f162be33672b7d6c7fff9933 doc: update copyright year (fanquake)
f620dde4113924c6153c3d8b6c4210c128761325 fuzz: doc: remove any mention to address_deserialize_v2 (brunoerg)
b734c4026b008f16e318fab7471984c0c1a87e88 guix: reduce allowed exported symbols (fanquake)
7ea855fd551738cabb215e1172097c319574cf8b build: Update minimum required Boost version (Hennadii Stepanov)

Pull request description:

  Backports:
  * #33511
  * #33950
  * #34091
  * #34107
  * #34137
  * #34174
  * #34182

ACKs for top commit:
  willcl-ark:
    ACK f22122bc27b52f4d82fb0a79e5e145f1e4112732
  marcofleon:
    ACK f22122bc27b52f4d82fb0a79e5e145f1e4112732

Tree-SHA512: a4486d331ce8fef07e611188098a965348cdfb081b81e5a2c700e119b1cf3c28cddbeca883ab512a510f6aaa5fc14bf896f70823fa63afcdd0762d9fbda0118b
2026-01-05 17:27:19 +00:00
fanquake
f22122bc27
doc: update release notes for v30.x 2026-01-05 12:09:33 +00:00
MarcoFalke
7568bc3ab0
test: Avoid hard time.sleep(1) in feature_init.py
Github-Pull: #34137
Rebased-From: fa727e3ec984106371eeedb34d7bbbbc3dcce4ff
2026-01-05 12:09:02 +00:00
Ryan Ofsky
c065bcd2d7
init: Signal m_tip_block_cv on Ctrl-C
Signal m_tip_block_cv when Ctrl-C is pressed or SIGTERM is received, the same
way it is currently signalled when the `stop` RPC is called. This lets RPC
calls like `waitforblockheight` and IPC calls like `waitTipChanged` be
interrupted, instead of waiting for their original timeouts and delaying
shutdown.

Historical notes:

- The behavior where `stop` RPC signals `m_tip_block_cv`, but CTRL-C does not,
  has been around since the condition variable was introduced in #30409
  (7eccdaf16081d6f624c4dc21df75b0474e049d2b).
- The signaling was later moved without changing behavior in #30967
  (5ca28ef28bcca1775ff49921fc2528d9439b71ab). This commit moves it again to
  the Interrupt() function, which is probably the place it should have been
  added initially, so it works for Ctrl-C shutdowns as well as `stop`
  shutdowns.
- A Qt shutdown bug calling wait methods was fixed previously in #18452
  (da73f1513a637a9f347b64de66564d6cdb2541f8), and this change updates that
  fix to avoid the hang happening again in Qt.

Github-Pull: #33511
Rebased-From: c25a5e670b27d3b6eb958ce437dbe89678bd1511
2026-01-05 12:07:02 +00:00
Ryan Ofsky
6983c7d769
test: Test SIGTERM handling during waitforblockheight call
Currently when CTRL-C is pressed and there is an active `waitforblockheight`,
or `waitforblock`, or `waitfornewblock` RPC call, or a mining interface
`waitTipChanged` IPC call with a long timeout, the node will not shut down
right away, and will wait for the timeout to be reached before exiting.

This behavior is not ideal and only happens when the node is stopped with
CTRL-C or SIGTERM. When the node is stopped with `bitcoin-cli stop`, the wait
calls are interrupted and the node does shut down right away.

The next commit improves node behavior. This commit just adds test coverage to
simplify the next commit and clarify the change in behavior there.

Github-Pull: #33511
Rebased-From: 6a29f79006a9d60b476893dface5eea8f9bf271c
2026-01-05 12:06:57 +00:00
Hennadii Stepanov
8769c718f4
doc: Update OpenBSD Build Guide
Github-Pull: #34182
Rebased-From: 84d8c52662545b33c0d02c8ac02ae694950ad9d4
2026-01-05 11:58:47 +00:00
fanquake
ed0774bd08
doc: update copyright year
Github-Pull: #34174
Rebased-From: b23b901363c56043c536f32261ac8cb540624a84
2026-01-05 11:41:23 +00:00
brunoerg
f620dde411
fuzz: doc: remove any mention to address_deserialize_v2
Github-Pull: #34091
Rebased-From: caf4843a59a9d2512d69f8fd88a9672112bd80ac
2025-12-31 12:30:48 +00:00
fanquake
b734c4026b
guix: reduce allowed exported symbols
Github-Pull: #33950
Rebased-From: 7b90b4f5bb10e2156709b07e3996f867e2421232
2025-12-31 12:27:29 +00:00
Hennadii Stepanov
7ea855fd55
build: Update minimum required Boost version
Building with Boost 1.73.0 is broken.

Github-Pull: #34107
Rebased-From: f480c1e7177744d11b058c3a9422975d7ec1af46
2025-12-31 12:22:49 +00:00
merge-script
dd47caee82
Merge bitcoin/bitcoin#34092: [30.x] Finalise v30.1
2a21824b1190968ee8ba3120400c00e56be10591 doc: update manual pages for v30.1 (fanquake)
57264431ff900b7846076a01a79241b352811365 build: bump version to v30.1 (fanquake)
26294d627eb540496d6323e9074f92bb7ae1f3ac doc: update release notes for v30.1 (fanquake)

Pull request description:

  Finalise `v30.1`.

ACKs for top commit:
  waketraindev:
    ACK 2a21824b11
  hebasto:
    ACK 2a21824b1190968ee8ba3120400c00e56be10591, I have reviewed the code and it looks OK.
  brunoerg:
    code review ACK 2a21824b1190968ee8ba3120400c00e56be10591
  janb84:
    ACK 2a21824b1190968ee8ba3120400c00e56be10591
  w0xlt:
    Code Review ACK 2a21824b11

Tree-SHA512: 622d289db49c793fcb7b415d5113495eb824dc87780b082ccd5c43e37d116dca5a606340979a77cad1bfdbfac2c5fd5f18262746ed0e492d9e87bb0d802386ee
v30.1
2025-12-18 15:54:33 +00:00
fanquake
2a21824b11
doc: update manual pages for v30.1 2025-12-17 15:40:17 +00:00
fanquake
57264431ff
build: bump version to v30.1 2025-12-17 15:29:05 +00:00
fanquake
26294d627e
doc: update release notes for v30.1 2025-12-17 15:27:46 +00:00
merge-script
b1499ddf8b
Merge bitcoin/bitcoin#33997: [30.x] Backports & 30.1rc1
d59ebac7187dceb60f880ee3d2c5fab8368da176 doc: update manual pages for v30.1rc1 (fanquake)
b83d4f7c5723095cbf268ce8dc60bd703eb8950c build: bump version to v30.1rc1 (fanquake)
b26c93a9dfa56cac5d86a5c3e25a055ced4d91ce doc: update release notes for v30.1rc1 (fanquake)
18f3ada0379a321414a37ea65af05266412fede3 Remove unreliable seed from chainparams.cpp, and the associated README (SatsAndSports)
187e3b89b54203e850fb15d4dd5e7124704c5cfd [test] wallet send 3 generation TRUC (glozow)
ab58b2c0f8cf20dcbefba095308e9da2cc24b0ec [wallet] never try to spend from unconfirmed TRUC that already has ancestors (glozow)
d872277db5ae4a6e93f5ca8b36273743c6150b6c contrib: fix manpage generation (fanquake)
2256f8965e474dc7553de3554c76ea42baecd351 contrib: rename gen-sdk to gen-sdk.py (fanquake)
5408e8514575bfbb04474ae7b9a7d2f919f2dea3 macdeploy: disable compression in macOS gen-sdk script (fanquake)
338570de5c07abeb8a62b24ca667c72308d747f1 contrib: more selectively pick files for macOS SDK (fanquake)

Pull request description:

  Backports:
  * #32009
  * #33528
  * #33723
  * #33996

  Prior `30.x` backports in #33609.

ACKs for top commit:
  hebasto:
    re-ACK d59ebac7187dceb60f880ee3d2c5fab8368da176.
  marcofleon:
    ACK d59ebac7187dceb60f880ee3d2c5fab8368da176

Tree-SHA512: 41656dc7c2e7a023325b288ff38cf95877a3c223ed5c6defc1c0939b725fb5423455583881f283aff14821bc4fea5a4d4d0ac458cab6450eb9b1bc7730fc027c
v30.1rc1
2025-12-05 14:44:42 +00:00
fanquake
d59ebac718
doc: update manual pages for v30.1rc1 2025-12-05 09:46:37 +00:00
fanquake
b83d4f7c57
build: bump version to v30.1rc1 2025-12-05 09:46:37 +00:00
fanquake
b26c93a9df
doc: update release notes for v30.1rc1 2025-12-05 09:46:37 +00:00
SatsAndSports
18f3ada037
Remove unreliable seed from chainparams.cpp, and the associated README
Github-Pull: #33723
Rebased-From: b0c706795ce6a3a00bf068a81ee99fef2ee9bf7e
2025-12-05 09:46:37 +00:00
glozow
187e3b89b5
[test] wallet send 3 generation TRUC
Github-Pull: #33528
Rebased-From: dcd42d6d8f160ae8bc12c152099a6e6473658e30
2025-12-05 09:46:37 +00:00
glozow
ab58b2c0f8
[wallet] never try to spend from unconfirmed TRUC that already has ancestors
Github-Pull: #33528
Rebased-From: e753fadfd01cb8a4a8de3bddc7391481551cca89
2025-12-05 09:46:32 +00:00
fanquake
d872277db5
contrib: fix manpage generation
0972f5504021b482b27523fd3bcb8036cf6b439c from #33229 broke manpage
generation, because the assumption that the last word in the line
containing the version number, was the version number, no-longer holds
for some binaries. i.e bitcoind.

Github-Pull: #33996
Rebased-From: e9536faaee2bdb53807aa7c48aafa269d18f19d3
2025-12-03 11:20:36 +00:00
fanquake
2256f8965e
contrib: rename gen-sdk to gen-sdk.py
This puts it in scope for the Python linters.

Github-Pull: #32009
Rebased-From: 3e01b5d0e7be3dabe7f52d70e577f03f31505ad9
2025-12-02 12:14:53 +00:00
fanquake
5408e85145
macdeploy: disable compression in macOS gen-sdk script
Starting with Python 3.11, Pythons gzip might delegate to zlib.
Depending on the OS, i.e Ubuntu vs Fedora, the underlying zlib
implementation might differ, resulting in different output.

For now, or until a better solution exists, disable compression. This
results in the SDK increasing in size to ~157mb. Which is not
unreasonable, to regain determinism (and would be significantly worse
without the previous commit).

See: https://docs.python.org/3/library/gzip.html#gzip.compress

Co-authored-by: stickies-v <stickies-v@protonmail.com>

Github-Pull: #32009
Rebased-From: c1213a35abed01a97a9c52954919158f91f974d2
2025-12-02 12:14:31 +00:00
fanquake
338570de5c
contrib: more selectively pick files for macOS SDK
Only include what we really need. Skip 100s of mb of manpages,
swiftmodules, modulemaps.
Note that System/Library is only needed for the Qt build.

Github-Pull: #32009
Rebased-From: a33d03454508187abed764e55351ffcececc4c6e
2025-12-02 12:13:59 +00:00
merge-script
72675b8f55
Merge bitcoin/bitcoin#33609: [30.x] Backports
b2cb203af05743ea5c130913afa7549c02d1bae5 doc: update release notes for 30.x (fanquake)
39d53dd8bf2a19dfdc6976e9d8e9c562065adc1d interfaces: add interruptWait method (ismaelsadeeq)
577ddf6f5d1e7b01c496350206ac8fc33178e416 depends: Add patch for Windows11Style plugin (Hennadii Stepanov)
a0a2b0770164b606780c707d6d0a82a02ff9039f scripted-diff: Remove obsolete comment (Hennadii Stepanov)
e2c71c4fca44e14366653eedb8a15183d6a0444b doc: Correct `pkgin` command usage on NetBSD (Hennadii Stepanov)
c0d851e6c69ba8fc1d70b89e0660831c8fb9e633 qt: Modernize custom filtering (Hennadii Stepanov)
34576c45747214e02b34cac5de71f5139888661f ci: fix configure docker action inputs (will)
8f8c7cf7fa957337d9f5715ae28835dbba12698d ci: fix lint docker caching (will)
049bf100f114db3ec95eebbc56621ab5bce2cabd qt: add createwallet, createwalletdescriptor, and migratewallet to history filter (WakeTrainDev)
3afd5a9729d78f38d2cac7b34f3ef44c79b4bf9a miner: fix empty mempool case for waitNext() (Sjors Provoost)
23ac752d0966317894ae5279a59a12dd6f9f616a bitcoin: Make wrapper not require -m (Ryan Ofsky)
cd7937ce2d313715f380eafd15b20d429b65c83c test: add tool_bitcoin to test bitcoin wrapper behavior (Ryan Ofsky)
42d4847fdff3e1c3b0644de5f503db80ef3ff2a1 init: add exe name to bitcoind, bitcoin-node -version output to be able to distinguish these in tests (Ryan Ofsky)
96110f884604ab85db04170f22e9a4bd936c59d7 [doc] correct topology requirements in submitpackage helptext (glozow)
729e4c2abd4ab4eda4051579c57410dd64d4e7a9 multiprocess: align our logging with libmultiprocess's (Cory Fields)
f8db6f6ce7d30c1b6db8646eedc9160ded556823 multiprocess: update multiprocess EventLoop construction to use options (Cory Fields)
5e389959b9bacae60da64d6e0213ae12242b4c2e test: change log rate limit version gate from 299900 to 290100 (Eugene Siegel)
c48d3a6ad8e884bdb595d5608d914f7de688b7af ci: expose all ACTIONS_* vars (willcl-ark)
73ed57a35e624c6eb4c5dca2687303920fa792bc depends: Use $(package)_file_name when downloading from the fallback (Ava Chow)
72d1141bd8ded704cc6b881a7d26d9103ec813df ci: Use native platform for win-cross task (MarcoFalke)
c9fa661131c336a844109a5d8627b7419280bf52 ci: Properly include $FILE_ENV in DEPENDS_HASH (Ava Chow)

Pull request description:

  Backports:
  * #33229
  * #33508
  * #33517
  * #33558
  * #33566
  * #33580
  * #33581
  * #33612
  * #33630
  * #33676
  * #33744
  * #33826
  * #33827
  * #33906
  * https://github.com/bitcoin-core/gui/pull/899
  * https://github.com/bitcoin-core/gui/pull/901

ACKs for top commit:
  willcl-ark:
    ACK b2cb203af05743ea5c130913afa7549c02d1bae5
  marcofleon:
    Lgtm, ACK b2cb203af05743ea5c130913afa7549c02d1bae5

Tree-SHA512: cde3584c7ad9bc6034a54527c1f5e84f0c5e314520109342a5cbb3c6c703286e2bed26f2b24fbf0ba7bcc9cbc140d79921e9d63def6b5c4782fd2e208f51948a
2025-12-02 10:15:15 +00:00
fanquake
b2cb203af0
doc: update release notes for 30.x 2025-12-01 14:59:27 +00:00
ismaelsadeeq
39d53dd8bf
interfaces: add interruptWait method
- This method can be used to cancel a running
  waitNext().

- This commit also adds a test case for interruptWait method

Github-Pull: #33676
Rebased-From: dcb56fd4cb59e6857c110dd87019459989dc1ec3
2025-11-26 16:49:06 +00:00
Hennadii Stepanov
577ddf6f5d
depends: Add patch for Windows11Style plugin
Github-Pull: #33906
Rebased-From: 8558902e576e2c2d66f6083b66953dd6cc464de4
2025-11-25 17:12:56 +00:00
Hennadii Stepanov
a0a2b07701
scripted-diff: Remove obsolete comment
The removed comment become obsolete after bitcoin/bitcoin#32697 and
bitcoin/bitcoin#32881.

-BEGIN VERIFY SCRIPT-

sed -i "s/ Some tests are disabled if Python 3 is not available.//g" \
$( git grep -l " Some tests are disabled if Python 3 is not available." ./doc/ )

-END VERIFY SCRIPT-

Github-Pull: #33826
Rebased-From: 36724205fc1f226d7b5493ed0212c336e7f2ae84
2025-11-10 11:00:58 +00:00
Hennadii Stepanov
e2c71c4fca
doc: Correct pkgin command usage on NetBSD
Github-Pull: #33827
Rebased-From: 0698c6b494de0e28c9b909585905aab5b187286e
2025-11-10 10:32:55 +00:00
Hennadii Stepanov
c0d851e6c6
qt: Modernize custom filtering
In `QSortFilterProxyModel`, `invalidateFilter()` is scheduled for
deprecation in Qt 6.13.
`beginFilterChange()` was introduced in Qt 6.9.
`endFilterChange()` was introduced in Qt 6.10.

Github-Pull: gui#899
Rebased-From: e15e8cbadad5ce1de41ebb817b87054f8b5192f2
2025-11-05 09:52:41 +00:00
will
34576c4574
ci: fix configure docker action inputs
The options used were wrong in two ways: firstly they were not enforced
as a "choice" (i.e. invalid input valudes could be provided without
error) and one of the options was listed as `gh` when we passed it as
`gha` from ci.yml.

"Fix" this by removing the choice altogether but sanity-testing the
input value against an expected list using a GHA "warning" to notify of
unknown inputs.

Github-Pull: #33744
Rebased-From: 7632e0ba312a372259897c68fd7c7eb723df3738
2025-11-04 11:42:20 +00:00
will
8f8c7cf7fa
ci: fix lint docker caching
Fixes: 33735

Correct runner type selection for the lint job.

This was erroneously left-out during refactor of the runner selection
mechanism in #33302 causing the lint job to run on GH hosts (and
therefore not be able to acces local cirrus caches).

Github-Pull: #33744
Rebased-From: 0b3b8a3be1a0db0dfc634acca1d9305dc0fbfae6
2025-11-04 11:42:15 +00:00
WakeTrainDev
049bf100f1
qt: add createwallet, createwalletdescriptor, and migratewallet to history filter
Github-Pull: #gui901
Rebased-From: 4e352efa2ce756c668664486c99d003eef530e0c
2025-11-04 11:40:15 +00:00
Sjors Provoost
3afd5a9729
miner: fix empty mempool case for waitNext()
Block template fees are calculated by looping over new_tmpl->vTxFees
and return (early) once the fee_threshold is exceeded.

This left an edge case when the mempool is empty, which this commit
fixes and adds a test for. It does so by using std::accumulate instead
of manual loops.

Also update interface_ipc.py to account for the new behavior.

Co-authored-by: Raimo33 <claudio.raimondi@protonmail.com>

Github-Pull: #33566
Rebased-From: 8f7673257a1a86717c1d83770dc857fc254df107
2025-10-23 15:36:56 +02:00
Ryan Ofsky
23ac752d09
bitcoin: Make wrapper not require -m
Choose the right binary by default if an IPC option is specified

Github-Pull: #33229
Rebased-From: 453b0fa286e5dce0af682b7b73684dd6415a50de
2025-10-17 15:43:25 +01:00
Ryan Ofsky
cd7937ce2d
test: add tool_bitcoin to test bitcoin wrapper behavior
Github-Pull: #33229
Rebased-From: 29e836fae660d9a89c54a094ae1a032e6a88c334
2025-10-17 15:43:22 +01:00