Skip to content

Commit 069643f

Browse files
committed
Squashed 'bitcoinkernel/bitcoin/' changes from 527e82de4a..690a5dac22
690a5dac22 kernel: Fix bitcoin-chainstate for windows 345d2ac841 kernel: Add Purpose section to header documentation 790b2baa7c kernel: Add pure kernel bitcoin-chainstate 78e4ca20aa kernel: Add functions to get the block hash from a block 4c0de2443d kernel: Add block index utility functions to C header d031c5871e kernel: Add function to read block undo data from disk to C header e10616b59b kernel: Add functions to read block from disk to C header 71e76017b8 kernel: Add function for copying block data to C header a015529dd4 kernel: Add functions for the block validation state to C header e5870b8253 kernel: Add validation interface to C header 24d56ecfba kernel: Add interrupt function to C header 98710edc97 kernel: Add import blocks function to C header 2b9382a5eb kernel: Add chainstate load options for in-memory dbs in C header 15dff3f0b5 kernel: Add options for reindexing in C header f2faf17904 kernel: Add block validation to C header 4cd4577fc8 kernel: Add chainstate loading when instantiating a ChainstateManager 7a40d4ddb2 kernel: Add chainstate manager option for setting worker threads 7bac421d18 kernel: Add chainstate manager object to C header fc83bef508 kernel: Add notifications context option to C header 76a0c97e0d kernel: Add chain params context option to C header a3cc9ec2dc kernel: Add kernel library context object d7230ea9b9 kernel: Add logging to kernel library C header 84680fe7ca kernel: Introduce initial kernel C header API 4b8ac9eacd Merge bitcoin/bitcoin#32680: ci: Rewrite test-each-commit as py script 157bbd0a07 Merge bitcoin/bitcoin#32425: config: allow setting -proxy per network ebec7bf389 Merge bitcoin/bitcoin#32572: doc: Remove stale sections in dev notes 011a8c5f01 Merge bitcoin/bitcoin#32696: doc: make `-DWITH_ZMQ=ON` explicit on `build-unix.md` fe39050a66 Merge bitcoin/bitcoin#32678: guix: warn and abort when SOURCE_DATE_EPOCH is set 692fe280c2 Merge bitcoin/bitcoin#32713: doc: fuzz: fix AFL++ link c1d4253d31 Merge bitcoin/bitcoin#32711: doc: add missing packages for BSDs (cmake, gmake, curl) to depends/README.md 89526deddf doc: add missing packages for BSDs (cmake, gmake, curl) to depends/README.md a39b7071cf doc: fuzz: fix AFL++ link dff208bd5a Merge bitcoin/bitcoin#32708: rpc, doc: update `listdescriptors` RCP help d978a43d05 Merge bitcoin/bitcoin#32408: tests: Expand HTTP coverage to assert libevent behavior f3bbc74664 Merge bitcoin/bitcoin#32406: policy: uncap datacarrier by default b44514b876 rpc, doc: update `listdescriptors` RCP help 32d4e92b9a doc: make `-DWITH_ZMQ=ON` explicit on `build-unix.md` e2174378aa Merge bitcoin/bitcoin#32539: init: Configure reachable networks before we start the RPC server 2053c43684 Merge bitcoin/bitcoin#32675: test: wallet: cover wallet passphrase with a null char fa9cfdf3be ci: [doc] fix url redirect fac60b9c48 ci: Rewrite test-each-commit as py script ae024137bd Merge bitcoin/bitcoin#32496: depends: drop `ltcg` for Windows Qt 6a2ff67909 Merge bitcoin/bitcoin#32679: doc: update tor docs to use bitcoind binary from path fd4399cb9c Merge bitcoin/bitcoin#32602: fuzz: Add target for coins database f94167512d Merge bitcoin/bitcoin#32676: test: apply microsecond precision to test framework logging 0dcb45290c Merge bitcoin/bitcoin#32607: rpc: Note in fundrawtransaction doc, fee rate is for package 4ce53495e5 doc: update tor docs to use bitcoind binary from path a5e98dc3ae Merge bitcoin/bitcoin#32651: cmake: Replace deprecated `qt6_add_translation` with `qt6_add_lrelease` 9653ebc053 depends: remove support for Windows Qt LTO builds 7cfbb8575e test: wallet: cover wallet passphrase with a null char 5c4a0f8009 guix: warn and abort when SOURCE_DATE_EPOCH is set 4af72d8b08 Merge bitcoin/bitcoin#32647: build: add -Wthread-safety-pointer a980918f51 Merge bitcoin/bitcoin#32568: depends: use "mkdir -p" when installing xproto ed179e0a65 test: apply microsecond precision to test framework logging e872a566f2 Merge bitcoin/bitcoin#32644: doc: miscellaneous changes e50312eab0 doc: fix typos c797e50dda ci: update codespell to 2.4.1 21ee656337 doc: Remove obselete link in notificator.cpp ee4406c04a doc: update URLs 2d819fa4df Merge bitcoin/bitcoin#29032: signet: omit commitment for some trivial challenges f999c3775c Merge bitcoin/bitcoin#32449: wallet: init, don't error out when loading legacy wallets f98e1aaf34 rpc: Note in fundrawtransaction doc, fee rate is for package 1c6602399b Merge bitcoin/bitcoin#32662: doc: Remove build instruction for running `clang-tidy` 4b1b36acb4 doc: Remove build instruction for running `clang-tidy` 9e105107bf Merge bitcoin/bitcoin#32656: depends: don't install & then delete sqlite pkgconf 72a5aa9b79 depends: don't install & then delete sqlite pkgconf 18cf727429 cmake: Replace deprecated `qt6_add_translation` with `qt6_add_lrelease` 83bfe1485c build: add -Wthread-safety-pointer e639ae0531 Update leveldb subtree to latest upstream 240a4fb95d Squashed 'src/leveldb/' changes from 113db4962b..aba469ad6a a189d63618 add release note for datacarriersize default change a141e1bf50 Add more OP_RETURN mempool acceptance functional tests 0b4048c733 datacarrier: deprecate startup arguments for future removal 63091b79e7 test: remove unnecessary -datacarriersize args from tests 9f36962b07 policy: uncap datacarrier by default 4b1d48a686 Merge bitcoin/bitcoin#32598: walletdb: Log additional exception error messages for corrupted wallets b933813386 Merge bitcoin/bitcoin#32619: wallet, rpc, gui: List legacy wallets with a message about migration 053bda5d9f Merge bitcoin/bitcoin#32460: fs: remove `_POSIX_C_SOURCE` defining 9393aeeca4 Merge bitcoin/bitcoin#32641: Update libmultiprocess subtree to fix clang-tidy errors 5471e29d05 Merge bitcoin/bitcoin#32304: test: test MAX_SCRIPT_SIZE for block validity 9f6565488f Merge commit '154af1eea1170f5626aa1c5f19cc77d1434bcc9d' into HEAD 154af1eea1 Squashed 'src/ipc/libmultiprocess/' changes from 35944ffd23fa..27c7e8e5a581 c540ede1cb Merge bitcoin/bitcoin#32633: windows: Use predefined `RC_INVOKED` macro instead of custom one cfc42ae5b7 fuzz: add a target for the coins database 55f1c2ac8b windows: Use predefined `RC_INVOKED` macro instead of custom one 14c16e8159 Merge bitcoin/bitcoin#32582: log: Additional compact block logging aad5938c49 Merge bitcoin/bitcoin#32516: test: add MAX_DISCONNECTED_TX_POOL_BYTES, chainlimits coverage 1062df81ee Merge bitcoin/bitcoin#32634: build: Add resource file and manifest to `bitcoin.exe` 83df64d749 log: Stats when fulfilling GETBLOCKTXN 370c592612 Merge bitcoin/bitcoin#32630: test: fix sync function in rpc_psbt.py dbb2d4c3d5 windows: Add application manifest to `bitcoin.exe` df82c2dc17 windows: Add resource file for `bitcoin.exe` 3733ed2dae log: Size of missing tx'es when reconstructing compact block 4df4df45d7 test: fix sync function in rpc_psbt.py 88b22acc3d Merge bitcoin/bitcoin#32528: rpc: Round verificationprogress to 1 for a recent tip aee7cec0db Merge bitcoin/bitcoin#32364: refactor: validation: mark CheckBlockIndex as const ce46000712 Merge bitcoin/bitcoin#32509: qa: feature_framework_startup_failures.py fixes & improvements (#30660 follow-up) d21612fc4b Merge bitcoin/bitcoin#32404: log: print reason when writing chainstate 84aa484d45 test: fix transaction_graph_test reorg test eaf44f3767 test: check chainlimits respects on reorg 47894367b5 functional test: add MAX_DISCONNECTED_TX_POOL_BYTES coverage 9bd9aee5a6 Merge bitcoin/bitcoin#32487: blocks: avoid recomputing block header hash in `ReadBlock` 4173805a15 Merge bitcoin/bitcoin#32623: test: Add missing ipc subtree to lint 012f347685 Merge bitcoin/bitcoin#31375: multiprocess: Add bitcoin wrapper executable 38ad8027a2 Merge bitcoin/bitcoin#32439: guix: accomodate migration to codeberg fa4b8b16c3 test: Add missing ipc subtree to lint f7cc7f6468 Merge bitcoin/bitcoin#32591: test: fix and augment block tests of invalid_txs 87860143be Merge bitcoin/bitcoin#32270: test: fix pushdata scripts c8d9baae94 guix: accomodate migration to codeberg f3a444c45f gui: Disallow loading legacy wallets 09955172f3 wallet, rpc: Give warning in listwalletdir for legacy wallets 09ee8b7f27 node: avoid recomputing block hash in `ReadBlock` 2bf173210f test: exercise `ReadBlock` hash‑mismatch path fab1e02086 refactor: Pass verification_progress into block tip notifications 638a4c0bd8 Merge bitcoin/bitcoin#32596: wallet, rpc, doc: various legacy wallet removal cleanups in RPCs 53e9b71b2f log: print reason for why should_write was triggered in `FlushStateToDisk` ad9a13fc42 walletdb: Log additional exception error messages for corrupted wallets 46e14630f7 fuzz: move the coins_view target's body into a standalone function 56d878c465 fuzz: avoid underflow in coins_view target e5cbea416b rpc: doc: remove redundant "descriptors" parameter in `createwallet` examples 7a05f941bb rpc: doc: drop descriptor wallet mentions in fast wallet rescan related RPCs db465a50e2 wallet, rpc: remove obsolete "keypoololdest" result field/code 36bcee05dc log: Log start of compact block initialization. 2df824f4e6 Merge bitcoin/bitcoin#32586: ci: Downgrade DEBUG=1 to -D_GLIBCXX_ASSERTIONS in centos task 0a8ab55951 Merge bitcoin/bitcoin#32467: checkqueue: make the queue non-optional for CCheckQueueControl and drop legacy locking macro usage 8fcd684505 test: ensure reason is checked for invalid blocks rejection 1a689a2c88 test: fix block tests of invalid_txs d2c9fc84e1 Merge bitcoin/bitcoin#32533: test: properly check for per-tx sigops limit fa079538e3 ci: Downgrade DEBUG=1 to -D_GLIBCXX_ASSERTIONS in centos task 35bf3f8839 Merge bitcoin/bitcoin#32400: random: Use modern Windows randomness functions a42faa25d8 Merge bitcoin/bitcoin#32551: cmake: Remove `ENABLE_{SSE41,AVX2,X86_SHANI,ARM_SHANI}` from `bitcoin-build-config.h` 24e5fd3bed fs: remove _POSIX_C_SOURCE defining f16c8c67bf tests: Expand HTTP coverage to assert libevent behavior fac00d4ed3 doc: Move CI-must-pass requirement into readme section fab79c1a25 doc: Clarify and move "hygienic commit" note fac8b05197 doc: Clarify strprintf size specifier note faaf34ad72 doc: Remove section about RPC alias via function pointer 2222d61e1c doc: Remove section about RPC arg names in table fa00b8c02c doc: Remove section about include guards fad6cd739b doc: Remove dev note section on includes fa6623d85a doc: Remove file name section 7777fb8bc7 doc: Remove shebang section faf65f0531 doc: Remove .gitignore section faf2094f25 doc: Remove note about removed ParsePrechecks 87ec923d3a Merge bitcoin/bitcoin#32475: wallet: Use `util::Error` throughout `AddWalletDescriptor` instead of returning `nullptr` for some errors 7763e86afa Merge bitcoin/bitcoin#32573: ci: Avoid && dropping errors 0a56ed1ac8 Merge bitcoin/bitcoin#32567: subprocess: Backport upstream changes 54e406a305 Merge bitcoin/bitcoin#32459: qt: drop unused watch-only functionality ec81204694 Merge bitcoin/bitcoin#31622: psbt: add non-default sighash types to PSBTs and unify sighash type match checking fab97f583f ci: Avoid && dropping errors 9a887baade Merge bitcoin/bitcoin#32344: Wallet: Fix Non-Ranged Descriptors with Range [0,0] Trigger Unexpected Wallet Errors in AddWalletDescriptor 26fba39bda Merge bitcoin/bitcoin#32466: threading: drop CSemaphore in favor of c++20 std::counting_semaphore 878556947b Merge bitcoin/bitcoin#32333: doc: Add missing top-level description to pruneblockchain RPC fd290730f5 validation: clean up and clarify CheckInputScripts logic fa69c5b170 doc: Remove -disablewallet from dev notes df9ebbf659 depends: use "mkdir -p" when installing xproto fad009af49 Merge bitcoin/bitcoin#32520: Remove legacy `Parse(U)Int*` f66b14d2ec test: fix pushdata scripts 0f9baba0fb Merge bitcoin/bitcoin#29868: Reintroduce external signer support for Windows cf2cbfac65 Merge bitcoin/bitcoin#32553: wallet: Fix logging of wallet version bc4b04c5bf Merge bitcoin/bitcoin#31864: doc: add missing copyright headers e63a7034f0 subprocess: Don't add an extra whitespace at end of Windows command line 800b7cc42c cmake: Add missed `SSE41_CXXFLAGS` 028476e71f cmake: Remove `ENABLE_ARM_SHANI` from `bitcoin-build-config.h` 1e900528d2 cmake: Remove `ENABLE_X86_SHANI` from `bitcoin-build-config.h` 8689628e2e cmake: Remove `ENABLE_AVX2` from `bitcoin-build-config.h` a8e2342dca cmake: Remove `ENABLE_SSE41` from `bitcoin-build-config.h` fa76b378e4 rpc: Round verificationprogress to exactly 1 for a recent tip faf6304bdf test: Use mockable time in GuessVerificationProgress c7c3bfadfc doc: add & amend copyright headers f667000c83 contrib: remove outdated entries from copyright_header.py 0817f2d6cf doc: update MIT license URL 6854497b47 contrib: remove GPL-3+ from debian/copyright af65fd1a33 Merge bitcoin/bitcoin#32560: ci: Move DEBUG=1 to centos task 548f6b8cde Merge bitcoin/bitcoin#32562: doc: remove // for ... comments 7c87a0e3fb Merge bitcoin/bitcoin#32477: lint: Check for missing trailing newline faf55fc80b doc: Remove ParseInt mentions in documentation 785e1407b0 wallet: Use util::Error throughout AddWalletDescriptor 1a37507895 validation: use a lock for CCheckQueueControl c3b0e6c7f4 validation: make CCheckQueueControl's CCheckQueue non-optional 4c8c90b556 validation: only create a CCheckQueueControl if it's actually going to be used 11fed833b3 threading: add LOCK_ARGS macro 33f8f8ae4c Merge bitcoin/bitcoin#30221: wallet: Ensure best block matches wallet scan state 7054d24f11 Merge bitcoin-core/gui#875: Use WitnessV0KeyHash in TestAddAddressesToSendBook 4272966d02 Merge bitcoin/bitcoin#32423: rpc: Undeprecate rpcuser/rpcpassword, store all credentials hashed in memory 7193245cd6 doc: remove For ... comments 3333282933 refactor: Remove unused Parse(U)Int* 1b9cdc933f net: drop win32 ifdef 19ba499b1f init: cerrno is used on all platforms fa982f1425 Use WitnessV0KeyHash in TestAddAddressesToSendBook fa58d6cdab ci: Move DEBUG=1 to centos task ff1ee102c4 Merge bitcoin/bitcoin#32561: doc: Adjust stale MSVC bug url fa330a5e38 doc: Adjust stale MSVC bug url 88791fb97b Merge bitcoin/bitcoin#32544: scripted-diff: test: remove 'descriptors=True' argument for `createwallet` calls e8661aac75 wallet: drop watch-only things from interface e99188e7da qt: drop unused watch-only functionality 6ee32aaaca test: signet tool genpsbt and solvepsbt commands 0a99d99fe4 signet: miner skips PSBT step for OP_TRUE cdfb70e5a6 signet: split decode_psbt miner helper 4b2cd0b41f test: check that creating a wallet does not log version info 39a483c8e9 test: Check that the correct versions are logged on wallet load 359ecd3704 walletdb: Log the wallet version after it has been read from disk 86de8c1668 scripted-diff: test: remove 'descriptors=True' argument for `createwallet` calls 7710a31f0c Merge bitcoin/bitcoin#32452: test: Remove legacy wallet RPC overloads b81e5076aa Merge bitcoin/bitcoin#32514: scripted-diff: Remove unused leading newline in RPC docs 3023d7e6ad Merge bitcoin/bitcoin#32534: Update leveldb subtree to latest upstream fa84e6c36c bitcoin-tx: Reject + sign in MutateTxDel* face2519fa bitcoin-tx: Reject + sign in vout parsing fa8acaf0b9 bitcoin-tx: Reject + sign in replaceable parsing faff25a558 bitcoin-tx: Reject + sign in locktime dddd9e5fe3 bitcoin-tx: Reject + sign in nversion parsing fab06ac037 rest: Use SAFE_CHARS_URI in SanitizeString error msg c461d15287 Merge bitcoin/bitcoin#32511: refactor: bdb removals 86e1111239 test: verify node skips loading legacy wallets during startup 12ff4be9c7 test: ensure -rpcallowip is compatible with RFC4193 c02bd3c187 config: Explain RFC4193 and CJDNS interaction in help and init error f728b6b111 init: Configure reachable networks before we start the RPC server b15c386933 Merge bitcoin/bitcoin#32519: ci: Enable feature_init and wallet_reorgsrestore in valgrind task 7015052eba build: remove Wsuggest-override suppression from leveldb build 7bc64a8859 test: properly check for per-tx sigops limit 3f83c744ac Merge bitcoin/bitcoin#32526: fuzz: Delete wallet_notifications fa1f10a49e doc: Fix minor typos in rpc help e2c84b896f Squashed 'src/leveldb/' changes from 4188247086..113db4962b 0769c8fc99 Update leveldb subtree to latest upstream 04c6c961b6 Merge bitcoin/bitcoin#32527: test: Remove unused verify_flags suppression 742b30549f Merge bitcoin/bitcoin#32491: build: document why we check for `std::system` fab5a3c803 test: Remove unused verify_flags suppression c521192d8b Merge bitcoin/bitcoin#32485: Update minisketch subtree 3afde679c3 Merge bitcoin/bitcoin#32296: refactor: reenable `implicit-integer-sign-change` check for `serialize.h` 5af757bb78 Merge bitcoin/bitcoin#32505: depends: bump to latest config.guess and config.sub c60455a645 Merge bitcoin/bitcoin#32500: init: drop `-upnp` e230affaa3 Merge bitcoin/bitcoin#32396: cmake: Add application manifests when cross-compiling for Windows 51be79c42b Merge bitcoin/bitcoin#32238: qt, wallet: Convert uint256 to Txid f96ae941a1 Merge bitcoin/bitcoin#32525: build: Revert "Temporarily disable compiling `fuzz/utxo_snapshot.cpp` with MSVC fad2faf6c5 fuzz: Delete wallet_notifications bf950c4544 qa: Improve suppressed errors output 075352ec8e qa: assert_raises_message() - search in str(e) bd8ebbc4ab qa: Make --timeout-factor=0 result in a smaller factor fa2c662362 build: Revert "Temporarily disable compiling `fuzz/utxo_snapshot.cpp` with MSVC" 8888bb499d rest: Reject + sign in /blockhashbyheight/ fafd43c691 test: Reject + sign when parsing regtest deployment params fa123afa0e Reject + sign when checking -ipcfd fa479857ed Reject + sign in SplitHostPort fab4c2967d net: Reject + sign when parsing subnet mask fa89652e68 init: Reject + sign in -*port parsing 9f94de5bb5 wallet: init, don't error out when loading legacy wallets fa9c45577d cli: Reject + sign in -netinfo level parsing fa98041325 refactor: Use ToIntegral in CreateFromDump fa23ed7fc2 refactor: Use ToIntegral in ParseHDKeypath fa2be605fe ci: Enable feature_init and wallet_reorgsrestore in valgrind task 725c9f7780 Merge bitcoin/bitcoin#31895: doc: Improve `dependencies.md` bdc1cef1de Merge bitcoin/bitcoin#32507: ci: Exclude failing wallet_reorgsrestore.py from valgrind task for now fae840e94b rpc: Reject beginning newline in RPC docs e62423d6f1 doc: Improve dependencies.md documentation a3520f9d56 doc: Add dependency self-compilation info d1fdc84c54 doc: Remove Linux Kernel from dep. table 135a0f0aa7 doc: Add missing top-level description to pruneblockchain RPC fa414eda08 scripted-diff: Remove unused leading newline in RPC docs fafee85358 remove unused GetDestinationForKey fac72fef27 remove unused GetAllDestinationsForKey fa91d57de3 remove unused AddrToPubKey 8f4fed7ec7 symbol-check: Add check for application manifest in Windows binaries 2bb6ab8f1b ci: Add "Get bitcoind manifest" steps to Windows CI jobs 282b4913c7 cmake: Add application manifests when cross-compiling for Windows faecf158d9 remove unused Import* function signatures d8f05e7bf3 qa: Fix dormant bug caused by multiple --tmpdir fa981b90f5 ci: Exclude failing wallet_reorgsrestore.py from valgrind task for now c779ee3a40 Merge bitcoin/bitcoin#32492: test: add skip_if_running_under_valgrind() 89c7b6b97a Merge bitcoin/bitcoin#32498: doc: remove Carls substitute server from Guix docs 6b4bcc1623 random: Use modern Windows randomness functions 31d3eebfb9 Merge bitcoin/bitcoin#32343: common: Close non-std fds before exec in RunCommandJSON 486bc91790 depends: bump to latest config.sub 6880383427 depends: bump to latest config.guess 4b26ca0e2f Merge bitcoin/bitcoin#32502: wallet: Drop unused fFromMe from CWalletTx d5786bc19a Merge bitcoin/bitcoin#32490: refactor: Remove UB in prevector reverse iterators ee045b61ef rpc, psbt: Require sighashes match for descriptorprocesspsbt 2b7682c372 psbt: use sighash type field to determine whether to remove non-witness utxos 28781b5f06 psbt: Add sighash types to PSBT when not DEFAULT or ALL 15ce1bd73f psbt: Enforce sighash type of signatures matches psbt 1f71cd337a wallet: Remove sighash type enforcement from FillPSBT 4c7d767e49 psbt: Check sighash types in SignPSBTInput and take sighash as optional a118256948 script: Add IsPayToTaproot() d6001dcd4a wallet: change FillPSBT to take sighash as optional e58b680923 psbt: Return PSBTError from SignPSBTInput 2adfd81532 tests: Test PSBT sighash type mismatch 5a5d26d612 psbt: Require ECDSA signatures to be validly encoded 53eb5593f0 Merge bitcoin/bitcoin#32305: test: add test for decoding PSBT with MuSig2 PSBT key types (BIP 373) e7a9372376 Merge bitcoin/bitcoin#32378: interfaces: refactor: move `Mining` and `BlockTemplate` implementation to miner 5bf91ba880 wallet: Drop unused fFromMe from CWalletTx 30a94b1ab9 test, wallet: Remove concurrent writes test b44b7c03fe wallet: Write best block record on unload 876a2585a8 wallet: Remove unnecessary database Close step on shutdown 98a1a5275c wallet: Remove chainStateFlushed 7fd3e1cf0c wallet, bench: Write a bestblock record in WalletMigration 6d3a8b195a wallet: Replace chainStateFlushed in loading with SetLastBlockProcessed 7bacabb204 wallet: Update best block record after block dis/connect 301993ebf7 init: drop -upnp 3b824169c7 doc: remove Carls substitute server from Guix docs f1d78a3087 Merge bitcoin/bitcoin#31624: doc: warn that CheckBlock() underestimates sigops 516f0689b5 refactor: re-enable UBSan implicit-sign-change in serialize.h 5827e93507 refactor: use consistent size type for serialization template parameters 62fc42d475 interfaces: refactor: move `waitTipChanged` implementation to miner c39ca9d4f7 interfaces: move getTip implementation to miner 33dfbbdff6 Merge bitcoin/bitcoin#32483: test: fix two intermittent failures in wallet_basic.py 8a65f03894 Merge bitcoin/bitcoin#32488: fuzz: Properly setup wallet in wallet_fees target 75a185ea3d test: add skip_if_running_under_valgrind() 8f4ba90b8f build: document why we check for std::system faf9082a5f test: Fix whitespace in prevector_tests.cpp fa7f04c8a7 refactor: Remove UB in prevector reverse iterators fa427ffcee fuzz: Properly setup wallet in wallet_fees target f9d8910539 Merge bitcoin/bitcoin#31080: fees: document non-monotonic estimation edge case 31650b458b Merge bitcoin/bitcoin#32386: mining: rename gbt_force and gbt_force_name bac43b957e Merge bitcoin/bitcoin#32312: test: Fix feature_pruning test after nTime typo fix c9ab10910c Merge bitcoin/bitcoin#31444: cluster mempool: add txgraph diagrams/mining/eviction e7ad86e1ca test: fix another intermittent failure in wallet_basic.py 07350e204d test: Fix intermittent failure in wallet_basic.py 46b533dfe6 Update minisketch subtree to latest upstream bf25a0918f Squashed 'src/minisketch/' changes from d1e6bb8bbf..ea8f66b1ea 8309a9747a Merge bitcoin/bitcoin#32028: Update `secp256k1` subtree to latest master 720f201e65 interfaces: refactor: move `waitNext` implementation to miner e6c2f4ce7a interfaces: refactor: move `submitSolution` implementation to miner 02d4bc776b interfaces: remove redundant coinbase fee check in `waitNext` fa9198af55 lint: Check for missing trailing newline fa2b2aa27c lint: Add archived notes to default excludes cbd8e3d511 Merge bitcoin/bitcoin#32476: refactor: Remove unused HaveKey and HaveWatchOnly 915c1fa72c Update secp256k1 subtree to latest master c31fcaaad3 Squashed 'src/secp256k1/' changes from 0cdc758a56..4187a46649 e98c51fcce doc: update tor.md to mention the new -proxy=addr:port=tor ca5781e23a config: allow setting -proxy per network fabdc5ad06 Remove unused LegacyDataSPKM::HaveWatchOnly() fa7b7f796a Remove HaveKey helper, unused after sethdseed removal 8673e8f019 txgraph: Special-case singletons in chunk index (optimization) abdd9d35a3 txgraph: Skipping end of cluster has no impact (optimization) 604acc2c28 txgraph: Reuse discarded chunkindex entries (optimization) c734081454 txgraph: Introduce TxGraph::GetWorstMainChunk (feature) 394dbe2142 txgraph: Introduce BlockBuilder interface (feature) 883df3648e txgraph: Generalize GetClusterRefs to support subsections (preparation) c28a602e00 txgraph: Introduce TxGraphImpl observer tracking (preparation) 9095d8ac1c txgraph: Maintain chunk index (preparation) 87e74e1242 txgraph: abstract out transaction ordering (refactor) 2614fea17f txgraph: Add GetMainStagingDiagrams function (feature) a5ac43d98d doc: Add release notes describing bitcoin wrapper executable 663a9cabf8 Merge bitcoin/bitcoin#32458: guix: move `*-check.py` scripts under contrib/guix/ 258bda80c0 doc: Mention bitcoin wrapper executable in documentation d2739d75c9 build: add bitcoin.exe to windows installer ba649c0006 ci: Run multiprocess tests through wrapper executable 29bdd743bb test: Support BITCOIN_CMD environment variable 9c8c68891b multiprocess: Add bitcoin wrapper executable 5076d20fdb util: Add cross-platform ExecVp and GetExePath functions 05765b8818 Merge bitcoin/bitcoin#32472: doc: Fix typo d847e17c96 doc: Fix typo 3edf400b10 Merge bitcoin/bitcoin#32469: cmake: Allow `WITH_DBUS` on all Unix-like systems 59e09e0fb7 Merge bitcoin-core/gui#871: qt, docs: Unify term "clipboard" 46f79dde67 Merge bitcoin-core/gui#841: Decouple WalletModel from RPCExecutor 5b7ed460c7 cmake: Allow `WITH_DBUS` on all Unix-like systems 746ab19d5a Merge bitcoin/bitcoin#32446: build: simplify *ifaddr handling 6f7052a7b9 threading: semaphore: move CountingSemaphoreGrant to its own header fd15469892 threading: semaphore: remove temporary convenience types 1f89e2a49a scripted-diff: threading: semaphore: use direct types rather than the temporary convenience ones f21365c4fc threading: replace CountingSemaphore with std::counting_semaphore 1acacfbad7 threading: make CountingSemaphore/CountingSemaphoreGrant template types e6ce5f9e78 scripted-diff: rename CSemaphore and CSemaphoreGrant 793166d381 wallet: change the write semaphore to a BinarySemaphore 6790ad27f1 scripted-diff: rename CSemaphoreGrant and CSemaphore for net d870bc9451 threading: add temporary semaphore aliases 19b1e177d6 Merge bitcoin/bitcoin#32155: miner: timelock the coinbase to the mined block's height 6c6ef58b0b Merge bitcoin/bitcoin#32436: test: refactor: negate signature-s using libsecp256k1 b104d44227 test: Remove RPCOverloadWrapper 4d32c19516 test: Replace importpubkey fe838dd391 test: Replace usage of addmultisigaddress d314207779 test: Replace usage of importaddress fcc457573f test: Replace importprivkey with wallet_importprivkey 94c87bbbd0 test: Remove unnecessary importprivkey from wallet_createwallet 9a05b45da6 Merge bitcoin/bitcoin#32438: refactor: Removals after bdb removal e49a7274a2 rpc: Avoid join-split roundtrip for user:pass for auth credentials 98ff38a6f1 rpc: Perform HTTP user:pass split once in `RPCAuthorized` 879a17bcb1 rpc: Store all credentials hashed in memory 4ab9bedee9 rpc: Undeprecate rpcuser/rpcpassword, change message to security warning fa061bfcdb Remove create options from wallet tool fa2125e7b8 Remove unused IsSingleKey fab5e2a094 doc: Remove note about bdb wallets eeeef88d46 doc: fix typo in abortrescan rpc fa7e5c15a7 Remove unused LegacyDataSPKM::DeleteRecords() b070ce1696 Merge bitcoin/bitcoin#31360: depends: Avoid using helper variables in toolchain file ffff949472 remove NotifyWatchonlyChanged fa62a013a5 remove dead flush() fa5f3e62c8 vcpkg: Remove bdb 415650cea9 guix: move *-check.py scripts under contrib/guix 5b8752198e Merge bitcoin/bitcoin#32454: tracing: fix invalid argument in mempool_monitor 31c5ebc400 tracing: fix invalid argument in mempool_monitor ad5cd129f3 Merge bitcoin/bitcoin#30660: qa: Verify clean shutdown on startup failure 7b816c4e00 threading: rename CSemaphore methods to match std::semaphore 1656f6dbba Merge bitcoin/bitcoin#32448: contrib: remove bdb exception from FORTIFY check a04f17a188 doc: warn that CheckBlock() underestimates sigops ab878a7e74 build: simplify *ifaddr handling 1b4ddb0c2d Merge bitcoin/bitcoin#32356: cmake: Respect user-provided configuration-specific flags 1ee698fde2 test: refactor: negate signature-s using libsecp256k1 f9dfe8d5e0 contrib: remove bdb exception from FORTIFY check 66c968b4b4 Merge bitcoin/bitcoin#32444: doc: swap "Docker image" for "container image" 6469752952 Merge bitcoin/bitcoin#32434: lint: Remove string exclusion from locale check 1372eb09c5 doc: swap "Docker image" for "container image" 03ebdd0793 Merge bitcoin/bitcoin#32437: crypto: disable ASan for sha256_sse4 with Clang 95bb305b96 Merge bitcoin/bitcoin#32429: docs: Improve `keypoolrefill` RPC docs 1b1b9f32cf Merge bitcoin/bitcoin#32440: test: remove bdb assert in tool_wallet.py e08e6567f2 test: remove assert_dump since it is not used anymore ff35a4b021 docs: Improve `keypoolrefill` RPC docs 4b24186756 test: add test for decoding PSBT with MuSig2 PSBT key types (BIP 373) 8ba245cb83 test: add constants for MuSig2 PSBT key types (BIP 373) 4b6dd9790b test: remove bdb assert in tool_wallet.py 97d383af6d Test updating non-ranged descriptor with [0,0] range succeeds 7343a1846c depends: Avoid using helper variables in toolchain file 0671d66a8e wallet, refactor: Convert uint256 to Txid in wallet c8ed51e62b wallet, refactor: Convert uint256 to Txid in wallet interfaces b3214cefe6 qt, refactor: Convert uint256 to Txid in the GUI efac285a0d Merge bitcoin/bitcoin#28710: Remove the legacy wallet and BDB dependency fa24fdcb7f lint: Remove string exclusion from locale check 4e8ab5e00f crypto: disable ASan for sha256_sse4 with Clang 6d5edfcc58 Merge bitcoin/bitcoin#32388: fuzz: Remove unused TimeoutExpired catch in fuzz runner de054df6dc contrib: Remove legacy wallet RPCs from bash completions 5dff04a1bb legacy spkm: Make IsMine() and CanProvide() private and migration only c0f3f3264f wallet: Remove unused db functions 83af1a3cca wallet: Delete LegacySPKM 59d3e4ed34 Merge bitcoin/bitcoin#32415: scripted-diff: adapt script error constant names in feature_taproot.py fffb272c25 Merge bitcoin/bitcoin#29532: Refactor BnB tests 3bbdbc0a5e qt, docs: Unify term "clipboard" 8ede6dea0c wallet, rpc: Remove legacy wallet only RPCs 4de3cec28d test: rpcs disabled for descriptor wallets will be removed 84f671b01d test: Run multisig script limit test 810476f31e test: Remove unused options and variables, correct comments 04a7a7a28c build, wallet, doc: Remove BDB 44057fe38c Merge bitcoin/bitcoin#32287: build: Fix `macdeployqtplus` after switching to Qt 6 229943b513 Merge bitcoin/bitcoin#32086: Shuffle depends instructions and recommend modern make for macOS 3e6ac5bf77 refactor: validation: mark CheckBlockIndex as const 61a51eccbb validation: don't use GetAll() in CheckBlockIndex() edde96376a cmake: Respect user-provided configuration-specific flags 22cff32319 doc: recommend gmake for FreeBSD b645c52071 doc: recommend modern make for macOS depends 99e6490dc5 doc: shuffle depends instructions 1e0de7a6ba fees: document non-monotonic estimation edge case baa848b8d3 Merge bitcoin/bitcoin#32405: build: replace header checks with `__has_include` 3a18075aed ci: Drop `-DENABLE_EXTERNAL_SIGNER=ON` configure option 719fa9f4ef build: Re-enable external signer support for Windows 6e5fc2bf9b test: Reintroduce Windows support in `system_tests/run_command` test 53ccb75f0c Merge bitcoin/bitcoin#32358: subprocess: Backport upstream changes fa2c548429 Merge bitcoin/bitcoin#32417: doc: Explain that .gitignore is not for IDE-specific excludes fada115cbe doc: Explain that .gitignore is not for IDE-specific excludes b5f580c580 scripted-diff: adapt script error constant names in feature_taproot.py eba5f9c4b6 Merge bitcoin/bitcoin#32403: test: remove Boost SIGCHLD workaround. e1f543823b build: replace header checks with __has_include 3add6ab9ad test: remove Boost SIGCHLD workaround. cd95c9d6a7 subprocess: check and handle fcntl(F_GETFD) failure b7288decdf subprocess: Proper implementation of wait() on Windows 7423214d8d subprocess: Do not escape double quotes for command line arguments on Windows bb9ffea53f subprocess: Explicitly define move constructor of Streams class 174bd43f2e subprocess: Avoid leaking POSIX name aliases beyond `subprocess.h` 7997b7656f subprocess: Fix cross-compiling with mingw toolchain 647630462f subprocess: Get Windows return code in wait() d3f511b458 subprocess: Fix string_arg when used with rref 2fd3f2fec6 subprocess: Fix memory leaks 5b8046a6e8 Merge bitcoin/bitcoin#30611: validation: write chainstate to disk every hour fc6346dbc8 Merge bitcoin/bitcoin#32389: doc: Fix test_bitcoin path a0eed55398 run_command: Enable close_fds option to avoid lingering fds c7c356a448 cpp-subprocess: Iterate through /proc/self/fd for close_fds option on Linux 4f5e04da13 Revert "remove unneeded close_fds option from cpp-subprocess" 6cbc28b8dd doc: Fix test_bitcoin path 85368aafa0 test: Run simple tests at various feerates d610951c15 test: Recreate BnB iteration exhaustion test 2a1b2754f1 test: Remove redundant repeated test 4781f5c8be test: Recreate simple BnB failure tests a94030ae98 test: Recreate BnB clone skipping test 7db6f012c0 test: Move BnB feerate sensitivity tests 2bafc46261 test: Recreate simple BnB success tests e976bd3045 validation: add randomness to periodic write interval 2e2f410681 refactor: replace m_last_write with m_next_write b557fa7a17 refactor: rename fDoFullFlush to should_write d73bd9fbe4 validation: write chainstate to disk every hour 68ac9f116c Merge bitcoin/bitcoin#32383: util: Remove `fsbridge::get_filesystem_error_message()` fa4804009c fuzz: Remove unused TimeoutExpired catch in fuzz runner 0750249289 mining: document gbt_rule_value helper 5e87c3ec09 scripted-diff: rename gbt_force and gbt_force_name 97eaadc3bf util: Remove `fsbridge::get_filesystem_error_message()` 14b8dfb2bd Merge bitcoin/bitcoin#31398: wallet: refactor: various master key encryption cleanups a60445cd04 Merge bitcoin/bitcoin#32355: Bugfix: Miner: Don't reuse block_reserved_weight for "block is full enough to give up" weight delta 2d5b424414 Merge bitcoin/bitcoin#32351: test: avoid stack overflow in `FindChallenges` via manual iteration 0ed5f37afe Merge bitcoin/bitcoin#31014: net: Use GetAdaptersAddresses to get local addresses on Windows 7a4a2a38ea Merge bitcoin/bitcoin#27826: validation: log which peer sent us a header 4694732bc4 Merge bitcoin/bitcoin#32338: net: remove unnecessary check from AlreadyConnectedToAddress() 7db096121d Merge bitcoin/bitcoin#29039: versionbits refactoring 51d76634fb Merge bitcoin/bitcoin#32365: descriptors: Reject + sign while parsing unsigned c5e44a0435 Merge bitcoin/bitcoin#32369: test: Use the correct node for doubled keypath test 32d55e28af test: Use the correct node for doubled keypath test 65714c162c Merge bitcoin/bitcoin#32327: test: Add missing check for empty stderr in util tester a4eee6d50b Merge bitcoin/bitcoin#29124: test: Test that migration automatically repairs corrupted metadata with doubled derivation path af6cffa36d Merge bitcoin/bitcoin#32350: test: Slim down previous releases bdb check 33e6538b30 Merge bitcoin/bitcoin#32360: test: Force named args for RPCOverloadWrapper optional args 3a29ba33dc Merge bitcoin/bitcoin#32357: depends: Fix cross-compiling `qt` package from macOS to Windows fa655da159 test: [refactor] Use ToIntegral in CheckInferDescriptor fa55dd01df descriptors: Reject + sign when parsing multi threshold fa6f77ed3c descriptors: Reject + sign in ParseKeyPathNum 7e8ef959d0 refactor: Fix Sonar rule `cpp:S4998` - avoid unique_ptr const& as parameter e400ac5352 refactor: simplify repeated comparisons in `FindChallenges` f670836112 test: remove old recursive `FindChallenges_recursive` implementation b80d0bdee4 test: avoid stack overflow in `FindChallenges` via manual iteration fa48be3ba4 test: Force named args for RPCOverloadWrapper optional args aaaa45399c test: Remove unused createwallet_passthrough d05481df64 refactor: validation: mark SnapshotBase as const f409444d02 Merge bitcoin/bitcoin#32071: build: Drop option to disable hardening. cccc1f4e91 test: Remove unused RPCOverloadWrapper is_cli field d62c2d82e1 Merge bitcoin/bitcoin#32353: doc: Fix fuzz test_runner.py path 10845cd7cc qa: Add feature_framework_startup_failures.py 35e57fbe33 depends: Fix cross-compiling `qt` package from macOS to Windows d2ac748e9e Merge bitcoin-core/gui#864: Crash fix, disconnect numBlocksChanged() signal during shutdown 524f981bb8 Bugfix: Miner: Don't reuse block_reserved_weight for "block is full enough to give up" weight delta 84de8c93e7 ci: Add `deploy` target for native macOS CI job fad57e9e0f build: Fix `macdeployqtplus` after switching to Qt 6 de90b47ea0 Merge bitcoin-core/gui#868: Replace stray tfm::format to cerr with qWarning a58cb3b1c1 qa: sanity check mined block have their coinbase timelocked to height 8f2078af6a miner: timelock coinbase transactions 788aeebf34 qa: use prev height as nLockTime for coinbase txs created in unit tests c76dbe9b8b qa: timelock coinbase transactions created in fuzz targets 9c94069d8b contrib: timelock coinbase transactions in signet miner a5f52cfcc4 qa: timelock coinbase transactions created in functional tests 61f238e84a doc: Fix fuzz test_runner.py path c7e2b9e264 tests: Test migration cleans up bad inactive chain derivation path fa58f40b89 test: Slim down previous releases bdb check f1b142856a test: Same addr, diff port is already connected 94e85a82a7 net: remove unnecessary check from AlreadyConnectedToAddress() 28e282ef9a qa: assert_raises_message() - Stop assuming certain structure for exceptions 80e6ad9e30 Merge bitcoin/bitcoin#31250: wallet: Disable creating and loading legacy wallets 971952588d Merge bitcoin/bitcoin#32242: guix: Remove unused `file` package ff69046e66 Merge bitcoin/bitcoin#32215: depends: Fix cross-compiling on macOS 2ae1788dd4 Skip range verification for non-ranged desc 4eee328a98 Merge bitcoin/bitcoin#32318: Fix failing util_time_GetTime test on Windows 71656bdfaa gui: crash fix, disconnect numBlocksChanged() signal during shutdown 3dbd50a576 Fix failing util_time_GetTime test on Windows edd46566bd qt: Replace stray tfm::format to cerr with qWarning 458720e5e9 Merge bitcoin/bitcoin#32336: test: Suppress upstream `-Wduplicate-decl-specifier` in bpfcc facb9b327b scripted-diff: Use bpf_cflags fa0c1baaf8 test: Add imports for util bpf_cflags 9efe546688 Merge bitcoin/bitcoin#31835: validation: set BLOCK_FAILED_CHILD correctly bd158ab4e3 Merge bitcoin/bitcoin#32023: wallet: removed duplicate call to GetDescriptorScriptPubKeyMan 17bb63f9f9 wallet: Disallow loading legacy wallets 9f04e02ffa wallet: Disallow creating legacy wallets 6b247279b7 wallet: Disallow legacy wallet creation from the wallet tool 5e93b1fd6c bench: Remove WalletLoadingLegacy benchmark 56f959d829 wallet: Remove wallettool salvage 7a41c939f0 wallet: Remove -format and bdb from wallet tool's createfromdump c847dee148 test: remove legacy wallet functional tests 20a9173717 test: Remove legacy wallet tests from wallet_reindex.py 446d480cb2 test: Remove legacy wallet tests from wallet_backwards_compatibility.py aff80298d0 test: wallet_signer.py bdb will be removed f94f9399ac test: Remove legacy wallet unit tests d9ac9dbd8e tests, gui: Use descriptors watchonly wallet for watchonly test 9a4c92eb9a Merge bitcoin/bitcoin#32226: ci: switch to LLVM 20 in tidy job 82d1e94838 Merge bitcoin/bitcoin#32310: test: Run all benchmarks in the sanity check dda2d4e176 Merge bitcoin/bitcoin#32113: fuzz: enable running fuzz test cases in Debug mode faca46b042 test: Run all benchmarks in the sanity check e5a00b2497 Merge bitcoin/bitcoin#32309: bench: close wallets after migration 8406a9f4f1 Merge bitcoin/bitcoin#32325: ci: Add missing -Wno-error=array-bounds to valgrind fuzz fadf12a56c test: Add missing check for empty stderr in util tester fa653cb416 ci: Add missing -Wno-error=array-bounds to valgrind fuzz 08aa7fe232 ci: clang-tidy 20 2b85d31bcc refactor: starts/ends_with changes for clang-tidy 20 96a5cd8000 Merge bitcoin/bitcoin#32293: doc: Add deps install notes for multiprocess 2844adc8ba Merge bitcoin/bitcoin#32308: ci: Drop no longer necessary `-Wno-error=array-bounds` cad39f86fb bench: ensure wallet migration benchmark runs exactly once c1f458aaa0 ci: re-enable all benchmark runs 1da11dbc44 bench: clean up migrated descriptor wallets via loader teardown 3669ecd4cc doc: Document fuzz build options c1d01f59ac fuzz: enable running fuzz test cases in Debug mode 06439a14c8 Merge bitcoin/bitcoin#31953: rpc: Allow fullrbf fee bump in (psbt)bumpfee 3e78ac6811 Merge bitcoin/bitcoin#31243: descriptor: Move filling of keys from `DescriptorImpl::MakeScripts` to `PubkeyProvider::GetPubKey` 728e86e3f3 Merge bitcoin/bitcoin#31640: tests: improves tapscript unit tests 1f639efca5 qa: Work around Python socket timeout issue e3d7533ac9 test: improves tapscript unit tests 2aa63d511a test: Use uninvolved pruned node in feature_pruning undo test 772ba7f9ce test: Fix nTimes typo in feature_pruning test b1ea542ae6 test: test MAX_SCRIPT_SIZE for block validity 9b24a403fa qa: Only allow calling TestNode.stop() after connecting 6ad21b4c01 qa: Include ignored errors in RPC connection timeout 879243e81f qa refactor: wait_for_rpc_connection - Treat OSErrors the same d91a746815 Merge bitcoin/bitcoin#32306: ci: Temporarily disable `WalletMigration` benchmark ff136d046a Merge bitcoin/bitcoin#32213: msvc: Update vcpkg manifest e34f12bdd4 ci: Drop no longer necessary `-Wno-error=array-bounds` 055254e212 Merge bitcoin/bitcoin#32300: feefrac: avoid integer overflow in temporary 33d40a6ad4 Merge bitcoin/bitcoin#32282: torcontrol: Fix addrOnion outdated comment 18a035145d ci: Temporarily disable `WalletMigration` benchmark c7b592fbd7 Merge bitcoin/bitcoin#31247: psbt: MuSig2 Fields e261eb8d50 tests: Add BIP 373 test vectors 26370c68d0 rpc: Include MuSig2 fields in decodepsbt ff3d460898 psbt: Implement un/ser of musig2 fields 5cb1241814 feefrac: avoid integer overflow in temporary 7f5a35cf4b doc: Add deps install notes for multiprocess 247e9de622 Merge bitcoin/bitcoin#32191: Make TxGraph fuzz tests more deterministic bfeacc18b3 Merge bitcoin/bitcoin#32154: fuzz: Avoid integer sanitizer warnings in policy_estimator target fa86190e6e rpc: Allow fullrbf fee bump 06f9ead9f9 Merge bitcoin/bitcoin#32271: doc: Document WITH_EXTERNAL_LIBMULTIPROCESS build option better 4a964868f8 Merge bitcoin/bitcoin#32288: ci: drop -priority-level from bench in win cross CI cd01c9a173 Merge bitcoin/bitcoin#32250: ci: Slim down lint image 513e2020a9 guix: Remove unused `file` package 27f11217ca ci: drop -priority-level from bench in win cross CI 7a3afe6787 Merge bitcoin/bitcoin#32281: bench: Fix WalletMigration benchmark e66e30c9e5 Merge bitcoin/bitcoin#31862: doc: Fix and clarify description of ZMQ message format b6282dbd45 Merge bitcoin/bitcoin#32079: test: Add test coverage for rpcwhitelistdefault when unset eb6b1003c1 Merge bitcoin/bitcoin#32286: test: Handle empty string returned by CLI as None in RPC tests 33df4aebae Merge bitcoin/bitcoin#31551: [IBD] batch block reads/writes during `AutoFile` serialization 679bb2aac2 Merge bitcoin/bitcoin#31958: rpc: add cli examples, update docs dfa2813e31 Merge bitcoin/bitcoin#32248: Remove support for RNDR/RNDRRS for aarch64 7912cd4125 bench: Fix WalletMigration benchmark 938208d91a build: Resolve `@rpath` in `macdeployqtplus` bcaa23a2b7 torcontrol: Fix addrOnion outdate comment a4041c77f0 test: Handle empty string returned by CLI as None in RPC tests abe43dfadd doc: release note for #27826 f9fa28788e Use LogBlockHeader for compact blocks bad7c91479 Log which peer sent us a header 9d3e39c29c Log block header in net_processing cdc32994fe Merge bitcoin/bitcoin#32272: [doc] archive 29.0 release notes faeb1babe2 ci: refactor: Use version id over version codename consistently 12dc507c4a [doc] archive 29.0 release notes acee5c59e6 descriptors: Have GetPrivKey fill keys directly 4b0303197e descriptors: Move FlatSigningProvider pubkey filling to GetPubKey 25a3b9b0f5 descriptors: Have GetPubKey fill origins directly 6268bde0af descriptor: Remove unused parent_info from BIP32PUbKeyProvider::GetPubKey 0ff072caa1 wallet, rpc: Only allow keypool import from single key descriptors 99a4ddf5ab Merge bitcoin/bitcoin#31785: Have createNewBlock() wait for tip, make rpc handle shutdown during long poll and wait methods 22770ce8cb Merge bitcoin/bitcoin#31282: refactor: Make node_id a const& in RemoveBlockRequest 9ccee9cd02 doc: Document WITH_EXTERNAL_LIBMULTIPROCESS build option better 8d801e3efb optimization: bulk serialization writes in `WriteBlockUndo` and `WriteBlock` 520965e293 optimization: bulk serialization reads in `UndoRead`, `ReadBlock` 5116655980 Merge bitcoin/bitcoin#32255: miniscript: Correct off-by-one assert guards (#31727 follow-up) 056cb3c0d2 refactor: clear up blockstorage/streams in preparation for optimization 67fcc64802 log: unify error messages for (read/write)[undo]block a4de160492 scripted-diff: shorten BLOCK_SERIALIZATION_HEADER_SIZE constant 6640dd52c9 Narrow scope of undofile write to avoid possible resource management issue 3197155f91 refactor: collect block read operations into try block 3693e4d6ee miniscript: Correct off-by-one assert guards 817edfb21e Merge bitcoin/bitcoin#32245: doc: Updates how to reproduce fuzz CI failure locally fae322a43a ci: Slim down lint image 3333273a8f ci: Bump lint imagefile FROM base 2835216ec0 txgraph: make GroupClusters use partition numbers directly (optimization) c72c8d5d45 txgraph: compare sequence numbers instead of Cluster* (bugfix) b2bb27f40c Merge bitcoin/bitcoin#31741: multiprocess: Add libmultiprocess git subtree 7749d929a0 Remove support for RNDR/RNDRRS for aarch64 on Linux a4fd565191 Merge bitcoin/bitcoin#31727: miniscript: convert non-critical asserts to CHECK_NONFATAL e364e6b509 Merge bitcoin/bitcoin#32176: net: Prevent accidental circuit sharing when using Tor stream isolation 8fe001d597 doc: Updates how to reproduce fuzz CI failure locally c58ae197a3 Merge bitcoin/bitcoin#32198: fuzz: Make p2p_headers_presync more deterministic e1dfa4faeb Merge bitcoin/bitcoin#32237: qt: Update SetHexDeprecated to FromHex b8cefeb221 Merge bitcoin/bitcoin#32149: wallet, migration: Fix empty wallet crash 874da961d0 Merge bitcoin/bitcoin#32240: feefrac test: avoid integer overflow (bugfix) faa3ce3199 fuzz: Avoid influence on the global RNG from peerman m_rng faf4c1b6fc fuzz: Disable unused validation interface and scheduler in p2p_headers_presync fafaca6cbc fuzz: Avoid setting the mock-time twice fad22149f4 refactor: Use MockableSteadyClock in ReportHeadersPresync fa9c38794e test: Introduce MockableSteadyClock::mock_time_point and ElapseSteady helper faf2d512c5 fuzz: Move global node id counter along with other global state fa98455e4b fuzz: Set ignore_incoming_txs in p2p_headers_presync faf2e238fb fuzz: Shuffle files before testing them 868816d962 refactor: Remove SetHexDeprecated 6b63218ec2 qt: Update SetHexDeprecated to FromHex bb92bb36f2 Merge bitcoin/bitcoin#32206: doc: Add fuzz based coverage report generation 021b4f72db Merge bitcoin/bitcoin#32216: bench: Match ConnectBlock tx output counts ff5b7b0b0a Merge bitcoin/bitcoin#32214: test: Remove fragile and ancient release 0.17 wallet test 873a45fba0 Merge bitcoin/bitcoin#32200: net: Add Tor extended SOCKS5 error codes 8d2ead2a86 Merge bitcoin/bitcoin#32185: coins: replace manual `CDBBatch` size estimation with LevelDB's native `ApproximateSize` ad0eee5492 Merge bitcoin/bitcoin#32139: test: remove strict restrictions on rpc_deprecated test a2bc330da8 feefrac test: avoid integer overflow (bugfix) 24d5033a62 Merge bitcoin/bitcoin#32114: test: Add encodable PUSHDATA1 examples to feature_taproot cfe025ff0e Merge bitcoin/bitcoin#30535: feefrac: add support for evaluating at given size 58914ab459 fuzz: assert min diff between FeeFrac and CFeeRate 0c6bcfd8f7 feefrac: support both rounding up and down for Evaluate ecf956ec9d feefrac: add support for evaluating at given size 7963aecead feefrac: add helper functions for 96-bit division 800c0dea9a feefrac: rework comments around Mul/MulFallback fcfe008db2 feefrac fuzz: use arith_uint256 instead of ad-hoc multiply 46ff4220bf arith_uint256: modernize comparison operators e419b0e17f refactor: Remove manual CDBBatch size estimation 8b5e19d8b5 refactor: Delegate to LevelDB for CDBBatch size estimation 751077c6e2 Coins: Add `kHeader` to `CDBBatch::size_estimate` 0dc74c92c0 Merge bitcoin/bitcoin#32212: test: Remove confusing and failing system time test 7677fde4c7 Add fuzz test coverage report generation c77e3107b8 refactor: rename leftover WriteBlockBench d42e82d650 Merge bitcoin/bitcoin#32218: ci: Merge master in test-each-commit task (take 2) 0f602c5693 wallet, migration: Fix crash on empty wallet fa10a1ded5 ci: Use GITHUB_BASE_REF over hard-coded master fa0d0be05c ci: Merge master in test-each-commit task (take 2) 65dcbec756 Merge bitcoin/bitcoin#32209: test: Preserve llvm profile path b34d49a27e Merge bitcoin/bitcoin#32203: ci: Merge master in test-each-commit task 924f25f6fc bench: Match ConnectBlock tx output counts d0cce4172c depends: Fix `mv` command compatibility with macOS 690f5da15a depends: Specify Objective C/C++ compilers for `native_qt` package c5a7ffd1e8 preserve llvm profile env fac978fb21 test: Remove fragile and ancient release 0.17 wallet test 42c13141b5 wallet, refactor: Decouple into HasLegacyRecords() c66f7dab33 Merge bitcoin/bitcoin#32211: doc: Amend Qt 6 dependency packages for Ubuntu ec81a72b36 net: Add randomized prefix to Tor stream isolation credentials d85895e5a7 build, msvc: Build only required `qtbase` features fe5a6dcc53 build, msvc: Update vcpkg manifest baseline fadf8f078e test: Remove confusing and failing system time test 2e751f559a doc: Amend Qt 6 dependency packages for Ubuntu df82a24508 Merge bitcoin-core/gui#863: refactor: Post Qt 6 cleanup 77dff373a6 Merge bitcoin/bitcoin#32182: ci: Switch to dynamic library linkage in native Windows job 99b9022844 Merge bitcoin/bitcoin#32177: TxGraph: Increase fuzz coverage 3aa58bea8e qt, refactor: Inline `GUIUtil::SplitSkipEmptyParts` function d1ec6db249 qt, refactor: Inline `GUIUtil::GetImage` function 4b36ab3a6a qt, refactor: Remove outdated Qt version-specific code faa807bdf8 ci: Merge master in test-each-commit task 7967fe5bfd ci: Switch to dynamic library linkage in native Windows job a2f28e4be9 Squashed 'src/ipc/libmultiprocess/' content from commit 35944ffd23fa 639279e86a Merge bitcoin/bitcoin#30997: build: Switch to Qt 6 babb9f5db6 depends: remove non-native libmultiprocess build 5d105fb8c3 depends: Switch libmultiprocess packages to use local git subtree 9b35518d2f depends, moveonly: split up int_get_build_id function 2d373e2707 lint: Add exclusions for libmultiprocess subtree e88ab394c1 doc: Update documentation to explain libmultiprocess subtree d4bc563982 cmake: Fix clang-tidy "no input files" errors abdf3cb645 cmake: Fix warnings from boost headers 8532fcb1c3 cmake: Fix ctest mptest "Unable to find executable" errors d597ab1dee cmake: Support building with libmultiprocess subtree 69f0d4adb7 scripted-diff: s/WITH_MULTIPROCESS/ENABLE_IPC/ in cmake 3f6fb40114 Merge commit 'a2f28e4be96e92079a219567cf20214996aefc53' as 'src/ipc/libmultiprocess' d6244f85c5 depends: Update libmultiprocess library to simplify cmake subtree build b639417b39 net: Add Tor extended SOCKS5 error codes f00345727b doc: Update `dependencies.md` for Qt 6 80b917991e build, msvc: Update `vcpkg.json` for Qt 6 30dd1f1644 ci: Update for Qt 6 629d292f4d test: Update sanitizer suppressions for Qt 6 551e13abf8 guix: Adjust for Qt 6 c3e9bd086c qt: Fix compiling for Windows ab399c4db2 depends: Add `native_qt` package 248613eb3e depends: Factor out Qt modules' details 0268f52a4c depends: Introduce customizable `$(package)_patches_path` variables 5e794e6202 depends: Bump `qt` package up to 6.7.3 6d4214925f cmake: Require Qt 6 to build GUI cfa7f70f6c Merge bitcoin/bitcoin#31933: doc: Add Clang/LLVM based coverage report generation 772996ac8b Merge bitcoin/bitcoin#32158: fuzz: Make partially_downloaded_block more deterministic 40de19164c Merge bitcoin/bitcoin#32118: fuzz: wallet: fix crypter target 5541f7ced7 Merge bitcoin/bitcoin#32187: refactor: Remove spurious virtual from final ~CZMQNotificationInterface 6f6f83a8ca Merge bitcoin/bitcoin#32193: test: fix spelling in Python code comment 16b084f88d Merge bitcoin/bitcoin#32194: ci, windows: Do not exclude `wallet_migration.py` in command line 4a679936bb ci, windows: Do not exclude `wallet_migration.py` in command line 449e2eb7e4 Merge bitcoin/bitcoin#32184: ci: Add workaround for vcpkg's `libevent` package 4774a0c923 test: fix spelling in Python code comment 459807d566 test: remove strict restrictions on rpc_deprecated c47f81e8ac net: Rename `_randomize_credentials` Proxy parameter to `tor_stream_isolation` 1a6fc04d81 Merge bitcoin/bitcoin#29500: test: create assert_not_equal util 6af68bb84b Merge bitcoin/bitcoin#32166: torcontrol: Define tor reply code as const to improve our maintainability 6593293e47 Merge bitcoin/bitcoin#32110: contrib: document asmap-tool commands more thoroughly c8ade107c8 Merge bitcoin/bitcoin#31806: fuzz: coinselection: cover `SetBumpFeeDiscount` fa69c42fdf refactor: Remove spurious virtual from final ~CZMQNotificationInterface ea36d2720a Merge bitcoin/bitcoin#31340: test: add missing segwitv1 test cases to `script_standard_tests` 80e47b1920 Merge bitcoin/bitcoin#32096: Move some tests and documentation from testnet3 to testnet4 30c59adda4 ci: Drop confusing comment ef00a28414 ci: Add workaround for vcpkg's libevent package 7bb83f6718 test: create assert_not_equal util and add to where imports are needed 2929da1dd5 test: Add coverage for rpcwhitelistdefault when unset fa51310121 contrib: Warn about using libFuzzer for coverage check fa17cdb191 test: Avoid script check worker threads while fuzzing fa900bb2dc contrib: Only print fuzz output on failure 74d9598bfb Merge bitcoin/bitcoin#32134: descriptors: Multipath/PR 22838 follow-ups a40bd374aa Get*Union: disallow nulltpr Refs 57433502e6 CountDistinctClusters: nullptrs disallowed 8bca0d325a TxGraphImpl::Compact: m_main_clusterset.m_removed is always empty 2c5cf987e9 TxGraphImpl::PullIn: only allowed when staging exists fa82fe2c73 contrib: Use -Xdemangler=llvm-cxxfilt in deterministic-*-coverage fa7e931130 contrib: Add optional parallelism to deterministic-fuzz-coverage 3358b1d105 Merge bitcoin/bitcoin#31176: ci: Test cross-built Windows executables on Windows natively 8e4a0ddd50 torcontrol: Add comment explaining Proxy credential randomization for Tor privacy f974359e21 test: Add encodable PUSHDATA1 examples to feature_taproot ec5c0b26ce torcontrol: Define tor reply code as const to improve maintainability 3c3548a70e validation: clarify final |= BLOCK_FAILED_VALID in InvalidateBlock aac5488909 validation: correctly update BlockStatus for invalid block descendants 9e29653b42 test: check BlockStatus when InvalidateBlock is used c99667583d validation: fix traversal condition to mark BLOCK_FAILED_CHILD 7a93544cdc doc: Fix and clarify description of ZMQ message format 56f271e9b9 descriptors refactor: Clarify multipath data relationships through local struct 7e974f474e descriptors refactor: Use range-for and limit scope of seen_multipath 3e167085ba test: Ensures test fails if witness is not hex 4c1906a500 Merge bitcoin/bitcoin#31992: cmake: Avoid fuzzer "multiple definition of `main'" errors 9acc25bcb6 Merge bitcoin/bitcoin#32153: wallet: remove redundant `Assert` call when block is disconnected 0a1e36effa Merge bitcoin/bitcoin#32151: Follow-ups for txgraph #31363 e3c4bb12ba Merge bitcoin/bitcoin#32058: test: get rid of redundant TODO tag 930b237f16 Merge bitcoin/bitcoin#31874: qa wallet: Activate dormant checks in wallet_multisig_descriptor_psbt.py a52b53926b clusterlin: add GetConnectedComponent 6afffba34e contrib: (asmap) add docs about encode and decode commands 67d5cc2a06 contrib: (asmap) add documentation on diff and diff-addrs commands e047b1deca contrib: (asmap) add diff-addrs example to README c7d5dcaa61 clusterlin: fix typos 777179bc27 txgraph: rename group_data in ApplyDependencies 74c23f80ab Merge bitcoin/bitcoin#32145: test: Add functional test for bitcoin-chainstate bcb316bd88 Merge bitcoin/bitcoin#32050: test: avoid treating hash results as integers fa6a007b8e fuzz: Avoid integer sanitizer warnings in policy_estimator target ae6b6ea296 wallet: remove redundant `Assert` call when block is disconnected a54baa8698 Merge bitcoin/bitcoin#32100: doc: clarify the documentation of `Assume` assertion b131e1bfc0 Merge bitcoin/bitcoin#32101: Accept unordered tracepoints in interface_usdt_utxocache.py 8cc601196b Merge bitcoin/bitcoin#32129: doc: Update comments for AreInputsStandard to match code 140f0d89bf Merge bitcoin/bitcoin#32027: cmake: Add `NO_CACHE_IF_FAILED` option for checking linker flags 5dd6ebc7e1 Merge bitcoin/bitcoin#32148: test: fix intermittent timeout in p2p_ibd_stalling.py b413b088ae Merge bitcoin/bitcoin#32141: fuzz: extract unsequenced operations with side-effects e563cb5c60 Merge bitcoin/bitcoin#31849: depends: set `CMAKE_*_COMPILER_TARGET` in toolchain 603fcc07d5 Merge bitcoin/bitcoin#31896: refactor: Remove redundant and confusing calls to IsArgSet 84bbb40558 Merge bitcoin/bitcoin#32132: build: Remove bitness suffix from Windows installer 6971d3a0f5 Merge bitcoin/bitcoin#32144: lint: Remove needless borrow to fix Clippy warning f1d129d963 Merge bitcoin/bitcoin#31363: cluster mempool: introduce TxGraph 9f35d4d070 test: fix intermittent timeout in p2p_ibd_stalling.py d065208f0f test: get rid of redundant TODO tag 248fdd88dc test: accept unordered tracepoints in... ca55613fd1 test: Add functional test for bitcoin-chainstate 32dcec269b rpc: update RPC help of `createpsbt` 931117a46f rpc: update the doc for `data` field in `outputs` argument aa7a898c23 doc: use testnet4 in developer docs 6c217d22fd test: use testnet4 in argsman test 7c200ece80 test: use testnet4 in key_io_valid.json d424bd5941 test: drop unused testnet3 magic bytes 8cfc09fafe test: cover testnet4 magic in assumeutxo.py 4281e3603a zmq: use testnet4 in zmq_sub.py example 3f9c716e7f test: Fix docstring for cmake migration 52ede28a8a doc: Update comments for AreInputsStandard to match code 35d17cd5ee qa wallet: Actually make use of expressions b96f1a696a add clang/llvm based coverage report generation e3ce2bd982 Remove needless borrow to fix Clippy warning c0b7159de4 Merge bitcoin/bitcoin#32122: fuzz: Fix off-by-one in package_rbf target b1de59e896 fuzz: extract unsequenced operations with side-effects 99a92efdd9 descriptors doc: Correct Markdown format + wording dfb7d58108 Merge bitcoin/bitcoin#31897: mining: drop unused -nFees and sigops from CBlockTemplate 535b874707 test: Combine rpcwhitelistdefault functions 0000fb3fd9 doc: Remove outdated and stale todo comment fa2b529f92 refactor: Remove redundant call to IsArgSet fa29842c1f refactor: Remove IsArgSet guard when fallback value is provided 2b6ce9254d test: Update permissions and string formatting fa5674c264 fuzz: Fix off-by-one in package_rbf target 1d281daf86 Merge bitcoin/bitcoin#32095: doc: clarify that testnet min-difficulty is not optional a0d737cd7a Merge bitcoin/bitcoin#32073: net: Block v2->v1 transport downgrade if !fNetworkActive 77e553ab6a build: refactor: hardening flags -> core_interface 00ba3ba303 build: Drop option for disabling hardening f57db75e91 build: Use `-z noseparate-code` on NetBSD < 11.0 b3162d10ea Merge bitcoin/bitcoin#31656: test: Add expected result assertions 5f3848c63b Merge bitcoin/bitcoin#31278: wallet, rpc: deprecate settxfee and paytxfee 329a0dcdaf doc: clarify the documentation of `Assume` fb2b05b125 build: Remove bitness suffix from Windows installer b2ea365648 txgraph: Add Get{Ancestors,Descendants}Union functions (feature) 54bceddd3a txgraph: Multiple inputs to Get{Ancestors,Descendant}Refs (preparation) aded047019 txgraph: Add CountDistinctClusters function (feature) b685d322c9 txgraph: Add DoWork function (feature) 295a1ca8bb txgraph: Expose ability to compare transactions (feature) 22c68cd153 txgraph: Allow Refs to outlive the TxGraph (feature) 82fa3573e1 txgraph: Destroying Ref means removing transaction (feature) 6b037ceddf txgraph: Cache oversizedness of graphs (optimization) 8c70688965 txgraph: Add staging support (feature) c99c7300b4 txgraph: Abstract out ClearLocator (refactor) 34aa3da5ad txgraph: Group per-graph data in ClusterSet (refactor) 36dd5edca5 txgraph: Special-case removal of tail of cluster (Optimization) 5801e0fb2b txgraph: Delay chunking while sub-acceptable (optimization) 57f5499882 txgraph: Avoid looking up the same child cluster repeatedly (optimization) 1171953ac6 txgraph: Avoid representative lookup for each dependency (optimization) 64f69ec8c3 txgraph: Make max cluster count configurable and "oversize" state (feature) 1d27b74c8e txgraph: Add GetChunkFeerate function (feature) c80aecc24d txgraph: Avoid per-group vectors for clusters & dependencies (optimization) ee57e93099 txgraph: Add internal sanity check function (tests) 05abf336f9 txgraph: Add simulation fuzz test (tests) 8ad3ed2681 txgraph: Add initial version (feature) 6eab3b2d73 feefrac: Introduce tagged wrappers to distinguish vsize/WU rates d449773899 scripted-diff: (refactor) ClusterIndex -> DepGraphIndex bfeb69f6e0 clusterlin: Make IsAcyclic() a DepGraph member function 0aa874a357 clusterlin: Add FixLinearization function + fuzz test 55b931934a removed duplicate calling of GetDescriptorScriptPubKeyMan 05117e6e17 rpc: clarify longpoll behavior 5315278e7c Have createNewBlock() wait for a tip 8284229a28 refactor: deduplicate anchor witness program bytes (`0x4e,0x73`) 41f2f058d0 test: add missing segwitv1 test cases to `script_standard_tests` 770d39a376 Merge bitcoin/bitcoin#31887: CLI cleanups a203928693 Merge bitcoin/bitcoin#30538: Doc: add a comment referencing past vulnerability next to where it was fixed b9c281011b Merge bitcoin/bitcoin#31689: Benchmark Chainstate::ConnectBlock duration 963355037f depends: set CMAKE_*_COMPILER_TARGET in toolchain af3dee0b8d Merge bitcoin/bitcoin#32074: contrib: Make deterministic-coverage error messages more readable 0ff66b1c4a fuzz: coinselection: cover `SetBumpFeeDiscount` 28dc118001 fuzz: wallet: fix crypter target 8046759305 Merge bitcoin/bitcoin#31870: fuzz: split `coinselection` harness 2db00278ea Merge bitcoin/bitcoin#31910: qa: fix an off-by-one in utxo snapshot fuzz target and sanity check its snapshot data c9a61509ba Merge bitcoin/bitcoin#31979: torcontrol: Limit reconnect timeout to max seconds and log delay in whole seconds b43cfa20fd Merge bitcoin/bitcoin#30142: doc: add guidance for RPC to developer notes 85feb094d4 Merge bitcoin/bitcoin#32092: test: Fix intermittent issue in p2p_orphan_handling.py b858b72903 Merge bitcoin/bitcoin#31841: fuzz: Use immediate task runner to increase fuzz stability fa7a40d952 contrib: Print deterministic-coverage runs fa751639fb contrib: Make deterministic-coverage error messages more readable 998386d446 Merge bitcoin/bitcoin#31866: test, refactor: Add TestNode.binaries to hold binary paths aa87e0b446 Merge bitcoin/bitcoin#31519: refactor: Use std::span over Span ef525e8b7c Merge bitcoin/bitcoin#31457: fuzz: Speed up *_package_eval fuzz targets a bit 7d76c9725c Merge bitcoin/bitcoin#31766: leveldb: pull upstream C++23 changes 780bcf80b5 Merge bitcoin/bitcoin#32091: test: replace assert with assert_equal and assert_greater_than c6eca6f396 doc: add guidance for RPC to developer notes fa310cc6f4 test: Fix intermittent issue in p2p_orphan_handling.py 25b56fd9b4 ci: Test cross-built Windows executables on Windows natively 288481aabd doc: clarify that testnet min-difficulty is not optional e568c1dd13 Merge bitcoin/bitcoin#32088: test: switch wallet_crosschain.py to signet and drop testnet4 e8f6a48e31 Merge bitcoin/bitcoin#32057: test: avoid disk space warning for non-regtest 387385ba1e test: replace assert with assert_equal and assert_greater_than 223fc24c4e Merge bitcoin/bitcoin#31603: descriptor: check whitespace in keys within fragments d190f0facc test, contrib: Fix signer/miner command line escaping 0d2eefca8b test, refactor: Add TestNode.binaries to hold binary paths 3501bca8c7 ci: Move "Windows cross" job from Cirrus CI to GHA CI f8619196ce ci: Use `bash` by default for all platforms d61a847af0 Merge bitcoin/bitcoin#32019: cmake: Check for `makensis` and `zip` tools before using them for optional `deploy` targets cec14ee47d test: switch wallet_crosschain.py to signet 9c2951541c test: drop testnet4 from wallet_crosschain.py 14fec6380d Merge bitcoin/bitcoin#32059: test: Update coverage.cpp to drop linux restriction ece0b41da6 Merge bitcoin/bitcoin#32087: ci: Drop ENABLE_HARDENING=OFF from clang-tidy c9b633d119 Merge bitcoin/bitcoin#31948: ci: [lint] Use Cirrus dockerfile cache 6245c23504 Merge bitcoin/bitcoin#32083: doc: shallow clone `qa-assets` 6869fb4170 net: Block v2->v1 transport downgrade if !CConnman::fNetworkActive 257fd27e4b Merge bitcoin/bitcoin#32033: test: Check datadir cleanup after assumeutxo was successful 6f9f415a4f doc: shallow clone qa-assets db2c57ae9e Merge bitcoin-core/gui#858: qt: doc: adapt outdated binary paths to CMake changes c8fab35617 ci: remove -Wno-error=deprecated-declarations from ASAN a130bbd154 Squashed 'src/leveldb/' changes from 04b5790928..4188247086 24fd0235e4 Update leveldb subtree to latest upstream a799415d84 Merge bitcoin/bitcoin#31904: refactor: modernize outdated trait patterns using helper aliases (C++14/C++17) 5f4422d68d Merge bitcoin/bitcoin#32010: qa: Fix TxIndex race conditions 52482cb244 test: Check datadir cleanup after assumeutxo was successful 7ebc458a8c qt: doc: adapt outdated binary paths to CMake changes cd8089c20b Merge bitcoin/bitcoin#32069: test: fix intermittent failure in wallet_reorgsrestore.py 70a0ee89c6 Me…
1 parent e6e059b commit 069643f

