Skip to content

Conversation

@hebasto
Copy link
Member

@hebasto hebasto commented Nov 17, 2024

This PR is the first step towards treating IWYU warnings as errors. At this stage, it applies only to the crypto and index directories.

@DrahtBot
Copy link
Contributor

DrahtBot commented Nov 17, 2024

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/31308.

Reviews

See the guideline for information on the review process.

Type Reviewers
ACK ryanofsky, maflcko, willcl-ark
Concept ACK jonatack, l0rinc, sipa

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:

  • #26966 (index: initial sync speedup, parallelize process by furszy)

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.

@hebasto
Copy link
Member Author

hebasto commented Dec 12, 2024

Rebased.

Copy link
Contributor

@ryanofsky ryanofsky left a comment

Choose a reason for hiding this comment

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

Code review ACK d03d861. Just fixing up comment and changing variable name since last review. Thanks for the updates!

IWYU issue bitcoin#1763 appears to be a corner case, so it has been addressed
using a local pragma rather than a global mapping.
@hebasto
Copy link
Member Author

hebasto commented Sep 9, 2025

Rebased due to a conflict with #30469.

@sipa
Copy link
Member

sipa commented Sep 9, 2025

Concept ACK

Copy link
Contributor

@ryanofsky ryanofsky left a comment

Choose a reason for hiding this comment

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

Code review ACK 02d2b5a. Just rebased and update tidy patch comment again since last review

@maflcko
Copy link
Member

maflcko commented Oct 22, 2025

Only small changes:

  • Rebase
  • one minimal doc fixup
  • one minimal symbol rename in the ci script

re-ACK 02d2b5a 💮

Show signature

Signature:

untrusted comment: signature from minisign secret key on empty file; verify via: minisign -Vm "${path_to_any_empty_file}" -P RWTRmVTMeKV5noAMqVlsMugDDCyyTSbA3Re5AkUrhvLVln0tSaFWglOw -x "${path_to_this_whole_four_line_signature_blob}"
RUTRmVTMeKV5npGrKx1nqXCw5zeVHdtdYURB/KlyA/LMFgpNCs+SkW9a8N95d+U4AP1RJMi+krxU1A3Yux4bpwZNLvVBKy0wLgM=
trusted comment: re-ACK 02d2b5a11c921ef71c971ee80eb3dfbc75c8cb0d 💮
i6k+tDtPP9iRHFh7vqSwsKvwZGIQPp3PvB3+nmXymPC4FluFds6Qg6B9l4gWYCS6MeOr/J1S2JKTnHlyd54bAg==

@maflcko
Copy link
Member

maflcko commented Oct 22, 2025

Looks like the CI re-run passed after one month, so it seems reasonable stable

@maflcko
Copy link
Member

maflcko commented Oct 25, 2025

rfm?

Copy link
Member

@willcl-ark willcl-ark left a comment

Choose a reason for hiding this comment

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

ACK 02d2b5a

I like the approach here of enforcing as-we-go through the codebase. Something similar was done recently in nixpkgs with their treefmt formatter.

Tested that this worked locally by modifying the test script and running.

Details
#!/usr/bin/env bash
set -x

BASE_ROOT_DIR="$HOME/src/core/bitcoin"
BASE_BUILD_DIR="$BASE_ROOT_DIR/build"
FILES_WITH_ENFORCED_IWYU="$HOME/src/core/bitcoin/src/(crypto|index)/.*\\.cpp"

jq --arg patterns "$FILES_WITH_ENFORCED_IWYU" 'map(select(.file | test($patterns)))' "${BASE_BUILD_DIR}/compile_commands.json" > "${BASE_BUILD_DIR}/compile_commands_iwyu_errors.json"
jq --arg patterns "$FILES_WITH_ENFORCED_IWYU" 'map(select(.file | test($patterns) | not))' "${BASE_BUILD_DIR}/compile_commands.json" > "${BASE_BUILD_DIR}/compile_commands_iwyu_warnings.json"

cd "${BASE_ROOT_DIR}" || exit

run_iwyu() {
    mv "${BASE_BUILD_DIR}/$1" "${BASE_BUILD_DIR}/compile_commands.json"
    "$(command -v iwyu_tool.py)" \
         -p "${BASE_BUILD_DIR}" "${MAKEJOBS}" \
         -- -Xiwyu --cxx17ns -Xiwyu --mapping_file="${BASE_ROOT_DIR}/contrib/devtools/iwyu/bitcoin.core.imp" \
         -Xiwyu --max_line_length=160 \
         2>&1 | tee /tmp/iwyu_ci.out
    "$(command -v fix_includes.py)" --nosafe_headers < /tmp/iwyu_ci.out
}

run_iwyu "compile_commands_iwyu_errors.json"
if ! ( git --no-pager diff --exit-code ); then
    echo "^^^ ⚠️ Failure generated from IWYU"
    false
fi

run_iwyu "compile_commands_iwyu_warnings.json"
git --no-pager diff

@hebasto hebasto merged commit 24434c1 into bitcoin:master Oct 28, 2025
42 checks passed
@hebasto hebasto deleted the 241117-force-iwyu branch October 28, 2025 11:55
TheCharlatan added a commit to TheCharlatan/rust-bitcoinkernel that referenced this pull request Oct 29, 2025
…a43dc365c

