Skip to content

wallet, refactor: Remove Legacy wallet unused warnings and errors #32481

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conversation

pablomartin4btc
Copy link
Member

@pablomartin4btc pablomartin4btc commented May 13, 2025

Remove dead code due to legacy wallet support removal.

These changes have no impact on functionality. They are transparent to the end user, as legacy wallets can't be created or loaded anymore, so these checks are no longer reached. The legacy-to-descriptor wallet migration flow is not affected either, as these removals are not part of its process.

@DrahtBot
Copy link
Contributor

DrahtBot commented May 13, 2025

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Code Coverage & Benchmarks

For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/32481.

Reviews

See the guideline for information on the review process.

Type Reviewers
ACK rkrux, achow101

If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

Conflicts

Reviewers, this pull request conflicts with the following ones:

  • #28333 (wallet: Construct ScriptPubKeyMans with all data rather than loaded progressively by achow101)

If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

@DrahtBot
Copy link
Contributor

🚧 At least one of the CI tasks failed.
Task lint: https://github.com/bitcoin/bitcoin/runs/42142854745
LLM reason (✨ experimental): The CI failure is due to trailing whitespace and spelling errors identified by the lint check.

Hints

Try to run the tests locally, according to the documentation. However, a CI failure may still
happen due to a number of reasons, for example:

  • Possibly due to a silent merge conflict (the changes in this pull request being
    incompatible with the current code in the target branch). If so, make sure to rebase on the latest
    commit of the target branch.

  • A sanitizer issue, which can only be found by compiling with the sanitizer and running the
    affected test.

  • An intermittent issue.

Leave a comment here, if you need help tracking down a confusing failure.

@pablomartin4btc pablomartin4btc force-pushed the wallet-remove-legacy-warnings-and-errors branch 2 times, most recently from a483558 to e66e9ee Compare May 13, 2025 14:59
@pablomartin4btc pablomartin4btc force-pushed the wallet-remove-legacy-warnings-and-errors branch 2 times, most recently from 1c0ab13 to 3909051 Compare May 13, 2025 19:43
@pablomartin4btc
Copy link
Member Author

Updates:

  • Addressed @achow101's feedback by adding an Assert() on CreateWallet() enforcing only descriptor wallets can be created.

@pablomartin4btc pablomartin4btc force-pushed the wallet-remove-legacy-warnings-and-errors branch from 3909051 to dbc8427 Compare May 16, 2025 18:21
@pablomartin4btc
Copy link
Member Author

Addressed feedback removing unnecessary descriptor wallet checks.

@pablomartin4btc pablomartin4btc force-pushed the wallet-remove-legacy-warnings-and-errors branch from dbc8427 to 5466936 Compare June 9, 2025 23:33
@pablomartin4btc
Copy link
Member Author

Updates:

Copy link
Contributor

@rkrux rkrux left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good based on a cursory glance, will take a deeper look soon.
Maybe mention a note in the PR description about wallet migration and how removing these checks don't affect that flow?

@pablomartin4btc pablomartin4btc force-pushed the wallet-remove-legacy-warnings-and-errors branch from 5466936 to c89e583 Compare June 10, 2025 17:20
Remove dead code due to legacy wallet removal.
SetupGeneration was supposed to be the function that all SPKMs used
to setup automatic generation, but it didn't work out that way and
ended up being legacy only. It should be deleted at this point.
It is not possible to load a legacy/ non-descriptor wallet anymore
so no need to check for WALLET_FLAG_DESCRIPTORS in RPC calls, even when
passing -rpcwallet/ JSON `/wallet/<walletname>/` endpoint, that searches
for the wallets loaded already in the context.
@pablomartin4btc pablomartin4btc force-pushed the wallet-remove-legacy-warnings-and-errors branch from c89e583 to ce90f0c Compare June 10, 2025 19:34
@pablomartin4btc
Copy link
Member Author

Updates:

Copy link
Contributor

@rkrux rkrux left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

utACK ce90f0c

Looks fine to me, I navigated through the codebase to verify the diff's correctness. Suggested one more dead code removal if makes sense.

@achow101
Copy link
Member

ACK ce90f0c

@achow101 achow101 merged commit 2def858 into bitcoin:master Jun 14, 2025
18 of 19 checks passed
achow101 added a commit that referenced this pull request Jul 10, 2025
150b5c9 wallet: replace `reload_wallet` with inline functionality (rkrux)
0f86da3 wallet: remove dead code in legacy wallet migration (rkrux)