File tree

1,300 files changed

+75913
-38728
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,300 files changed

+75913
-38728
lines changed

.cirrus.yml

Lines changed: 5 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -96,21 +96,15 @@ task:
9696
name: 'lint'
9797
<< : *BASE_TEMPLATE
9898
container:
99-
image: debian:bookworm
99+
dockerfile: ci/lint_imagefile
100100
cpu: 1
101101
memory: 1G
102102
# For faster CI feedback, immediately schedule the linters
103103
<< : *CREDITS_TEMPLATE
104-
test_runner_cache:
105-
folder: "/lint_test_runner"
106-
fingerprint_script: echo $CIRRUS_TASK_NAME $(git rev-parse HEAD:test/lint/test_runner)
107-
python_cache:
108-
folder: "/python_build"
109-
fingerprint_script: cat .python-version /etc/os-release
110104
unshallow_script:
111105
- git fetch --unshallow --no-tags
112106
lint_script:
113-
- ./ci/lint_run_all.sh
107+
- ./ci/lint_run.sh
114108

115109
task:
116110
name: 'tidy'
@@ -131,22 +125,13 @@ task:
131125
FILE_ENV: "./ci/test/00_setup_env_arm.sh"
132126

133127
task:
134-
name: 'Win64, unit tests, no gui tests, no functional tests'
128+
name: 'CentOS, depends, gui'
135129
<< : *GLOBAL_TASK_TEMPLATE
136130
persistent_worker:
137131
labels:
138132
type: small
139133
env:
140-
FILE_ENV: "./ci/test/00_setup_env_win64.sh"
141-
142-
task:
143-
name: '32-bit CentOS, dash, gui'
144-
<< : *GLOBAL_TASK_TEMPLATE
145-
persistent_worker:
146-
labels:
147-
type: small
148-
env:
149-
FILE_ENV: "./ci/test/00_setup_env_i686_centos.sh"
134+
FILE_ENV: "./ci/test/00_setup_env_native_centos.sh"
150135

151136
task:
152137
name: 'previous releases, depends DEBUG'
@@ -182,6 +167,7 @@ task:
182167
persistent_worker:
183168
labels:
184169
type: medium
170+
timeout_in: 240m # larger timeout, due to the high CPU demand
185171
env:
186172
FILE_ENV: "./ci/test/00_setup_env_native_fuzz.sh"
187173

.github/ISSUE_TEMPLATE/good_first_issue.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ body:
2828
id: useful-skills
2929
attributes:
3030
label: Useful Skills
31-
description: For example, “`std::thread`”, “Qt5 GUI and async GUI design” or “basic understanding of Bitcoin mining and the Bitcoin Core RPC interface”.
31+
description: For example, “`std::thread`”, “Qt6 GUI and async GUI design” or “basic understanding of Bitcoin mining and the Bitcoin Core RPC interface”.
3232
value: |
3333
* Compiling Bitcoin Core from source
3434
* Running the C++ unit tests and the Python functional tests
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
#!/usr/bin/env python3
2+
# Copyright (c) The Bitcoin Core developers
3+
# Distributed under the MIT software license, see the accompanying
4+
# file COPYING or https://opensource.org/license/mit/.
5+
6+
import subprocess
7+
import sys
8+
import shlex
9+
10+
11+
def run(cmd, **kwargs):
12+
print("+ " + shlex.join(cmd), flush=True)
13+
try:
14+
return subprocess.run(cmd, check=True, **kwargs)
15+
except Exception as e:
16+
sys.exit(e)
17+
18+
19+
def main():
20+
print("Running test-one-commit on ...")
21+
run(["git", "log", "-1"])
22+
23+
num_procs = int(run(["nproc"], stdout=subprocess.PIPE).stdout)
24+
25+
# Use clang++, because it is a bit faster and uses less memory than g++
26+
run([
27+
"cmake",
28+
"-B",
29+
"build",
30+
"-DCMAKE_C_COMPILER=clang",
31+
"-DCMAKE_CXX_COMPILER=clang++",
32+
"-DWERROR=ON",
33+
"-DWITH_ZMQ=ON",
34+
"-DBUILD_GUI=ON",
35+
"-DBUILD_BENCH=ON",
36+
"-DBUILD_FUZZ_BINARY=ON",
37+
"-DWITH_USDT=ON",
38+
"-DBUILD_KERNEL_LIB=ON",
39+
"-DBUILD_KERNEL_TEST=ON",
40+
"-DCMAKE_CXX_FLAGS=-Wno-error=unused-member-function",
41+
])
42+
run(["cmake", "--build", "build", "-j", str(num_procs)])
43+
run([
44+
"ctest",
45+
"--output-on-failure",
46+
"--stop-on-failure",
47+
"--test-dir",
48+
"build",
49+
"-j",
50+
str(num_procs),
51+
])
52+
run([
53+
sys.executable,
54+
"./build/test/functional/test_runner.py",
55+
"-j",
56+
str(num_procs * 2),
57+
"--combinedlogslen=99999999",
58+
])
59+
60+
61+
if __name__ == "__main__":
62+
main()

0 commit comments

Comments
 (0)