1ea43dc365c kernel: Add Purpose section to header documentation
6fb86d14a3e kernel: Allowing reducing exports
0a3644da67e kernel: Add pure kernel bitcoin-chainstate
bb7276e1a72 Kernel: Add functions for working with outpoints
5ef72e7c44b kernel: Add block hash type and block tree utility functions to C header
43b7b7b9d28 kernel: Add function to read block undo data from disk to C header
06a485c9ab1 kernel: Add functions to read block from disk to C header
69c184b44f9 kernel: Add function for copying block data to C header
0e973b20fcc kernel: Add functions for the block validation state to C header
6c2181dc52f kernel: Add validation interface to C header
4d8aa6b3fb1 kernel: Add interrupt function to C header
2ecd926cf30 kernel: Add import blocks function to C header
efcfe2dfedf kernel: Add chainstate load options for in-memory dbs in C header
bc6788ab7dc kernel: Add options for reindexing in C header
e8f2f4fe225 kernel: Add block validation to C header
ffd4ae233ee kernel: Add chainstate loading when instantiating a ChainstateManager
1167af89a8f kernel: Add chainstate manager option for setting worker threads
b88637f6967 kernel: Add chainstate manager object to C header
b4ff3ce0d34 kernel: Add notifications context option to C header
e3d62c1ad32 kernel: Add chain params context option to C header
a184a263df2 kernel: Add kernel library context object
776c879eaf7 kernel: Add logging to kernel library C header
e3b2e01811f kernel: Introduce initial kernel C header API
3bb30658e63 Merge bitcoin/bitcoin#32380: Modernize use of UTF-8 in Windows code
5a58d4915e5 Merge bitcoin/bitcoin#33546: test: add functional test for `TestShell` (matching doc example)
1abc8fa308d Merge bitcoin/bitcoin#33218: refactor: rename `fees.{h,cpp}` to `fees/block_policy_estimator.{h,cpp}`
de15e52f09d Merge bitcoin/bitcoin#32867: doc: mention key removal in rpc interface modification
24434c1284b Merge bitcoin/bitcoin#31308: ci, iwyu: Treat warnings as errors for specific directories
27cd7f50494 Merge bitcoin/bitcoin#33185: guix: update time-machine to 5cb84f2013c5b1e48a7d0e617032266f1e6059e2
80bb7012be8 Merge bitcoin/bitcoin#31514: wallet: allow label for non-ranged external descriptor (if `internal=false`) & disallow label for ranged descriptors
5e1f626ac30 Merge bitcoin/bitcoin#32504: test: descriptor: cover invalid multi/multi_a cases
56e9703968e Merge bitcoin/bitcoin#29640: Fix tiebreak when loading blocks from disk (and add tests for comparing chain ties)
9bd9ec00b23 Merge bitcoin/bitcoin#33688: test: Update BIP324 test vectors
1a7fb5eeeef fees: return current block height in estimateSmartFee
ab49480d9be fees: rename fees_args to block_policy_estimator_args
06db08a4356 fees: refactor: rename fees to block_policy_estimator
6dfdd7e034d fees: refactor: rename policy_fee_tests.cpp to feerounder_tests.cpp
f54ffb4bc14 Merge bitcoin/bitcoin#32813: clang-format: make formatting deterministic for different formatter versions
1916c51cd85 Merge bitcoin/bitcoin#33210: fuzz: enhance wallet_fees by mocking mempool stuff
0eb554728ca Merge bitcoin/bitcoin#33336: log: print every script verification state change
c6c4edf324a Merge bitcoin/bitcoin#32983: rpc: refactor: use string_view in Arg/MaybeArg
00ad998d954 Merge bitcoin/bitcoin#33252: p2p: add `DifferenceFormatter` fuzz target and invariant check
f6ba97cea1d Merge bitcoin/bitcoin#33666: ci: Drop libFuzzer from msan fuzz task
af78d365129 Merge bitcoin/bitcoin#32588: util: Abort on failing CHECK_NONFATAL in debug builds
51877f2fc5e test: Update BIP324 test vectors
161864a038e Merge bitcoin/bitcoin#32579: p2p: Correct unrealistic headerssync unit test behavior
70a6fb5e5ab Merge bitcoin/bitcoin#33172: test: p2p block malleability
99cb2054bdf Merge bitcoin/bitcoin#33600: refactor: Construct g_verify_flag_names on first use
211bf6c9750 Merge bitcoin/bitcoin#33566: miner: fix empty mempool case for waitNext()
944e5ff848f doc: mention key removal in rpc interface modification
d32f9525e48 Merge bitcoin/bitcoin#33679: test: set number of RPC server threads to 2
1c85d062321 Merge bitcoin/bitcoin#32266: depends: Avoid `warning: "_FORTIFY_SOURCE" redefined` for `libevent`
11684c9ce2c Merge bitcoin/bitcoin#33674: ci: Doc ASLR workaround for sanitizer tasks
e9cd45e3d3c test: set number of RPC server threads to 2
7d27af98c7c Merge bitcoin/bitcoin#33461: ci: add Valgrind fuzz
1569bcc387f Merge bitcoin/bitcoin#33639: ci: Only write docker build images to Cirrus cache
98c4994d0f3 Merge bitcoin/bitcoin#33570: randomenv: Fix MinGW dllimport warning for `environ`
c211d183221 Merge bitcoin/bitcoin#33670: test: Use unassigned p2p_port instead of hardcoded 60000 in p2p_i2p_ports.py
e4b04630bcf ci: add Valgrind fuzz
3fee0754a2e Merge bitcoin/bitcoin#33550: Fix windows libc++ `fs::path` `fstream` compile errors
fa0e36156cb ci: Doc ASLR workaround for sanitizer tasks
fa20275db32 test: Use unassigned p2p_port instead of hardcoded 60000 in p2p_i2p_ports.py
c862936d16a Merge bitcoin/bitcoin#33370: ci: use Mold linker for asan-lsan-ubsan-integer-no-depends-usdt workflow
fabe0e07de1 ci: Only write docker build images to Cirrus cache
fab64a5d6fd ci: Move buildx command to python script
fa72a2bd5c8 ci: Remove unused MAYBE_CPUSET
fa70e23de75 ci: Drop libFuzzer from msan fuzz task
abe7cbfe1a4 Merge bitcoin/bitcoin#33470: build: Move CMAKE_SKIP_INSTALL_RPATH from CMake to Guix script
689ec28d1d1 Merge bitcoin/bitcoin#33633: test: [move-only] binary utils to utils.py
0eeae4d174a Merge bitcoin/bitcoin#33625: Update secp256k1 subtree to latest master
4b41f99d57d build: Move CMAKE_SKIP_INSTALL_RPATH from CMake to Guix script
d30f149360d Merge bitcoin/bitcoin#33630: doc: correct topology requirements in submitpackage helptext
3d222825642 [doc] correct topology requirements in submitpackage helptext
e744fd1249b Merge bitcoin/bitcoin#33641: Update leveldb subtree to latest master
4371740bebf Merge bitcoin/bitcoin#33642: doc: archive release notes for v28.3
ceea24b9215 doc: archive release notes for v28.3
54ffe3de5b1 Update leveldb subtree to latest master
f21162d8193 Squashed 'src/leveldb/' changes from aba469ad6a..cad64b151d
e14451ac873 Merge bitcoin/bitcoin#33469: TxGraph: change m_excluded_clusters
f76e1ae3899 Merge bitcoin/bitcoin#32313: coins: fix `cachedCoinsUsage` accounting in `CCoinsViewCache`
59c4898994b guix: remove python-pydantic-core input from LIEF
9f2a6927d3a guix: use Clang & LLVM 19 for macOS build
9570ddbec9c guix: update time-machine to 5cb84f2013c5b1e48a7d0e617032266f1e6059e2
7b5cc276aa0 guix: patch around riscv issue with newer (2.40+) binutils
91b5cbaabbc ci: use Debian Trixie for macOS cross job
fa75ef4328f test: Move export_env_build_path to util.py
fa9f495308a test: Move get_binary_paths and Binaries to util.py
40e7d4cd0d7 Merge bitcoin/bitcoin#33549: ci: Add macOS cross task for arm64-apple-darwin
ea17618c116 Merge bitcoin/bitcoin#33480: ci: Turn CentOS config into Alpine musl config
b1f8a13702e Merge bitcoin/bitcoin#33624: test: P2SH sig ops are only counted with `SCRIPT_VERIFY_P2SH`
879c21045eb Update secp256k1 subtree to latest master
3cbf7cb3e6a Squashed 'src/secp256k1/' changes from b9313c6e1a..d543c0d917
2f7a50f67cd Merge bitcoin/bitcoin#33462: ci: add libcpp hardening flags to macOS fuzz job
48aa0e98d0b Merge bitcoin/bitcoin#29675: wallet: Be able to receive and spend inputs involving MuSig2 aggregate keys
db4bde0b034 Merge bitcoin/bitcoin#33517: multiprocess: Fix high overhead from message logging
3a10d700bc1 test: P2SH sig ops are only counted with `SCRIPT_VERIFY_P2SH` flag
9314113b295 Merge bitcoin/bitcoin#33610: doc: archive release notes for v29.2
9b43428c968 TxGraph: change m_excluded_clusters
6e1adbbaa15 Merge bitcoin/bitcoin#33612: test: change log rate limit version gate
fdcf67de803 Merge bitcoin/bitcoin#33157: cluster mempool: control/optimize TxGraph memory usage
7b544341c00 test: change log rate limit version gate from 299900 to 290100
9610b0d1e28 randomenv: Fix MinGW dllimport warning for `environ`
6c4fe401e90 Merge bitcoin/bitcoin#33508: ci: fix buildx gha cache authentication on forks
8f7673257a1 miner: fix empty mempool case for waitNext()
c11a3dcc889 doc: archive release notes for v29.2
64a7c7cbb97 Merge bitcoin/bitcoin#33558: ci: Use native platform for win-cross task
93b56e95c02 Merge bitcoin/bitcoin#33601: doc: archive release notes for v30.0
563747971be Merge bitcoin/bitcoin#33580: depends: Use $(package)_file_name when downloading from the fallback
24d861da789 coins: only adjust `cachedCoinsUsage` on `EmplaceCoinInternalDANGER` insert
d7c9d6c2914 coins: fix `cachedCoinsUsage` accounting to prevent underflow
39cf8bb3d0d refactor: remove redundant usage tracking from `CoinsViewCacheCursor`
67cff8bec90 refactor: assert newly-created parent cache entry has zero memory usage
023cd5a5469 txgraph: add SingletonClusterImpl (mem optimization)
e3462507325 txgraph: give Clusters a range of intended tx counts (preparation)
e93b0f09cc2 txgraph: abstract out creation of empty Clusters (refactor)
6baf12621f6 txgraph: comment fixes (doc fix)
726b995739a txgraph: make Cluster an abstract class (refactor)
2602d89edd0 txgraph: avoid accessing other Cluster internals (refactor)
04c808ac4c4 txgraph: expose memory usage estimate function (feature)
7680bb8fd48 txgraph: keep track of Cluster memory usage (preparation)
4ba562e5f4e txgraph: keep data structures compact (mem optimization)
bb5cb222ae5 depgraph: add memory usage control (feature)
b1637a90deb txgraph: avoid holes in DepGraph positions (mem optimization)
2b1d3025087 txgraph: move some sanity checks from Cluster to TxGraphImpl (refactor)
d40302fbaf4 txgraph: Make level of Cluster implicit (optimization)
8d6e49158e3 doc: archive release notes for v30.0
0626b90f507 multiprocess: align our logging with libmultiprocess's
9d068225ee2 multiprocess: update multiprocess EventLoop construction to use options
d2987102dd1 Merge bitcoin/bitcoin#33573: doc: bump the template macOS version
f6567527d8d doc: bump the template macOS version
faa9d10c84b refactor: Construct g_verify_flag_names on first use
becf1500131 Merge bitcoin/bitcoin#33518: Update libmultiprocess subtree to support reduced logging
cd1b7fa1ff7 Merge bitcoin/bitcoin#33577: Revert "depends: Update URL for `qrencode` package source tarball"
6b4a92b0fab Merge bitcoin/bitcoin#33568: doc: how to update a subtree
90b2884ce4b Merge bitcoin/bitcoin#33581: ci: Properly include $FILE_ENV in DEPENDS_HASH
d44b860cd09 Merge bitcoin/bitcoin#33584: ci: upgrade GitHub Action to download-artifact@v5
57f7c68821d test: add functional test for `TestShell` (matching doc example)
53874f7934d doc: test: update TestShell example instructions/options
b35341b9ba6 Update ci.yml
ceeb53adcd0 ci: Properly include $FILE_ENV in DEPENDS_HASH
671b774d1b5 depends: Use $(package)_file_name when downloading from the fallback
e4335a31920 Revert "depends: Update URL for `qrencode` package source tarball"
a89a822e6eb Revert "depends: Use hash instead of file name for package download stamp"
fad5a7101cc ci: Add macOS cross task for arm64
fa8c750a0af ci: Refactor get_previous_releases step in win-test-cross task
e4c04f7759b ci: add libcpp hardening flags to macOS fuzz job
a1226bc760c doc: how to update a subtree
eda91b07fd9 Merge commit '0f01e1577f7c6734eb345139a12aba329ef22a5f' into pr/subtree-6
0f01e1577f7 Squashed 'src/ipc/libmultiprocess/' changes from 47d79db8a552..a4f929696490
fa6fd16f36e ci: Use native platform for win-cross task
53e4951a5b5 Switch to ANSI Windows API in `fsbridge::fopen()` function
dbe770d9210 Switch to ANSI Windows API in `Win32ErrorString()` function
06d0be4e22c Remove no longer necessary `WinCmdLineArgs` class
f366408492f cmake: Set process code page to UTF-8 on Windows
dccbb178065 Set minimum supported Windows version to 1903 (May 2019 Update)
c864a4c1940 Simplify fs::path by dropping filename() and make_preferred() overloads
b0113afd44b Fix windows libc++ fs::path fstream compile errors
b63428ac9ce rpc: refactor: use more (Maybe)Arg<std::string_view>
037830ca0db refactor: increase string_view usage
b3bf18f0bac rpc: refactor: use string_view in Arg/MaybeArg
45bd8914658 log: split assumevalid ancestry-failure-reason message
6c13a38ab51 log: separate script verification reasons
f2ea6f04e79 refactor: untangle assumevalid decision branches
9bc298556cb validation: log initial script verification state
4fad4e992c4 test: add assumevalid scenarios scaffold
ac599c4a9cb test: Test MuSig2 in the wallet
68ef954c4c5 wallet: Keep secnonces in DescriptorScriptPubKeyMan
4a273edda0e sign: Create MuSig2 signatures for known MuSig2 aggregate keys
258db938899 sign: Add CreateMuSig2AggregateSig
bf69442b3f5 sign: Add CreateMuSig2PartialSig
512b17fc56e sign: Add CreateMuSig2Nonce
82ea67c607c musig: Add MuSig2AggregatePubkeys variant that validates the aggregate
d99a081679e psbt: MuSig2 data in Fill/FromSignatureData
4d8b4f53363 signingprovider: Add musig2 secnonces
c06a1dc86ff Add MuSig2SecNonce class for secure allocation of musig nonces
9baff05e494 sign: Include taproot output key's KeyOriginInfo in sigdata
4b24bfeab9d pubkey: Return tweaks from BIP32 derivation
bc706955d74 ci: expose all ACTIONS_* vars
444409ff2b7 ci: Reduce Alpine musl task to md runner size
fa6b2e9efec ci: Turn centos config into alpine musl config
91ac64b0a66 log: reword `signature validations` to `script verification` in `assumevalid` log
f14876213aa musig: Move synthetic xpub construction to its own function
f031536f2d2 ci: use Mold linker for asan-lsan-ubsan-integer-no-depends-usdt workflow
cc5dda1de33 headerssync: Make HeadersSyncState more flexible and move constants
8fd1c2893e6 test(headerssync): Test returning of pow_validated_headers behavior
7b00643ef5f test(headerssync): headers_sync_chainwork test improvements
04eeb9578c6 doc(test): Improve comments
fe896f8faa7 refactor(test): Store HeadersSyncState on the stack
f03686892a9 refactor(test): Break up headers_sync_state
e984618d0b9 refactor(headerssync): Process spans of headers
a4ac9915a95 refactor(headerssync): Extract test constants ahead of breakup into functions
02d2b5a11c9 ci, iwyu: Treat warnings as errors for specific directories
57a3eac387b refactor: Fix includes in `index` directory
bdb8eadcdc1 refactor: Fix includes in `crypto` directory
56f2a689a20 ci: Do not patch `leveldb` to workaround UB in "tidy" CI job
65a10fc3c52 p2p: add assertion for BlockTransactionsRequest indexes
58be359f6b2 fuzz: add a target for DifferenceFormatter Class
13f36c020f0 clang-format: regenerate configs
5ded99a7f00 fuzz: MockMempoolMinFee in wallet_fees
c9a7a198d9e test: move MockMempoolMinFee to util/txmempool
adf67eb21ba fuzz: create FeeEstimatorTestingSetup to set fee_estimator
ff10a37e992 fuzz: mock CBlockPolicyEstimator in wallet_fuzz
f591c3becaf fees: make estimateSmartFee/HighestTargetTracked virtual for mocking
d0e1bbad016 test: repeat block malleability test with relayable block over P2P
19273d0705f fuzz: set mempool options in wallet_fees
fb8720f1e09 sign: Refactor Schnorr sighash computation out of CreateSchnorrSig
a4cfddda644 tests: Clarify why musig derivation adds a pubkey and xpub
39a63bf2e7e descriptors: Add a doxygen comment for has_hardened output_parameter
2320184d0ea descriptors: Fix meaning of any_key_parsed
0465574c127 test: Fixes send_blocks_and_test docs
09c95f21e71 test: Adds block tiebreak over restarts tests
18524b072e6 Make nSequenceId init value constants
8b91883a23a Set the same best tip on restart if two candidates have the same work
5370bed21e0 test: add functional test for complex reorgs
ab145cb3b47 Updates CBlockIndexWorkComparator outdated comment
fa37153288c util: Abort on failing CHECK_NONFATAL in debug builds
fa0dc4bdffb test: Allow testing of check failures
faeb58fe668 refactor: Set G_ABORT_ON_FAILED_ASSUME when G_FUZZING_BUILD
58e55b17e63 test: descriptor: cover invalid multi/multi_a cases
664657ed134 bugfix: disallow label for ranged descriptors & allow external non-ranged descriptors to have label
fe71a4b139f depends: Avoid `warning: "_FORTIFY_SOURCE" redefined` for `libevent`
REVERT: 20be96ee696 kernel: Fix bitcoin-chainstate for windows
REVERT: db5bc2b0968 kernel: Add Purpose section to header documentation
REVERT: e5ddd70c24d kernel: Allowing reducing exports
REVERT: 740f2ef7686 kernel: Add pure kernel bitcoin-chainstate
REVERT: c89b59fc686 Kernel: Add functions for working with outpoints
REVERT: f82d691fba5 kernel: Add block hash type and block tree utility functions to C header
REVERT: cd70f570ec6 kernel: Add function to read block undo data from disk to C header
REVERT: 301c10f598d kernel: Add functions to read block from disk to C header
REVERT: 7092fee527a kernel: Add function for copying block data to C header
REVERT: 91a51d249f8 kernel: Add functions for the block validation state to C header
REVERT: 8cdd29f3c22 kernel: Add validation interface to C header
REVERT: a4652f7897e kernel: Add interrupt function to C header
REVERT: 40004832679 kernel: Add import blocks function to C header
REVERT: d775ba66670 kernel: Add chainstate load options for in-memory dbs in C header
REVERT: d26192373b6 kernel: Add options for reindexing in C header
REVERT: 803e0de7aaa kernel: Add block validation to C header
REVERT: 781c7af4e2d kernel: Add chainstate loading when instantiating a ChainstateManager
REVERT: f9bf4d9b313 kernel: Add chainstate manager option for setting worker threads
REVERT: 3270c0615a7 kernel: Add chainstate manager object to C header
REVERT: 0ac5368b3df kernel: Add notifications context option to C header
REVERT: b47496af140 kernel: Add chain params context option to C header
REVERT: 92f54852259 kernel: Add kernel library context object
REVERT: 3204110daee kernel: Add logging to kernel library C header
REVERT: aba7824242d kernel: Introduce initial kernel C header API