Pull request description:

  A discussion on a previous [PR 32481](#32481 (comment)) related to legacy wallet dead
  code removal made me realize that checking if the legacy
  wallet was loaded prior to the start of the migration is not
  required ever since legacy wallets can't be loaded in the first
  place. I also verified that the `load_on_start` persistent
  setting can also not cause the legacy wallets to be loaded, which
  further makes the case for removal of the above mentioned checks
  during migration.
  The current test coverage also shows these lines uncovered.

ACKs for top commit:
  achow101:
    ACK 150b5c9
  furszy:
    ACK 150b5c9

Tree-SHA512: 9bc7043cac1f4051228557208895e43648de3c7ffae6860c0676d1aa2db3a8ed3a09d1f9defacd96ca50bbb9699ba86652ccb0c5e55cc88be248a1fe727c13d9
stringintech added a commit to stringintech/go-bitcoinkernel that referenced this pull request Jul 19, 2025
1ffc1c9d94 kernel: Fix bitcoin-chainstate for windows
686c4108cc kernel: Add Purpose section to header documentation
8d47a40731 kernel: Add pure kernel bitcoin-chainstate
ba84650882 kernel: Add functions to get the block hash from a block
a421727342 kernel: Add block index utility functions to C header
aedbe73cf0 kernel: Add function to read block undo data from disk to C header
109dda0845 kernel: Add functions to read block from disk to C header
3e24c34ad4 kernel: Add function for copying block data to C header
9ab3d14c1d kernel: Add functions for the block validation state to C header
4408228f85 kernel: Add validation interface to C header
0c3054ef4b kernel: Add interrupt function to C header
45895c4ac7 kernel: Add import blocks function to C header
994c869ba2 kernel: Add chainstate load options for in-memory dbs in C header
b4ad47e312 kernel: Add options for reindexing in C header
591b28d615 kernel: Add block validation to C header
a1fe6b4264 kernel: Add chainstate loading when instantiating a ChainstateManager
0cf99f827e kernel: Add chainstate manager option for setting worker threads
c18b35135c kernel: Add chainstate manager object to C header
1de2db7eac kernel: Add notifications context option to C header
b1e6a28d17 kernel: Add chain params context option to C header
369cfd3f6c kernel: Add kernel library context object
f9e13dbb1a kernel: Add logging to kernel library C header
ce12888287 kernel: Introduce initial kernel C header API
7566b40bd2 Merge bitcoin/bitcoin#32961: fix spelling in tor.md docs
84ef5524d5 fix spelling in tor.md docs
6a13a6106e Merge bitcoin/bitcoin#32937: Enable `-Werror=dev` in CI & Guix
23e15d40b9 Merge bitcoin/bitcoin#32631: refactor: Convert GenTxid to `std::variant`
8ffbd7b778 Merge bitcoin/bitcoin#32940: cmake: Use newer signature of `qt6_add_lrelease` when available
80ce513766 Merge bitcoin/bitcoin#32933: log: Properly log warnings with warn loglevel in addrdb
8f766f39df ci: enable -Werror=dev
7b420ca834 guix: configure with -Werror=dev
44097ddb19 cmake: enable -Werror=dev in dev-mode preset
12fb00fd42 Merge bitcoin/bitcoin#32927: fuzz: Add missing calls to `SetMockTime` for determinism
3c1418666b Merge bitcoin/bitcoin#32930: Resolve guix non-determinism with emplace_back instead of push_back
bad998b7c0 Merge bitcoin/bitcoin#32921: test: less ambiguous error if bitcoind is missing
7f28e80329 Merge bitcoin/bitcoin#32758: wallet: remove dead code in legacy wallet migration
5ef0d4897b Merge bitcoin/bitcoin#30605: Cluster linearization: separate tests from tests-of-tests
f43571010e Resolve guix non-determinism with emplace_back instead of push_back
94931656b5 cmake: Use newer signature of `qt6_add_lrelease` when available
b80ead8a71 Merge bitcoin/bitcoin#32890: bench: Avoid tmp files in pwd
c4f90900b5 Merge bitcoin/bitcoin#32932: test: Add missing convert_to_json_for_cli
fa894b0f3e log: Properly log warnings with warn loglevel in addrdb
83ae7802fe Merge bitcoin/bitcoin#32881: test: Turn rpcauth.py test into functional test
fa0528479d test: Add missing convert_to_json_for_cli
a40e953658 Merge bitcoin/bitcoin#30479: validation: Add eligible ancestors of reconsidered block to setBlockIndexCandidates
1ca62edd85 Merge bitcoin/bitcoin#32580: wallet, test: best block locator matches scan state follow-ups
2cad7226c2 Merge bitcoin/bitcoin#32799: mempool: use `FeeFrac` for ancestor/descendant score comparators
2d59977601 Merge bitcoin/bitcoin#32604: log: Mitigate disk filling attacks by rate limiting LogPrintf, LogInfo, LogWarning, LogError
4c772cbd83 doc: add release notes for new rate limiting logging behavior
d541409a64 log: Add rate limiting to LogPrintf, LogInfo, LogWarning, LogError, LogPrintLevel
a6a35cc0c2 log: use std::source_location in place of __func__, __FILE__, __LINE__
afb9e39ec5 log: introduce LogRateLimiter, LogLimitStats, Status
df7972a6cf test: Mark ~DebugLogHelper as noexcept(false)
fa8862723c fuzz: CheckGlobals in init
fa26bfde98 test: Avoid resetting mocktime in testing setup
fa6b45fa8e Add SetMockTime for time_point types
a60f863d3e scripted-diff: Replace GenTxidVariant with GenTxid
c8ba199598 Remove old GenTxid class
072a198ea4 Convert remaining instances of GenTxid to GenTxidVariant
1b528391c7 Convert `txrequest` to GenTxidVariant
bde4579b07 Convert `txdownloadman_impl` to GenTxidVariant
c876a892ec Replace GenTxid with Txid/Wtxid overloads in `txmempool`
de858ce2be move-only: make GetInfo a private CTxMemPool member
eee473d9f3 Convert `CompareInvMempoolOrder` to GenTxidVariant
b7e9dc8e46 Merge bitcoin/bitcoin#32884: rest: replace `rf_names[0].rf` by `RESTResponseFormat::UNDEF`
fa4d68cf97 Turn rpcauth.py test into functional test
83bb414557 test: less ambiguous error if bitcoind is missing
150b5c99ca wallet: replace `reload_wallet` with inline functionality
927055e42a Merge bitcoin/bitcoin#32893: doc: fix `BlockConnected` incorrect comment
a8bff38236 Merge bitcoin/bitcoin#32862: rpc: use CScheduler for relocking wallet and remove RPCTimer
21b42f3c55 Merge bitcoin/bitcoin#32660: rpc: Use type-safe exception to pass RPC help
528f79f010 Merge bitcoin/bitcoin#32835: test: fix feature_init.py intermittencies
fc543f94a9 Merge bitcoin/bitcoin#32385: test: refactor out same-txid-diff-wtxid tx to reuse in other tests
09add84fc5 Merge bitcoin/bitcoin#32618: wallet: Remove ISMINE_WATCHONLY and watchonly from RPCs
87ab69155d Merge bitcoin/bitcoin#31553: cluster mempool: add TxGraph reorg functionality
4e69aa5701 doc: fix `BlockConnected` incorrect comment
d33c111448 Merge bitcoin/bitcoin#32829: threading: use correct mutex name in reverse_lock fatal error messages
de4eef52d1 threading: use correct mutex name in reverse_lock fatal error messages
fa2fbaa4a2 bench: Avoid tmp files in pwd
6d19815cd4 rest: replace `rf_names[0].rf` by `RESTResponseFormat::UNDEF` for code clarity
4207d9bf82 test: feature_init, ensure indexes are synced prior to perturbing files
e3f416dbf7 Merge bitcoin/bitcoin#32463: test: fix an incorrect `feature_fee_estimation.py` subtest
ea4285775e Merge bitcoin/bitcoin#29307: util: explicitly close all AutoFiles that have been written
51ccc71b1b Merge bitcoin/bitcoin#32858: doc: Add workaround for vcpkg issue with paths with embedded spaces
fcfd3db563 remove RPCTimerInterface and RPCRunLater
8a1765795f use WalletContext scheduler for walletpassphrase callback
927e9b220f Merge bitcoin/bitcoin#32716: depends: Override host compilers for FreeBSD and OpenBSD
c7fe8abb5f Merge bitcoin/bitcoin#31233: cmake: Improve Python robustness and test usability
6251949443 Merge bitcoin/bitcoin#32290: test: allow all functional tests to be run or skipped with --usecli
0f86da382d wallet: remove dead code in legacy wallet migration
49d5f1f2c6 Merge bitcoin/bitcoin#32850: test: check P2SH sigop count for coinbase tx
abd07cf733 test: feature_init, only init what's needed per perturbation/deletion round
1927432354 Merge bitcoin/bitcoin#32859: functional test: correctly detect nonstd TRUC tx vsize in feature_taproot
68ca13e1f9 Merge bitcoin/bitcoin#32823: test: Fix wait_for_getheaders() call in test_outbound_eviction_blocks_relay_only()
35cae56a92 Merge bitcoin/bitcoin#31423: wallet: migration, avoid creating spendable wallet from a watch-only legacy wallet
1632fc104b txgraph: Track multiple potential would-be clusters in Trim (improvement)
4608df37e0 txgraph: add Trim benchmark (benchmark)
9c436ff01c txgraph: add fuzz test scenario that avoids cycles inside Trim() (tests)
938e86f8fe txgraph: add unit test for TxGraph::Trim (tests)
a04e205ab0 txgraph: Add ability to trim oversized clusters (feature)
eabcd0eb6f txgraph: remove unnecessary m_group_oversized (simplification)
19b14e61ea txgraph: Permit transactions that exceed cluster size limit (feature)
c4287b9b71 txgraph: Add ability to configure maximum cluster size/weight (feature)
f0524cda39 functional test: correctly detect nonstd TRUC tx vsize in feature_taproot
0a1af4418e doc: Add workaround for vcpkg issue with paths with embedded spaces
a92e8b10a5 Merge bitcoin/bitcoin#32564: miniscript, refactor: Make `operator""_mst` `consteval` (re-take)
bf75c9964f Merge bitcoin/bitcoin#32828: build, docs: Fix Boost-related issues on NetBSD
7fa9b58bd9 Merge bitcoin/bitcoin#32841: feature_taproot: sample tx version border values more
1b5c545e82 wallet, test: best block locator matches scan state follow-ups
fa33592898 Merge bitcoin/bitcoin#32723: Refactor: Redefine CTransaction equality to include witness data
ce000c8ee0 Merge bitcoin/bitcoin#32219: test: enabling wallet migration functional test on windows
f33154c464 Merge bitcoin/bitcoin#32432: wallet, rpc: Use `OUTPUT_TYPES` to describe the output types instead of hardcoding them
fa9b1e3544 Merge bitcoin/bitcoin#32846: doc: clarify that the "-j N" goes after the "--build build" part
b1a8ac07e9 doc: Release note for removed watchonly parameters and results
15710869e1 wallet: Remove ISMINE_WATCH_ONLY
4439bf4b41 wallet, spend: Remove fWatchOnly from CCoinControl
1337c72198 wallet, rpc: Remove watchonly from RPCs
e81d95d435 wallet: Remove watchonly balances
d20dc9c6aa wallet: Wallets without private keys cannot grind R
9991f49c38 test: Watchonly wallets should estimate larger size
d6aaffcb11 test: check P2SH sigop count for coinbase tx
b1821d8dd3 Merge bitcoin/bitcoin#27286: wallet: Keep track of the wallet's own transaction outputs in memory
0e9f409db3 doc: clarify that the "-j N" goes after the "--build build" part
67dc7523f3 cmake, test: Disable tests instead of ignoring them
bb9157db5d cmake, refactor: Switch to `Python3::Interpreter` imported target
ed7a841f82 Merge bitcoin/bitcoin#32816: contrib: correct variable name in p2p_monitor.py
2ae5154dd8 Merge bitcoin/bitcoin#32842: doc: add `/spenttxouts` to REST-interface.md
243553d590 refactor: replace get_iter_from_wtxid with GetIter(const Wtxid&)
fcf92fd640 refactor: make CTxMemPool::GetIter strongly typed
23a00fcf57 Merge bitcoin/bitcoin#32783: doc: Add fetching single PRs from upstream to productivity.md
dd99cedc0b doc: add `/spenttxouts` to REST-interface.md
4be81e9746 feature_taproot: sample tx version border values more
6e5b67a370 Merge bitcoin/bitcoin#32697: test: Turn util/test_runner into functional test
fb2c16cf7b Merge bitcoin/bitcoin#32826: p2p: add more bad ports
f5f3e1f263 Merge bitcoin/bitcoin#32646: p2p: Add witness mutation check inside FillBlock
a763497b1d Merge bitcoin/bitcoin#32834: test: Use msg_generic in p2p_ping.py
fa3f100010 test: Use msg_generic in p2p_ping.py
33480573cb Merge bitcoin/bitcoin#32833: test: Add `msgtype` to `msg_generic` slots
9501738e1c Merge bitcoin/bitcoin#32825: rest: rename `strURIPart` to `uri_part`
5a5ddbd789 build: Add workaround for NetBSD bug in `Boost::headers` target
6967e8e8ab add more bad p2p ports
7dc43ea503 test: Add msgtype to msg_generic slots
4eb3cee919 doc: Update NetBSD Build Guide
856f4235b1 scripted-diff: rest: rename `strURIPart` -> `uri_part`
b3bb4031ab Merge bitcoin/bitcoin#32540: rest: fetch spent transaction outputs by blockhash
3086c21df4 Merge bitcoin/bitcoin#32243: test: added fuzz coverage for consensus/merkle.cpp
319ff58bbd Merge bitcoin/bitcoin#32638: blocks: force hash validations on disk read
ec004cdb86 test: Use rehash() in outbound eviction block-relay
26598ed21e test: Clarify roles in outbound eviction comments
689318ccd9 Merge bitcoin/bitcoin#32667: build: Find Boost in config mode
4a3475a43e Merge bitcoin/bitcoin#32819: Add release note for #32530
558f0880a8 Add release note for #32530
c43cc48aaa Merge bitcoin/bitcoin#32530: node: cap `-maxmempool` and `-dbcache` values for 32-bit
4145a9463a Merge bitcoin/bitcoin#32731: depends: Build `qt` package for FreeBSD hosts
14653b869b build: Find Boost in config mode
67ea4b9994 Merge bitcoin/bitcoin#32814: cmake: Explicitly specify `Boost_ROOT` for Homebrew's package
5170ec1ae3 Merge bitcoin/bitcoin#32665: depends: Bump boost to 1.88.0 and use new CMake buildsystem
8fafb81320 Merge bitcoin/bitcoin#32805: cmake: Use `HINTS` instead of `PATHS` in `find_*` commands
6bb38bf37f Update p2p_monitor.py
9b75cfda4d test: retain the intended behavior of `feature_fee_estimation.py` nodes
5c1236f04a test: fix incorrect subtest in `feature_fee_estimation.py`
e5f9218b6a Merge bitcoin/bitcoin#32742: test: fix catchup loop in outbound eviction functional test
11d28f21bb Implement GenTxid as a variant
215e5999e2 wallet: Remove unused CachedTxGet{Available,Immature}Credit
49675de035 wallet: Have GetDebit use the wallet's TXO set
17d453cb3a wallet: Recompute wallet TXOs after descriptor migration
764016eb22 wallet: Retrieve TXO directly in FetchSelectedInputs
c1801b78f1 wallet: Use wallet's TXO set in AvailableCoins
dde7cbe105 wallet: Change balance calculation to use m_txos
96e7a89c5e wallet: Recalculate the wallet's txos after any imports
ae888c38d0 wallet: Exit IsTrustedTx early if wtx is already in trusted_parents
ae0876ec42 wallet: Keep track of transaction outputs owned by the wallet
0f269bc48c walletdb: Load Txs last
5cc32ee2a7 test: Test for balance update due to untracked output becoming spendable
8222341d4f wallet: MarkDirty after AddWalletDescriptor
e02f2d331c bench: Have AvailableCoins benchmark include a lot of unrelated utxos
f27898c8bf Merge bitcoin/bitcoin#32721: wallet, rpc: Remove deprecated balances from getwalletinfo and getunconfirmedbalance
8578fabb95 Merge bitcoin/bitcoin#32597: wallet: Always set descriptor cache upgraded flag for new wallets
941b8f54c0 ci: run get_previous_releases as part of test cross win job
5e2182140b test: increment mocked time for migrating wallet backups
5174565802 ci: disable feature_unsupported_utxo_db functional test
3dc90d69a6 test: remove mempool.dat before copying
67a6b20d50 test: add windows support to get previous releases script
01f9081955 Merge bitcoin/bitcoin#32768: wallet: Remove `CWalletTx::fTimeReceivedIsTxTime`
c1d8a542b4 Merge bitcoin/bitcoin#32727: doc: add release notes for #32425
1a1b478ca3 scripted-diff: rename tarball to archive
4f06dc8484 test: remove building from source from get prev releases script
45b1d39757 doc: Add fetching single PRs from upstream
8800b5acc1 cmake: Explicitly specify `Boost_ROOT` for Homebrew's package
b9a2e8ee96 doc: add release notes for bitcoin/bitcoin#32425
6c2538d5bf depends: Bump boost to 1.88.0 and use new CMake buildsystem
7d5a6d1739 Merge bitcoin/bitcoin#32798: build: add root dir to CMAKE_PREFIX_PATH in toolchain
a34fb9ad6c miniscript: Make `operator""_mst` `consteval`
14052162b1 Revert "miniscript: make operator_mst consteval"
ead4468748 cmake: Use `HINTS` instead of `PATHS` in `find_*` commands
ad654a4807 Merge bitcoin/bitcoin#32767: ci: Allow running CI in worktrees
67e6746dc8 Merge bitcoin/bitcoin#32780: lsan: add more Qt suppressions
e27a94596f build: add root dir to CMAKE_PREFIX_PATH
173394d951 depends: Build `qt` package for FreeBSD hosts
922adf66ac mempool: use `FeeFrac` for calculating regular score
3322b3a059 mempool: use `FeeFrac` for calculating ancestor score
ac9c113bd2 mempool: use `FeeFrac` for calculating descendant score
e95bfc1d53 Merge bitcoin/bitcoin#32797: doc: archive 28.2 release notes
666016e56b ci: use --usecli in one of the CI jobs
7ea248a020 test: Disable several (sub)tests with cli
f420b6356b test: skip subtests that check for wrong types with cli
6530d0015b test: add function to convert to json for height_or_hash params
54d28722ba test: Don't send empty named args with cli
cca422060e test: convert tuple to json for cli
af34e98086 test: make rpc_psbt.py usable with --usecli
8f8ce9e174 test: rename .rpc to ._rpc and remove unnecessary uses
5b08885986 test: enable functional tests with large rpc args for cli
7d5352ac73 test: use -stdin for large rpc commands
6c364e0c10 test: Enable various tests for usage with cli
907842363c doc: archive 28.2 release notes
c5849663ba Merge bitcoin/bitcoin#32771: contrib: tracing: Fix read of `pmsg_type` in p2p_monitor.py
8a36a471e6 Merge bitcoin/bitcoin#32781: refactor: modernize deprecated ipc headers
ed060e01e7 Merge bitcoin/bitcoin#32725: test: round difficulty and networkhashps
daf393b3f1 Merge bitcoin/bitcoin#32642: test: update BIP340 test vectors and implementation (variable-length messages)
482d255376 Merge bitcoin/bitcoin#32736: wallet: Correct dir iteration error handling
74b7e9c7db refactor: modernize deprecated ipc headers
154b98a7aa Merge bitcoin/bitcoin#32772: fuzz: wallet: remove `FundTx` from `FuzzedWallet`
fa183045a1 Merge bitcoin/bitcoin#32765: test: Fix list index out of range error in feature_bip68_sequence.py
5be31b20e5 lsan: add more Qt suppressions
e18322eff2 Merge bitcoin/bitcoin#32774: doc: Explain how to fetch commits directly
b861419254 Merge bitcoin/bitcoin#32777: doc: fix Transifex 404s
79afe6b7c0 Merge bitcoin/bitcoin#32776: doc: taproot became always active in v24.0 (doc/bips.md)
53a996f122 doc: fix transifex 404s
8ee8a951c2 doc: taproot became always active in v24.0
fa21631595 test: Use self.log
fa346f7797 test: Move error string into exception
fa1986181f test: Remove useless catch-throw
fa94fd53c9 doc: Explain how to fetch commits directly
9a7eece5a4 Merge bitcoin/bitcoin#31981: Add checkBlock() to Mining interface
8cc9845b8d wallet, rpc: Use `OUTPUT_TYPES` to describe the output types instead of hardcoding them
3473986fe1 contrib: tracing: Correctly read msg type in p2p_monitor.py
cd1ae1b4df fuzz: wallet: remove FundTx from FuzzedWallet
fa68dcb207 ci: Add missing errexit to lint CI install
fa535a6de7 ci: Allow running CI in worktrees
faf6a04597 ci: Clean UID/GID mismatch
9eb2c82e7c walletdb: Remove unused upgraded_txs
c668033709 wallet: Remove unused fTimeReceivedIsTxTime
5e6dbfd14e Merge bitcoin/bitcoin#32465: thread-safety: fix annotations with REVERSE_LOCK
e285e691b7 test: Fix list index out of range error in feature_bip68_sequence.py
1be688f575 Merge bitcoin/bitcoin#32682: wallet: have external signer use PSBT error code EXTERNAL_SIGNER_NOT_FOUND
a201a99f8c thread-safety: fix annotations with REVERSE_LOCK
26747d9f3e Merge bitcoin/bitcoin#32760: depends: capnp 1.2.0
c10e382d2a flatfile: check whether the file has been closed successfully
4bb5dd78ea util: check that a file has been closed before ~AutoFile() is called
8bb34f07df Explicitly close all AutoFiles that have been written
a69c4098b2 rpc: take ownership of the file by WriteUTXOSnapshot()
c7eaac326a depends: capnp 1.2.0
afaaba69ed test: refactor out same-txid-diff-wtxid tx to reuse in other tests
084eee0291 Merge bitcoin/bitcoin#32743: refactor: use `std::vector<std::byte>` for `BlockManager::ReadRawBlock()`
c48846ec41 doc: add release notes for #32540
d7fca5c171 clusterlin: add big comment explaning the relation between tests
b64e61d2de clusterlin: abstract try-permutations into ExhaustiveLinearize function
1fa55a64ed clusterlin tests: verify that chunks are minimal
da23ecef29 clusterlin tests: support non-empty ReadTopologicalSubset()
94f3e17c33 clusterlin tests: compare with fuzz-provided linearizations
5f92ebee0d clusterlin tests: compare with fuzz-provided topological sets
6e37824ac3 clusterlin tests: optimize clusterlin_simple_linearize
98c1c88b6f clusterlin tests: separate testing of SimpleLinearize and Linearize
10e90f7aef clusterlin tests: make SimpleCandidateFinder always find connected
a38c38951e clusterlin tests: separate testing of Search- and SimpleCandidateFinder
77a432ee70 clusterlin tests: count SimpleCandidateFinder iterations better
a18e572328 test: more template verification tests
10c908808f test: move gbt proposal mode tests to new file
94959b8dee Add checkBlock to Mining interface
6077157531 ipc: drop BlockValidationState special handling
74690f4ed8 validation: refactor TestBlockValidity
2def858473 Merge bitcoin/bitcoin#32481: wallet, refactor: Remove Legacy wallet unused warnings and errors
287cd04a32 Merge bitcoin/bitcoin#32594: wallet, rpc: Return normalized descriptor in parent_descs
fd74d609be Merge bitcoin/bitcoin#32620: wallet: Fix wallet interface detection of encrypted wallets
6ecb9fc65f chore: use `std::vector<std::byte>` for `BlockManager::ReadRawBlock()`
65b26507b8 Merge bitcoin/bitcoin#32746: test: remove unnecessary m_best_header setting hack in feature_assumeutxo.py
3e81684426 Merge bitcoin/bitcoin#32739: tsan: remove note about dropping Qt wildcards
b8eb17792e Merge bitcoin/bitcoin#32175: fuzz: doc: add info about `afl-system-config` for macOS
206bc05e62 test: remove unnecessary m_best_header setting hack in feature_assumeutxo.py
272cd09b79 log: Use warning level while scanning wallet dir
1777644367 qa, wallet: Verify warning when failing to scan
893e51ffeb wallet: Correct dir iteration error handling
52e6e93c3f Merge bitcoin/bitcoin#32693: depends: fix cmake compatibility error for freetype
fa2f1c55b7 move-only util data to test/functional/data/util
faa18bf287 test: Turn util/test_runner into functional test
fa955154c7 test: Add missing skip_if_no_bitcoin_tx
9341b5333a blockstorage: make block read hash checks explicit
2371b9f4ee test/bench: verify hash in `ComputeFilter` reads
5d235d50d6 net: assert block hash in `ProcessGetBlockData` and `ProcessMessage`
5db0a4a2db tsan: remove note about dropping Qt wildcards
d91c718a68 Merge bitcoin/bitcoin#32717: doc: Update Qt 6 packages on FreeBSD
fac9db6eb0 test: Add missing tx util to Binaries
fa91835ec6 test: Use lowercase env var as attribute name
fac49094cd test: Remove duplicate ConfigParser
9dfc61d95f test: detect no external signer connected
dd8447f70f test: fix catchup loop in outbound eviction functional test
19765dca19 Merge bitcoin/bitcoin#32694: index: move disk read lookups to base class
8cc3ac6c23 validation: Don't use IsValid() to filter for invalid blocks
86d98b94e5 test: verify that ancestors of a reconsidered block can become the chain tip
3c39a55e64 validation: Add ancestors of reconsiderblock to setBlockIndexCandidates
1df96f5931 doc: Update Qt 6 packages on FreeBSD
d7c37906e7 build: patch cmake min version on freetype
fa946520d2 refactor: Use structured binding for-loop
eeeec1579e rpc: Use type-safe exception to pass RPC help
5757de4ddd Merge bitcoin/bitcoin#32673: clang-tidy: Apply modernize-deprecated-headers
1473f69924 Merge bitcoin/bitcoin#32421: test: refactor: overhaul (w)txid determination for `CTransaction` objects
7c0cfce20d Merge bitcoin/bitcoin#31405: validation: stricter internal handling of invalid blocks
851f540d0e Merge bitcoin/bitcoin#32703: test: Explain how to reproduce zmq:: upstream race
5af5e9791d Merge bitcoin/bitcoin#32690: depends: fix multiprocess build on OpenBSD (apply capnp patch, correct SHA256SUM command)
fed41b75fb Merge bitcoin/bitcoin#32431: deps: Bump lief to 0.16.6
578ea3eedb test: round difficulty and networkhashps
c8abd97281 Merge bitcoin/bitcoin#32719: doc, windows: CompanyName "Bitcoin" => "Bitcoin Core project"
029ba1a21d index: remove CBlockIndex access from CustomAppend()
91b7ab6c69 refactor: index, simplify CopyHeightIndexToHashIndex to process single block
4f56c9145a refactor: contrib: Move FORTIFY check to BASE_ELF
f6d25e8a2d contrib: Re-enable FORTIFY check for RISCV
765922d802 deps: bump lief to 0.16.6
4ef6253017 test: avoid unneeded (w)txid hex -> integer conversions
472f3770ae scripted-diff: test: rename CTransaction `.getwtxid()` -> `wtxid_hex` for consistency
81af4334e8 test: rename CTransaction `.sha256` -> `.txid_int` for consistency
ce83924237 test: rename CTransaction `.rehash()`/`.hash` -> `.txid_hex` for consistency
6efbd1e1dc refactor: CTransaction equality should consider witness data
cbf9b2dab1 mempool: codify existing assumption about duplicate txids during removal
c3fe85e2d6 wallet, rpc, test: Remove deprecated getunconfirmedbalance
0ec255139b wallet, rpc: Remove deprecated balances from getwalletinfo
e9331cd6ab wallet: IsEquivalentTo should strip witness data in addition to scriptsigs
ce90f0c99f rpc, wallet, refactor: Remove non-descriptor errors
573bcd75d7 wallet, refactor: Remove unused SetupGeneration
5431f2dc21 wallet, refactor: Remove Legacy warnings and errors
6f1392cc42 indexes, refactor: Remove remaining CBlockIndex* uses in index Rewind methods
0a248708dc indexes, refactor: Stop requiring CBlockIndex type to call IsBIP30Unspendable
28299ce776 p2p: remove vestigial READ_STATUS_CHECKBLOCK_FAILED
bac9ee4830 p2p: Add witness mutation check inside FillBlock
4f10a57671 depends: Override host compilers for FreeBSD and OpenBSD
239fc4d62e doc, windows: CompanyName "Bitcoin" => "Bitcoin Core project"
e9cdaefb0a test: introduce and use CTransaction `.wtxid_int` property
9b3dce24a3 test: remove bare CTransaction `.rehash()`/`.calc_sha256()` calls
a2724e3ea3 test: remove txid caching in CTransaction class
fa0b766f43 test: Remove intermittent and presumed fixed tsan race suppressions
fa4b659dcd test: Explain how to reproduce zmq:: upstream race
d4e212e8a6 rest: fetch spent transaction outputs by blockhash
331a25cb16 test: indexes, avoid creating threads when sync runs synchronously
95969bc58a test: added fuzz coverage to consensus/merkle.cpp
f6b782f3aa doc: Improve m_best_header documentation
ee673b9aa0 validation: remove m_failed_blocks
ed764ea2b4 validation: Add more checks to CheckBlockIndex()
9a70883002 validation: in invalidateblock, calculate m_best_header right away
8e39f2d20d validation: in invalidateblock, mark children as invalid right away
4c29326183 validation: cache all headers with enough PoW in invalidateblock
15fa5b5a90 validation: call InvalidBlockFound also from AcceptBlock
8713e8060d depends: fix SHA256SUM command on OpenBSD (use GNU mode output)
2d938720bd depends: add patch to fix capnp build on OpenBSD
0a4ee93529 wallet: use PSBTError::EXTERNAL_SIGNER_NOT_FOUND
8ba2f9b7c8 refactor: use util::Result for GetExternalSigner()
130a922980 wallet, interfaces: Use BERKELEY_RO in isEncrypted
fa9ca13f35 refactor: Sort includes of touched source files
facb152697 scripted-diff: Bump copyright headers after include changes
fae71d30f7 clang-tidy: Apply modernize-deprecated-headers
0def84d407 test: Verify parent_desc in RPCs
b184f5c87c test: update BIP340 test vectors and implementation (variable-length messages)
b789907346 wallet: migration, avoid creating spendable wallet from a watch-only legacy wallet
e86d71b749 wallet: refactor, dedup wallet re-loading code
1de423e0a0 wallet: introduce method to return all db created files
d04f6a97ba refactor: remove sqlite dir path back-and-forth conversion
2554cee988 test: Enable default wallet for wallet_descriptor.py
3fc9d9f241 wallet, rpc: Push the normalized parent descriptor
47237cd193 wallet, rpc: Output wallet flags in getwalletinfo
bc2a26b296 wallet: Add GetWalletFlags
69f588a99a wallet: Set upgraded descriptor cache flag for newly created wallets
9f8e7b0b3b node: cap -dbcache to 1GiB on 32-bit architectures
2c43b6adeb init: cap -maxmempool to 500 MB on 32-bit systems
aeea5f0ec1 thread-safety: add missing lock annotation
832c57a534 thread-safety: modernize thread safety macros
61ea5f348d fuzz: doc: add info about `afl-system-config` for macOS
REVERT: d9e030d563 kernel: Fix bitcoin-chainstate for windows
REVERT: cc4ac564cc kernel: Add Purpose section to header documentation
REVERT: bfdf605296 kernel: Add pure kernel bitcoin-chainstate
REVERT: 35099f39b7 kernel: Add functions to get the block hash from a block
REVERT: fae94070a7 kernel: Add block index utility functions to C header
REVERT: d5d3778597 kernel: Add function to read block undo data from disk to C header
REVERT: 43f6039b7b kernel: Add functions to read block from disk to C header
REVERT: 54cdfcdc68 kernel: Add function for copying block data to C header
REVERT: 18cab45358 kernel: Add functions for the block validation state to C header
REVERT: 033e86a06c kernel: Add validation interface to C header
REVERT: 9398f9ea4e kernel: Add interrupt function to C header
REVERT: 86340a4905 kernel: Add import blocks function to C header
REVERT: f11dc01bba kernel: Add chainstate load options for in-memory dbs in C header
REVERT: be9fc18dd5 kernel: Add options for reindexing in C header
REVERT: 7947a9b500 kernel: Add block validation to C header
REVERT: d5ace1f8ea kernel: Add chainstate loading when instantiating a ChainstateManager
REVERT: 47ff652cf0 kernel: Add chainstate manager option for setting worker threads
REVERT: 106898e0c2 kernel: Add chainstate manager object to C header
REVERT: 3eadf1ccbe kernel: Add notifications context option to C header
REVERT: 98b1454a98 kernel: Add chain params context option to C header
REVERT: ca8d6ee344 kernel: Add kernel library context object
REVERT: 96f5ebe977 kernel: Add logging to kernel library C header
REVERT: 906a197481 kernel: Introduce initial kernel C header API

git-subtree-dir: depend/bitcoin
git-subtree-split: 1ffc1c9d94b16cdbfb92a26d0f0e75451efad4fe
alexanderwiederin added a commit to alexanderwiederin/rust-bitcoinkernel that referenced this pull request Jul 25, 2025
…ffc1c9d94b1

1ffc1c9d94b1 kernel: Fix bitcoin-chainstate for windows
686c4108cc1d kernel: Add Purpose section to header documentation
8d47a4073120 kernel: Add pure kernel bitcoin-chainstate
ba84650882f1 kernel: Add functions to get the block hash from a block
a4217273422b kernel: Add block index utility functions to C header
aedbe73cf096 kernel: Add function to read block undo data from disk to C header
109dda0845d8 kernel: Add functions to read block from disk to C header
3e24c34ad481 kernel: Add function for copying block data to C header
9ab3d14c1d15 kernel: Add functions for the block validation state to C header
4408228f8556 kernel: Add validation interface to C header
0c3054ef4b6e kernel: Add interrupt function to C header
45895c4ac778 kernel: Add import blocks function to C header
994c869ba238 kernel: Add chainstate load options for in-memory dbs in C header
b4ad47e31268 kernel: Add options for reindexing in C header
591b28d61548 kernel: Add block validation to C header
a1fe6b4264bf kernel: Add chainstate loading when instantiating a ChainstateManager
0cf99f827e48 kernel: Add chainstate manager option for setting worker threads
c18b35135c75 kernel: Add chainstate manager object to C header
1de2db7eacde kernel: Add notifications context option to C header
b1e6a28d17c6 kernel: Add chain params context option to C header
369cfd3f6c4f kernel: Add kernel library context object
f9e13dbb1ade kernel: Add logging to kernel library C header
ce1288828783 kernel: Introduce initial kernel C header API
7566b40bd230 Merge bitcoin/bitcoin#32961: fix spelling in tor.md docs
84ef5524d5ab fix spelling in tor.md docs
6a13a6106e3c Merge bitcoin/bitcoin#32937: Enable `-Werror=dev` in CI & Guix
23e15d40b96a Merge bitcoin/bitcoin#32631: refactor: Convert GenTxid to `std::variant`
8ffbd7b77860 Merge bitcoin/bitcoin#32940: cmake: Use newer signature of `qt6_add_lrelease` when available
80ce5137663d Merge bitcoin/bitcoin#32933: log: Properly log warnings with warn loglevel in addrdb
8f766f39df3e ci: enable -Werror=dev
7b420ca8341a guix: configure with -Werror=dev
44097ddb1913 cmake: enable -Werror=dev in dev-mode preset
12fb00fd4228 Merge bitcoin/bitcoin#32927: fuzz: Add missing calls to `SetMockTime` for determinism
3c1418666bfa Merge bitcoin/bitcoin#32930: Resolve guix non-determinism with emplace_back instead of push_back
bad998b7c040 Merge bitcoin/bitcoin#32921: test: less ambiguous error if bitcoind is missing
7f28e8032987 Merge bitcoin/bitcoin#32758: wallet: remove dead code in legacy wallet migration
5ef0d4897be4 Merge bitcoin/bitcoin#30605: Cluster linearization: separate tests from tests-of-tests
f43571010e38 Resolve guix non-determinism with emplace_back instead of push_back
94931656b52f cmake: Use newer signature of `qt6_add_lrelease` when available
b80ead8a7182 Merge bitcoin/bitcoin#32890: bench: Avoid tmp files in pwd
c4f90900b55f Merge bitcoin/bitcoin#32932: test: Add missing convert_to_json_for_cli
fa894b0f3e13 log: Properly log warnings with warn loglevel in addrdb
83ae7802fe14 Merge bitcoin/bitcoin#32881: test: Turn rpcauth.py test into functional test
fa0528479d5e test: Add missing convert_to_json_for_cli
a40e9536588c Merge bitcoin/bitcoin#30479: validation: Add eligible ancestors of reconsidered block to setBlockIndexCandidates
1ca62edd85b1 Merge bitcoin/bitcoin#32580: wallet, test: best block locator matches scan state follow-ups
2cad7226c2d0 Merge bitcoin/bitcoin#32799: mempool: use `FeeFrac` for ancestor/descendant score comparators
2d59977601ea Merge bitcoin/bitcoin#32604: log: Mitigate disk filling attacks by rate limiting LogPrintf, LogInfo, LogWarning, LogError
4c772cbd83e5 doc: add release notes for new rate limiting logging behavior
d541409a64c6 log: Add rate limiting to LogPrintf, LogInfo, LogWarning, LogError, LogPrintLevel
a6a35cc0c23d log: use std::source_location in place of __func__, __FILE__, __LINE__
afb9e39ec555 log: introduce LogRateLimiter, LogLimitStats, Status
df7972a6cfd9 test: Mark ~DebugLogHelper as noexcept(false)
fa8862723c14 fuzz: CheckGlobals in init
fa26bfde988b test: Avoid resetting mocktime in testing setup
fa6b45fa8ec8 Add SetMockTime for time_point types
a60f863d3e27 scripted-diff: Replace GenTxidVariant with GenTxid
c8ba19959863 Remove old GenTxid class
072a198ea4bc Convert remaining instances of GenTxid to GenTxidVariant
1b528391c794 Convert `txrequest` to GenTxidVariant
bde4579b0780 Convert `txdownloadman_impl` to GenTxidVariant
c876a892ec0b Replace GenTxid with Txid/Wtxid overloads in `txmempool`
de858ce2bea8 move-only: make GetInfo a private CTxMemPool member
eee473d9f301 Convert `CompareInvMempoolOrder` to GenTxidVariant
b7e9dc8e468b Merge bitcoin/bitcoin#32884: rest: replace `rf_names[0].rf` by `RESTResponseFormat::UNDEF`
fa4d68cf97b6 Turn rpcauth.py test into functional test
83bb41455715 test: less ambiguous error if bitcoind is missing
150b5c99ca11 wallet: replace `reload_wallet` with inline functionality
927055e42afb Merge bitcoin/bitcoin#32893: doc: fix `BlockConnected` incorrect comment
a8bff38236ac Merge bitcoin/bitcoin#32862: rpc: use CScheduler for relocking wallet and remove RPCTimer
21b42f3c5569 Merge bitcoin/bitcoin#32660: rpc: Use type-safe exception to pass RPC help
528f79f010d1 Merge bitcoin/bitcoin#32835: test: fix feature_init.py intermittencies
fc543f94a9c3 Merge bitcoin/bitcoin#32385: test: refactor out same-txid-diff-wtxid tx to reuse in other tests
09add84fc5ad Merge bitcoin/bitcoin#32618: wallet: Remove ISMINE_WATCHONLY and watchonly from RPCs
87ab69155d94 Merge bitcoin/bitcoin#31553: cluster mempool: add TxGraph reorg functionality
4e69aa5701a2 doc: fix `BlockConnected` incorrect comment
d33c111448ac Merge bitcoin/bitcoin#32829: threading: use correct mutex name in reverse_lock fatal error messages
de4eef52d123 threading: use correct mutex name in reverse_lock fatal error messages
fa2fbaa4a29f bench: Avoid tmp files in pwd
6d19815cd440 rest: replace `rf_names[0].rf` by `RESTResponseFormat::UNDEF` for code clarity
4207d9bf823b test: feature_init, ensure indexes are synced prior to perturbing files
e3f416dbf763 Merge bitcoin/bitcoin#32463: test: fix an incorrect `feature_fee_estimation.py` subtest
ea4285775e61 Merge bitcoin/bitcoin#29307: util: explicitly close all AutoFiles that have been written
51ccc71b1bf9 Merge bitcoin/bitcoin#32858: doc: Add workaround for vcpkg issue with paths with embedded spaces
fcfd3db563e8 remove RPCTimerInterface and RPCRunLater
8a1765795fd3 use WalletContext scheduler for walletpassphrase callback
927e9b220f17 Merge bitcoin/bitcoin#32716: depends: Override host compilers for FreeBSD and OpenBSD
c7fe8abb5f38 Merge bitcoin/bitcoin#31233: cmake: Improve Python robustness and test usability
625194944333 Merge bitcoin/bitcoin#32290: test: allow all functional tests to be run or skipped with --usecli
0f86da382d3f wallet: remove dead code in legacy wallet migration
49d5f1f2c6d2 Merge bitcoin/bitcoin#32850: test: check P2SH sigop count for coinbase tx
abd07cf7332e test: feature_init, only init what's needed per perturbation/deletion round
192743235493 Merge bitcoin/bitcoin#32859: functional test: correctly detect nonstd TRUC tx vsize in feature_taproot
68ca13e1f96a Merge bitcoin/bitcoin#32823: test: Fix wait_for_getheaders() call in test_outbound_eviction_blocks_relay_only()
35cae56a9292 Merge bitcoin/bitcoin#31423: wallet: migration, avoid creating spendable wallet from a watch-only legacy wallet
1632fc104be8 txgraph: Track multiple potential would-be clusters in Trim (improvement)
4608df37e02a txgraph: add Trim benchmark (benchmark)
9c436ff01cff txgraph: add fuzz test scenario that avoids cycles inside Trim() (tests)
938e86f8fecd txgraph: add unit test for TxGraph::Trim (tests)
a04e205ab03e txgraph: Add ability to trim oversized clusters (feature)
eabcd0eb6fca txgraph: remove unnecessary m_group_oversized (simplification)
19b14e61eae7 txgraph: Permit transactions that exceed cluster size limit (feature)
c4287b9b71c6 txgraph: Add ability to configure maximum cluster size/weight (feature)
f0524cda3995 functional test: correctly detect nonstd TRUC tx vsize in feature_taproot
0a1af4418ed2 doc: Add workaround for vcpkg issue with paths with embedded spaces
a92e8b10a5fb Merge bitcoin/bitcoin#32564: miniscript, refactor: Make `operator""_mst` `consteval` (re-take)
bf75c9964fb2 Merge bitcoin/bitcoin#32828: build, docs: Fix Boost-related issues on NetBSD
7fa9b58bd907 Merge bitcoin/bitcoin#32841: feature_taproot: sample tx version border values more
1b5c545e82fe wallet, test: best block locator matches scan state follow-ups
fa3359289883 Merge bitcoin/bitcoin#32723: Refactor: Redefine CTransaction equality to include witness data
ce000c8ee02a Merge bitcoin/bitcoin#32219: test: enabling wallet migration functional test on windows
f33154c464b3 Merge bitcoin/bitcoin#32432: wallet, rpc: Use `OUTPUT_TYPES` to describe the output types instead of hardcoding them
fa9b1e354444 Merge bitcoin/bitcoin#32846: doc: clarify that the "-j N" goes after the "--build build" part
b1a8ac07e91d doc: Release note for removed watchonly parameters and results
15710869e19e wallet: Remove ISMINE_WATCH_ONLY
4439bf4b41a6 wallet, spend: Remove fWatchOnly from CCoinControl
1337c72198a7 wallet, rpc: Remove watchonly from RPCs
e81d95d43574 wallet: Remove watchonly balances
d20dc9c6aae0 wallet: Wallets without private keys cannot grind R
9991f49c38c0 test: Watchonly wallets should estimate larger size
d6aaffcb11ad test: check P2SH sigop count for coinbase tx
b1821d8dd39f Merge bitcoin/bitcoin#27286: wallet: Keep track of the wallet's own transaction outputs in memory
0e9f409db3b7 doc: clarify that the "-j N" goes after the "--build build" part
67dc7523f3e1 cmake, test: Disable tests instead of ignoring them
bb9157db5d39 cmake, refactor: Switch to `Python3::Interpreter` imported target
ed7a841f82f9 Merge bitcoin/bitcoin#32816: contrib: correct variable name in p2p_monitor.py
2ae5154dd860 Merge bitcoin/bitcoin#32842: doc: add `/spenttxouts` to REST-interface.md
243553d59071 refactor: replace get_iter_from_wtxid with GetIter(const Wtxid&)
fcf92fd640ea refactor: make CTxMemPool::GetIter strongly typed
23a00fcf571f Merge bitcoin/bitcoin#32783: doc: Add fetching single PRs from upstream to productivity.md
dd99cedc0bfe doc: add `/spenttxouts` to REST-interface.md
4be81e9746e9 feature_taproot: sample tx version border values more
6e5b67a370bb Merge bitcoin/bitcoin#32697: test: Turn util/test_runner into functional test
fb2c16cf7bfb Merge bitcoin/bitcoin#32826: p2p: add more bad ports
f5f3e1f26328 Merge bitcoin/bitcoin#32646: p2p: Add witness mutation check inside FillBlock
a763497b1d66 Merge bitcoin/bitcoin#32834: test: Use msg_generic in p2p_ping.py
fa3f100010f1 test: Use msg_generic in p2p_ping.py
33480573cbd8 Merge bitcoin/bitcoin#32833: test: Add `msgtype` to `msg_generic` slots
9501738e1cbd Merge bitcoin/bitcoin#32825: rest: rename `strURIPart` to `uri_part`
5a5ddbd78922 build: Add workaround for NetBSD bug in `Boost::headers` target
6967e8e8abbc add more bad p2p ports
7dc43ea503a2 test: Add msgtype to msg_generic slots
4eb3cee919ed doc: Update NetBSD Build Guide
856f4235b1ae scripted-diff: rest: rename `strURIPart` -> `uri_part`
b3bb4031ab32 Merge bitcoin/bitcoin#32540: rest: fetch spent transaction outputs by blockhash
3086c21df4a2 Merge bitcoin/bitcoin#32243: test: added fuzz coverage for consensus/merkle.cpp
319ff58bbd58 Merge bitcoin/bitcoin#32638: blocks: force hash validations on disk read
ec004cdb86e6 test: Use rehash() in outbound eviction block-relay
26598ed21ea7 test: Clarify roles in outbound eviction comments
689318ccd9c2 Merge bitcoin/bitcoin#32667: build: Find Boost in config mode
4a3475a43e80 Merge bitcoin/bitcoin#32819: Add release note for #32530
558f0880a8f3 Add release note for #32530
c43cc48aaaaa Merge bitcoin/bitcoin#32530: node: cap `-maxmempool` and `-dbcache` values for 32-bit
4145a9463a58 Merge bitcoin/bitcoin#32731: depends: Build `qt` package for FreeBSD hosts
14653b869b91 build: Find Boost in config mode
67ea4b9994e6 Merge bitcoin/bitcoin#32814: cmake: Explicitly specify `Boost_ROOT` for Homebrew's package
5170ec1ae35d Merge bitcoin/bitcoin#32665: depends: Bump boost to 1.88.0 and use new CMake buildsystem
8fafb81320dd Merge bitcoin/bitcoin#32805: cmake: Use `HINTS` instead of `PATHS` in `find_*` commands
6bb38bf37fd8 Update p2p_monitor.py
9b75cfda4d62 test: retain the intended behavior of `feature_fee_estimation.py` nodes
5c1236f04a24 test: fix incorrect subtest in `feature_fee_estimation.py`
e5f9218b6afb Merge bitcoin/bitcoin#32742: test: fix catchup loop in outbound eviction functional test
11d28f21bb8f Implement GenTxid as a variant
215e5999e207 wallet: Remove unused CachedTxGet{Available,Immature}Credit
49675de035e7 wallet: Have GetDebit use the wallet's TXO set
17d453cb3a6f wallet: Recompute wallet TXOs after descriptor migration
764016eb2259 wallet: Retrieve TXO directly in FetchSelectedInputs
c1801b78f1c1 wallet: Use wallet's TXO set in AvailableCoins
dde7cbe105ba wallet: Change balance calculation to use m_txos
96e7a89c5e0b wallet: Recalculate the wallet's txos after any imports
ae888c38d080 wallet: Exit IsTrustedTx early if wtx is already in trusted_parents
ae0876ec4273 wallet: Keep track of transaction outputs owned by the wallet
0f269bc48c39 walletdb: Load Txs last
5cc32ee2a7ad test: Test for balance update due to untracked output becoming spendable
8222341d4f9c wallet: MarkDirty after AddWalletDescriptor
e02f2d331ce6 bench: Have AvailableCoins benchmark include a lot of unrelated utxos
f27898c8bfe3 Merge bitcoin/bitcoin#32721: wallet, rpc: Remove deprecated balances from getwalletinfo and getunconfirmedbalance
8578fabb95fa Merge bitcoin/bitcoin#32597: wallet: Always set descriptor cache upgraded flag for new wallets
941b8f54c0d3 ci: run get_previous_releases as part of test cross win job
5e2182140bcd test: increment mocked time for migrating wallet backups
5174565802f4 ci: disable feature_unsupported_utxo_db functional test
3dc90d69a64f test: remove mempool.dat before copying
67a6b20d5030 test: add windows support to get previous releases script
01f908195589 Merge bitcoin/bitcoin#32768: wallet: Remove `CWalletTx::fTimeReceivedIsTxTime`
c1d8a542b46c Merge bitcoin/bitcoin#32727: doc: add release notes for #32425
1a1b478ca31b scripted-diff: rename tarball to archive
4f06dc848460 test: remove building from source from get prev releases script
45b1d3975766 doc: Add fetching single PRs from upstream
8800b5acc1ef cmake: Explicitly specify `Boost_ROOT` for Homebrew's package
b9a2e8ee965d doc: add release notes for bitcoin/bitcoin#32425
6c2538d5bfea depends: Bump boost to 1.88.0 and use new CMake buildsystem
7d5a6d17398a Merge bitcoin/bitcoin#32798: build: add root dir to CMAKE_PREFIX_PATH in toolchain
a34fb9ad6c6c miniscript: Make `operator""_mst` `consteval`
14052162b19a Revert "miniscript: make operator_mst consteval"
ead44687483e cmake: Use `HINTS` instead of `PATHS` in `find_*` commands
ad654a4807cd Merge bitcoin/bitcoin#32767: ci: Allow running CI in worktrees
67e6746dc87a Merge bitcoin/bitcoin#32780: lsan: add more Qt suppressions
e27a94596f2a build: add root dir to CMAKE_PREFIX_PATH
173394d9511e depends: Build `qt` package for FreeBSD hosts
922adf66ac74 mempool: use `FeeFrac` for calculating regular score
3322b3a05954 mempool: use `FeeFrac` for calculating ancestor score
ac9c113bd2a2 mempool: use `FeeFrac` for calculating descendant score
e95bfc1d537e Merge bitcoin/bitcoin#32797: doc: archive 28.2 release notes
666016e56b28 ci: use --usecli in one of the CI jobs
7ea248a02099 test: Disable several (sub)tests with cli
f420b6356b6f test: skip subtests that check for wrong types with cli
6530d0015b95 test: add function to convert to json for height_or_hash params
54d28722baea test: Don't send empty named args with cli
cca422060e96 test: convert tuple to json for cli
af34e980866e test: make rpc_psbt.py usable with --usecli
8f8ce9e1740d test: rename .rpc to ._rpc and remove unnecessary uses
5b0888598632 test: enable functional tests with large rpc args for cli
7d5352ac7373 test: use -stdin for large rpc commands
6c364e0c10de test: Enable various tests for usage with cli
907842363c64 doc: archive 28.2 release notes
c5849663baa9 Merge bitcoin/bitcoin#32771: contrib: tracing: Fix read of `pmsg_type` in p2p_monitor.py
8a36a471e652 Merge bitcoin/bitcoin#32781: refactor: modernize deprecated ipc headers
ed060e01e756 Merge bitcoin/bitcoin#32725: test: round difficulty and networkhashps
daf393b3f15d Merge bitcoin/bitcoin#32642: test: update BIP340 test vectors and implementation (variable-length messages)
482d2553764e Merge bitcoin/bitcoin#32736: wallet: Correct dir iteration error handling
74b7e9c7dbf7 refactor: modernize deprecated ipc headers
154b98a7aaae Merge bitcoin/bitcoin#32772: fuzz: wallet: remove `FundTx` from `FuzzedWallet`
fa183045a1ea Merge bitcoin/bitcoin#32765: test: Fix list index out of range error in feature_bip68_sequence.py
5be31b20e54e lsan: add more Qt suppressions
e18322eff274 Merge bitcoin/bitcoin#32774: doc: Explain how to fetch commits directly
b86141925416 Merge bitcoin/bitcoin#32777: doc: fix Transifex 404s
79afe6b7c092 Merge bitcoin/bitcoin#32776: doc: taproot became always active in v24.0 (doc/bips.md)
53a996f12266 doc: fix transifex 404s
8ee8a951c205 doc: taproot became always active in v24.0
fa2163159511 test: Use self.log
fa346f7797ae test: Move error string into exception
fa1986181f24 test: Remove useless catch-throw
fa94fd53c996 doc: Explain how to fetch commits directly
9a7eece5a4a1 Merge bitcoin/bitcoin#31981: Add checkBlock() to Mining interface
8cc9845b8ddf wallet, rpc: Use `OUTPUT_TYPES` to describe the output types instead of hardcoding them
3473986fe10e contrib: tracing: Correctly read msg type in p2p_monitor.py
cd1ae1b4dfdb fuzz: wallet: remove FundTx from FuzzedWallet
fa68dcb207c3 ci: Add missing errexit to lint CI install
fa535a6de7a0 ci: Allow running CI in worktrees
faf6a0459749 ci: Clean UID/GID mismatch
9eb2c82e7c91 walletdb: Remove unused upgraded_txs
c66803370988 wallet: Remove unused fTimeReceivedIsTxTime
5e6dbfd14ea9 Merge bitcoin/bitcoin#32465: thread-safety: fix annotations with REVERSE_LOCK
e285e691b7a3 test: Fix list index out of range error in feature_bip68_sequence.py
1be688f57515 Merge bitcoin/bitcoin#32682: wallet: have external signer use PSBT error code EXTERNAL_SIGNER_NOT_FOUND
a201a99f8cf5 thread-safety: fix annotations with REVERSE_LOCK
26747d9f3e3f Merge bitcoin/bitcoin#32760: depends: capnp 1.2.0
c10e382d2a3b flatfile: check whether the file has been closed successfully
4bb5dd78ea4b util: check that a file has been closed before ~AutoFile() is called
8bb34f07df9a Explicitly close all AutoFiles that have been written
a69c4098b273 rpc: take ownership of the file by WriteUTXOSnapshot()
c7eaac326ac2 depends: capnp 1.2.0
afaaba69eddd test: refactor out same-txid-diff-wtxid tx to reuse in other tests
084eee029199 Merge bitcoin/bitcoin#32743: refactor: use `std::vector<std::byte>` for `BlockManager::ReadRawBlock()`
c48846ec4169 doc: add release notes for #32540
d7fca5c171f4 clusterlin: add big comment explaning the relation between tests
b64e61d2de65 clusterlin: abstract try-permutations into ExhaustiveLinearize function
1fa55a64ed18 clusterlin tests: verify that chunks are minimal
da23ecef29b7 clusterlin tests: support non-empty ReadTopologicalSubset()
94f3e17c33e6 clusterlin tests: compare with fuzz-provided linearizations
5f92ebee0d24 clusterlin tests: compare with fuzz-provided topological sets
6e37824ac390 clusterlin tests: optimize clusterlin_simple_linearize
98c1c88b6f8d clusterlin tests: separate testing of SimpleLinearize and Linearize
10e90f7aef9c clusterlin tests: make SimpleCandidateFinder always find connected
a38c38951e10 clusterlin tests: separate testing of Search- and SimpleCandidateFinder
77a432ee704b clusterlin tests: count SimpleCandidateFinder iterations better
a18e57232867 test: more template verification tests
10c908808fb8 test: move gbt proposal mode tests to new file
94959b8deedc Add checkBlock to Mining interface
6077157531c1 ipc: drop BlockValidationState special handling
74690f4ed82b validation: refactor TestBlockValidity
2def85847318 Merge bitcoin/bitcoin#32481: wallet, refactor: Remove Legacy wallet unused warnings and errors
287cd04a32df Merge bitcoin/bitcoin#32594: wallet, rpc: Return normalized descriptor in parent_descs
fd74d609bed9 Merge bitcoin/bitcoin#32620: wallet: Fix wallet interface detection of encrypted wallets
6ecb9fc65f9a chore: use `std::vector<std::byte>` for `BlockManager::ReadRawBlock()`
65b26507b84a Merge bitcoin/bitcoin#32746: test: remove unnecessary m_best_header setting hack in feature_assumeutxo.py
3e8168442692 Merge bitcoin/bitcoin#32739: tsan: remove note about dropping Qt wildcards
b8eb17792e0c Merge bitcoin/bitcoin#32175: fuzz: doc: add info about `afl-system-config` for macOS
206bc05e62c6 test: remove unnecessary m_best_header setting hack in feature_assumeutxo.py
272cd09b796a log: Use warning level while scanning wallet dir
17776443675d qa, wallet: Verify warning when failing to scan
893e51ffeb05 wallet: Correct dir iteration error handling
52e6e93c3f60 Merge bitcoin/bitcoin#32693: depends: fix cmake compatibility error for freetype
fa2f1c55b7da move-only util data to test/functional/data/util
faa18bf287fc test: Turn util/test_runner into functional test
fa955154c773 test: Add missing skip_if_no_bitcoin_tx
9341b5333ad5 blockstorage: make block read hash checks explicit
2371b9f4ee0b test/bench: verify hash in `ComputeFilter` reads
5d235d50d6dd net: assert block hash in `ProcessGetBlockData` and `ProcessMessage`
5db0a4a2db20 tsan: remove note about dropping Qt wildcards
d91c718a686a Merge bitcoin/bitcoin#32717: doc: Update Qt 6 packages on FreeBSD
fac9db6eb0c6 test: Add missing tx util to Binaries
fa91835ec6ad test: Use lowercase env var as attribute name
fac49094cdb1 test: Remove duplicate ConfigParser
9dfc61d95f00 test: detect no external signer connected
dd8447f70faf test: fix catchup loop in outbound eviction functional test
19765dca197a Merge bitcoin/bitcoin#32694: index: move disk read lookups to base class
8cc3ac6c2328 validation: Don't use IsValid() to filter for invalid blocks
86d98b94e546 test: verify that ancestors of a reconsidered block can become the chain tip
3c39a55e64be validation: Add ancestors of reconsiderblock to setBlockIndexCandidates
1df96f59316c doc: Update Qt 6 packages on FreeBSD
d7c37906e7b1 build: patch cmake min version on freetype
fa946520d229 refactor: Use structured binding for-loop
eeeec1579ec5 rpc: Use type-safe exception to pass RPC help
5757de4ddd37 Merge bitcoin/bitcoin#32673: clang-tidy: Apply modernize-deprecated-headers
1473f69924bc Merge bitcoin/bitcoin#32421: test: refactor: overhaul (w)txid determination for `CTransaction` objects
7c0cfce20df9 Merge bitcoin/bitcoin#31405: validation: stricter internal handling of invalid blocks
851f540d0e03 Merge bitcoin/bitcoin#32703: test: Explain how to reproduce zmq:: upstream race
5af5e9791dc9 Merge bitcoin/bitcoin#32690: depends: fix multiprocess build on OpenBSD (apply capnp patch, correct SHA256SUM command)
fed41b75fbfa Merge bitcoin/bitcoin#32431: deps: Bump lief to 0.16.6
578ea3eedb28 test: round difficulty and networkhashps
c8abd972818f Merge bitcoin/bitcoin#32719: doc, windows: CompanyName "Bitcoin" => "Bitcoin Core project"
029ba1a21d57 index: remove CBlockIndex access from CustomAppend()
91b7ab6c6926 refactor: index, simplify CopyHeightIndexToHashIndex to process single block
4f56c9145a60 refactor: contrib: Move FORTIFY check to BASE_ELF
f6d25e8a2dd3 contrib: Re-enable FORTIFY check for RISCV
765922d8022d deps: bump lief to 0.16.6
4ef625301767 test: avoid unneeded (w)txid hex -> integer conversions
472f3770aec8 scripted-diff: test: rename CTransaction `.getwtxid()` -> `wtxid_hex` for consistency
81af4334e8f9 test: rename CTransaction `.sha256` -> `.txid_int` for consistency
ce8392423712 test: rename CTransaction `.rehash()`/`.hash` -> `.txid_hex` for consistency
6efbd1e1dcdf refactor: CTransaction equality should consider witness data
cbf9b2dab1d8 mempool: codify existing assumption about duplicate txids during removal
c3fe85e2d6dd wallet, rpc, test: Remove deprecated getunconfirmedbalance
0ec255139be3 wallet, rpc: Remove deprecated balances from getwalletinfo
e9331cd6ab2c wallet: IsEquivalentTo should strip witness data in addition to scriptsigs
ce90f0c99fde rpc, wallet, refactor: Remove non-descriptor errors
573bcd75d7b6 wallet, refactor: Remove unused SetupGeneration
5431f2dc2159 wallet, refactor: Remove Legacy warnings and errors
6f1392cc42cd indexes, refactor: Remove remaining CBlockIndex* uses in index Rewind methods
0a248708dc9d indexes, refactor: Stop requiring CBlockIndex type to call IsBIP30Unspendable
28299ce77636 p2p: remove vestigial READ_STATUS_CHECKBLOCK_FAILED
bac9ee483066 p2p: Add witness mutation check inside FillBlock
4f10a57671c1 depends: Override host compilers for FreeBSD and OpenBSD
239fc4d62e73 doc, windows: CompanyName "Bitcoin" => "Bitcoin Core project"
e9cdaefb0a80 test: introduce and use CTransaction `.wtxid_int` property
9b3dce24a333 test: remove bare CTransaction `.rehash()`/`.calc_sha256()` calls
a2724e3ea392 test: remove txid caching in CTransaction class
fa0b766f43df test: Remove intermittent and presumed fixed tsan race suppressions
fa4b659dcd03 test: Explain how to reproduce zmq:: upstream race
d4e212e8a69e rest: fetch spent transaction outputs by blockhash
331a25cb1663 test: indexes, avoid creating threads when sync runs synchronously
95969bc58ae0 test: added fuzz coverage to consensus/merkle.cpp
f6b782f3aad4 doc: Improve m_best_header documentation
ee673b9aa015 validation: remove m_failed_blocks
ed764ea2b4ed validation: Add more checks to CheckBlockIndex()
9a70883002e1 validation: in invalidateblock, calculate m_best_header right away
8e39f2d20d09 validation: in invalidateblock, mark children as invalid right away
4c29326183ba validation: cache all headers with enough PoW in invalidateblock
15fa5b5a908d validation: call InvalidBlockFound also from AcceptBlock
8713e8060d50 depends: fix SHA256SUM command on OpenBSD (use GNU mode output)
2d938720bd67 depends: add patch to fix capnp build on OpenBSD
0a4ee93529d6 wallet: use PSBTError::EXTERNAL_SIGNER_NOT_FOUND
8ba2f9b7c8a6 refactor: use util::Result for GetExternalSigner()
130a92298077 wallet, interfaces: Use BERKELEY_RO in isEncrypted
fa9ca13f35be refactor: Sort includes of touched source files
facb152697b8 scripted-diff: Bump copyright headers after include changes
fae71d30f722 clang-tidy: Apply modernize-deprecated-headers
0def84d407fa test: Verify parent_desc in RPCs
b184f5c87c41 test: update BIP340 test vectors and implementation (variable-length messages)
b78990734621 wallet: migration, avoid creating spendable wallet from a watch-only legacy wallet
e86d71b749c0 wallet: refactor, dedup wallet re-loading code
1de423e0a08b wallet: introduce method to return all db created files
d04f6a97ba9a refactor: remove sqlite dir path back-and-forth conversion
2554cee988fb test: Enable default wallet for wallet_descriptor.py
3fc9d9f241a4 wallet, rpc: Push the normalized parent descriptor
47237cd19380 wallet, rpc: Output wallet flags in getwalletinfo
bc2a26b29623 wallet: Add GetWalletFlags
69f588a99a7a wallet: Set upgraded descriptor cache flag for newly created wallets
9f8e7b0b3b78 node: cap -dbcache to 1GiB on 32-bit architectures
2c43b6adebbf init: cap -maxmempool to 500 MB on 32-bit systems
aeea5f0ec112 thread-safety: add missing lock annotation
832c57a53410 thread-safety: modernize thread safety macros
61ea5f348da7 fuzz: doc: add info about `afl-system-config` for macOS
REVERT: 690a5dac223e kernel: Fix bitcoin-chainstate for windows
REVERT: 345d2ac84162 kernel: Add Purpose section to header documentation
REVERT: 790b2baa7ce2 kernel: Add pure kernel bitcoin-chainstate
REVERT: 78e4ca20aae6 kernel: Add functions to get the block hash from a block
REVERT: 4c0de2443d8a kernel: Add block index utility functions to C header
REVERT: d031c5871e47 kernel: Add function to read block undo data from disk to C header
REVERT: e10616b59b13 kernel: Add functions to read block from disk to C header
REVERT: 71e76017b8c4 kernel: Add function for copying block data to C header
REVERT: a015529dd449 kernel: Add functions for the block validation state to C header
REVERT: e5870b8253f8 kernel: Add validation interface to C header
REVERT: 24d56ecfbae4 kernel: Add interrupt function to C header
REVERT: 98710edc97ae kernel: Add import blocks function to C header
REVERT: 2b9382a5ebc2 kernel: Add chainstate load options for in-memory dbs in C header
REVERT: 15dff3f0b5d5 kernel: Add options for reindexing in C header
REVERT: f2faf1790484 kernel: Add block validation to C header
REVERT: 4cd4577fc82b kernel: Add chainstate loading when instantiating a ChainstateManager
REVERT: 7a40d4ddb23a kernel: Add chainstate manager option for setting worker threads
REVERT: 7bac421d186a kernel: Add chainstate manager object to C header
REVERT: fc83bef50833 kernel: Add notifications context option to C header
REVERT: 76a0c97e0df6 kernel: Add chain params context option to C header
REVERT: a3cc9ec2dc7d kernel: Add kernel library context object
REVERT: d7230ea9b9ee kernel: Add logging to kernel library C header
REVERT: 84680fe7ca33 kernel: Introduce initial kernel C header API

git-subtree-dir: libbitcoinkernel-sys/bitcoin
git-subtree-split: 1ffc1c9d94b16cdbfb92a26d0f0e75451efad4fe
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants