-
Notifications
You must be signed in to change notification settings - Fork 38k
Bump SCRIPT_VERIFY flags to 64 bit #32998
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. Code Coverage & BenchmarksFor details see: https://corecheck.dev/bitcoin/bitcoin/pulls/32998. ReviewsSee the guideline for information on the review process.
If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update. ConflictsReviewers, this pull request conflicts with the following ones:
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. |
The "introduce script_verify_flags typename" commit is probably best reviewed with |
725dbeb
to
0c82b29
Compare
🚧 At least one of the CI tasks failed. HintsTry to run the tests locally, according to the documentation. However, a CI failure may still
Leave a comment here, if you need help tracking down a confusing failure. |
0c82b29
to
e193e9b
Compare
CI failure seems to be due to a bug in qt6 6.4:
The error output also seems to be cutting off the last letter of the filename ("concept" vs "concepts" here, and "stl_relops." vs "stl_relops.h" in the original bug report linked above). |
Although both failed CI job use Clang 20.1.7, the error can also be reproduced with GCC 13.3. |
agreed, build issue also on my end with gcc 13.3.0 |
Minified this is: # podman run -it ubuntu:noble
apt update && apt upgrade -y
apt install g++ qt6-base-dev qt6-tools-dev git
git clone https://github.com/bitcoin/bitcoin
cd bitcoin
git fetch origin pull/32998/head:32998
git checkout 32998
/usr/lib/qt6/libexec/moc -I/usr/include/c++/13 --output-dep-file -o test.moc /bitcoin/src/qt/intro.cpp
usr/include/c++/13/bits/cpp_type_traits.:69:1: error: Parse error at "std" |
Refactoring helps. |
I don't think you need the |
e193e9b
to
81a10f7
Compare
@hebasto how can we move past the GUI build failures here? https://github.com/bitcoin/bitcoin/actions/runs/16538448423/job/46776353144?pr=32998#step:6:3769. |
Sure!
Implemented in bitcoin-core/gui#881. |
…n module 3a03f07 qt: Avoid header circular dependency (Anthony Towns) 25884bd qt, refactor: Move `FreespaceChecker` class into its own module (Hennadii Stepanov) Pull request description: For some reason, the MOC compiler in older versions of Qt 6 fails to parse `qt/intro.cpp`, as noted in [this comment](#32998 (comment)). This PR proposes a move-only refactoring to simplify the source structure by eliminating the need for the inline `#include <qt/intro.moc>`, thereby effectively working around the issue. Required for #32998. ACKs for top commit: ajtowns: ACK 3a03f07 Tree-SHA512: 4a7261f04fff9bd8edd4dc2df619c90e06417e19da672dd688a917cd0b9a324a6db7185a47c48f0385713b5e6c45d2204bef58cbe6c77299386136ed5682bd8d
81a10f7
to
077797c
Compare
Previously the SCRIPT_VERIFY_* flags were specified as either uint32_t, unsigned int, or unsigned. This converts them to a common type alias in preparation for changing the underlying type.
`using script_verify_flags = uint32_t` allows implicit conversion to and from int, so replace it with a class to have the compiler ensure we use the correct type. Provide from_int and as_int to allow for explicit conversions when desired. Introduces the type `script_verify_flag_name` for the individual flag name enumeration.
Instead of having `SCRIPT_VERIFY_FOO = (1U << n)` just have it be `n` directly, and do the bit shifting when converting it to `script_verify_flags`.
b96c1b9
to
417437e
Compare
Rebased past header conflict with #33116 |
utACK 417437e |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK 417437e
non-blocking suggestions for coverage
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK 652424a
I think it would also make sense, in a follow-up, to move the rest of the Script verification flags stuff to the new verify_flags.h
.
// also allow construction with hard-coded 0 (but not other integers) | ||
consteval explicit(false) script_verify_flags(value_type f) : m_value{f} { if (f != 0) throw 0; } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was curious why this constructor from int
with a runtime check was necessary. It's because of all the if ((flags & SCRIPT_VERIFY_X) != 0)
in the interpreter. This permits to implicitly construct a script_verify_flags
from the 0
there instead of either having an implicit conversion to integer (the very thing this aims to avoid), or touching every single of those checks to make the conversion from the 0
integer explicit.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note that it's consteval, so the throw is a compile-time check, not a runtime one.
// rule of 5 | ||
constexpr script_verify_flags(const script_verify_flags&) = default; | ||
constexpr script_verify_flags(script_verify_flags&&) = default; | ||
constexpr script_verify_flags& operator=(const script_verify_flags&) = default; | ||
constexpr script_verify_flags& operator=(script_verify_flags&&) = default; | ||
constexpr ~script_verify_flags() = default; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How is the rule of 5 relevant for this class? It does not need a user-defined destructor.
From cppreference's Rule of 5 section:
Because the presence of a user-defined (include = default or = delete declared) destructor, copy-constructor, or copy-assignment operator prevents implicit definition of the move constructor and the move assignment operator, any class for which move semantics are desirable, has to declare all five special member functions:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The rule of 5 just says if you define one, define/delete them all; I do it because that ensures I get a compile time error if there's some problem that makes one of them not possible. Move semantics probably aren't very interesting for a wrapper around an int though.
The C++ Core Guidelines version of the "rule of 0" says not to define any of them when possible, however.
reACK 652424a |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code-review ACK 652424a 🎏
for (const std::string& word : words) | ||
{ | ||
if (!mapFlagNames.count(word)) | ||
if (!mapFlagNames.count(word)) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: while touching, could switch to the more modern .contains
if (!mapFlagNames.count(word)) { | |
if (!mapFlagNames.contains(word)) { |
/** Compare two script_verify_flags. <, >, <=, and >= are auto-generated from this. */ | ||
friend constexpr std::strong_ordering operator<=>(const script_verify_flags& a, const script_verify_flags& b) noexcept | ||
{ | ||
return a.m_value <=> b.m_value; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: operator<
would be sufficient (currently only needed in the transaction tests, where a std::set
of script flag combinations is used), I doubt that the other ones would ever have a use-case
diff --git a/src/script/verify_flags.h b/src/script/verify_flags.h
index 95a55d2c79..e14a329ace 100644
--- a/src/script/verify_flags.h
+++ b/src/script/verify_flags.h
@@ -47,11 +47,9 @@ public:
// tests
constexpr explicit operator bool() const { return m_value != 0; }
constexpr bool operator==(script_verify_flags other) const { return m_value == other.m_value; }
-
- /** Compare two script_verify_flags. <, >, <=, and >= are auto-generated from this. */
- friend constexpr std::strong_ordering operator<=>(const script_verify_flags& a, const script_verify_flags& b) noexcept
+ friend constexpr bool operator<(const script_verify_flags& a, const script_verify_flags& b) noexcept
{
- return a.m_value <=> b.m_value;
+ return a.m_value < b.m_value;
}
private:
ACK 652424a |
…563a70c0d4c 7563a70c0d4c Add sans utxo set block validation 9cc32f782367 block header 6ee488a911d7 kernel: Fix bitcoin-chainstate for windows f3cdc1d06830 kernel: Add Purpose section to header documentation e12e49cd9f1a kernel: Allowing reducing exports d12156dc9325 kernel: Add pure kernel bitcoin-chainstate 6073d024833c Kernel: Add functions for working with outpoints 1cf094c3d21d kernel: Add block hash type and block tree utility functions to C header 6d78409470ca kernel: Add function to read block undo data from disk to C header 3a97c00c393a kernel: Add functions to read block from disk to C header c7d52b5d8546 kernel: Add function for copying block data to C header 01406a79391a kernel: Add functions for the block validation state to C header 1a4b0f99b3a1 kernel: Add validation interface to C header b784e3dece56 kernel: Add interrupt function to C header 1b48bf08dad9 kernel: Add import blocks function to C header c261da1804f4 kernel: Add chainstate load options for in-memory dbs in C header 898d063f1150 kernel: Add options for reindexing in C header 3f4ecce17816 kernel: Add block validation to C header 97caa08c3b6e kernel: Add chainstate loading when instantiating a ChainstateManager b94bea810156 kernel: Add chainstate manager option for setting worker threads eaf6829898a0 kernel: Add chainstate manager object to C header 15e4a3f26ded kernel: Add notifications context option to C header a4cd536a8e9b kernel: Add chain params context option to C header d7387a5b6701 kernel: Add kernel library context object 5e2d066fe861 kernel: Add logging to kernel library C header f34e2a470df1 kernel: Introduce initial kernel C header API 9ce01e051bae doc: Add docstrings for ConnectBlock and SpendBlock d7e812db1d37 validation: Move coin existence and spend check to SpendBlock cf3b9c77b9c6 validation: Move SetBestBlock out of ConnectBlock ee0c36f0b540 validation: Add SpendBlock function 78a3397898a6 validation: Use vector of outputs instead of CCoinsViewCache in CheckInputScripts 4d2a58f3f1a5 consensus: Use Coin span in CheckTxInputs 0d4274d9bdda consensus: Use Coin span in GetTransactionSigOpCost 4a3d86c6fc51 consensus: Use Coin span in GetP2SHSigOpCount 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 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() 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 c76de2eea180 net: support overriding the proxy selection in ConnectNode() 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 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 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) 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 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 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 c49a43591f88 Merge commit '535fa0ad0d2637f845beae92ea9dbbbbbe377c74' into pr/subtree-5 535fa0ad0d26 Squashed 'src/ipc/libmultiprocess/' changes from 13424cf2ecc1..47d79db8a552 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 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` 9193c3e4340b cmake: Fix regression in `secp256k1.cmake` 28efd724b478 depends: systemtap 5.3 75e6984ec8c6 test/refactor: use test deque to avoid quadratic iteration 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 8e434a84999c macdeploy: rename macOS output to bitcoin-macos-app.zip 05353d9cf08c macdeploy: combine appname & -zip arguments fabc2615af26 test: Use extra_port() helper in feature_bind_extra.py 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 88b0647f027a wallet: Always write last hardened cache flag in migrated wallets 8a08eef645ee tests: Check that the last hardened cache upgrade occurs 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() b81f37031c8f p2p: Increase tx relay rate REVERT: 64d1449ff47d kernel: Fix bitcoin-chainstate for windows REVERT: ba247a6a7183 kernel: Add Purpose section to header documentation REVERT: b0697ccbf7fd kernel: Allowing reducing exports REVERT: 9d23c437bfc8 kernel: Add pure kernel bitcoin-chainstate REVERT: 10e8e06caf15 Kernel: Add functions for working with outpoints REVERT: ae64f8984d98 kernel: Add functions to get the block hash from a block REVERT: 2c2f277d12fa kernel: Add block hash type and block tree utility functions to C header REVERT: 6062e2eeca3c kernel: Add function to read block undo data from disk to C header REVERT: e96af0baf5ef kernel: Add functions to read block from disk to C header REVERT: 60e1515586a8 kernel: Add function for copying block data to C header REVERT: 7b105b7d02a0 kernel: Add functions for the block validation state to C header REVERT: 1a58dbb81583 kernel: Add validation interface to C header REVERT: 86ed87d5a6c4 kernel: Add interrupt function to C header REVERT: e424c4554653 kernel: Add import blocks function to C header REVERT: cf7b562f2e31 kernel: Add chainstate load options for in-memory dbs in C header REVERT: e26a198acfbb kernel: Add options for reindexing in C header REVERT: 4196583e03d6 kernel: Add block validation to C header REVERT: a7149076e233 kernel: Add chainstate loading when instantiating a ChainstateManager REVERT: d36b447e6caf kernel: Add chainstate manager option for setting worker threads REVERT: d4e612af6701 kernel: Add chainstate manager object to C header REVERT: f19c80767460 kernel: Add notifications context option to C header REVERT: cc0043d99b62 kernel: Add chain params context option to C header REVERT: 8b3ceea4f1df kernel: Add kernel library context object REVERT: 039e222756ef kernel: Add logging to kernel library C header REVERT: d192006d7f4e kernel: Introduce initial kernel C header API git-subtree-dir: libbitcoinkernel-sys/bitcoin git-subtree-split: 7563a70c0d4cbcdef88dbddab939bf3056c63e2b
…09748e2 a8d09748e2 Add sans utxo set block validation 42d3cb24d3 block header 6ee488a911 kernel: Fix bitcoin-chainstate for windows f3cdc1d068 kernel: Add Purpose section to header documentation e12e49cd9f kernel: Allowing reducing exports d12156dc93 kernel: Add pure kernel bitcoin-chainstate 6073d02483 Kernel: Add functions for working with outpoints 1cf094c3d2 kernel: Add block hash type and block tree utility functions to C header 6d78409470 kernel: Add function to read block undo data from disk to C header 3a97c00c39 kernel: Add functions to read block from disk to C header c7d52b5d85 kernel: Add function for copying block data to C header 01406a7939 kernel: Add functions for the block validation state to C header 1a4b0f99b3 kernel: Add validation interface to C header b784e3dece kernel: Add interrupt function to C header 1b48bf08da kernel: Add import blocks function to C header c261da1804 kernel: Add chainstate load options for in-memory dbs in C header 898d063f11 kernel: Add options for reindexing in C header 3f4ecce178 kernel: Add block validation to C header 97caa08c3b kernel: Add chainstate loading when instantiating a ChainstateManager b94bea8101 kernel: Add chainstate manager option for setting worker threads eaf6829898 kernel: Add chainstate manager object to C header 15e4a3f26d kernel: Add notifications context option to C header a4cd536a8e kernel: Add chain params context option to C header d7387a5b67 kernel: Add kernel library context object 5e2d066fe8 kernel: Add logging to kernel library C header f34e2a470d kernel: Introduce initial kernel C header API 9ce01e051b doc: Add docstrings for ConnectBlock and SpendBlock d7e812db1d validation: Move coin existence and spend check to SpendBlock cf3b9c77b9 validation: Move SetBestBlock out of ConnectBlock ee0c36f0b5 validation: Add SpendBlock function 78a3397898 validation: Use vector of outputs instead of CCoinsViewCache in CheckInputScripts 4d2a58f3f1 consensus: Use Coin span in CheckTxInputs 0d4274d9bd consensus: Use Coin span in GetTransactionSigOpCost 4a3d86c6fc consensus: Use Coin span in GetP2SHSigOpCount b510893d00 Merge bitcoin/bitcoin#33494: depends: Update URL for `qrencode` package source tarball ec5841888d Merge bitcoin/bitcoin#32513: ci: remove 3rd party js from windows dll gha job d735e2e9b3 Merge bitcoin/bitcoin#32998: Bump SCRIPT_VERIFY flags to 64 bit de1dc6b47b Merge bitcoin/bitcoin#33515: Improve LastCommonAncestor performance + add tests 919e6d01e9 Merge bitcoin/bitcoin#33489: build: Drop support for EOL macOS 13 452ea59281 Merge bitcoin/bitcoin#33454: net: support overriding the proxy selection in ConnectNode() a33bd767a3 Merge bitcoin/bitcoin#33464: p2p: Use network-dependent timers for inbound inv scheduling 2578da69f4 Merge bitcoin/bitcoin#33485: test: set par=2 in default config for functional test framework 25dbe4bc86 Merge bitcoin/bitcoin#33533: test: addrman: check isTerrible when time is more than 10min in the future cfb0d74698 Merge bitcoin/bitcoin#33121: test: fix p2p_leak_tx.py 86eaa4d6cd Merge bitcoin/bitcoin#33482: contrib: fix macOS deployment with no translations 007900ee9b Merge bitcoin/bitcoin#33434: depends: static libxcb-cursor 8e47ed6906 test: addrman: check isTerrible when time is more than 10min in the future 3635d62f5a chain: make use of pskip in LastCommonAncestor (optimization) 2e09d66fbb tests: add unit tests for CBlockIndex::GetAncestor and LastCommonAncestor 156927903d ci: Check windows manifests for all executables e1a1b14c93 ci: use a more generic way of finding mt.exe 1ed00a0d39 Merge bitcoin/bitcoin#33504: Mempool: Do not enforce TRUC checks on reorg c76de2eea1 net: support overriding the proxy selection in ConnectNode() 75353a0163 Merge bitcoin/bitcoin#32326: net: improve the interface around FindNode() and avoid a recursive mutex lock 87e7f37918 doc: clarify peer address in getpeerinfo and addnode RPC help 2a4450ccbb net: change FindNode() to not return a node and rename it 4268abae1a net: avoid recursive m_nodes_mutex lock in DisconnectNode() acc7f2a433 Merge bitcoin/bitcoin#33401: ci: Remove bash -c from cmake invocation using eval 1aaaaa078b fuzz: Drop unused workaround after Apple-Clang bump fadad7a494 Drop support for EOL macOS 13 50194029e7 ci: Remove bash -c from cmake invocation using eval f41f97240c Merge bitcoin/bitcoin#28584: Fuzz: extend CConnman tests cc4a2cc6bd Merge bitcoin/bitcoin#33453: docs: Undeprecate datacarrier and datacarriersize configuration options 7502d4e940 Merge bitcoin/bitcoin#33260: test: Use extra_port() helper in feature_bind_extra.py 14ae71f323 test: make notfound_on_unannounced more reliable 99bc552980 test: fix (w)txid confusion in p2p_leak_tx.py 576dd97cb9 test: increase timeout in p2p_leak_tx.py 8f73d95221 Merge bitcoin/bitcoin#33299: wallet: reduce unconditional logging during load 0f7d4ee4e8 p2p: Use different inbound inv timer per network 93a70a42d3 depends: Update URL for `qrencode` package source tarball 6de8051263 depends: Use hash instead of file name for package download stamp 46135d90ea depends: Drop redundant check for downloaded file 771978952a depends: Fix `$(package)_fetched` target 25212dfdb4 Merge bitcoin/bitcoin#33487: ci: use latest versions of lint deps 06df14ba75 test: add more TRUC reorg coverge 26e71c237d Mempool: Do not enforce TRUC checks on reorg bbe8e9063c fuzz: don't bypass_limits for most mempool harnesses d4f47f9771 ci: use latest versions of lint deps fc861332b3 wallet, log: reduce unconditional logging during load 3a4d1a25cf net: merge AlreadyConnectedToAddress() and FindNode(CNetAddr) d8fe258cd6 Merge bitcoin/bitcoin#33484: doc: rpc: fix case typo in `finalizepsbt` help (final_scriptwitness) dda5228e02 test: set par=2 in default config for functional test framework ff05bebcc4 doc: rpc: fix case typo in `finalizepsbt` help (final_scriptwitness) 200150beba Merge bitcoin/bitcoin#33313: test/refactor: use test deque to avoid quadratic iteration 7e08445449 Merge bitcoin/bitcoin#33399: key: use static context for libsecp256k1 calls where applicable 7b5261f7ef contrib: fix using macdploy script without translations. 65e909dfdd Merge bitcoin/bitcoin#33430: rpc: addpeeraddress: throw on invalid IP 31b29f8eb6 Merge bitcoin/bitcoin#33229: multiprocess: Don't require bitcoin -m argument when IPC options are used e62e0a12b3 Merge bitcoin/bitcoin#33230: cli: Handle arguments that can be either JSON or string 7ae0497eef ci: remove 3rd party js from windows dll gha job 05d984b1a4 Merge bitcoin/bitcoin#33475: bugfix: miner: fix `addPackageTxs` unsigned integer overflow b807dfcdc5 miner: fix `addPackageTxs` unsigned integer overflow d41b503ae1 Merge bitcoin/bitcoin#33446: rpc: fix getblock(header) returns target for tip 5ae8edbc30 Merge bitcoin/bitcoin#33158: macdeploy: avoid use of `Bitcoin Core` in Linux cross build df67bb6fd8 test: Remove convert_to_json_for_cli 44a493e150 cli: Allow arguments to be both strings and json ad4a49090d Merge bitcoin/bitcoin#33408: msvc: Update vcpkg manifest dd61f08fd5 Merge bitcoin/bitcoin#33031: wallet: Set descriptor cache upgraded flag for migrated wallets 350692e561 Merge bitcoin/bitcoin#33388: test: don't throw from the destructor of DebugLogHelper 94db966a3b net: use generic network key for addrcache eca50854e1 depends: static libxcb_cursor 89144eb473 Merge bitcoin/bitcoin#33448: net/rpc: Report inv information for debugging eaa1a3cd0b Merge bitcoin/bitcoin#33425: ci: remove Clang build from msan fuzz job b77137a564 ci: link against -lstdc++ in native fuzz with msan job a86e1a6e32 Merge bitcoin/bitcoin#33427: rpc: Always return per-wtxid entries in submitpackage tx-results 6861dadfcb Merge bitcoin/bitcoin#33459: doc: remove unrelated `bitcoin-wallet` binary from `libbitcoin_ipc` description 3b3ab3a50a Merge bitcoin/bitcoin#33302: ci: disable cirrus cache in 32bit arm job 2738b63e02 test: validate behaviour of getpeerinfo last_inv_sequence and inv_to_send fbde8d9a81 doc: remove unrelated `bitcoin-wallet` binary from `libbitcoin_ipc` description 34fefb6335 Merge bitcoin/bitcoin#33435: system: improve handling around GetTotalRAM() 56791b5829 test: split out `system_ram_tests` to signal when total ram cannot be determined 337a6e7386 system: improve handling around GetTotalRAM() 451ba9ada4 datacarrier: Undeprecate configuration option 77b2ebb811 rpc/net: report per-peer last_inv_sequence bf7996cbc3 rpc: fix getblock(header) returns target for tip 4c3c1f42cf test: add block 2016 to mock mainnet 953544d028 Merge bitcoin/bitcoin#33429: fuzz: reduce iterations in slow targets df101c97c2 Merge bitcoin/bitcoin#33422: build: Remove lingering Windows registry & shortcuts (#32132 follow-up) 56c6daa64f Merge bitcoin/bitcoin#28592: p2p: Increase tx relay rate 79752b9c0b build(windows): Remove lingering registry entries and shortcuts upon install cad9a7fd73 rpc: Always return per-wtxid entries in submitpackage tx-results 6a33970fef fuzz: Reduce iterations in slow targets edb871cba2 Merge bitcoin/bitcoin#33412: Update libmultiprocess subtree to fix intermittent mptest hang 2427939935 test: forbid copying of DebugLogHelper d6aa266d43 test: don't throw from the destructor of DebugLogHelper eaf2c46475 Merge bitcoin/bitcoin#33378: Remove unnecessary casts when calling socket operations 5aec516b2c Merge bitcoin/bitcoin#33333: coins: warn on oversized `-dbcache` 316a0c5132 rpc: addpeeraddress: throw on invalid IP 74fa028da1 Merge bitcoin/bitcoin#33420: test: Avoid interface_ipc.py Duplicate ID errors 168360f4ae coins: warn on oversized -dbcache 6c720459be system: add helper for fetching total system memory e9c52272eb test: Avoid interface_ipc.py Duplicate ID errors c49a43591f Merge commit '535fa0ad0d2637f845beae92ea9dbbbbbe377c74' into pr/subtree-5 535fa0ad0d Squashed 'src/ipc/libmultiprocess/' changes from 13424cf2ecc1..47d79db8a552 453b0fa286 bitcoin: Make wrapper not require -m 1444ed855f Merge bitcoin/bitcoin#33407: cmake: Install `bitcoin` manpage 29e836fae6 test: add tool_bitcoin to test bitcoin wrapper behavior 0972f55040 init: add exe name to bitcoind, bitcoin-node -version output to be able to distinguish these in tests 2b0cd1f3fb Merge bitcoin/bitcoin#33395: net: do not apply whitelist permissions to onion inbounds ef20c2d11d build, msvc: Update vcpkg manifest baseline 1ff9e92948 key: use static context for libsecp256k1 calls where applicable f563ce9081 net: Do not apply whitelist permission to onion inbounds 947bed28fe Merge bitcoin/bitcoin#33380: test: Add submitblock test in interface_ipc 7584a4fda9 cmake: Install `bitcoin` manpage 67f632b6de net: remove unnecessary casts in socket operations c4adfbf706 Merge bitcoin/bitcoin#33373: depends: systemtap 5.3 5aa3d3135d Merge bitcoin/bitcoin#33391: test: Prevent disk space warning during node_init_tests bdf01c6f61 test: Prevent disk space warning during node_init_tests 0a26731c4c test: Add submitblock test in interface_ipc 2d6a0c4649 Merge bitcoin/bitcoin#33379: cmake: Fix regression in `secp256k1.cmake` 9193c3e434 cmake: Fix regression in `secp256k1.cmake` 28efd724b4 depends: systemtap 5.3 75e6984ec8 test/refactor: use test deque to avoid quadratic iteration 652424ad16 test: additional test coverage for script_verify_flags 00c253d494 ci: disable cirrus cache in 32bit arm job ff18b6bbaf ci: refactor docker action to return provider str 8e434a8499 macdeploy: rename macOS output to bitcoin-macos-app.zip 05353d9cf0 macdeploy: combine appname & -zip arguments fabc2615af test: Use extra_port() helper in feature_bind_extra.py 417437eb01 script/verify_flags: extend script_verify_flags to 64 bits 3cbbcb66ef script/interpreter: make script_verify_flag_name an ordinary enum bddcadee82 script/verify_flags: make script_verify_flags type safe a5ead122fe script/interpreter: introduce script_verify_flags typename 4577fb2b1e rpc: have getdeploymentinfo report script verify flags a3986935f0 validation: export GetBlockScriptFlags() 5db8cd2d37 Move mapFlagNames and FormatScriptFlags logic to script/interpreter.h adefb51c54 rpc/net: add per-peer inv_to_send sizes 88b0647f02 wallet: Always write last hardened cache flag in migrated wallets 8a08eef645 tests: Check that the last hardened cache upgrade occurs 0802398e74 fuzz: make it possible to mock (fuzz) CThreadInterrupt 6d9e5d130d fuzz: add CConnman::SocketHandler() to the tests 3265df63a4 fuzz: add CConnman::InitBinds() to the tests 91cbf4dbd8 fuzz: add CConnman::CreateNodeFromAcceptedSocket() to the tests 50da7432ec fuzz: add CConnman::OpenNetworkConnection() to the tests e6a917c8f8 fuzz: add Fuzzed NetEventsInterface and use it in connman tests e883b37768 fuzz: set the output argument of FuzzedSock::Accept() b81f37031c p2p: Increase tx relay rate REVERT: 64d1449ff4 kernel: Fix bitcoin-chainstate for windows REVERT: ba247a6a71 kernel: Add Purpose section to header documentation REVERT: b0697ccbf7 kernel: Allowing reducing exports REVERT: 9d23c437bf kernel: Add pure kernel bitcoin-chainstate REVERT: 10e8e06caf Kernel: Add functions for working with outpoints REVERT: ae64f8984d kernel: Add functions to get the block hash from a block REVERT: 2c2f277d12 kernel: Add block hash type and block tree utility functions to C header REVERT: 6062e2eeca kernel: Add function to read block undo data from disk to C header REVERT: e96af0baf5 kernel: Add functions to read block from disk to C header REVERT: 60e1515586 kernel: Add function for copying block data to C header REVERT: 7b105b7d02 kernel: Add functions for the block validation state to C header REVERT: 1a58dbb815 kernel: Add validation interface to C header REVERT: 86ed87d5a6 kernel: Add interrupt function to C header REVERT: e424c45546 kernel: Add import blocks function to C header REVERT: cf7b562f2e kernel: Add chainstate load options for in-memory dbs in C header REVERT: e26a198acf kernel: Add options for reindexing in C header REVERT: 4196583e03 kernel: Add block validation to C header REVERT: a7149076e2 kernel: Add chainstate loading when instantiating a ChainstateManager REVERT: d36b447e6c kernel: Add chainstate manager option for setting worker threads REVERT: d4e612af67 kernel: Add chainstate manager object to C header REVERT: f19c807674 kernel: Add notifications context option to C header REVERT: cc0043d99b kernel: Add chain params context option to C header REVERT: 8b3ceea4f1 kernel: Add kernel library context object REVERT: 039e222756 kernel: Add logging to kernel library C header REVERT: d192006d7f kernel: Introduce initial kernel C header API git-subtree-dir: libbitcoinkernel-sys/bitcoin git-subtree-split: a8d09748e2e8b864ee6c2049426542d012c479bb
2f6d5637d8c kernel: Fix bitcoin-chainstate for windows 993bacaf056 kernel: Add Purpose section to header documentation e792dadf643 kernel: Allowing reducing exports 6cad4226aac kernel: Add pure kernel bitcoin-chainstate 41b69c4fe68 Kernel: Add functions for working with outpoints 014a5851803 kernel: Add block hash type and block tree utility functions to C header 61ef84fdfc3 kernel: Add function to read block undo data from disk to C header 86333bea808 kernel: Add functions to read block from disk to C header f654d091b03 kernel: Add function for copying block data to C header 045cf8c026f kernel: Add functions for the block validation state to C header 823fb620462 kernel: Add validation interface to C header b6a7894005d kernel: Add interrupt function to C header ed612cb523f kernel: Add import blocks function to C header a630177e29f kernel: Add chainstate load options for in-memory dbs in C header 13c9738191c kernel: Add options for reindexing in C header 1a52e3d27f6 kernel: Add block validation to C header f2f088f7be2 kernel: Add chainstate loading when instantiating a ChainstateManager 0677fa7a702 kernel: Add chainstate manager option for setting worker threads 31782cd761f kernel: Add chainstate manager object to C header a70b4f0cd80 kernel: Add notifications context option to C header 680dad14965 kernel: Add chain params context option to C header fe1438d6f63 kernel: Add kernel library context object 2c686196e70 kernel: Add logging to kernel library C header 16613837485 kernel: Introduce initial kernel C header API b510893d007 Merge bitcoin/bitcoin#33494: depends: Update URL for `qrencode` package source tarball ec5841888de Merge bitcoin/bitcoin#32513: ci: remove 3rd party js from windows dll gha job d735e2e9b39 Merge bitcoin/bitcoin#32998: Bump SCRIPT_VERIFY flags to 64 bit de1dc6b47ba Merge bitcoin/bitcoin#33515: Improve LastCommonAncestor performance + add tests 919e6d01e93 Merge bitcoin/bitcoin#33489: build: Drop support for EOL macOS 13 452ea592811 Merge bitcoin/bitcoin#33454: net: support overriding the proxy selection in ConnectNode() a33bd767a37 Merge bitcoin/bitcoin#33464: p2p: Use network-dependent timers for inbound inv scheduling 2578da69f41 Merge bitcoin/bitcoin#33485: test: set par=2 in default config for functional test framework 25dbe4bc86d Merge bitcoin/bitcoin#33533: test: addrman: check isTerrible when time is more than 10min in the future cfb0d74698a Merge bitcoin/bitcoin#33121: test: fix p2p_leak_tx.py 86eaa4d6cd5 Merge bitcoin/bitcoin#33482: contrib: fix macOS deployment with no translations 007900ee9b8 Merge bitcoin/bitcoin#33434: depends: static libxcb-cursor 8e47ed6906d test: addrman: check isTerrible when time is more than 10min in the future 3635d62f5a9 chain: make use of pskip in LastCommonAncestor (optimization) 2e09d66fbb7 tests: add unit tests for CBlockIndex::GetAncestor and LastCommonAncestor 156927903d6 ci: Check windows manifests for all executables e1a1b14c935 ci: use a more generic way of finding mt.exe 1ed00a0d39d Merge bitcoin/bitcoin#33504: Mempool: Do not enforce TRUC checks on reorg c76de2eea18 net: support overriding the proxy selection in ConnectNode() 75353a01635 Merge bitcoin/bitcoin#32326: net: improve the interface around FindNode() and avoid a recursive mutex lock 87e7f37918d doc: clarify peer address in getpeerinfo and addnode RPC help 2a4450ccbbe net: change FindNode() to not return a node and rename it 4268abae1a1 net: avoid recursive m_nodes_mutex lock in DisconnectNode() acc7f2a433b Merge bitcoin/bitcoin#33401: ci: Remove bash -c from cmake invocation using eval 1aaaaa078bb fuzz: Drop unused workaround after Apple-Clang bump fadad7a4947 Drop support for EOL macOS 13 50194029e7c ci: Remove bash -c from cmake invocation using eval f41f97240c0 Merge bitcoin/bitcoin#28584: Fuzz: extend CConnman tests cc4a2cc6bdc Merge bitcoin/bitcoin#33453: docs: Undeprecate datacarrier and datacarriersize configuration options 7502d4e9403 Merge bitcoin/bitcoin#33260: test: Use extra_port() helper in feature_bind_extra.py 14ae71f323d test: make notfound_on_unannounced more reliable 99bc552980d test: fix (w)txid confusion in p2p_leak_tx.py 576dd97cb91 test: increase timeout in p2p_leak_tx.py 8f73d952214 Merge bitcoin/bitcoin#33299: wallet: reduce unconditional logging during load 0f7d4ee4e82 p2p: Use different inbound inv timer per network 93a70a42d30 depends: Update URL for `qrencode` package source tarball 6de80512632 depends: Use hash instead of file name for package download stamp 46135d90ea9 depends: Drop redundant check for downloaded file 771978952a9 depends: Fix `$(package)_fetched` target 25212dfdb4c Merge bitcoin/bitcoin#33487: ci: use latest versions of lint deps 06df14ba75b test: add more TRUC reorg coverge 26e71c237d9 Mempool: Do not enforce TRUC checks on reorg bbe8e9063c1 fuzz: don't bypass_limits for most mempool harnesses d4f47f97715 ci: use latest versions of lint deps fc861332b35 wallet, log: reduce unconditional logging during load 3a4d1a25cf9 net: merge AlreadyConnectedToAddress() and FindNode(CNetAddr) d8fe258cd61 Merge bitcoin/bitcoin#33484: doc: rpc: fix case typo in `finalizepsbt` help (final_scriptwitness) dda5228e02c test: set par=2 in default config for functional test framework ff05bebcc42 doc: rpc: fix case typo in `finalizepsbt` help (final_scriptwitness) 200150beba6 Merge bitcoin/bitcoin#33313: test/refactor: use test deque to avoid quadratic iteration 7e08445449f Merge bitcoin/bitcoin#33399: key: use static context for libsecp256k1 calls where applicable 7b5261f7ef3 contrib: fix using macdploy script without translations. 65e909dfdd9 Merge bitcoin/bitcoin#33430: rpc: addpeeraddress: throw on invalid IP 31b29f8eb62 Merge bitcoin/bitcoin#33229: multiprocess: Don't require bitcoin -m argument when IPC options are used e62e0a12b33 Merge bitcoin/bitcoin#33230: cli: Handle arguments that can be either JSON or string 7ae0497eef8 ci: remove 3rd party js from windows dll gha job 05d984b1a4f Merge bitcoin/bitcoin#33475: bugfix: miner: fix `addPackageTxs` unsigned integer overflow b807dfcdc59 miner: fix `addPackageTxs` unsigned integer overflow d41b503ae12 Merge bitcoin/bitcoin#33446: rpc: fix getblock(header) returns target for tip 5ae8edbc304 Merge bitcoin/bitcoin#33158: macdeploy: avoid use of `Bitcoin Core` in Linux cross build df67bb6fd84 test: Remove convert_to_json_for_cli 44a493e150a cli: Allow arguments to be both strings and json ad4a49090da Merge bitcoin/bitcoin#33408: msvc: Update vcpkg manifest dd61f08fd52 Merge bitcoin/bitcoin#33031: wallet: Set descriptor cache upgraded flag for migrated wallets 350692e561c Merge bitcoin/bitcoin#33388: test: don't throw from the destructor of DebugLogHelper 94db966a3bb net: use generic network key for addrcache eca50854e1c depends: static libxcb_cursor 89144eb473c Merge bitcoin/bitcoin#33448: net/rpc: Report inv information for debugging eaa1a3cd0b3 Merge bitcoin/bitcoin#33425: ci: remove Clang build from msan fuzz job b77137a5644 ci: link against -lstdc++ in native fuzz with msan job a86e1a6e32d Merge bitcoin/bitcoin#33427: rpc: Always return per-wtxid entries in submitpackage tx-results 6861dadfcb1 Merge bitcoin/bitcoin#33459: doc: remove unrelated `bitcoin-wallet` binary from `libbitcoin_ipc` description 3b3ab3a50a0 Merge bitcoin/bitcoin#33302: ci: disable cirrus cache in 32bit arm job 2738b63e025 test: validate behaviour of getpeerinfo last_inv_sequence and inv_to_send fbde8d9a81d doc: remove unrelated `bitcoin-wallet` binary from `libbitcoin_ipc` description 34fefb63358 Merge bitcoin/bitcoin#33435: system: improve handling around GetTotalRAM() 56791b58295 test: split out `system_ram_tests` to signal when total ram cannot be determined 337a6e73861 system: improve handling around GetTotalRAM() 451ba9ada41 datacarrier: Undeprecate configuration option 77b2ebb8118 rpc/net: report per-peer last_inv_sequence bf7996cbc3b rpc: fix getblock(header) returns target for tip 4c3c1f42cf7 test: add block 2016 to mock mainnet 953544d0286 Merge bitcoin/bitcoin#33429: fuzz: reduce iterations in slow targets df101c97c26 Merge bitcoin/bitcoin#33422: build: Remove lingering Windows registry & shortcuts (#32132 follow-up) 56c6daa64f6 Merge bitcoin/bitcoin#28592: p2p: Increase tx relay rate 79752b9c0b6 build(windows): Remove lingering registry entries and shortcuts upon install cad9a7fd737 rpc: Always return per-wtxid entries in submitpackage tx-results 6a33970fef1 fuzz: Reduce iterations in slow targets edb871cba22 Merge bitcoin/bitcoin#33412: Update libmultiprocess subtree to fix intermittent mptest hang 2427939935f test: forbid copying of DebugLogHelper d6aa266d432 test: don't throw from the destructor of DebugLogHelper eaf2c464758 Merge bitcoin/bitcoin#33378: Remove unnecessary casts when calling socket operations 5aec516b2ce Merge bitcoin/bitcoin#33333: coins: warn on oversized `-dbcache` 316a0c51327 rpc: addpeeraddress: throw on invalid IP 74fa028da1e Merge bitcoin/bitcoin#33420: test: Avoid interface_ipc.py Duplicate ID errors 168360f4ae4 coins: warn on oversized -dbcache 6c720459bee system: add helper for fetching total system memory e9c52272ebd test: Avoid interface_ipc.py Duplicate ID errors c49a43591f8 Merge commit '535fa0ad0d2637f845beae92ea9dbbbbbe377c74' into pr/subtree-5 535fa0ad0d2 Squashed 'src/ipc/libmultiprocess/' changes from 13424cf2ecc1..47d79db8a552 453b0fa286e bitcoin: Make wrapper not require -m 1444ed855f4 Merge bitcoin/bitcoin#33407: cmake: Install `bitcoin` manpage 29e836fae66 test: add tool_bitcoin to test bitcoin wrapper behavior 0972f550402 init: add exe name to bitcoind, bitcoin-node -version output to be able to distinguish these in tests 2b0cd1f3fb2 Merge bitcoin/bitcoin#33395: net: do not apply whitelist permissions to onion inbounds ef20c2d11d9 build, msvc: Update vcpkg manifest baseline 1ff9e929489 key: use static context for libsecp256k1 calls where applicable f563ce90818 net: Do not apply whitelist permission to onion inbounds 947bed28fe6 Merge bitcoin/bitcoin#33380: test: Add submitblock test in interface_ipc 7584a4fda95 cmake: Install `bitcoin` manpage 67f632b6deb net: remove unnecessary casts in socket operations c4adfbf7062 Merge bitcoin/bitcoin#33373: depends: systemtap 5.3 5aa3d3135d2 Merge bitcoin/bitcoin#33391: test: Prevent disk space warning during node_init_tests bdf01c6f612 test: Prevent disk space warning during node_init_tests 0a26731c4cc test: Add submitblock test in interface_ipc 2d6a0c46491 Merge bitcoin/bitcoin#33379: cmake: Fix regression in `secp256k1.cmake` 9193c3e4340 cmake: Fix regression in `secp256k1.cmake` 28efd724b47 depends: systemtap 5.3 75e6984ec8c test/refactor: use test deque to avoid quadratic iteration 652424ad162 test: additional test coverage for script_verify_flags 00c253d4941 ci: disable cirrus cache in 32bit arm job ff18b6bbaf3 ci: refactor docker action to return provider str 8e434a84999 macdeploy: rename macOS output to bitcoin-macos-app.zip 05353d9cf08 macdeploy: combine appname & -zip arguments fabc2615af2 test: Use extra_port() helper in feature_bind_extra.py 417437eb01a script/verify_flags: extend script_verify_flags to 64 bits 3cbbcb66efc script/interpreter: make script_verify_flag_name an ordinary enum bddcadee82d script/verify_flags: make script_verify_flags type safe a5ead122fe0 script/interpreter: introduce script_verify_flags typename 4577fb2b1e0 rpc: have getdeploymentinfo report script verify flags a3986935f07 validation: export GetBlockScriptFlags() 5db8cd2d37e Move mapFlagNames and FormatScriptFlags logic to script/interpreter.h adefb51c543 rpc/net: add per-peer inv_to_send sizes 88b0647f027 wallet: Always write last hardened cache flag in migrated wallets 8a08eef645e tests: Check that the last hardened cache upgrade occurs 0802398e749 fuzz: make it possible to mock (fuzz) CThreadInterrupt 6d9e5d130d2 fuzz: add CConnman::SocketHandler() to the tests 3265df63a48 fuzz: add CConnman::InitBinds() to the tests 91cbf4dbd86 fuzz: add CConnman::CreateNodeFromAcceptedSocket() to the tests 50da7432ec1 fuzz: add CConnman::OpenNetworkConnection() to the tests e6a917c8f8e fuzz: add Fuzzed NetEventsInterface and use it in connman tests e883b377688 fuzz: set the output argument of FuzzedSock::Accept() b81f37031c8 p2p: Increase tx relay rate REVERT: 64d1449ff47 kernel: Fix bitcoin-chainstate for windows REVERT: ba247a6a718 kernel: Add Purpose section to header documentation REVERT: b0697ccbf7f kernel: Allowing reducing exports REVERT: 9d23c437bfc kernel: Add pure kernel bitcoin-chainstate REVERT: 10e8e06caf1 Kernel: Add functions for working with outpoints REVERT: ae64f8984d9 kernel: Add functions to get the block hash from a block REVERT: 2c2f277d12f kernel: Add block hash type and block tree utility functions to C header REVERT: 6062e2eeca3 kernel: Add function to read block undo data from disk to C header REVERT: e96af0baf5e kernel: Add functions to read block from disk to C header REVERT: 60e1515586a kernel: Add function for copying block data to C header REVERT: 7b105b7d02a kernel: Add functions for the block validation state to C header REVERT: 1a58dbb8158 kernel: Add validation interface to C header REVERT: 86ed87d5a6c kernel: Add interrupt function to C header REVERT: e424c455465 kernel: Add import blocks function to C header REVERT: cf7b562f2e3 kernel: Add chainstate load options for in-memory dbs in C header REVERT: e26a198acfb kernel: Add options for reindexing in C header REVERT: 4196583e03d kernel: Add block validation to C header REVERT: a7149076e23 kernel: Add chainstate loading when instantiating a ChainstateManager REVERT: d36b447e6ca kernel: Add chainstate manager option for setting worker threads REVERT: d4e612af670 kernel: Add chainstate manager object to C header REVERT: f19c8076746 kernel: Add notifications context option to C header REVERT: cc0043d99b6 kernel: Add chain params context option to C header REVERT: 8b3ceea4f1d kernel: Add kernel library context object REVERT: 039e222756e kernel: Add logging to kernel library C header REVERT: d192006d7f4 kernel: Introduce initial kernel C header API git-subtree-dir: bitcoinkernel/bitcoin git-subtree-split: 2f6d5637d8cd1dc1a1444e31fdfb2dfb13152500
…3262e9ee5 0a3262e9ee5 Add sans utxo set block validation 965c0a099b1 block header 6ee488a911d kernel: Fix bitcoin-chainstate for windows f3cdc1d0683 kernel: Add Purpose section to header documentation e12e49cd9f1 kernel: Allowing reducing exports d12156dc932 kernel: Add pure kernel bitcoin-chainstate 6073d024833 Kernel: Add functions for working with outpoints 1cf094c3d21 kernel: Add block hash type and block tree utility functions to C header 6d78409470c kernel: Add function to read block undo data from disk to C header 3a97c00c393 kernel: Add functions to read block from disk to C header c7d52b5d854 kernel: Add function for copying block data to C header 01406a79391 kernel: Add functions for the block validation state to C header 1a4b0f99b3a kernel: Add validation interface to C header b784e3dece5 kernel: Add interrupt function to C header 1b48bf08dad kernel: Add import blocks function to C header c261da1804f kernel: Add chainstate load options for in-memory dbs in C header 898d063f115 kernel: Add options for reindexing in C header 3f4ecce1781 kernel: Add block validation to C header 97caa08c3b6 kernel: Add chainstate loading when instantiating a ChainstateManager b94bea81015 kernel: Add chainstate manager option for setting worker threads eaf6829898a kernel: Add chainstate manager object to C header 15e4a3f26de kernel: Add notifications context option to C header a4cd536a8e9 kernel: Add chain params context option to C header d7387a5b670 kernel: Add kernel library context object 5e2d066fe86 kernel: Add logging to kernel library C header f34e2a470df kernel: Introduce initial kernel C header API 9ce01e051ba doc: Add docstrings for ConnectBlock and SpendBlock d7e812db1d3 validation: Move coin existence and spend check to SpendBlock cf3b9c77b9c validation: Move SetBestBlock out of ConnectBlock ee0c36f0b54 validation: Add SpendBlock function 78a3397898a validation: Use vector of outputs instead of CCoinsViewCache in CheckInputScripts 4d2a58f3f1a consensus: Use Coin span in CheckTxInputs 0d4274d9bdd consensus: Use Coin span in GetTransactionSigOpCost 4a3d86c6fc5 consensus: Use Coin span in GetP2SHSigOpCount b510893d007 Merge bitcoin/bitcoin#33494: depends: Update URL for `qrencode` package source tarball ec5841888de Merge bitcoin/bitcoin#32513: ci: remove 3rd party js from windows dll gha job d735e2e9b39 Merge bitcoin/bitcoin#32998: Bump SCRIPT_VERIFY flags to 64 bit de1dc6b47ba Merge bitcoin/bitcoin#33515: Improve LastCommonAncestor performance + add tests 919e6d01e93 Merge bitcoin/bitcoin#33489: build: Drop support for EOL macOS 13 452ea592811 Merge bitcoin/bitcoin#33454: net: support overriding the proxy selection in ConnectNode() a33bd767a37 Merge bitcoin/bitcoin#33464: p2p: Use network-dependent timers for inbound inv scheduling 2578da69f41 Merge bitcoin/bitcoin#33485: test: set par=2 in default config for functional test framework 25dbe4bc86d Merge bitcoin/bitcoin#33533: test: addrman: check isTerrible when time is more than 10min in the future cfb0d74698a Merge bitcoin/bitcoin#33121: test: fix p2p_leak_tx.py 86eaa4d6cd5 Merge bitcoin/bitcoin#33482: contrib: fix macOS deployment with no translations 007900ee9b8 Merge bitcoin/bitcoin#33434: depends: static libxcb-cursor 8e47ed6906d test: addrman: check isTerrible when time is more than 10min in the future 3635d62f5a9 chain: make use of pskip in LastCommonAncestor (optimization) 2e09d66fbb7 tests: add unit tests for CBlockIndex::GetAncestor and LastCommonAncestor 156927903d6 ci: Check windows manifests for all executables e1a1b14c935 ci: use a more generic way of finding mt.exe 1ed00a0d39d Merge bitcoin/bitcoin#33504: Mempool: Do not enforce TRUC checks on reorg c76de2eea18 net: support overriding the proxy selection in ConnectNode() 75353a01635 Merge bitcoin/bitcoin#32326: net: improve the interface around FindNode() and avoid a recursive mutex lock 87e7f37918d doc: clarify peer address in getpeerinfo and addnode RPC help 2a4450ccbbe net: change FindNode() to not return a node and rename it 4268abae1a1 net: avoid recursive m_nodes_mutex lock in DisconnectNode() acc7f2a433b Merge bitcoin/bitcoin#33401: ci: Remove bash -c from cmake invocation using eval 1aaaaa078bb fuzz: Drop unused workaround after Apple-Clang bump fadad7a4947 Drop support for EOL macOS 13 50194029e7c ci: Remove bash -c from cmake invocation using eval f41f97240c0 Merge bitcoin/bitcoin#28584: Fuzz: extend CConnman tests cc4a2cc6bdc Merge bitcoin/bitcoin#33453: docs: Undeprecate datacarrier and datacarriersize configuration options 7502d4e9403 Merge bitcoin/bitcoin#33260: test: Use extra_port() helper in feature_bind_extra.py 14ae71f323d test: make notfound_on_unannounced more reliable 99bc552980d test: fix (w)txid confusion in p2p_leak_tx.py 576dd97cb91 test: increase timeout in p2p_leak_tx.py 8f73d952214 Merge bitcoin/bitcoin#33299: wallet: reduce unconditional logging during load 0f7d4ee4e82 p2p: Use different inbound inv timer per network 93a70a42d30 depends: Update URL for `qrencode` package source tarball 6de80512632 depends: Use hash instead of file name for package download stamp 46135d90ea9 depends: Drop redundant check for downloaded file 771978952a9 depends: Fix `$(package)_fetched` target 25212dfdb4c Merge bitcoin/bitcoin#33487: ci: use latest versions of lint deps 06df14ba75b test: add more TRUC reorg coverge 26e71c237d9 Mempool: Do not enforce TRUC checks on reorg bbe8e9063c1 fuzz: don't bypass_limits for most mempool harnesses d4f47f97715 ci: use latest versions of lint deps fc861332b35 wallet, log: reduce unconditional logging during load 3a4d1a25cf9 net: merge AlreadyConnectedToAddress() and FindNode(CNetAddr) d8fe258cd61 Merge bitcoin/bitcoin#33484: doc: rpc: fix case typo in `finalizepsbt` help (final_scriptwitness) dda5228e02c test: set par=2 in default config for functional test framework ff05bebcc42 doc: rpc: fix case typo in `finalizepsbt` help (final_scriptwitness) 200150beba6 Merge bitcoin/bitcoin#33313: test/refactor: use test deque to avoid quadratic iteration 7e08445449f Merge bitcoin/bitcoin#33399: key: use static context for libsecp256k1 calls where applicable 7b5261f7ef3 contrib: fix using macdploy script without translations. 65e909dfdd9 Merge bitcoin/bitcoin#33430: rpc: addpeeraddress: throw on invalid IP 31b29f8eb62 Merge bitcoin/bitcoin#33229: multiprocess: Don't require bitcoin -m argument when IPC options are used e62e0a12b33 Merge bitcoin/bitcoin#33230: cli: Handle arguments that can be either JSON or string 7ae0497eef8 ci: remove 3rd party js from windows dll gha job 05d984b1a4f Merge bitcoin/bitcoin#33475: bugfix: miner: fix `addPackageTxs` unsigned integer overflow b807dfcdc59 miner: fix `addPackageTxs` unsigned integer overflow d41b503ae12 Merge bitcoin/bitcoin#33446: rpc: fix getblock(header) returns target for tip 5ae8edbc304 Merge bitcoin/bitcoin#33158: macdeploy: avoid use of `Bitcoin Core` in Linux cross build df67bb6fd84 test: Remove convert_to_json_for_cli 44a493e150a cli: Allow arguments to be both strings and json ad4a49090da Merge bitcoin/bitcoin#33408: msvc: Update vcpkg manifest dd61f08fd52 Merge bitcoin/bitcoin#33031: wallet: Set descriptor cache upgraded flag for migrated wallets 350692e561c Merge bitcoin/bitcoin#33388: test: don't throw from the destructor of DebugLogHelper 94db966a3bb net: use generic network key for addrcache eca50854e1c depends: static libxcb_cursor 89144eb473c Merge bitcoin/bitcoin#33448: net/rpc: Report inv information for debugging eaa1a3cd0b3 Merge bitcoin/bitcoin#33425: ci: remove Clang build from msan fuzz job b77137a5644 ci: link against -lstdc++ in native fuzz with msan job a86e1a6e32d Merge bitcoin/bitcoin#33427: rpc: Always return per-wtxid entries in submitpackage tx-results 6861dadfcb1 Merge bitcoin/bitcoin#33459: doc: remove unrelated `bitcoin-wallet` binary from `libbitcoin_ipc` description 3b3ab3a50a0 Merge bitcoin/bitcoin#33302: ci: disable cirrus cache in 32bit arm job 2738b63e025 test: validate behaviour of getpeerinfo last_inv_sequence and inv_to_send fbde8d9a81d doc: remove unrelated `bitcoin-wallet` binary from `libbitcoin_ipc` description 34fefb63358 Merge bitcoin/bitcoin#33435: system: improve handling around GetTotalRAM() 56791b58295 test: split out `system_ram_tests` to signal when total ram cannot be determined 337a6e73861 system: improve handling around GetTotalRAM() 451ba9ada41 datacarrier: Undeprecate configuration option 77b2ebb8118 rpc/net: report per-peer last_inv_sequence bf7996cbc3b rpc: fix getblock(header) returns target for tip 4c3c1f42cf7 test: add block 2016 to mock mainnet 953544d0286 Merge bitcoin/bitcoin#33429: fuzz: reduce iterations in slow targets df101c97c26 Merge bitcoin/bitcoin#33422: build: Remove lingering Windows registry & shortcuts (#32132 follow-up) 56c6daa64f6 Merge bitcoin/bitcoin#28592: p2p: Increase tx relay rate 79752b9c0b6 build(windows): Remove lingering registry entries and shortcuts upon install cad9a7fd737 rpc: Always return per-wtxid entries in submitpackage tx-results 6a33970fef1 fuzz: Reduce iterations in slow targets edb871cba22 Merge bitcoin/bitcoin#33412: Update libmultiprocess subtree to fix intermittent mptest hang 2427939935f test: forbid copying of DebugLogHelper d6aa266d432 test: don't throw from the destructor of DebugLogHelper eaf2c464758 Merge bitcoin/bitcoin#33378: Remove unnecessary casts when calling socket operations 5aec516b2ce Merge bitcoin/bitcoin#33333: coins: warn on oversized `-dbcache` 316a0c51327 rpc: addpeeraddress: throw on invalid IP 74fa028da1e Merge bitcoin/bitcoin#33420: test: Avoid interface_ipc.py Duplicate ID errors 168360f4ae4 coins: warn on oversized -dbcache 6c720459bee system: add helper for fetching total system memory e9c52272ebd test: Avoid interface_ipc.py Duplicate ID errors c49a43591f8 Merge commit '535fa0ad0d2637f845beae92ea9dbbbbbe377c74' into pr/subtree-5 535fa0ad0d2 Squashed 'src/ipc/libmultiprocess/' changes from 13424cf2ecc1..47d79db8a552 453b0fa286e bitcoin: Make wrapper not require -m 1444ed855f4 Merge bitcoin/bitcoin#33407: cmake: Install `bitcoin` manpage 29e836fae66 test: add tool_bitcoin to test bitcoin wrapper behavior 0972f550402 init: add exe name to bitcoind, bitcoin-node -version output to be able to distinguish these in tests 2b0cd1f3fb2 Merge bitcoin/bitcoin#33395: net: do not apply whitelist permissions to onion inbounds ef20c2d11d9 build, msvc: Update vcpkg manifest baseline 1ff9e929489 key: use static context for libsecp256k1 calls where applicable f563ce90818 net: Do not apply whitelist permission to onion inbounds 947bed28fe6 Merge bitcoin/bitcoin#33380: test: Add submitblock test in interface_ipc 7584a4fda95 cmake: Install `bitcoin` manpage 67f632b6deb net: remove unnecessary casts in socket operations c4adfbf7062 Merge bitcoin/bitcoin#33373: depends: systemtap 5.3 5aa3d3135d2 Merge bitcoin/bitcoin#33391: test: Prevent disk space warning during node_init_tests bdf01c6f612 test: Prevent disk space warning during node_init_tests 0a26731c4cc test: Add submitblock test in interface_ipc 2d6a0c46491 Merge bitcoin/bitcoin#33379: cmake: Fix regression in `secp256k1.cmake` 9193c3e4340 cmake: Fix regression in `secp256k1.cmake` 28efd724b47 depends: systemtap 5.3 75e6984ec8c test/refactor: use test deque to avoid quadratic iteration 652424ad162 test: additional test coverage for script_verify_flags 00c253d4941 ci: disable cirrus cache in 32bit arm job ff18b6bbaf3 ci: refactor docker action to return provider str 8e434a84999 macdeploy: rename macOS output to bitcoin-macos-app.zip 05353d9cf08 macdeploy: combine appname & -zip arguments fabc2615af2 test: Use extra_port() helper in feature_bind_extra.py 417437eb01a script/verify_flags: extend script_verify_flags to 64 bits 3cbbcb66efc script/interpreter: make script_verify_flag_name an ordinary enum bddcadee82d script/verify_flags: make script_verify_flags type safe a5ead122fe0 script/interpreter: introduce script_verify_flags typename 4577fb2b1e0 rpc: have getdeploymentinfo report script verify flags a3986935f07 validation: export GetBlockScriptFlags() 5db8cd2d37e Move mapFlagNames and FormatScriptFlags logic to script/interpreter.h adefb51c543 rpc/net: add per-peer inv_to_send sizes 88b0647f027 wallet: Always write last hardened cache flag in migrated wallets 8a08eef645e tests: Check that the last hardened cache upgrade occurs 0802398e749 fuzz: make it possible to mock (fuzz) CThreadInterrupt 6d9e5d130d2 fuzz: add CConnman::SocketHandler() to the tests 3265df63a48 fuzz: add CConnman::InitBinds() to the tests 91cbf4dbd86 fuzz: add CConnman::CreateNodeFromAcceptedSocket() to the tests 50da7432ec1 fuzz: add CConnman::OpenNetworkConnection() to the tests e6a917c8f8e fuzz: add Fuzzed NetEventsInterface and use it in connman tests e883b377688 fuzz: set the output argument of FuzzedSock::Accept() b81f37031c8 p2p: Increase tx relay rate REVERT: 64d1449ff47 kernel: Fix bitcoin-chainstate for windows REVERT: ba247a6a718 kernel: Add Purpose section to header documentation REVERT: b0697ccbf7f kernel: Allowing reducing exports REVERT: 9d23c437bfc kernel: Add pure kernel bitcoin-chainstate REVERT: 10e8e06caf1 Kernel: Add functions for working with outpoints REVERT: ae64f8984d9 kernel: Add functions to get the block hash from a block REVERT: 2c2f277d12f kernel: Add block hash type and block tree utility functions to C header REVERT: 6062e2eeca3 kernel: Add function to read block undo data from disk to C header REVERT: e96af0baf5e kernel: Add functions to read block from disk to C header REVERT: 60e1515586a kernel: Add function for copying block data to C header REVERT: 7b105b7d02a kernel: Add functions for the block validation state to C header REVERT: 1a58dbb8158 kernel: Add validation interface to C header REVERT: 86ed87d5a6c kernel: Add interrupt function to C header REVERT: e424c455465 kernel: Add import blocks function to C header REVERT: cf7b562f2e3 kernel: Add chainstate load options for in-memory dbs in C header REVERT: e26a198acfb kernel: Add options for reindexing in C header REVERT: 4196583e03d kernel: Add block validation to C header REVERT: a7149076e23 kernel: Add chainstate loading when instantiating a ChainstateManager REVERT: d36b447e6ca kernel: Add chainstate manager option for setting worker threads REVERT: d4e612af670 kernel: Add chainstate manager object to C header REVERT: f19c8076746 kernel: Add notifications context option to C header REVERT: cc0043d99b6 kernel: Add chain params context option to C header REVERT: 8b3ceea4f1d kernel: Add kernel library context object REVERT: 039e222756e kernel: Add logging to kernel library C header REVERT: d192006d7f4 kernel: Introduce initial kernel C header API git-subtree-dir: libbitcoinkernel-sys/bitcoin git-subtree-split: 0a3262e9ee55640122dd0a2bc8a08f94e8f7133b
…cec737e68 81cec737e68 kernel: Fix bitcoin-chainstate for windows 1826c485ddc kernel: Add Purpose section to header documentation d7e618aa981 kernel: Allowing reducing exports fb7f5241331 kernel: Add pure kernel bitcoin-chainstate dd0bdf279ef Kernel: Add functions for working with outpoints eaa6abfc733 kernel: Add block hash type and block tree utility functions to C header 824ddf2885a kernel: Add function to read block undo data from disk to C header 76cab0768b1 kernel: Add functions to read block from disk to C header e41f6f459a2 kernel: Add function for copying block data to C header 39c647647a2 kernel: Add functions for the block validation state to C header 8a19a9d6070 kernel: Add validation interface to C header 38a990dd482 kernel: Add interrupt function to C header fee8f6ff38b kernel: Add import blocks function to C header c29a6b87ccd kernel: Add chainstate load options for in-memory dbs in C header e788b3ba065 kernel: Add options for reindexing in C header 2707fc515c5 kernel: Add block validation to C header 51a24c4004e kernel: Add chainstate loading when instantiating a ChainstateManager ea01a8caf35 kernel: Add chainstate manager option for setting worker threads add5904e0ac kernel: Add chainstate manager object to C header 37a3395d271 kernel: Add notifications context option to C header d838a934be0 kernel: Add chain params context option to C header dc58ae9fc04 kernel: Add kernel library context object 77449975962 kernel: Add logging to kernel library C header dc504f57b3b kernel: Introduce initial kernel C header API b510893d007 Merge bitcoin/bitcoin#33494: depends: Update URL for `qrencode` package source tarball ec5841888de Merge bitcoin/bitcoin#32513: ci: remove 3rd party js from windows dll gha job d735e2e9b39 Merge bitcoin/bitcoin#32998: Bump SCRIPT_VERIFY flags to 64 bit de1dc6b47ba Merge bitcoin/bitcoin#33515: Improve LastCommonAncestor performance + add tests 919e6d01e93 Merge bitcoin/bitcoin#33489: build: Drop support for EOL macOS 13 452ea592811 Merge bitcoin/bitcoin#33454: net: support overriding the proxy selection in ConnectNode() a33bd767a37 Merge bitcoin/bitcoin#33464: p2p: Use network-dependent timers for inbound inv scheduling 2578da69f41 Merge bitcoin/bitcoin#33485: test: set par=2 in default config for functional test framework 25dbe4bc86d Merge bitcoin/bitcoin#33533: test: addrman: check isTerrible when time is more than 10min in the future cfb0d74698a Merge bitcoin/bitcoin#33121: test: fix p2p_leak_tx.py 86eaa4d6cd5 Merge bitcoin/bitcoin#33482: contrib: fix macOS deployment with no translations 007900ee9b8 Merge bitcoin/bitcoin#33434: depends: static libxcb-cursor 8e47ed6906d test: addrman: check isTerrible when time is more than 10min in the future 3635d62f5a9 chain: make use of pskip in LastCommonAncestor (optimization) 2e09d66fbb7 tests: add unit tests for CBlockIndex::GetAncestor and LastCommonAncestor 156927903d6 ci: Check windows manifests for all executables e1a1b14c935 ci: use a more generic way of finding mt.exe 1ed00a0d39d Merge bitcoin/bitcoin#33504: Mempool: Do not enforce TRUC checks on reorg c76de2eea18 net: support overriding the proxy selection in ConnectNode() 75353a01635 Merge bitcoin/bitcoin#32326: net: improve the interface around FindNode() and avoid a recursive mutex lock 87e7f37918d doc: clarify peer address in getpeerinfo and addnode RPC help 2a4450ccbbe net: change FindNode() to not return a node and rename it 4268abae1a1 net: avoid recursive m_nodes_mutex lock in DisconnectNode() acc7f2a433b Merge bitcoin/bitcoin#33401: ci: Remove bash -c from cmake invocation using eval 1aaaaa078bb fuzz: Drop unused workaround after Apple-Clang bump fadad7a4947 Drop support for EOL macOS 13 50194029e7c ci: Remove bash -c from cmake invocation using eval f41f97240c0 Merge bitcoin/bitcoin#28584: Fuzz: extend CConnman tests cc4a2cc6bdc Merge bitcoin/bitcoin#33453: docs: Undeprecate datacarrier and datacarriersize configuration options 7502d4e9403 Merge bitcoin/bitcoin#33260: test: Use extra_port() helper in feature_bind_extra.py 14ae71f323d test: make notfound_on_unannounced more reliable 99bc552980d test: fix (w)txid confusion in p2p_leak_tx.py 576dd97cb91 test: increase timeout in p2p_leak_tx.py 8f73d952214 Merge bitcoin/bitcoin#33299: wallet: reduce unconditional logging during load 0f7d4ee4e82 p2p: Use different inbound inv timer per network 93a70a42d30 depends: Update URL for `qrencode` package source tarball 6de80512632 depends: Use hash instead of file name for package download stamp 46135d90ea9 depends: Drop redundant check for downloaded file 771978952a9 depends: Fix `$(package)_fetched` target 25212dfdb4c Merge bitcoin/bitcoin#33487: ci: use latest versions of lint deps 06df14ba75b test: add more TRUC reorg coverge 26e71c237d9 Mempool: Do not enforce TRUC checks on reorg bbe8e9063c1 fuzz: don't bypass_limits for most mempool harnesses d4f47f97715 ci: use latest versions of lint deps fc861332b35 wallet, log: reduce unconditional logging during load 3a4d1a25cf9 net: merge AlreadyConnectedToAddress() and FindNode(CNetAddr) d8fe258cd61 Merge bitcoin/bitcoin#33484: doc: rpc: fix case typo in `finalizepsbt` help (final_scriptwitness) dda5228e02c test: set par=2 in default config for functional test framework ff05bebcc42 doc: rpc: fix case typo in `finalizepsbt` help (final_scriptwitness) 200150beba6 Merge bitcoin/bitcoin#33313: test/refactor: use test deque to avoid quadratic iteration 7e08445449f Merge bitcoin/bitcoin#33399: key: use static context for libsecp256k1 calls where applicable 7b5261f7ef3 contrib: fix using macdploy script without translations. 65e909dfdd9 Merge bitcoin/bitcoin#33430: rpc: addpeeraddress: throw on invalid IP 31b29f8eb62 Merge bitcoin/bitcoin#33229: multiprocess: Don't require bitcoin -m argument when IPC options are used e62e0a12b33 Merge bitcoin/bitcoin#33230: cli: Handle arguments that can be either JSON or string 7ae0497eef8 ci: remove 3rd party js from windows dll gha job 05d984b1a4f Merge bitcoin/bitcoin#33475: bugfix: miner: fix `addPackageTxs` unsigned integer overflow b807dfcdc59 miner: fix `addPackageTxs` unsigned integer overflow d41b503ae12 Merge bitcoin/bitcoin#33446: rpc: fix getblock(header) returns target for tip 5ae8edbc304 Merge bitcoin/bitcoin#33158: macdeploy: avoid use of `Bitcoin Core` in Linux cross build df67bb6fd84 test: Remove convert_to_json_for_cli 44a493e150a cli: Allow arguments to be both strings and json ad4a49090da Merge bitcoin/bitcoin#33408: msvc: Update vcpkg manifest dd61f08fd52 Merge bitcoin/bitcoin#33031: wallet: Set descriptor cache upgraded flag for migrated wallets 350692e561c Merge bitcoin/bitcoin#33388: test: don't throw from the destructor of DebugLogHelper 94db966a3bb net: use generic network key for addrcache eca50854e1c depends: static libxcb_cursor 89144eb473c Merge bitcoin/bitcoin#33448: net/rpc: Report inv information for debugging eaa1a3cd0b3 Merge bitcoin/bitcoin#33425: ci: remove Clang build from msan fuzz job b77137a5644 ci: link against -lstdc++ in native fuzz with msan job a86e1a6e32d Merge bitcoin/bitcoin#33427: rpc: Always return per-wtxid entries in submitpackage tx-results 6861dadfcb1 Merge bitcoin/bitcoin#33459: doc: remove unrelated `bitcoin-wallet` binary from `libbitcoin_ipc` description 3b3ab3a50a0 Merge bitcoin/bitcoin#33302: ci: disable cirrus cache in 32bit arm job 2738b63e025 test: validate behaviour of getpeerinfo last_inv_sequence and inv_to_send fbde8d9a81d doc: remove unrelated `bitcoin-wallet` binary from `libbitcoin_ipc` description 34fefb63358 Merge bitcoin/bitcoin#33435: system: improve handling around GetTotalRAM() 56791b58295 test: split out `system_ram_tests` to signal when total ram cannot be determined 337a6e73861 system: improve handling around GetTotalRAM() 451ba9ada41 datacarrier: Undeprecate configuration option 77b2ebb8118 rpc/net: report per-peer last_inv_sequence bf7996cbc3b rpc: fix getblock(header) returns target for tip 4c3c1f42cf7 test: add block 2016 to mock mainnet 953544d0286 Merge bitcoin/bitcoin#33429: fuzz: reduce iterations in slow targets df101c97c26 Merge bitcoin/bitcoin#33422: build: Remove lingering Windows registry & shortcuts (#32132 follow-up) 56c6daa64f6 Merge bitcoin/bitcoin#28592: p2p: Increase tx relay rate 79752b9c0b6 build(windows): Remove lingering registry entries and shortcuts upon install cad9a7fd737 rpc: Always return per-wtxid entries in submitpackage tx-results 6a33970fef1 fuzz: Reduce iterations in slow targets edb871cba22 Merge bitcoin/bitcoin#33412: Update libmultiprocess subtree to fix intermittent mptest hang 2427939935f test: forbid copying of DebugLogHelper d6aa266d432 test: don't throw from the destructor of DebugLogHelper eaf2c464758 Merge bitcoin/bitcoin#33378: Remove unnecessary casts when calling socket operations 5aec516b2ce Merge bitcoin/bitcoin#33333: coins: warn on oversized `-dbcache` 316a0c51327 rpc: addpeeraddress: throw on invalid IP 74fa028da1e Merge bitcoin/bitcoin#33420: test: Avoid interface_ipc.py Duplicate ID errors 168360f4ae4 coins: warn on oversized -dbcache 6c720459bee system: add helper for fetching total system memory e9c52272ebd test: Avoid interface_ipc.py Duplicate ID errors c49a43591f8 Merge commit '535fa0ad0d2637f845beae92ea9dbbbbbe377c74' into pr/subtree-5 535fa0ad0d2 Squashed 'src/ipc/libmultiprocess/' changes from 13424cf2ecc1..47d79db8a552 453b0fa286e bitcoin: Make wrapper not require -m 1444ed855f4 Merge bitcoin/bitcoin#33407: cmake: Install `bitcoin` manpage 29e836fae66 test: add tool_bitcoin to test bitcoin wrapper behavior 0972f550402 init: add exe name to bitcoind, bitcoin-node -version output to be able to distinguish these in tests 2b0cd1f3fb2 Merge bitcoin/bitcoin#33395: net: do not apply whitelist permissions to onion inbounds ef20c2d11d9 build, msvc: Update vcpkg manifest baseline 1ff9e929489 key: use static context for libsecp256k1 calls where applicable f563ce90818 net: Do not apply whitelist permission to onion inbounds 947bed28fe6 Merge bitcoin/bitcoin#33380: test: Add submitblock test in interface_ipc 7584a4fda95 cmake: Install `bitcoin` manpage 67f632b6deb net: remove unnecessary casts in socket operations c4adfbf7062 Merge bitcoin/bitcoin#33373: depends: systemtap 5.3 5aa3d3135d2 Merge bitcoin/bitcoin#33391: test: Prevent disk space warning during node_init_tests bdf01c6f612 test: Prevent disk space warning during node_init_tests 0a26731c4cc test: Add submitblock test in interface_ipc 2d6a0c46491 Merge bitcoin/bitcoin#33379: cmake: Fix regression in `secp256k1.cmake` 9193c3e4340 cmake: Fix regression in `secp256k1.cmake` 28efd724b47 depends: systemtap 5.3 75e6984ec8c test/refactor: use test deque to avoid quadratic iteration 652424ad162 test: additional test coverage for script_verify_flags 00c253d4941 ci: disable cirrus cache in 32bit arm job ff18b6bbaf3 ci: refactor docker action to return provider str 8e434a84999 macdeploy: rename macOS output to bitcoin-macos-app.zip 05353d9cf08 macdeploy: combine appname & -zip arguments fabc2615af2 test: Use extra_port() helper in feature_bind_extra.py 417437eb01a script/verify_flags: extend script_verify_flags to 64 bits 3cbbcb66efc script/interpreter: make script_verify_flag_name an ordinary enum bddcadee82d script/verify_flags: make script_verify_flags type safe a5ead122fe0 script/interpreter: introduce script_verify_flags typename 4577fb2b1e0 rpc: have getdeploymentinfo report script verify flags a3986935f07 validation: export GetBlockScriptFlags() 5db8cd2d37e Move mapFlagNames and FormatScriptFlags logic to script/interpreter.h adefb51c543 rpc/net: add per-peer inv_to_send sizes 88b0647f027 wallet: Always write last hardened cache flag in migrated wallets 8a08eef645e tests: Check that the last hardened cache upgrade occurs 0802398e749 fuzz: make it possible to mock (fuzz) CThreadInterrupt 6d9e5d130d2 fuzz: add CConnman::SocketHandler() to the tests 3265df63a48 fuzz: add CConnman::InitBinds() to the tests 91cbf4dbd86 fuzz: add CConnman::CreateNodeFromAcceptedSocket() to the tests 50da7432ec1 fuzz: add CConnman::OpenNetworkConnection() to the tests e6a917c8f8e fuzz: add Fuzzed NetEventsInterface and use it in connman tests e883b377688 fuzz: set the output argument of FuzzedSock::Accept() b81f37031c8 p2p: Increase tx relay rate REVERT: 64d1449ff47 kernel: Fix bitcoin-chainstate for windows REVERT: ba247a6a718 kernel: Add Purpose section to header documentation REVERT: b0697ccbf7f kernel: Allowing reducing exports REVERT: 9d23c437bfc kernel: Add pure kernel bitcoin-chainstate REVERT: 10e8e06caf1 Kernel: Add functions for working with outpoints REVERT: ae64f8984d9 kernel: Add functions to get the block hash from a block REVERT: 2c2f277d12f kernel: Add block hash type and block tree utility functions to C header REVERT: 6062e2eeca3 kernel: Add function to read block undo data from disk to C header REVERT: e96af0baf5e kernel: Add functions to read block from disk to C header REVERT: 60e1515586a kernel: Add function for copying block data to C header REVERT: 7b105b7d02a kernel: Add functions for the block validation state to C header REVERT: 1a58dbb8158 kernel: Add validation interface to C header REVERT: 86ed87d5a6c kernel: Add interrupt function to C header REVERT: e424c455465 kernel: Add import blocks function to C header REVERT: cf7b562f2e3 kernel: Add chainstate load options for in-memory dbs in C header REVERT: e26a198acfb kernel: Add options for reindexing in C header REVERT: 4196583e03d kernel: Add block validation to C header REVERT: a7149076e23 kernel: Add chainstate loading when instantiating a ChainstateManager REVERT: d36b447e6ca kernel: Add chainstate manager option for setting worker threads REVERT: d4e612af670 kernel: Add chainstate manager object to C header REVERT: f19c8076746 kernel: Add notifications context option to C header REVERT: cc0043d99b6 kernel: Add chain params context option to C header REVERT: 8b3ceea4f1d kernel: Add kernel library context object REVERT: 039e222756e kernel: Add logging to kernel library C header REVERT: d192006d7f4 kernel: Introduce initial kernel C header API git-subtree-dir: libbitcoinkernel-sys/bitcoin git-subtree-split: 81cec737e68b91f5edf90179b81aa620a5a68677
Note that this caused the MSAN Fuzz job to start failing, so is being fixed / changed again in #33600. |
81cec737e68 kernel: Fix bitcoin-chainstate for windows 1826c485ddc kernel: Add Purpose section to header documentation d7e618aa981 kernel: Allowing reducing exports fb7f5241331 kernel: Add pure kernel bitcoin-chainstate dd0bdf279ef Kernel: Add functions for working with outpoints eaa6abfc733 kernel: Add block hash type and block tree utility functions to C header 824ddf2885a kernel: Add function to read block undo data from disk to C header 76cab0768b1 kernel: Add functions to read block from disk to C header e41f6f459a2 kernel: Add function for copying block data to C header 39c647647a2 kernel: Add functions for the block validation state to C header 8a19a9d6070 kernel: Add validation interface to C header 38a990dd482 kernel: Add interrupt function to C header fee8f6ff38b kernel: Add import blocks function to C header c29a6b87ccd kernel: Add chainstate load options for in-memory dbs in C header e788b3ba065 kernel: Add options for reindexing in C header 2707fc515c5 kernel: Add block validation to C header 51a24c4004e kernel: Add chainstate loading when instantiating a ChainstateManager ea01a8caf35 kernel: Add chainstate manager option for setting worker threads add5904e0ac kernel: Add chainstate manager object to C header 37a3395d271 kernel: Add notifications context option to C header d838a934be0 kernel: Add chain params context option to C header dc58ae9fc04 kernel: Add kernel library context object 77449975962 kernel: Add logging to kernel library C header dc504f57b3b kernel: Introduce initial kernel C header API b510893d007 Merge bitcoin/bitcoin#33494: depends: Update URL for `qrencode` package source tarball ec5841888de Merge bitcoin/bitcoin#32513: ci: remove 3rd party js from windows dll gha job d735e2e9b39 Merge bitcoin/bitcoin#32998: Bump SCRIPT_VERIFY flags to 64 bit de1dc6b47ba Merge bitcoin/bitcoin#33515: Improve LastCommonAncestor performance + add tests 919e6d01e93 Merge bitcoin/bitcoin#33489: build: Drop support for EOL macOS 13 452ea592811 Merge bitcoin/bitcoin#33454: net: support overriding the proxy selection in ConnectNode() a33bd767a37 Merge bitcoin/bitcoin#33464: p2p: Use network-dependent timers for inbound inv scheduling 2578da69f41 Merge bitcoin/bitcoin#33485: test: set par=2 in default config for functional test framework 25dbe4bc86d Merge bitcoin/bitcoin#33533: test: addrman: check isTerrible when time is more than 10min in the future cfb0d74698a Merge bitcoin/bitcoin#33121: test: fix p2p_leak_tx.py 86eaa4d6cd5 Merge bitcoin/bitcoin#33482: contrib: fix macOS deployment with no translations 007900ee9b8 Merge bitcoin/bitcoin#33434: depends: static libxcb-cursor 8e47ed6906d test: addrman: check isTerrible when time is more than 10min in the future 3635d62f5a9 chain: make use of pskip in LastCommonAncestor (optimization) 2e09d66fbb7 tests: add unit tests for CBlockIndex::GetAncestor and LastCommonAncestor 156927903d6 ci: Check windows manifests for all executables e1a1b14c935 ci: use a more generic way of finding mt.exe 1ed00a0d39d Merge bitcoin/bitcoin#33504: Mempool: Do not enforce TRUC checks on reorg c76de2eea18 net: support overriding the proxy selection in ConnectNode() 75353a01635 Merge bitcoin/bitcoin#32326: net: improve the interface around FindNode() and avoid a recursive mutex lock 87e7f37918d doc: clarify peer address in getpeerinfo and addnode RPC help 2a4450ccbbe net: change FindNode() to not return a node and rename it 4268abae1a1 net: avoid recursive m_nodes_mutex lock in DisconnectNode() acc7f2a433b Merge bitcoin/bitcoin#33401: ci: Remove bash -c from cmake invocation using eval 1aaaaa078bb fuzz: Drop unused workaround after Apple-Clang bump fadad7a4947 Drop support for EOL macOS 13 50194029e7c ci: Remove bash -c from cmake invocation using eval f41f97240c0 Merge bitcoin/bitcoin#28584: Fuzz: extend CConnman tests cc4a2cc6bdc Merge bitcoin/bitcoin#33453: docs: Undeprecate datacarrier and datacarriersize configuration options 7502d4e9403 Merge bitcoin/bitcoin#33260: test: Use extra_port() helper in feature_bind_extra.py 14ae71f323d test: make notfound_on_unannounced more reliable 99bc552980d test: fix (w)txid confusion in p2p_leak_tx.py 576dd97cb91 test: increase timeout in p2p_leak_tx.py 8f73d952214 Merge bitcoin/bitcoin#33299: wallet: reduce unconditional logging during load 0f7d4ee4e82 p2p: Use different inbound inv timer per network 93a70a42d30 depends: Update URL for `qrencode` package source tarball 6de80512632 depends: Use hash instead of file name for package download stamp 46135d90ea9 depends: Drop redundant check for downloaded file 771978952a9 depends: Fix `$(package)_fetched` target 25212dfdb4c Merge bitcoin/bitcoin#33487: ci: use latest versions of lint deps 06df14ba75b test: add more TRUC reorg coverge 26e71c237d9 Mempool: Do not enforce TRUC checks on reorg bbe8e9063c1 fuzz: don't bypass_limits for most mempool harnesses d4f47f97715 ci: use latest versions of lint deps fc861332b35 wallet, log: reduce unconditional logging during load 3a4d1a25cf9 net: merge AlreadyConnectedToAddress() and FindNode(CNetAddr) d8fe258cd61 Merge bitcoin/bitcoin#33484: doc: rpc: fix case typo in `finalizepsbt` help (final_scriptwitness) dda5228e02c test: set par=2 in default config for functional test framework ff05bebcc42 doc: rpc: fix case typo in `finalizepsbt` help (final_scriptwitness) 200150beba6 Merge bitcoin/bitcoin#33313: test/refactor: use test deque to avoid quadratic iteration 7e08445449f Merge bitcoin/bitcoin#33399: key: use static context for libsecp256k1 calls where applicable 7b5261f7ef3 contrib: fix using macdploy script without translations. 65e909dfdd9 Merge bitcoin/bitcoin#33430: rpc: addpeeraddress: throw on invalid IP 31b29f8eb62 Merge bitcoin/bitcoin#33229: multiprocess: Don't require bitcoin -m argument when IPC options are used e62e0a12b33 Merge bitcoin/bitcoin#33230: cli: Handle arguments that can be either JSON or string 7ae0497eef8 ci: remove 3rd party js from windows dll gha job 05d984b1a4f Merge bitcoin/bitcoin#33475: bugfix: miner: fix `addPackageTxs` unsigned integer overflow b807dfcdc59 miner: fix `addPackageTxs` unsigned integer overflow d41b503ae12 Merge bitcoin/bitcoin#33446: rpc: fix getblock(header) returns target for tip 5ae8edbc304 Merge bitcoin/bitcoin#33158: macdeploy: avoid use of `Bitcoin Core` in Linux cross build df67bb6fd84 test: Remove convert_to_json_for_cli 44a493e150a cli: Allow arguments to be both strings and json ad4a49090da Merge bitcoin/bitcoin#33408: msvc: Update vcpkg manifest dd61f08fd52 Merge bitcoin/bitcoin#33031: wallet: Set descriptor cache upgraded flag for migrated wallets 350692e561c Merge bitcoin/bitcoin#33388: test: don't throw from the destructor of DebugLogHelper 94db966a3bb net: use generic network key for addrcache eca50854e1c depends: static libxcb_cursor 89144eb473c Merge bitcoin/bitcoin#33448: net/rpc: Report inv information for debugging eaa1a3cd0b3 Merge bitcoin/bitcoin#33425: ci: remove Clang build from msan fuzz job b77137a5644 ci: link against -lstdc++ in native fuzz with msan job a86e1a6e32d Merge bitcoin/bitcoin#33427: rpc: Always return per-wtxid entries in submitpackage tx-results 6861dadfcb1 Merge bitcoin/bitcoin#33459: doc: remove unrelated `bitcoin-wallet` binary from `libbitcoin_ipc` description 3b3ab3a50a0 Merge bitcoin/bitcoin#33302: ci: disable cirrus cache in 32bit arm job 2738b63e025 test: validate behaviour of getpeerinfo last_inv_sequence and inv_to_send fbde8d9a81d doc: remove unrelated `bitcoin-wallet` binary from `libbitcoin_ipc` description 34fefb63358 Merge bitcoin/bitcoin#33435: system: improve handling around GetTotalRAM() 56791b58295 test: split out `system_ram_tests` to signal when total ram cannot be determined 337a6e73861 system: improve handling around GetTotalRAM() 451ba9ada41 datacarrier: Undeprecate configuration option 77b2ebb8118 rpc/net: report per-peer last_inv_sequence bf7996cbc3b rpc: fix getblock(header) returns target for tip 4c3c1f42cf7 test: add block 2016 to mock mainnet 953544d0286 Merge bitcoin/bitcoin#33429: fuzz: reduce iterations in slow targets df101c97c26 Merge bitcoin/bitcoin#33422: build: Remove lingering Windows registry & shortcuts (#32132 follow-up) 56c6daa64f6 Merge bitcoin/bitcoin#28592: p2p: Increase tx relay rate 79752b9c0b6 build(windows): Remove lingering registry entries and shortcuts upon install cad9a7fd737 rpc: Always return per-wtxid entries in submitpackage tx-results 6a33970fef1 fuzz: Reduce iterations in slow targets edb871cba22 Merge bitcoin/bitcoin#33412: Update libmultiprocess subtree to fix intermittent mptest hang 2427939935f test: forbid copying of DebugLogHelper d6aa266d432 test: don't throw from the destructor of DebugLogHelper eaf2c464758 Merge bitcoin/bitcoin#33378: Remove unnecessary casts when calling socket operations 5aec516b2ce Merge bitcoin/bitcoin#33333: coins: warn on oversized `-dbcache` 316a0c51327 rpc: addpeeraddress: throw on invalid IP 74fa028da1e Merge bitcoin/bitcoin#33420: test: Avoid interface_ipc.py Duplicate ID errors 168360f4ae4 coins: warn on oversized -dbcache 6c720459bee system: add helper for fetching total system memory e9c52272ebd test: Avoid interface_ipc.py Duplicate ID errors c49a43591f8 Merge commit '535fa0ad0d2637f845beae92ea9dbbbbbe377c74' into pr/subtree-5 535fa0ad0d2 Squashed 'src/ipc/libmultiprocess/' changes from 13424cf2ecc1..47d79db8a552 453b0fa286e bitcoin: Make wrapper not require -m 1444ed855f4 Merge bitcoin/bitcoin#33407: cmake: Install `bitcoin` manpage 29e836fae66 test: add tool_bitcoin to test bitcoin wrapper behavior 0972f550402 init: add exe name to bitcoind, bitcoin-node -version output to be able to distinguish these in tests 2b0cd1f3fb2 Merge bitcoin/bitcoin#33395: net: do not apply whitelist permissions to onion inbounds ef20c2d11d9 build, msvc: Update vcpkg manifest baseline 1ff9e929489 key: use static context for libsecp256k1 calls where applicable f563ce90818 net: Do not apply whitelist permission to onion inbounds 947bed28fe6 Merge bitcoin/bitcoin#33380: test: Add submitblock test in interface_ipc 7584a4fda95 cmake: Install `bitcoin` manpage 67f632b6deb net: remove unnecessary casts in socket operations c4adfbf7062 Merge bitcoin/bitcoin#33373: depends: systemtap 5.3 5aa3d3135d2 Merge bitcoin/bitcoin#33391: test: Prevent disk space warning during node_init_tests bdf01c6f612 test: Prevent disk space warning during node_init_tests 0a26731c4cc test: Add submitblock test in interface_ipc 2d6a0c46491 Merge bitcoin/bitcoin#33379: cmake: Fix regression in `secp256k1.cmake` 9193c3e4340 cmake: Fix regression in `secp256k1.cmake` 28efd724b47 depends: systemtap 5.3 75e6984ec8c test/refactor: use test deque to avoid quadratic iteration 652424ad162 test: additional test coverage for script_verify_flags 00c253d4941 ci: disable cirrus cache in 32bit arm job ff18b6bbaf3 ci: refactor docker action to return provider str 8e434a84999 macdeploy: rename macOS output to bitcoin-macos-app.zip 05353d9cf08 macdeploy: combine appname & -zip arguments fabc2615af2 test: Use extra_port() helper in feature_bind_extra.py 417437eb01a script/verify_flags: extend script_verify_flags to 64 bits 3cbbcb66efc script/interpreter: make script_verify_flag_name an ordinary enum bddcadee82d script/verify_flags: make script_verify_flags type safe a5ead122fe0 script/interpreter: introduce script_verify_flags typename 4577fb2b1e0 rpc: have getdeploymentinfo report script verify flags a3986935f07 validation: export GetBlockScriptFlags() 5db8cd2d37e Move mapFlagNames and FormatScriptFlags logic to script/interpreter.h adefb51c543 rpc/net: add per-peer inv_to_send sizes 88b0647f027 wallet: Always write last hardened cache flag in migrated wallets 8a08eef645e tests: Check that the last hardened cache upgrade occurs 0802398e749 fuzz: make it possible to mock (fuzz) CThreadInterrupt 6d9e5d130d2 fuzz: add CConnman::SocketHandler() to the tests 3265df63a48 fuzz: add CConnman::InitBinds() to the tests 91cbf4dbd86 fuzz: add CConnman::CreateNodeFromAcceptedSocket() to the tests 50da7432ec1 fuzz: add CConnman::OpenNetworkConnection() to the tests e6a917c8f8e fuzz: add Fuzzed NetEventsInterface and use it in connman tests e883b377688 fuzz: set the output argument of FuzzedSock::Accept() b81f37031c8 p2p: Increase tx relay rate REVERT: 2ac9d60c54a kernel: Fix bitcoin-chainstate for windows REVERT: 08e2a7ebbb9 kernel: Add Purpose section to header documentation REVERT: 9d95715fe46 kernel: Allowing reducing exports REVERT: 241f306df61 kernel: Add pure kernel bitcoin-chainstate REVERT: 3ed3d6b9c25 kernel: Add functions to get the block hash from a block REVERT: 3fe143dc6c3 kernel: Add block index utility functions to C header REVERT: 224dbec1ce5 kernel: Add function to read block undo data from disk to C header REVERT: 4e5b9c66d36 kernel: Add functions to read block from disk to C header REVERT: e4ef0011f7e kernel: Add function for copying block data to C header REVERT: 3e7711d271d kernel: Add functions for the block validation state to C header REVERT: 984305a1afb kernel: Add validation interface to C header REVERT: ff1fe96997b kernel: Add interrupt function to C header REVERT: b45d0abbea2 kernel: Add import blocks function to C header REVERT: dc939ae9471 kernel: Add chainstate load options for in-memory dbs in C header REVERT: 0ea93d86242 kernel: Add options for reindexing in C header REVERT: 5817e2e79bd kernel: Add block validation to C header REVERT: 32d9e4a547b kernel: Add chainstate loading when instantiating a ChainstateManager REVERT: e3c03bae40b kernel: Add chainstate manager option for setting worker threads REVERT: f6978da0f73 kernel: Add chainstate manager object to C header REVERT: 63d6e4fade2 kernel: Add notifications context option to C header REVERT: ee9c2c7ceac kernel: Add chain params context option to C header REVERT: 2919e083e1b kernel: Add kernel library context object REVERT: 7967ffa7476 kernel: Add logging to kernel library C header REVERT: c76dcaafbc7 kernel: Introduce initial kernel C header API git-subtree-dir: depend/bitcoin git-subtree-split: 81cec737e68b91f5edf90179b81aa620a5a68677
We currently use 21 of 32 possible bits for
SCRIPT_VERIFY_*
flags, with open PRs that may use 8 more (#29247, #31989, #32247, #32453). The mutinynet fork that has included many experimental soft fork features is already reusing bits here. Therefore, bump this to 64 bits.In order to make it easier to update this logic in future, this PR also introduces a dedicated type for the script flags, and disables implicit conversion between that type and the underlying integer type. To make verifying that this change doesn't cause flags to disappear, this PR also resurrects the changes from #28806 so that the script flags that are consensus enforced on each block can be queried via getdeploymentinfo.