git-subtree-dir: libbitcoinkernel-sys/bitcoin
git-subtree-split: 1ea43dc365c277f519f30f55dae6b0899e611765
stickies-v added a commit to stickies-v/py-bitcoinkernel that referenced this pull request Nov 5, 2025
4da01123df0f Merge bitcoin/bitcoin#30595: kernel: Introduce C header API
96614fff6327 Merge bitcoin/bitcoin#33714: random: scope environ extern to macOS, BSDs and Illumos
4e9bd579d3ed Merge bitcoin/bitcoin#33045: depends: disable variables, rules and suffixes.
5ffa63d6814d Merge bitcoin/bitcoin#33626: ci: run native fuzz with MSAN job
75baff98fcf9 Merge bitcoin/bitcoin#33744: ci: Fix lint runner selection (and docker cache)
2593ed1b5f4b Merge bitcoin/bitcoin#33574: doc: update Guix INSTALL.md
1cd8d9fe5cd5 Merge bitcoin/bitcoin#33445: ci: Update Clang in "tidy" job
56329beaee27 Merge bitcoin/bitcoin#32301: test: cover invalid codesep positions for signature in taproot
1e6e32fa8a64 ci: run native fuzz with MSAN job
3784d15bcd50 ci: use LLVM libcxx 21.1.5
6c7a34f3b0bd kernel: Add Purpose section to header documentation
7e9f00bcc174 kernel: Allowing reducing exports
7990463b1059 kernel: Add pure kernel bitcoin-chainstate
36ec9a3ea232 Kernel: Add functions for working with outpoints
5eec7fa96aa3 kernel: Add block hash type and block tree utility functions to C header
f5d5d1213cc4 kernel: Add function to read block undo data from disk to C header
09d0f626388a kernel: Add functions to read block from disk to C header
a263a4caf231 kernel: Add function for copying block data to C header
b30e15f4329a kernel: Add functions for the block validation state to C header
aa262da7bcfa kernel: Add validation interface to C header
d27e27758d51 kernel: Add interrupt function to C header
1976b13be9c8 kernel: Add import blocks function to C header
a747ca1f516e kernel: Add chainstate load options for in-memory dbs in C header
070e77732cdb kernel: Add options for reindexing in C header
ad80abc73df3 kernel: Add block validation to C header
cb1590b05efd kernel: Add chainstate loading when instantiating a ChainstateManager
e2c1bd3d713f kernel: Add chainstate manager option for setting worker threads
65571c36a265 kernel: Add chainstate manager object to C header
c62f657ba330 kernel: Add notifications context option to C header
9e1bac45852d kernel: Add chain params context option to C header
337ea860dfda kernel: Add kernel library context object
28d679bad9fd kernel: Add logging to kernel library C header
2cf136dec4ce kernel: Introduce initial kernel C header API
745eb053a41c Merge bitcoin-core/gui#901: Add createwallet, createwalletdescriptor, and migratewallet to history filter
52b1595850f6 depends: disable builtin variables
8b5a28fa7893 depends: disable builtin rules and suffixes.
7632e0ba312a ci: fix configure docker action inputs
746d36cc80f0 Merge bitcoin/bitcoin#33754: ci: gha: Set debug_pull_request_number_str annotation
25c45bb0d0bd Merge bitcoin/bitcoin#33567: node: change a tx-relay on/off flag to enum
422b468229f1 Merge bitcoin/bitcoin#33683: refactor/doc: Add blockman param to GetTransaction doc comment
da6f041e39ef Merge bitcoin/bitcoin#31645: [IBD] coins: increase default UTXO flush batch size to 32 MiB
832a57673af7 Merge bitcoin/bitcoin#33749: test: ipc: resolve symlinks in `which capnp`
3cd4263bf664 Merge bitcoin/bitcoin#33753: test: Format strings in `test_runner`
78d4d36730d4 test: Format strings in `*.rs`
fa9d0f994b45 ci: gha: Set debug_pull_request_number_str annotation
305384a0372a Merge bitcoin/bitcoin#33746: ci: Add missing python3-dev package for riscv64
8eda7210eb33 Merge bitcoin/bitcoin#33743: fuzz: refactor memcpy to std::ranges::copy to work around ubsan warn
51093d6ae1d4 test: resolve symlinks in which result for capnp
6f359695c36c Merge bitcoin/bitcoin#33698: test: Use same rpc timeout for authproxy and cli
c281bb6837b0 Merge bitcoin/bitcoin#32924: test: add valid tx test with minimum-sized ECDSA signature (8 bytes DER-encoded)
facf8b771a19 ci: Add missing python3-dev package for riscv64
b4d0288c467f doc: update Guix INSTALL.md
0b3b8a3be1a0 ci: fix lint docker caching
fa4b52bd1618 fuzz: refactor memcpy to std::ranges::copy to work around ubsan warn
72511fd02e72 Merge bitcoin/bitcoin#33555: build: Bump clang minimum supported version to 17
79d6f458e230 random: scope environ extern to macOS, BSDs and Illumos
292ea0eb8982 Merge bitcoin/bitcoin#33677: ci: Retry image building once on failure
dd82c6c5d09f Merge bitcoin/bitcoin#33693: ci: use pycapnp 2.2.1
3bb30658e631 Merge bitcoin/bitcoin#32380: Modernize use of UTF-8 in Windows code
5a58d4915e5c Merge bitcoin/bitcoin#33546: test: add functional test for `TestShell` (matching doc example)
1abc8fa308d2 Merge bitcoin/bitcoin#33218: refactor: rename `fees.{h,cpp}` to `fees/block_policy_estimator.{h,cpp}`
de15e52f09d4 Merge bitcoin/bitcoin#32867: doc: mention key removal in rpc interface modification
5d784bebaff5 clang-tidy: Disable `ArrayBound` check in src/ipc and src/test
5efdb0ef3056 ci: Update Clang in "tidy" job
24434c1284b8 Merge bitcoin/bitcoin#31308: ci, iwyu: Treat warnings as errors for specific directories
27cd7f504944 Merge bitcoin/bitcoin#33185: guix: update time-machine to 5cb84f2013c5b1e48a7d0e617032266f1e6059e2
80bb7012be8e Merge bitcoin/bitcoin#31514: wallet: allow label for non-ranged external descriptor (if `internal=false`) & disallow label for ranged descriptors
5e1f626ac30f Merge bitcoin/bitcoin#32504: test: descriptor: cover invalid multi/multi_a cases
56e9703968e2 Merge bitcoin/bitcoin#29640: Fix tiebreak when loading blocks from disk (and add tests for comparing chain ties)
53b34c80c631 ci: use pycapnp 2.2.1 in mac native job
865432869c0d ci: remove Python version comment from mac config
9bd9ec00b238 Merge bitcoin/bitcoin#33688: test: Update BIP324 test vectors
1a7fb5eeeef3 fees: return current block height in estimateSmartFee
ab49480d9be4 fees: rename fees_args to block_policy_estimator_args
06db08a43568 fees: refactor: rename fees to block_policy_estimator
6dfdd7e034dd fees: refactor: rename policy_fee_tests.cpp to feerounder_tests.cpp
f54ffb4bc141 Merge bitcoin/bitcoin#32813: clang-format: make formatting deterministic for different formatter versions
1916c51cd855 Merge bitcoin/bitcoin#33210: fuzz: enhance wallet_fees by mocking mempool stuff
0eb554728ca9 Merge bitcoin/bitcoin#33336: log: print every script verification state change
c6c4edf324a3 Merge bitcoin/bitcoin#32983: rpc: refactor: use string_view in Arg/MaybeArg
00ad998d9545 Merge bitcoin/bitcoin#33252: p2p: add `DifferenceFormatter` fuzz target and invariant check
1a1f46c22859 refactor/doc: Add blockman param to `GetTransaction` doc comment and reorder out param
66667d651229 test: Use same rpc timeout for authproxy and cli
5555bce994b6 ci: Document why IN_GETOPT_BIN env var is needed on macOS
fabe516440c9 ci: Export the container id in python script
f6ba97cea1d3 Merge bitcoin/bitcoin#33666: ci: Drop libFuzzer from msan fuzz task
af78d3651299 Merge bitcoin/bitcoin#32588: util: Abort on failing CHECK_NONFATAL in debug builds
51877f2fc5eb test: Update BIP324 test vectors
161864a038ea Merge bitcoin/bitcoin#32579: p2p: Correct unrealistic headerssync unit test behavior
70a6fb5e5ab5 Merge bitcoin/bitcoin#33172: test: p2p block malleability
99cb2054bdfe Merge bitcoin/bitcoin#33600: refactor: Construct g_verify_flag_names on first use
211bf6c97503 Merge bitcoin/bitcoin#33566: miner: fix empty mempool case for waitNext()
944e5ff848f6 doc: mention key removal in rpc interface modification
d32f9525e484 Merge bitcoin/bitcoin#33679: test: set number of RPC server threads to 2
1c85d062321c Merge bitcoin/bitcoin#32266: depends: Avoid `warning: "_FORTIFY_SOURCE" redefined` for `libevent`
11684c9ce2c1 Merge bitcoin/bitcoin#33674: ci: Doc ASLR workaround for sanitizer tasks
e9cd45e3d3c7 test: set number of RPC server threads to 2
fa6aa9f42faa ci: Retry image building once on failure
fa4dbe04d782 ci: Allow overwriting check option in run() helper
fa8e4de5c31d ci: Use os.environ[key] access when value must be set
7d27af98c7cf Merge bitcoin/bitcoin#33461: ci: add Valgrind fuzz
1569bcc387fe Merge bitcoin/bitcoin#33639: ci: Only write docker build images to Cirrus cache
98c4994d0f36 Merge bitcoin/bitcoin#33570: randomenv: Fix MinGW dllimport warning for `environ`
c211d1832211 Merge bitcoin/bitcoin#33670: test: Use unassigned p2p_port instead of hardcoded 60000 in p2p_i2p_ports.py
e4b04630bcf5 ci: add Valgrind fuzz
3fee0754a2ec Merge bitcoin/bitcoin#33550: Fix windows libc++ `fs::path` `fstream` compile errors
fa0e36156cba ci: Doc ASLR workaround for sanitizer tasks
fa20275db32c test: Use unassigned p2p_port instead of hardcoded 60000 in p2p_i2p_ports.py
c862936d16a6 Merge bitcoin/bitcoin#33370: ci: use Mold linker for asan-lsan-ubsan-integer-no-depends-usdt workflow
fabe0e07de1a ci: Only write docker build images to Cirrus cache
fab64a5d6fd7 ci: Move buildx command to python script
fa72a2bd5c80 ci: Remove unused MAYBE_CPUSET
fa70e23de75b ci: Drop libFuzzer from msan fuzz task
abe7cbfe1a4e Merge bitcoin/bitcoin#33470: build: Move CMAKE_SKIP_INSTALL_RPATH from CMake to Guix script
689ec28d1d1e Merge bitcoin/bitcoin#33633: test: [move-only] binary utils to utils.py
0eeae4d174a4 Merge bitcoin/bitcoin#33625: Update secp256k1 subtree to latest master
4b41f99d57d8 build: Move CMAKE_SKIP_INSTALL_RPATH from CMake to Guix script
d30f149360d1 Merge bitcoin/bitcoin#33630: doc: correct topology requirements in submitpackage helptext
3d222825642b [doc] correct topology requirements in submitpackage helptext
e744fd1249bf Merge bitcoin/bitcoin#33641: Update leveldb subtree to latest master
4371740bebfa Merge bitcoin/bitcoin#33642: doc: archive release notes for v28.3
ceea24b92153 doc: archive release notes for v28.3
54ffe3de5b1d Update leveldb subtree to latest master
f21162d81933 Squashed 'src/leveldb/' changes from aba469ad6a..cad64b151d
e14451ac8733 Merge bitcoin/bitcoin#33469: TxGraph: change m_excluded_clusters
f76e1ae38991 Merge bitcoin/bitcoin#32313: coins: fix `cachedCoinsUsage` accounting in `CCoinsViewCache`
59c4898994bd guix: remove python-pydantic-core input from LIEF
9f2a6927d3a9 guix: use Clang & LLVM 19 for macOS build
9570ddbec9cb guix: update time-machine to 5cb84f2013c5b1e48a7d0e617032266f1e6059e2
7b5cc276aa0a guix: patch around riscv issue with newer (2.40+) binutils
91b5cbaabbca ci: use Debian Trixie for macOS cross job
fa75ef4328f6 test: Move export_env_build_path to util.py
fa9f495308af test: Move get_binary_paths and Binaries to util.py
40e7d4cd0d7f Merge bitcoin/bitcoin#33549: ci: Add macOS cross task for arm64-apple-darwin
ea17618c1167 Merge bitcoin/bitcoin#33480: ci: Turn CentOS config into Alpine musl config
b1f8a13702e8 Merge bitcoin/bitcoin#33624: test: P2SH sig ops are only counted with `SCRIPT_VERIFY_P2SH`
879c21045eba Update secp256k1 subtree to latest master
3cbf7cb3e6ac Squashed 'src/secp256k1/' changes from b9313c6e1a..d543c0d917
2f7a50f67cdb Merge bitcoin/bitcoin#33462: ci: add libcpp hardening flags to macOS fuzz job
07a926474b5a node: change a tx-relay on/off flag to enum
48aa0e98d0b7 Merge bitcoin/bitcoin#29675: wallet: Be able to receive and spend inputs involving MuSig2 aggregate keys
db4bde0b0347 Merge bitcoin/bitcoin#33517: multiprocess: Fix high overhead from message logging
3a10d700bc18 test: P2SH sig ops are only counted with `SCRIPT_VERIFY_P2SH` flag
9314113b295a Merge bitcoin/bitcoin#33610: doc: archive release notes for v29.2
9b43428c9687 TxGraph: change m_excluded_clusters
6e1adbbaa157 Merge bitcoin/bitcoin#33612: test: change log rate limit version gate
fdcf67de8033 Merge bitcoin/bitcoin#33157: cluster mempool: control/optimize TxGraph memory usage
7b544341c002 test: change log rate limit version gate from 299900 to 290100
9610b0d1e28a randomenv: Fix MinGW dllimport warning for `environ`
6c4fe401e908 Merge bitcoin/bitcoin#33508: ci: fix buildx gha cache authentication on forks
8f7673257a1a miner: fix empty mempool case for waitNext()
c11a3dcc8895 doc: archive release notes for v29.2
64a7c7cbb975 Merge bitcoin/bitcoin#33558: ci: Use native platform for win-cross task
93b56e95c028 Merge bitcoin/bitcoin#33601: doc: archive release notes for v30.0
563747971be4 Merge bitcoin/bitcoin#33580: depends: Use $(package)_file_name when downloading from the fallback
24d861da7894 coins: only adjust `cachedCoinsUsage` on `EmplaceCoinInternalDANGER` insert
d7c9d6c2914a coins: fix `cachedCoinsUsage` accounting to prevent underflow
39cf8bb3d0d9 refactor: remove redundant usage tracking from `CoinsViewCacheCursor`
67cff8bec909 refactor: assert newly-created parent cache entry has zero memory usage
023cd5a5469a txgraph: add SingletonClusterImpl (mem optimization)
e34625073253 txgraph: give Clusters a range of intended tx counts (preparation)
e93b0f09cc2a txgraph: abstract out creation of empty Clusters (refactor)
6baf12621f66 txgraph: comment fixes (doc fix)
726b995739ab txgraph: make Cluster an abstract class (refactor)
2602d89edd04 txgraph: avoid accessing other Cluster internals (refactor)
04c808ac4c47 txgraph: expose memory usage estimate function (feature)
7680bb8fd48d txgraph: keep track of Cluster memory usage (preparation)
4ba562e5f4e4 txgraph: keep data structures compact (mem optimization)
bb5cb222ae55 depgraph: add memory usage control (feature)
b1637a90deb8 txgraph: avoid holes in DepGraph positions (mem optimization)
2b1d30250877 txgraph: move some sanity checks from Cluster to TxGraphImpl (refactor)
d40302fbaf41 txgraph: Make level of Cluster implicit (optimization)
8d6e49158e3a doc: archive release notes for v30.0
4e352efa2ce7 qt: add createwallet, createwalletdescriptor, and migratewallet to history filter
0626b90f507d multiprocess: align our logging with libmultiprocess's
9d068225ee2b multiprocess: update multiprocess EventLoop construction to use options
d2987102dd13 Merge bitcoin/bitcoin#33573: doc: bump the template macOS version
f6567527d8da doc: bump the template macOS version
faa9d10c84bc refactor: Construct g_verify_flag_names on first use
becf15001318 Merge bitcoin/bitcoin#33518: Update libmultiprocess subtree to support reduced logging
cd1b7fa1ff7c Merge bitcoin/bitcoin#33577: Revert "depends: Update URL for `qrencode` package source tarball"
fa0fa0f70087 refactor: Revert "disable self-assign warning for tests"
faed118fb30f build: Bump clang minimum supported version to 17
6b4a92b0fab8 Merge bitcoin/bitcoin#33568: doc: how to update a subtree
90b2884ce4ba Merge bitcoin/bitcoin#33581: ci: Properly include $FILE_ENV in DEPENDS_HASH
d44b860cd09e Merge bitcoin/bitcoin#33584: ci: upgrade GitHub Action to download-artifact@v5
57f7c68821d9 test: add functional test for `TestShell` (matching doc example)
53874f7934d5 doc: test: update TestShell example instructions/options
b35341b9ba63 Update ci.yml
ceeb53adcd0a ci: Properly include $FILE_ENV in DEPENDS_HASH
671b774d1b58 depends: Use $(package)_file_name when downloading from the fallback
e4335a31920c Revert "depends: Update URL for `qrencode` package source tarball"
a89a822e6eb5 Revert "depends: Use hash instead of file name for package download stamp"
fad5a7101cc3 ci: Add macOS cross task for arm64
fa8c750a0aff ci: Refactor get_previous_releases step in win-test-cross task
e4c04f7759b0 ci: add libcpp hardening flags to macOS fuzz job
a1226bc760c7 doc: how to update a subtree
b510893d0076 Merge bitcoin/bitcoin#33494: depends: Update URL for `qrencode` package source tarball
ec5841888de7 Merge bitcoin/bitcoin#32513: ci: remove 3rd party js from windows dll gha job
d735e2e9b39a Merge bitcoin/bitcoin#32998: Bump SCRIPT_VERIFY flags to 64 bit
de1dc6b47ba7 Merge bitcoin/bitcoin#33515: Improve LastCommonAncestor performance + add tests
eda91b07fd9f Merge commit '0f01e1577f7c6734eb345139a12aba329ef22a5f' into pr/subtree-6
0f01e1577f7c Squashed 'src/ipc/libmultiprocess/' changes from 47d79db8a552..a4f929696490
fa6fd16f36e1 ci: Use native platform for win-cross task
53e4951a5b5b Switch to ANSI Windows API in `fsbridge::fopen()` function
dbe770d92106 Switch to ANSI Windows API in `Win32ErrorString()` function
06d0be4e22ce Remove no longer necessary `WinCmdLineArgs` class
f366408492f6 cmake: Set process code page to UTF-8 on Windows
dccbb178065f Set minimum supported Windows version to 1903 (May 2019 Update)
919e6d01e93a Merge bitcoin/bitcoin#33489: build: Drop support for EOL macOS 13
452ea5928112 Merge bitcoin/bitcoin#33454: net: support overriding the proxy selection in ConnectNode()
c864a4c1940d Simplify fs::path by dropping filename() and make_preferred() overloads
b0113afd44b4 Fix windows libc++ fs::path fstream compile errors
a33bd767a37d Merge bitcoin/bitcoin#33464: p2p: Use network-dependent timers for inbound inv scheduling
2578da69f416 Merge bitcoin/bitcoin#33485: test: set par=2 in default config for functional test framework
25dbe4bc86d3 Merge bitcoin/bitcoin#33533: test: addrman: check isTerrible when time is more than 10min in the future
cfb0d74698ad Merge bitcoin/bitcoin#33121: test: fix p2p_leak_tx.py
86eaa4d6cd5c Merge bitcoin/bitcoin#33482: contrib: fix macOS deployment with no translations
007900ee9b89 Merge bitcoin/bitcoin#33434: depends: static libxcb-cursor
8e47ed6906d5 test: addrman: check isTerrible when time is more than 10min in the future
3635d62f5a93 chain: make use of pskip in LastCommonAncestor (optimization)
2e09d66fbb7b tests: add unit tests for CBlockIndex::GetAncestor and LastCommonAncestor
156927903d64 ci: Check windows manifests for all executables
e1a1b14c9359 ci: use a more generic way of finding mt.exe
1ed00a0d39d5 Merge bitcoin/bitcoin#33504: Mempool: Do not enforce TRUC checks on reorg
b63428ac9ce2 rpc: refactor: use more (Maybe)Arg<std::string_view>
037830ca0dbb refactor: increase string_view usage
b3bf18f0bac0 rpc: refactor: use string_view in Arg/MaybeArg
c76de2eea180 net: support overriding the proxy selection in ConnectNode()
45bd8914658a log: split assumevalid ancestry-failure-reason message
6c13a38ab51c log: separate script verification reasons
f2ea6f04e79b refactor: untangle assumevalid decision branches
9bc298556cb0 validation: log initial script verification state
4fad4e992c49 test: add assumevalid scenarios scaffold
75353a016357 Merge bitcoin/bitcoin#32326: net: improve the interface around FindNode() and avoid a recursive mutex lock
87e7f37918d4 doc: clarify peer address in getpeerinfo and addnode RPC help
2a4450ccbbe3 net: change FindNode() to not return a node and rename it
4268abae1a1d net: avoid recursive m_nodes_mutex lock in DisconnectNode()
acc7f2a433b1 Merge bitcoin/bitcoin#33401: ci: Remove bash -c from cmake invocation using eval
1aaaaa078bb2 fuzz: Drop unused workaround after Apple-Clang bump
fadad7a49477 Drop support for EOL macOS 13
50194029e7c2 ci: Remove bash -c from cmake invocation using eval
f41f97240c06 Merge bitcoin/bitcoin#28584: Fuzz: extend CConnman tests
cc4a2cc6bdc4 Merge bitcoin/bitcoin#33453: docs: Undeprecate datacarrier and datacarriersize configuration options
7502d4e94038 Merge bitcoin/bitcoin#33260: test: Use extra_port() helper in feature_bind_extra.py
14ae71f323dd test: make notfound_on_unannounced more reliable
99bc552980d9 test: fix (w)txid confusion in p2p_leak_tx.py
576dd97cb91e test: increase timeout in p2p_leak_tx.py
ac599c4a9cb3 test: Test MuSig2 in the wallet
68ef954c4c59 wallet: Keep secnonces in DescriptorScriptPubKeyMan
4a273edda0ec sign: Create MuSig2 signatures for known MuSig2 aggregate keys
258db9388994 sign: Add CreateMuSig2AggregateSig
bf69442b3f50 sign: Add CreateMuSig2PartialSig
512b17fc56ea sign: Add CreateMuSig2Nonce
82ea67c607cd musig: Add MuSig2AggregatePubkeys variant that validates the aggregate
d99a081679e1 psbt: MuSig2 data in Fill/FromSignatureData
4d8b4f53363f signingprovider: Add musig2 secnonces
c06a1dc86ff2 Add MuSig2SecNonce class for secure allocation of musig nonces
9baff05e4944 sign: Include taproot output key's KeyOriginInfo in sigdata
4b24bfeab9d6 pubkey: Return tweaks from BIP32 derivation
8f73d9522146 Merge bitcoin/bitcoin#33299: wallet: reduce unconditional logging during load
0f7d4ee4e828 p2p: Use different inbound inv timer per network
93a70a42d30f depends: Update URL for `qrencode` package source tarball
6de80512632a depends: Use hash instead of file name for package download stamp
bc706955d740 ci: expose all ACTIONS_* vars
46135d90ea90 depends: Drop redundant check for downloaded file
771978952a98 depends: Fix `$(package)_fetched` target
25212dfdb4cd Merge bitcoin/bitcoin#33487: ci: use latest versions of lint deps
06df14ba75be test: add more TRUC reorg coverge
26e71c237d9d Mempool: Do not enforce TRUC checks on reorg
bbe8e9063c15 fuzz: don't bypass_limits for most mempool harnesses
d4f47f97715c ci: use latest versions of lint deps
fc861332b351 wallet, log: reduce unconditional logging during load
3a4d1a25cf94 net: merge AlreadyConnectedToAddress() and FindNode(CNetAddr)
444409ff2b78 ci: Reduce Alpine musl task to md runner size
d8fe258cd610 Merge bitcoin/bitcoin#33484: doc: rpc: fix case typo in `finalizepsbt` help (final_scriptwitness)
dda5228e02ca test: set par=2 in default config for functional test framework
ff05bebcc426 doc: rpc: fix case typo in `finalizepsbt` help (final_scriptwitness)
200150beba66 Merge bitcoin/bitcoin#33313: test/refactor: use test deque to avoid quadratic iteration
7e08445449fc Merge bitcoin/bitcoin#33399: key: use static context for libsecp256k1 calls where applicable
7b5261f7ef3d contrib: fix using macdploy script without translations.
65e909dfdd93 Merge bitcoin/bitcoin#33430: rpc: addpeeraddress: throw on invalid IP
31b29f8eb629 Merge bitcoin/bitcoin#33229: multiprocess: Don't require bitcoin -m argument when IPC options are used
e62e0a12b332 Merge bitcoin/bitcoin#33230: cli: Handle arguments that can be either JSON or string
7ae0497eef8f ci: remove 3rd party js from windows dll gha job
05d984b1a4fb Merge bitcoin/bitcoin#33475: bugfix: miner: fix `addPackageTxs` unsigned integer overflow
fa6b2e9efece ci: Turn centos config into alpine musl config
b807dfcdc592 miner: fix `addPackageTxs` unsigned integer overflow
d41b503ae128 Merge bitcoin/bitcoin#33446: rpc: fix getblock(header) returns target for tip
5ae8edbc304a Merge bitcoin/bitcoin#33158: macdeploy: avoid use of `Bitcoin Core` in Linux cross build
df67bb6fd84c test: Remove convert_to_json_for_cli
44a493e150a7 cli: Allow arguments to be both strings and json
ad4a49090da8 Merge bitcoin/bitcoin#33408: msvc: Update vcpkg manifest
dd61f08fd52b Merge bitcoin/bitcoin#33031: wallet: Set descriptor cache upgraded flag for migrated wallets
350692e561ce Merge bitcoin/bitcoin#33388: test: don't throw from the destructor of DebugLogHelper
94db966a3bb5 net: use generic network key for addrcache
eca50854e1cb depends: static libxcb_cursor
89144eb473c6 Merge bitcoin/bitcoin#33448: net/rpc: Report inv information for debugging
eaa1a3cd0b3d Merge bitcoin/bitcoin#33425: ci: remove Clang build from msan fuzz job
b77137a5644e ci: link against -lstdc++ in native fuzz with msan job
a86e1a6e32d8 Merge bitcoin/bitcoin#33427: rpc: Always return per-wtxid entries in submitpackage tx-results
6861dadfcb11 Merge bitcoin/bitcoin#33459: doc: remove unrelated `bitcoin-wallet` binary from `libbitcoin_ipc` description
3b3ab3a50a0b Merge bitcoin/bitcoin#33302: ci: disable cirrus cache in 32bit arm job
2738b63e025d test: validate behaviour of getpeerinfo last_inv_sequence and inv_to_send
fbde8d9a81d8 doc: remove unrelated `bitcoin-wallet` binary from `libbitcoin_ipc` description
34fefb633584 Merge bitcoin/bitcoin#33435: system: improve handling around GetTotalRAM()
56791b582958 test: split out `system_ram_tests` to signal when total ram cannot be determined
337a6e738616 system: improve handling around GetTotalRAM()
451ba9ada41f datacarrier: Undeprecate configuration option
77b2ebb81182 rpc/net: report per-peer last_inv_sequence
bf7996cbc3be rpc: fix getblock(header) returns target for tip
4c3c1f42cf70 test: add block 2016 to mock mainnet
953544d0286b Merge bitcoin/bitcoin#33429: fuzz: reduce iterations in slow targets
df101c97c260 Merge bitcoin/bitcoin#33422: build: Remove lingering Windows registry & shortcuts (#32132 follow-up)
56c6daa64f6b Merge bitcoin/bitcoin#28592: p2p: Increase tx relay rate
79752b9c0b6b build(windows): Remove lingering registry entries and shortcuts upon install
cad9a7fd7370 rpc: Always return per-wtxid entries in submitpackage tx-results
6a33970fef1b fuzz: Reduce iterations in slow targets
edb871cba22a Merge bitcoin/bitcoin#33412: Update libmultiprocess subtree to fix intermittent mptest hang
2427939935f3 test: forbid copying of DebugLogHelper
d6aa266d432f test: don't throw from the destructor of DebugLogHelper
91ac64b0a66f log: reword `signature validations` to `script verification` in `assumevalid` log
eaf2c464758b Merge bitcoin/bitcoin#33378: Remove unnecessary casts when calling socket operations
5aec516b2ce3 Merge bitcoin/bitcoin#33333: coins: warn on oversized `-dbcache`
316a0c513278 rpc: addpeeraddress: throw on invalid IP
74fa028da1ea Merge bitcoin/bitcoin#33420: test: Avoid interface_ipc.py Duplicate ID errors
168360f4ae47 coins: warn on oversized -dbcache
6c720459beea system: add helper for fetching total system memory
e9c52272ebd7 test: Avoid interface_ipc.py Duplicate ID errors
535fa0ad0d26 Squashed 'src/ipc/libmultiprocess/' changes from 13424cf2ecc1..47d79db8a552
c49a43591f88 Merge commit '535fa0ad0d2637f845beae92ea9dbbbbbe377c74' into pr/subtree-5
453b0fa286e5 bitcoin: Make wrapper not require -m
1444ed855f43 Merge bitcoin/bitcoin#33407: cmake: Install `bitcoin` manpage
29e836fae660 test: add tool_bitcoin to test bitcoin wrapper behavior
0972f5504021 init: add exe name to bitcoind, bitcoin-node -version output to be able to distinguish these in tests
2b0cd1f3fb22 Merge bitcoin/bitcoin#33395: net: do not apply whitelist permissions to onion inbounds
f14876213aad musig: Move synthetic xpub construction to its own function
ef20c2d11d96 build, msvc: Update vcpkg manifest baseline
1ff9e929489e key: use static context for libsecp256k1 calls where applicable
f563ce90818d net: Do not apply whitelist permission to onion inbounds
947bed28fe62 Merge bitcoin/bitcoin#33380: test: Add submitblock test in interface_ipc
7584a4fda95d cmake: Install `bitcoin` manpage
67f632b6deb8 net: remove unnecessary casts in socket operations
c4adfbf70626 Merge bitcoin/bitcoin#33373: depends: systemtap 5.3
5aa3d3135d25 Merge bitcoin/bitcoin#33391: test: Prevent disk space warning during node_init_tests
bdf01c6f6126 test: Prevent disk space warning during node_init_tests
0a26731c4cc1 test: Add submitblock test in interface_ipc
2d6a0c464912 Merge bitcoin/bitcoin#33379: cmake: Fix regression in `secp256k1.cmake`
f031536f2d26 ci: use Mold linker for asan-lsan-ubsan-integer-no-depends-usdt workflow
cc5dda1de333 headerssync: Make HeadersSyncState more flexible and move constants
8fd1c2893e67 test(headerssync): Test returning of pow_validated_headers behavior
7b00643ef5f9 test(headerssync): headers_sync_chainwork test improvements
04eeb9578c60 doc(test): Improve comments
fe896f8faa78 refactor(test): Store HeadersSyncState on the stack
f03686892a9c refactor(test): Break up headers_sync_state
e984618d0b99 refactor(headerssync): Process spans of headers
a4ac9915a95e refactor(headerssync): Extract test constants ahead of breakup into functions
9193c3e4340b cmake: Fix regression in `secp256k1.cmake`
d20f10affba8 Merge bitcoin/bitcoin#33268: wallet: Identify transactions spending 0-value outputs, and add tests for anchor outputs in a wallet
28efd724b478 depends: systemtap 5.3
9a5ba154bea1 Merge bitcoin/bitcoin#33310: trace: Workaround GCC bug compiling with old systemtap
853f0d881142 Merge bitcoin/bitcoin#33364: ci: always use tag for LLVM checkout
b81445333a10 Merge bitcoin/bitcoin#33243: test: Fix CLI_MAX_ARG_SIZE issues
f757da87f59d Merge bitcoin/bitcoin#33332: common: Make arith_uint256 trivially copyable
e416dc2fbbb7 Merge bitcoin/bitcoin#33321: kernel: make blockTip index const
75e6984ec8c6 test/refactor: use test deque to avoid quadratic iteration
176fac0f16d5 Merge bitcoin/bitcoin#33141: test: Remove polling loop from test_runner (take 2)
593d5fe37d7a Merge bitcoin/bitcoin#33354: txgraph: use enum Level instead of bool main_only
653a9849d5f9 common: Make arith_uint256 trivially copyable
b736052e39f1 ci: always use tag for LLVM checkout
652424ad162b test: additional test coverage for script_verify_flags
00c253d49417 ci: disable cirrus cache in 32bit arm job
ff18b6bbaf32 ci: refactor docker action to return provider str
d45f3717d2c6 txgraph: use enum Level instead of bool main_only
ee42d59d4de9 Merge bitcoin-core/gui#886: Avoid pathological QT text/markdown behavior...
2c8a478db4b8 Merge bitcoin/bitcoin#33231: net: Prevent node from binding to the same `CService`
591eea7b5ac5 Merge bitcoin/bitcoin#33082: wallet, refactor: Remove Legacy check and error
6a371b70c87a gui: Avoid pathological QT text/markdown behavior...
02d2b5a11c92 ci, iwyu: Treat warnings as errors for specific directories
57a3eac387bd refactor: Fix includes in `index` directory
c0894a0a2be0 Merge bitcoin/bitcoin#33348: contrib: add bitcoin binary to gen-manpages
53e6db91ef59 contrib: add placeholder manpage for bitcoin binary
bdb8eadcdc19 refactor: Fix includes in `crypto` directory
56f2a689a201 ci: Do not patch `leveldb` to workaround UB in "tidy" CI job
f5887a8de4c8 contrib: add bitcoin binary to gen-manpages
314c42b55bda Merge bitcoin/bitcoin#33347: build: bump `CLIENT_VERSION_MAJOR` to 30
9f744fffc39d build: bump CLIENT_VERSION_MAJOR to 30
042817ddb84c Merge bitcoin/bitcoin#33346: doc: remove release note fragment
0f0e6fe7f5f4 doc: remove release note fragment
84cf5420398c Merge bitcoin/bitcoin#33275: Release: 30.0 translations update
13809b867ad9 Merge bitcoin/bitcoin#33303: ci: Checkout latest merged pulls
e749205f83dd Merge bitcoin/bitcoin#33319: ci: reduce runner sizes on various jobs
9cbd346daa50 Merge bitcoin/bitcoin#33340: Fix benchmark CSV output
4776179be9fb Merge bitcoin/bitcoin#33342: guix: strip binaries in libexec
0ba44d9c38af Merge bitcoin/bitcoin#33296: net: check for empty header before calling FillBlock
1861030bea7f Merge bitcoin/bitcoin#30469: index: Fix coinstats overflow
8b6264768030 test: send duplicate blocktxn message in p2p_compactblocks.py
5e585a0fc4fd net: check for empty header before calling FillBlock
cb825a07ac6d Merge bitcoin/bitcoin#33338: net: Add interrupt to pcp retry loop
0b0bd74c3e9a Merge bitcoin/bitcoin#33312: clang-tidy: Disable `UndefinedBinaryOperatorResult` check in `src/ipc`
790b440197bd Fix benchmark CSV output
3cceda9f4855 guix: strip binaries in libexec
3eea9fd39532 Merge bitcoin/bitcoin#33308: doc: fix `LIBRARY_PATH` comment
0b38cc9bf7a3 Merge bitcoin/bitcoin#33339: doc: move release notes to wiki pre branch off
b320f5efa175 qt: 30.0 translations update
905c1a77f51c doc: move release notes to wiki pre branch off
2d799590feea Merge bitcoin/bitcoin#33283: contrib: update fixed seeds
188de70c8641 net: Add interrupt to pcp retry loop
9c6fa07b1248 Merge bitcoin/bitcoin#33322: Update libmultiprocess subtree to improve build and logs
c76797481155 clang-tidy: Fix critical warnings
54dc34ec2279 index: Remove unused coinstatsindex recovery code
37c4fba1f4c1 index: Check BIP30 blocks when rewinding Coinstatsindex
51df9de8e5b9 doc: Add release note for 30469
bb8d67318329 test: Add coinstatsindex compatibility test
b2e8b64ddc35 index, refactor: Append blocks to coinstatsindex without db read
431a076ae6e3 index: Fix coinstatsindex overflow issue
fa8f081af31c ci: Checkout latest merged pulls
36e40417de3f Merge bitcoin-core/gui#884: Fix compatibility with `-debuglogfile` command-line option
a334bbe9b79d Squashed 'src/ipc/libmultiprocess/' changes from 1b8d4a6f1e54..13424cf2ecc1
a4ee70e5b69c Merge commit 'a334bbe9b79ddf1999003c792bc8945639b7e9c1' into pr/subtree-4
e04cb9c1bdf2 Merge bitcoin/bitcoin#33201: Add functional test for IPC interface
75d9b7247570 kernel: make blockTip index const
a341e11ac92b ci: test IPC on additional hosts
6aee573bfcf6 ci: enable IPC tests in CI
8d2ee88fa2a5 tests: add functional tests for IPC interface
3cc9a06c8dd5 test: Add TestNode ipcbind option
3cceb60a7153 test: Provide path to `bitcoin` binary
8c7f0056291d test: add is_ipc_compiled() and skip_if_no_ipc() functions
37c21ebe4078 Merge bitcoin/bitcoin#33309: doc: archive v29.1 release notes
32e2484b67e6 Merge bitcoin/bitcoin#33304: depends: strip when installing qt binaries
4d4789dffad5 net: Prevent node from binding to the same CService
647cdb4f7e80 Merge bitcoin/bitcoin#33311: net: Quiet down logging when router doesn't support natpmp/pcp
589b65f06c33 clang-tidy: Disable `UndefinedBinaryOperatorResult` check in `src/ipc`
4f1a4cbccd78 net: Quiet down logging when router doesn't support natpmp/pcp
93a29ff28301 trace: Workaround GCC bug compiling with old systemtap
5eeb2facbbbb ci: reduce runner sizes on various jobs
61ec8866c639 [doc] archive v29.1 release notes
a2a35b58cb95 doc: fix LIBRARY_PATH comment
e1ce0c525c7f Merge bitcoin/bitcoin#33291: ci: cd into BASE_BUILD_DIR for GetCMakeLogFiles
84e813a02bb7 index, refactor: DRY coinbase check
fab842b32487 index, refactor: Rename ReverseBlock to RevertBlock
2d8f5b91881e Merge bitcoin/bitcoin#33136: ci: Remove redundant RUN_UNIT_TESTS_SEQUENTIAL
c9d5f211c119 depends: strip when installing qt
fae610d8581a ci: Remove redundant RUN_UNIT_TESTS_SEQUENTIAL
2562fe1b2b63 Merge bitcoin/bitcoin#32159: net, pcp: handle multi-part responses and filter for default route while querying default gateway
ed2ff3c63d83 Merge bitcoin/bitcoin#33235: build: set ENABLE_IPC to OFF when fuzzing
88db09bafe9e net: handle multi-part netlink responses
113a4228229b wallet: Add m_cached_from_me to cache "from me" status
609d265ebc51 test: Add a test for anchor outputs in the wallet
c40dc822d74a wallet: Throw an error in sendall if the tx size cannot be calculated
39a7dbdd277d wallet: Determine IsFromMe by checking for TXOs of inputs
e76c2f7a4111 test: Test wallet 'from me' status change
689a32197638 Merge bitcoin/bitcoin#33220: doc: truc packages allow sub min feerate transactions
9b76eef2d2b4 ci: cd into BASE_BUILD_DIR for GetCMakeLogFiles
8e434a84999c macdeploy: rename macOS output to bitcoin-macos-app.zip
05353d9cf08c macdeploy: combine appname & -zip arguments
939678940f6c contrib: update fixed seeds
6cdd8ee67618 contrib: update makeseeds minblocks
b8da9f4034e1 contrib: update makeseeds UA regex
ba0b4304ecee Merge bitcoin/bitcoin#32989: ci: Migrate CI to hosted Cirrus Runners
0eb3eae54865 Merge bitcoin/bitcoin#33274: kernel: chainparams & headersync updates for 30.0
fa4885ef2fde test: Remove polling loop from test_runner
7270839af425 doc: truc packages allow sub min feerate transactions
46369583f3a9 Merge bitcoin/bitcoin#33224: doc: unify `datacarriersize` warning with release notes
755152ac819a kernel: add testnet4 assumeutxo param at height 90'000
a6512686e335 kernel: add mainnet assumeutxo param at height 910'000
943de66b5043 kernel: update headersync params
66fb96242648 kernel: update chainTxData
c3cb26e02834 kernel: update assumevalid and minimumChainWork
b4adae76d466 kernel: update assumed blockchain & chainstate sizes
7e58c94112d0 Merge bitcoin/bitcoin#33269: test: Fixup fill_mempool docstring
65a10fc3c52e p2p: add assertion for BlockTransactionsRequest indexes
58be359f6b24 fuzz: add a target for DifferenceFormatter Class
13f36c020f03 clang-format: regenerate configs
3c5da69a232b ci: remove un-needed lint_run*.sh files
2aa288efdda2 ci: fix annoying docker warning
dd1c5903e8d8 ci: add ccache hit-rate warning when < 75%
f4272844833d doc: Detail configuration of hosted CI runners
3f339e99e00b ci: dynamically match makejobs with cores
4393ffdd837b ci: remove .cirrus.yml
bc41848d00f7 ci: port lint
d290a8e6eab7 ci: port msan-depends
9bbae61e3b40 ci: port tsan-depends
bf7d5364527c ci: port tidy
549074bc643f ci: port centos-depends-gui
58e38c3a0425 ci: port previous-releases-depends-debug
341196d75c30 ci: port fuzzer-address-undefined-integer-nodepends
f2068f26c123 ci: port no-IPC-i686-DEBUG
2a00b12d73bb ci: port nowallet-libbitcoinkernel
9c2514de5343 ci: port mac-cross-gui-notests
2c990d84a3db ci: force reinstall of kernel headers in asan
884251441bb7 ci: update asan-lsan-ubsan
f253031cb8e4 ci: port arm 32-bit job
5ded99a7f007 fuzz: MockMempoolMinFee in wallet_fees
c9a7a198d9e8 test: move MockMempoolMinFee to util/txmempool
adf67eb21baf fuzz: create FeeEstimatorTestingSetup to set fee_estimator
ff10a37e9927 fuzz: mock CBlockPolicyEstimator in wallet_fuzz
04e7bfbceb03 ci: update windows-cross job
cc1735d77714 ci: add job to determine runner type
020069e6b718 ci: add Cirrus cache host
9c2b96e0d030 ci: have base install run in right dir
18f6be09d02b ci: use docker build cache arg directly
94a09325475d ci: use buildx in ci
fdf64e553245 ci: add configure-docker action
33ba073df7a8 ci: add REPO_USE_CIRRUS_RUNNERS
b232b0fa5e96 ci: add caching actions
b8fcc9fcbcdd ci: add configure environment action
f591c3becafc fees: make estimateSmartFee/HighestTargetTracked virtual for mocking
fa3f682032a3 test: Fixup fill_mempool docstring
7cc9a087069b Merge bitcoin/bitcoin#33253: Revert compact block cache inefficiencies
084fd68fda2c Merge bitcoin/bitcoin#33258: ci: use LLVM 21
6ff2d423625d Merge bitcoin/bitcoin#33189: rpc: followups for 33106
4d54bb2b92cc Merge bitcoin/bitcoin#33264: threading: reduce the scope of lock in getblocktemplate
9ae23950ef80 Merge bitcoin/bitcoin#33261: ci: return to using dash in CentOS job
b6f8c48946cb coins: increase default `dbbatchsize` to 32 MiB
8bbb7b8bf8e3 refactor: Extract default batch size into kernel
493ba0f68831 threading: reduce the scope of lock in getblocktemplate
509ffea40abb ci: return to using dash in CentOS job
fabc2615af26 test: Use extra_port() helper in feature_bind_extra.py
b7b249d3adfb Revert "[refactor] rewrite vTxHashes as a vector of CTransactionRef"
b9300d8d0a74 Revert "refactor: Simplify `extra_txn` to be a vec of CTransactionRef instead of a vec of pair<Wtxid, CTransactionRef>"
df5a50e5de20 bench/blockencodings: add compact block reconstruction benchmark
4cf0ae474ba0 ci: use LLVM 21
fa96a4afea2a ci: Enable CI_LIMIT_STACK_SIZE=1 in i686_no_ipc task
facfde2cdce6 test: Fix CLI_MAX_ARG_SIZE issues
6ca6f3b37b99 Merge bitcoin/bitcoin#33241: Update libmultiprocess subtree to fix build issues
9703b7e6d563 Merge bitcoin/bitcoin#32592: threading: remove ancient CRITICAL_SECTION macros
dd68d0f40b61 Squashed 'src/ipc/libmultiprocess/' changes from b4120d34bad2..1b8d4a6f1e54
323b3fd27283 Merge commit 'dd68d0f40b614474f24469fbe1ba02f8f9146b31' into pr/subtree-3
d3c5e47391e2 wallet, refactor: Remove Legacy check and error
73220fc0f958 Merge bitcoin/bitcoin#33212: index: Don't commit state in BaseIndex::Rewind
46ca7712cb5f threading: remove unused template instantiations
b537a6a6dbd3 threading: remove obsolete critsect macros
0d0e0a39b4a5 threading: use a reverse lock rather than manual critsect macros
3ddd554d3181 tests: Add Assertions in reverse_lock tests to exercise thread-safety annotations
c88b1cbf57a3 tests: get rid of remaining manual critsect usage
2c223de2af72 Merge bitcoin/bitcoin#33237: doc: use new block_to_connect parameter name
02f6758e0ce8 Merge bitcoin/bitcoin#33233: doc: follow-ups to "Add bitcoin-{node,gui} to release binaries for IPC"
682bd04462d2 Merge bitcoin/bitcoin#33236: doc: Remove wrong and redundant doxygen tag
a9701de0c9fd Merge bitcoin/bitcoin#33217: depends: remove xinerama extension from libxcb
78351ed083b1 Merge bitcoin/bitcoin#33222: miner: clamp options instead of asserting
de65c86572c5 doc: capnproto instruction for Alpine and Arch
49d1a1a36306 doc: add capnproto-devel to Fedora build instruction
a602f6fb7bf5 test: index with an unclean restart after a reorg
01b95ac6f496 index: don't commit state in BaseIndex::Rewind
1c3db0ed8e6f doc: use new block_to_connect parameter name
8333aa530290 Merge bitcoin/bitcoin#32523: wallet: Remove isminetypes
eab5518913a6 doc: mark bitcoin-{node,gui} installed in files.md
966666de9a62 doc: Remove wrong and redundant doxygen tag
d0e1bbad016c test: repeat block malleability test with relayable block over P2P
af4156ab7556 build: set ENABLE_IPC to OFF when fuzzing
2a815d126bc9 doc: link to capnp version bump PR
decc3671c88b guix: remove libxcb-xinerama.so.0 from allowed libs
3d9314f3838c depends: remove xinerama extension from libxcb
7d9789401be4 Merge bitcoin/bitcoin#31802: Add bitcoin-{node,gui} to release binaries for IPC
2885bd0e1c4f doc: unify `datacarriersize` warning with release notes
be776a1443fd wallet: Remove isminetype
009a69a616cf wallet: Remove ISMINE_USED
6a7aa015747e wallet: Remove COutput::spendable and AvailableCoinsListUnspent
7392b8b084be miner: clamp options instead of asserting
620abe985e51 interfaces, gui: Remove is_mine output parameter from getAddress
c0d28c8f5b15 qt: Fix compatibility with `-debuglogfile` command-line option
19273d0705fc fuzz: set mempool options in wallet_fees
81e5c8385b9e test: cover invalid codesep positions for signature in taproot
daa40a3ff973 doc fixups for 33106
c568511e8ced test fixup for incremental feerate
636fa219d37f test fixups
9169a50d529e [rpc] expose blockmintxfee via getmininginfo
ce7d94a492e6 doc: add release note
71f29d4fa90a doc: update build and dependencies docs for IPC
3cbf747c328f cmake: set ENABLE_IPC by default
32a90e1b9017 ci: use bitcoin-node for one depends job
b333cc14d50b ci: build one depends job without multiprocess
16bce9ac4cd0 build: depends makes libmultiprocess by default
417437eb01ac script/verify_flags: extend script_verify_flags to 64 bits
3cbbcb66efc3 script/interpreter: make script_verify_flag_name an ordinary enum
bddcadee82da script/verify_flags: make script_verify_flags type safe
a5ead122fe06 script/interpreter: introduce script_verify_flags typename
4577fb2b1e09 rpc: have getdeploymentinfo report script verify flags
a3986935f073 validation: export GetBlockScriptFlags()
5db8cd2d37eb Move mapFlagNames and FormatScriptFlags logic to script/interpreter.h
adefb51c5437 rpc/net: add per-peer inv_to_send sizes
30c6f64eed30 test: Remove unnecessary LoadWallet() calls
fb8720f1e09f sign: Refactor Schnorr sighash computation out of CreateSchnorrSig
a4cfddda644f tests: Clarify why musig derivation adds a pubkey and xpub
39a63bf2e7e3 descriptors: Add a doxygen comment for has_hardened output_parameter
2320184d0ea8 descriptors: Fix meaning of any_key_parsed
88b0647f027a wallet: Always write last hardened cache flag in migrated wallets
8a08eef645ee tests: Check that the last hardened cache upgrade occurs
0465574c1279 test: Fixes send_blocks_and_test docs
09c95f21e71d test: Adds block tiebreak over restarts tests
18524b072e6b Make nSequenceId init value constants
8b91883a23aa Set the same best tip on restart if two candidates have the same work
5370bed21e0b test: add functional test for complex reorgs
ab145cb3b471 Updates CBlockIndexWorkComparator outdated comment
fa37153288ca util: Abort on failing CHECK_NONFATAL in debug builds
fa0dc4bdffb0 test: Allow testing of check failures
faeb58fe6686 refactor: Set G_ABORT_ON_FAILED_ASSUME when G_FUZZING_BUILD
5fa81e239a39 test: add valid tx test with minimum-sized ECDSA signature (8 bytes DER-encoded)
0802398e749c fuzz: make it possible to mock (fuzz) CThreadInterrupt
6d9e5d130d2e fuzz: add CConnman::SocketHandler() to the tests
3265df63a48d fuzz: add CConnman::InitBinds() to the tests
91cbf4dbd864 fuzz: add CConnman::CreateNodeFromAcceptedSocket() to the tests
50da7432ec1e fuzz: add CConnman::OpenNetworkConnection() to the tests
e6a917c8f8e0 fuzz: add Fuzzed NetEventsInterface and use it in connman tests
e883b3776881 fuzz: set the output argument of FuzzedSock::Accept()
58e55b17e632 test: descriptor: cover invalid multi/multi_a cases
664657ed1343 bugfix: disallow label for ranged descriptors & allow external non-ranged descriptors to have label
fe71a4b139f3 depends: Avoid `warning: "_FORTIFY_SOURCE" redefined` for `libevent`
42e99ad77396 net: skip non-route netlink responses
57ce645f05d1 net: filter for default routes in netlink responses
b81f37031c8f p2p: Increase tx relay rate
REVERT: 1857296c067b kernel: Fix bitcoin-chainstate for windows
REVERT: b14455e3fcc5 kernel: Add Purpose section to header documentation
REVERT: b6bc17b703dd kernel: Allowing reducing exports
REVERT: b1ef48b20730 kernel: Add pure kernel bitcoin-chainstate
REVERT: b8e4169e453a kernel: Add functions to get the block hash from a block
REVERT: ea03b539a2fa kernel: Add block index utility functions to C header
REVERT: 10e8bc695713 kernel: Add function to read block undo data from disk to C header
REVERT: 49743bf8c133 kernel: Add functions to read block from disk to C header
REVERT: 11588ec6537c kernel: Add function for copying block data to C header
REVERT: de24590872f8 kernel: Add functions for the block validation state to C header
REVERT: dcba34ad8f86 kernel: Add validation interface to C header
REVERT: 527435ebcc73 kernel: Add interrupt function to C header
REVERT: c6a3da91764a kernel: Add import blocks function to C header
REVERT: f7d879349a61 kernel: Add chainstate load options for in-memory dbs in C header
REVERT: 9b0116f0adad kernel: Add options for reindexing in C header
REVERT: 4bbd99b03001 kernel: Add block validation to C header
REVERT: 8dbc8230f110 kernel: Add chainstate loading when instantiating a ChainstateManager
REVERT: f1a9d6f4dfff kernel: Add chainstate manager option for setting worker threads
REVERT: 864008a1a71a kernel: Add chainstate manager object to C header
REVERT: b160f13ed141 kernel: Add notifications context option to C header
REVERT: d465a997f2e9 kernel: Add chain params context option to C header
REVERT: e61538b88b32 kernel: Add kernel library context object
REVERT: 3963f4c9de73 kernel: Add logging to kernel library C header
REVERT: f3acc94b4b7e kernel: Introduce initial kernel C header API

git-subtree-dir: depend/bitcoin
git-subtree-split: 4da01123df0f4cb7e05c09dbb1c6b00c064beabe
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants