Skip to content

update bitcoin to 0.18.1 #1

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

Open
wants to merge 10,000 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
10000 commits
Select commit Hold shift + click to select a range
084eee0
Merge bitcoin/bitcoin#32743: refactor: use `std::vector<std::byte>` f…
fanquake Jun 16, 2025
afaaba6
test: refactor out same-txid-diff-wtxid tx to reuse in other tests
stratospher Jun 16, 2025
c7eaac3
depends: capnp 1.2.0
fanquake Jun 16, 2025
a69c409
rpc: take ownership of the file by WriteUTXOSnapshot()
hodlinator May 22, 2025
8bb34f0
Explicitly close all AutoFiles that have been written
vasild Jan 24, 2024
4bb5dd7
util: check that a file has been closed before ~AutoFile() is called
vasild May 2, 2025
c10e382
flatfile: check whether the file has been closed successfully
vasild May 22, 2025
26747d9
Merge bitcoin/bitcoin#32760: depends: capnp 1.2.0
ryanofsky Jun 16, 2025
a201a99
thread-safety: fix annotations with REVERSE_LOCK
theuni May 7, 2025
1be688f
Merge bitcoin/bitcoin#32682: wallet: have external signer use PSBT er…
achow101 Jun 17, 2025
e285e69
test: Fix list index out of range error in feature_bip68_sequence.py
zaidmstrr Jun 17, 2025
5e6dbfd
Merge bitcoin/bitcoin#32465: thread-safety: fix annotations with REVE…
ryanofsky Jun 17, 2025
c668033
wallet: Remove unused fTimeReceivedIsTxTime
achow101 Jun 17, 2025
9eb2c82
walletdb: Remove unused upgraded_txs
achow101 Jun 17, 2025
faf6a04
ci: Clean UID/GID mismatch
Jun 18, 2025
fa535a6
ci: Allow running CI in worktrees
Jun 17, 2025
fa68dcb
ci: Add missing errexit to lint CI install
Jun 18, 2025
cd1ae1b
fuzz: wallet: remove FundTx from FuzzedWallet
brunoerg Jun 18, 2025
3473986
contrib: tracing: Correctly read msg type in p2p_monitor.py
davidgumberg Jun 18, 2025
8cc9845
wallet, rpc: Use `OUTPUT_TYPES` to describe the output types instead …
w0xlt Jun 18, 2025
9a7eece
Merge bitcoin/bitcoin#31981: Add checkBlock() to Mining interface
achow101 Jun 19, 2025
fa94fd5
doc: Explain how to fetch commits directly
Jun 19, 2025
fa19861
test: Remove useless catch-throw
Jun 19, 2025
fa346f7
test: Move error string into exception
Jun 19, 2025
fa21631
test: Use self.log
Jun 19, 2025
8ee8a95
doc: taproot became always active in v24.0
Sjors Jun 19, 2025
53a996f
doc: fix transifex 404s
fanquake Jun 19, 2025
79afe6b
Merge bitcoin/bitcoin#32776: doc: taproot became always active in v24…
fanquake Jun 19, 2025
b861419
Merge bitcoin/bitcoin#32777: doc: fix Transifex 404s
fanquake Jun 19, 2025
e18322e
Merge bitcoin/bitcoin#32774: doc: Explain how to fetch commits directly
fanquake Jun 19, 2025
5be31b2
lsan: add more Qt suppressions
fanquake Jun 19, 2025
fa18304
Merge bitcoin/bitcoin#32765: test: Fix list index out of range error …
fanquake Jun 19, 2025
154b98a
Merge bitcoin/bitcoin#32772: fuzz: wallet: remove `FundTx` from `Fuzz…
fanquake Jun 19, 2025
74b7e9c
refactor: modernize deprecated ipc headers
Sjors Jun 12, 2025
482d255
Merge bitcoin/bitcoin#32736: wallet: Correct dir iteration error hand…
achow101 Jun 20, 2025
daf393b
Merge bitcoin/bitcoin#32642: test: update BIP340 test vectors and imp…
achow101 Jun 20, 2025
ed060e0
Merge bitcoin/bitcoin#32725: test: round difficulty and networkhashps
achow101 Jun 20, 2025
8a36a47
Merge bitcoin/bitcoin#32781: refactor: modernize deprecated ipc headers
fanquake Jun 23, 2025
c584966
Merge bitcoin/bitcoin#32771: contrib: tracing: Fix read of `pmsg_type…
fanquake Jun 23, 2025
9078423
doc: archive 28.2 release notes
fanquake Jun 23, 2025
6c364e0
test: Enable various tests for usage with cli
mzumsande Apr 30, 2025
7d5352a
test: use -stdin for large rpc commands
mzumsande Apr 25, 2025
5b08885
test: enable functional tests with large rpc args for cli
mzumsande Apr 30, 2025
8f8ce9e
test: rename .rpc to ._rpc and remove unnecessary uses
mzumsande Apr 15, 2025
af34e98
test: make rpc_psbt.py usable with --usecli
mzumsande Apr 17, 2025
cca4220
test: convert tuple to json for cli
mzumsande Apr 17, 2025
54d2872
test: Don't send empty named args with cli
mzumsande Apr 18, 2025
6530d00
test: add function to convert to json for height_or_hash params
mzumsande Apr 16, 2025
f420b63
test: skip subtests that check for wrong types with cli
mzumsande Apr 16, 2025
7ea248a
test: Disable several (sub)tests with cli
mzumsande Apr 16, 2025
666016e
ci: use --usecli in one of the CI jobs
mzumsande Apr 30, 2025
e95bfc1
Merge bitcoin/bitcoin#32797: doc: archive 28.2 release notes
glozow Jun 23, 2025
ac9c113
mempool: use `FeeFrac` for calculating descendant score
theStack Jun 24, 2025
3322b3a
mempool: use `FeeFrac` for calculating ancestor score
theStack Jun 24, 2025
922adf6
mempool: use `FeeFrac` for calculating regular score
theStack Jun 24, 2025
173394d
depends: Build `qt` package for FreeBSD hosts
hebasto Jun 11, 2025
e27a945
build: add root dir to CMAKE_PREFIX_PATH
willcl-ark Jun 23, 2025
67e6746
Merge bitcoin/bitcoin#32780: lsan: add more Qt suppressions
fanquake Jun 24, 2025
ad654a4
Merge bitcoin/bitcoin#32767: ci: Allow running CI in worktrees
fanquake Jun 24, 2025
ead4468
cmake: Use `HINTS` instead of `PATHS` in `find_*` commands
hebasto Jun 24, 2025
1405216
Revert "miniscript: make operator_mst consteval"
hebasto Jun 25, 2025
a34fb9a
miniscript: Make `operator""_mst` `consteval`
sipa Jan 2, 2024
7d5a6d1
Merge bitcoin/bitcoin#32798: build: add root dir to CMAKE_PREFIX_PATH…
fanquake Jun 25, 2025
6c2538d
depends: Bump boost to 1.88.0 and use new CMake buildsystem
theuni Jul 11, 2024
b9a2e8e
doc: add release notes for https://github.com/bitcoin/bitcoin/pull/32425
vasild Jun 11, 2025
8800b5a
cmake: Explicitly specify `Boost_ROOT` for Homebrew's package
hebasto Jun 25, 2025
45b1d39
doc: Add fetching single PRs from upstream
willcl-ark Jun 20, 2025
4f06dc8
test: remove building from source from get prev releases script
m3dwards Jun 25, 2025
1a1b478
scripted-diff: rename tarball to archive
m3dwards Jun 25, 2025
c1d8a54
Merge bitcoin/bitcoin#32727: doc: add release notes for #32425
glozow Jun 25, 2025
01f9081
Merge bitcoin/bitcoin#32768: wallet: Remove `CWalletTx::fTimeReceived…
glozow Jun 25, 2025
67a6b20
test: add windows support to get previous releases script
m3dwards Jun 25, 2025
3dc90d6
test: remove mempool.dat before copying
m3dwards Jun 25, 2025
5174565
ci: disable feature_unsupported_utxo_db functional test
m3dwards Jun 25, 2025
5e21821
test: increment mocked time for migrating wallet backups
m3dwards Jun 25, 2025
941b8f5
ci: run get_previous_releases as part of test cross win job
m3dwards Jun 25, 2025
8578fab
Merge bitcoin/bitcoin#32597: wallet: Always set descriptor cache upgr…
glozow Jun 25, 2025
f27898c
Merge bitcoin/bitcoin#32721: wallet, rpc: Remove deprecated balances …
glozow Jun 25, 2025
e02f2d3
bench: Have AvailableCoins benchmark include a lot of unrelated utxos
achow101 Feb 20, 2024
8222341
wallet: MarkDirty after AddWalletDescriptor
achow101 May 15, 2025
5cc32ee
test: Test for balance update due to untracked output becoming spendable
achow101 Feb 20, 2024
0f269bc
walletdb: Load Txs last
achow101 Feb 20, 2024
ae0876e
wallet: Keep track of transaction outputs owned by the wallet
achow101 Feb 20, 2024
ae888c3
wallet: Exit IsTrustedTx early if wtx is already in trusted_parents
achow101 Feb 20, 2024
96e7a89
wallet: Recalculate the wallet's txos after any imports
achow101 Feb 20, 2024
dde7cbe
wallet: Change balance calculation to use m_txos
achow101 Feb 20, 2024
c1801b7
wallet: Use wallet's TXO set in AvailableCoins
achow101 Feb 20, 2024
764016e
wallet: Retrieve TXO directly in FetchSelectedInputs
achow101 Feb 20, 2024
17d453c
wallet: Recompute wallet TXOs after descriptor migration
achow101 Feb 20, 2024
49675de
wallet: Have GetDebit use the wallet's TXO set
achow101 Feb 20, 2024
215e599
wallet: Remove unused CachedTxGet{Available,Immature}Credit
achow101 Feb 20, 2024
11d28f2
Implement GenTxid as a variant
marcofleon Mar 31, 2025
e5f9218
Merge bitcoin/bitcoin#32742: test: fix catchup loop in outbound evict…
glozow Jun 25, 2025
5c1236f
test: fix incorrect subtest in `feature_fee_estimation.py`
ismaelsadeeq Jun 26, 2025
9b75cfd
test: retain the intended behavior of `feature_fee_estimation.py` nodes
ismaelsadeeq Jun 26, 2025
6bb38bf
Update p2p_monitor.py
leopardracer Jun 26, 2025
8fafb81
Merge bitcoin/bitcoin#32805: cmake: Use `HINTS` instead of `PATHS` in…
fanquake Jun 26, 2025
5170ec1
Merge bitcoin/bitcoin#32665: depends: Bump boost to 1.88.0 and use ne…
fanquake Jun 26, 2025
67ea4b9
Merge bitcoin/bitcoin#32814: cmake: Explicitly specify `Boost_ROOT` f…
fanquake Jun 26, 2025
14653b8
build: Find Boost in config mode
hebasto Jun 26, 2025
4145a94
Merge bitcoin/bitcoin#32731: depends: Build `qt` package for FreeBSD …
fanquake Jun 26, 2025
c43cc48
Merge bitcoin/bitcoin#32530: node: cap `-maxmempool` and `-dbcache` v…
fanquake Jun 26, 2025
558f088
Add release note for #32530
darosior Jun 26, 2025
4a3475a
Merge bitcoin/bitcoin#32819: Add release note for #32530
fanquake Jun 27, 2025
689318c
Merge bitcoin/bitcoin#32667: build: Find Boost in config mode
fanquake Jun 27, 2025
26598ed
test: Clarify roles in outbound eviction comments
pablomartin4btc Jun 27, 2025
ec004cd
test: Use rehash() in outbound eviction block-relay
pablomartin4btc Jun 27, 2025
319ff58
Merge bitcoin/bitcoin#32638: blocks: force hash validations on disk read
achow101 Jun 27, 2025
3086c21
Merge bitcoin/bitcoin#32243: test: added fuzz coverage for consensus/…
achow101 Jun 27, 2025
b3bb403
Merge bitcoin/bitcoin#32540: rest: fetch spent transaction outputs by…
achow101 Jun 27, 2025
856f423
scripted-diff: rest: rename `strURIPart` -> `uri_part`
romanz Jun 28, 2025
4eb3cee
doc: Update NetBSD Build Guide
hebasto Jun 29, 2025
7dc43ea
test: Add msgtype to msg_generic slots
dergoegge Jun 30, 2025
6967e8e
add more bad p2p ports
jlopp Jun 29, 2025
5a5ddbd
build: Add workaround for NetBSD bug in `Boost::headers` target
hebasto Jun 29, 2025
9501738
Merge bitcoin/bitcoin#32825: rest: rename `strURIPart` to `uri_part`
fanquake Jun 30, 2025
3348057
Merge bitcoin/bitcoin#32833: test: Add `msgtype` to `msg_generic` slots
fanquake Jun 30, 2025
fa3f100
test: Use msg_generic in p2p_ping.py
Jun 30, 2025
a763497
Merge bitcoin/bitcoin#32834: test: Use msg_generic in p2p_ping.py
fanquake Jun 30, 2025
f5f3e1f
Merge bitcoin/bitcoin#32646: p2p: Add witness mutation check inside F…
glozow Jun 30, 2025
fb2c16c
Merge bitcoin/bitcoin#32826: p2p: add more bad ports
glozow Jun 30, 2025
6e5b67a
Merge bitcoin/bitcoin#32697: test: Turn util/test_runner into functio…
glozow Jun 30, 2025
4be81e9
feature_taproot: sample tx version border values more
instagibbs Jun 30, 2025
dd99ced
doc: add `/spenttxouts` to REST-interface.md
theStack Jun 30, 2025
23a00fc
Merge bitcoin/bitcoin#32783: doc: Add fetching single PRs from upstre…
achow101 Jul 1, 2025
fcf92fd
refactor: make CTxMemPool::GetIter strongly typed
marcofleon Jun 23, 2025
243553d
refactor: replace get_iter_from_wtxid with GetIter(const Wtxid&)
stickies-v Jun 23, 2025
2ae5154
Merge bitcoin/bitcoin#32842: doc: add `/spenttxouts` to REST-interfac…
fanquake Jul 1, 2025
ed7a841
Merge bitcoin/bitcoin#32816: contrib: correct variable name in p2p_mo…
fanquake Jul 1, 2025
bb9157d
cmake, refactor: Switch to `Python3::Interpreter` imported target
hebasto Feb 12, 2025
67dc752
cmake, test: Disable tests instead of ignoring them
hebasto Feb 12, 2025
0e9f409
doc: clarify that the "-j N" goes after the "--build build" part
bigspider Jul 1, 2025
b1821d8
Merge bitcoin/bitcoin#27286: wallet: Keep track of the wallet's own t…
glozow Jul 1, 2025
d6aaffc
test: check P2SH sigop count for coinbase tx
brunoerg Jul 1, 2025
9991f49
test: Watchonly wallets should estimate larger size
achow101 May 26, 2025
d20dc9c
wallet: Wallets without private keys cannot grind R
achow101 May 26, 2025
e81d95d
wallet: Remove watchonly balances
achow101 May 15, 2025
1337c72
wallet, rpc: Remove watchonly from RPCs
achow101 May 15, 2025
4439bf4
wallet, spend: Remove fWatchOnly from CCoinControl
achow101 May 15, 2025
1571086
wallet: Remove ISMINE_WATCH_ONLY
achow101 May 15, 2025
b1a8ac0
doc: Release note for removed watchonly parameters and results
achow101 May 26, 2025
fa9b1e3
Merge bitcoin/bitcoin#32846: doc: clarify that the "-j N" goes after …
achow101 Jul 1, 2025
f33154c
Merge bitcoin/bitcoin#32432: wallet, rpc: Use `OUTPUT_TYPES` to descr…
achow101 Jul 1, 2025
ce000c8
Merge bitcoin/bitcoin#32219: test: enabling wallet migration function…
achow101 Jul 1, 2025
fa33592
Merge bitcoin/bitcoin#32723: Refactor: Redefine CTransaction equality…
achow101 Jul 1, 2025
1b5c545
wallet, test: best block locator matches scan state follow-ups
rkrux May 21, 2025
7fa9b58
Merge bitcoin/bitcoin#32841: feature_taproot: sample tx version borde…
fanquake Jul 2, 2025
bf75c99
Merge bitcoin/bitcoin#32828: build, docs: Fix Boost-related issues on…
fanquake Jul 2, 2025
a92e8b1
Merge bitcoin/bitcoin#32564: miniscript, refactor: Make `operator""_m…
fanquake Jul 2, 2025
0a1af44
doc: Add workaround for vcpkg issue with paths with embedded spaces
hebasto Jul 2, 2025
f0524cd
functional test: correctly detect nonstd TRUC tx vsize in feature_tap…
instagibbs Jul 2, 2025
c4287b9
txgraph: Add ability to configure maximum cluster size/weight (feature)
sipa Dec 17, 2024
19b14e6
txgraph: Permit transactions that exceed cluster size limit (feature)
sipa Jan 25, 2025
eabcd0e
txgraph: remove unnecessary m_group_oversized (simplification)
instagibbs May 21, 2025
a04e205
txgraph: Add ability to trim oversized clusters (feature)
sipa Dec 16, 2024
938e86f
txgraph: add unit test for TxGraph::Trim (tests)
glozow Jun 17, 2025
9c436ff
txgraph: add fuzz test scenario that avoids cycles inside Trim() (tests)
sipa May 27, 2025
4608df3
txgraph: add Trim benchmark (benchmark)
sipa Dec 22, 2024
1632fc1
txgraph: Track multiple potential would-be clusters in Trim (improvem…
sipa Dec 20, 2024
35cae56
Merge bitcoin/bitcoin#31423: wallet: migration, avoid creating spenda…
achow101 Jul 2, 2025
68ca13e
Merge bitcoin/bitcoin#32823: test: Fix wait_for_getheaders() call in …
achow101 Jul 2, 2025
1927432
Merge bitcoin/bitcoin#32859: functional test: correctly detect nonstd…
achow101 Jul 2, 2025
abd07cf
test: feature_init, only init what's needed per perturbation/deletion…
furszy Jun 24, 2025
49d5f1f
Merge bitcoin/bitcoin#32850: test: check P2SH sigop count for coinbas…
fanquake Jul 3, 2025
0f86da3
wallet: remove dead code in legacy wallet migration
rkrux Jun 16, 2025
6251949
Merge bitcoin/bitcoin#32290: test: allow all functional tests to be r…
fanquake Jul 3, 2025
c7fe8ab
Merge bitcoin/bitcoin#31233: cmake: Improve Python robustness and tes…
fanquake Jul 3, 2025
927e9b2
Merge bitcoin/bitcoin#32716: depends: Override host compilers for Fre…
fanquake Jul 3, 2025
8a17657
use WalletContext scheduler for walletpassphrase callback
pinheadmz Jul 2, 2025
fcfd3db
remove RPCTimerInterface and RPCRunLater
pinheadmz Jul 2, 2025
51ccc71
Merge bitcoin/bitcoin#32858: doc: Add workaround for vcpkg issue with…
fanquake Jul 3, 2025
ea42857
Merge bitcoin/bitcoin#29307: util: explicitly close all AutoFiles tha…
achow101 Jul 3, 2025
e3f416d
Merge bitcoin/bitcoin#32463: test: fix an incorrect `feature_fee_esti…
achow101 Jul 3, 2025
4207d9b
test: feature_init, ensure indexes are synced prior to perturbing files
furszy Jun 25, 2025
6d19815
rest: replace `rf_names[0].rf` by `RESTResponseFormat::UNDEF` for cod…
eval-exec Jul 6, 2025
fa2fbaa
bench: Avoid tmp files in pwd
Jul 7, 2025
de4eef5
threading: use correct mutex name in reverse_lock fatal error messages
theuni Jun 17, 2025
d33c111
Merge bitcoin/bitcoin#32829: threading: use correct mutex name in rev…
fanquake Jul 7, 2025
4e69aa5
doc: fix `BlockConnected` incorrect comment
ismaelsadeeq Jul 7, 2025
87ab691
Merge bitcoin/bitcoin#31553: cluster mempool: add TxGraph reorg funct…
glozow Jul 7, 2025
09add84
Merge bitcoin/bitcoin#32618: wallet: Remove ISMINE_WATCHONLY and watc…
glozow Jul 7, 2025
fc543f9
Merge bitcoin/bitcoin#32385: test: refactor out same-txid-diff-wtxid …
glozow Jul 7, 2025
528f79f
Merge bitcoin/bitcoin#32835: test: fix feature_init.py intermittencies
achow101 Jul 8, 2025
21b42f3
Merge bitcoin/bitcoin#32660: rpc: Use type-safe exception to pass RPC…
achow101 Jul 8, 2025
a8bff38
Merge bitcoin/bitcoin#32862: rpc: use CScheduler for relocking wallet…
achow101 Jul 8, 2025
927055e
Merge bitcoin/bitcoin#32893: doc: fix `BlockConnected` incorrect comment
fanquake Jul 8, 2025
150b5c9
wallet: replace `reload_wallet` with inline functionality
rkrux Jun 17, 2025
83bb414
test: less ambiguous error if bitcoind is missing
Sjors Jul 8, 2025
fa4d68c
Turn rpcauth.py test into functional test
Jul 5, 2025
b7e9dc8
Merge bitcoin/bitcoin#32884: rest: replace `rf_names[0].rf` by `RESTR…
fanquake Jul 8, 2025
eee473d
Convert `CompareInvMempoolOrder` to GenTxidVariant
marcofleon Mar 31, 2025
5bd73d9
test: fix macOS detection
Sjors Jul 8, 2025
c6dc2c2
test: replace v28.0 with notarized v28.2
Sjors Jul 8, 2025
609203d
test: stop signing previous releases >= v28.2
Sjors Jul 8, 2025
4bb4c86
test: document HOST for get_previous_releases.py
Sjors Jul 8, 2025
de858ce
move-only: make GetInfo a private CTxMemPool member
stickies-v Jun 23, 2025
c876a89
Replace GenTxid with Txid/Wtxid overloads in `txmempool`
marcofleon Mar 31, 2025
bde4579
Convert `txdownloadman_impl` to GenTxidVariant
marcofleon Mar 31, 2025
1b52839
Convert `txrequest` to GenTxidVariant
marcofleon Mar 31, 2025
072a198
Convert remaining instances of GenTxid to GenTxidVariant
marcofleon Apr 1, 2025
c8ba199
Remove old GenTxid class
marcofleon Apr 1, 2025
a60f863
scripted-diff: Replace GenTxidVariant with GenTxid
marcofleon Jul 1, 2025
fa6b45f
Add SetMockTime for time_point types
May 7, 2025
fa26bfd
test: Avoid resetting mocktime in testing setup
May 7, 2025
fa88627
fuzz: CheckGlobals in init
Jul 9, 2025
df7972a
test: Mark ~DebugLogHelper as noexcept(false)
Crypt-iQ Jun 5, 2025
afb9e39
log: introduce LogRateLimiter, LogLimitStats, Status
Crypt-iQ Jun 5, 2025
a6a35cc
log: use std::source_location in place of __func__, __FILE__, __LINE__
Crypt-iQ Jun 5, 2025
d541409
log: Add rate limiting to LogPrintf, LogInfo, LogWarning, LogError, L…
Crypt-iQ Jun 5, 2025
4c772cb
doc: add release notes for new rate limiting logging behavior
Crypt-iQ Jun 23, 2025
2d59977
Merge bitcoin/bitcoin#32604: log: Mitigate disk filling attacks by ra…
glozow Jul 9, 2025
2cad722
Merge bitcoin/bitcoin#32799: mempool: use `FeeFrac` for ancestor/desc…
glozow Jul 9, 2025
1ca62ed
Merge bitcoin/bitcoin#32580: wallet, test: best block locator matches…
achow101 Jul 9, 2025
a40e953
Merge bitcoin/bitcoin#30479: validation: Add eligible ancestors of re…
achow101 Jul 9, 2025
fa05284
test: Add missing convert_to_json_for_cli
Jul 10, 2025
83ae780
Merge bitcoin/bitcoin#32881: test: Turn rpcauth.py test into function…
fanquake Jul 10, 2025
fa894b0
log: Properly log warnings with warn loglevel in addrdb
Jul 10, 2025
c4f9090
Merge bitcoin/bitcoin#32932: test: Add missing convert_to_json_for_cli
fanquake Jul 10, 2025
b80ead8
Merge bitcoin/bitcoin#32890: bench: Avoid tmp files in pwd
fanquake Jul 10, 2025
fad191f
ci: Avoid cd into build dir
Jul 4, 2025
9493165
cmake: Use newer signature of `qt6_add_lrelease` when available
hebasto Jul 10, 2025
44f3bae
depends: Force `CMAKE_EXPORT_NO_PACKAGE_REGISTRY=TRUE`
hebasto Jul 10, 2025
f435710
Resolve guix non-determinism with emplace_back instead of push_back
achow101 Jul 10, 2025
5ef0d48
Merge bitcoin/bitcoin#30605: Cluster linearization: separate tests fr…
glozow Jul 10, 2025
7f28e80
Merge bitcoin/bitcoin#32758: wallet: remove dead code in legacy walle…
achow101 Jul 10, 2025
bad998b
Merge bitcoin/bitcoin#32921: test: less ambiguous error if bitcoind i…
achow101 Jul 10, 2025
3c14186
Merge bitcoin/bitcoin#32930: Resolve guix non-determinism with emplac…
fanquake Jul 11, 2025
f5647c6
depends: fix libevent _WIN32_WINNT usage
fanquake Jun 30, 2025
12fb00f
Merge bitcoin/bitcoin#32927: fuzz: Add missing calls to `SetMockTime`…
fanquake Jul 11, 2025
44097dd
cmake: enable -Werror=dev in dev-mode preset
fanquake Jul 4, 2025
7b420ca
guix: configure with -Werror=dev
fanquake Jul 3, 2025
8f766f3
ci: enable -Werror=dev
fanquake Jul 3, 2025
c18bf0b
refactor: cleanup index logging
Sjors Jul 11, 2025
80ce513
Merge bitcoin/bitcoin#32933: log: Properly log warnings with warn log…
fanquake Jul 11, 2025
8ffbd7b
Merge bitcoin/bitcoin#32940: cmake: Use newer signature of `qt6_add_l…
fanquake Jul 11, 2025
23e15d4
Merge bitcoin/bitcoin#32631: refactor: Convert GenTxid to `std::variant`
glozow Jul 11, 2025
6a13a61
Merge bitcoin/bitcoin#32937: Enable `-Werror=dev` in CI & Guix
hebasto Jul 11, 2025
12a6959
cmake: Drop no longer necessary "cmakeMinimumRequired" object
hebasto Jul 12, 2025
84ef552
fix spelling in tor.md docs
stutxo Jul 13, 2025
7566b40
Merge bitcoin/bitcoin#32961: fix spelling in tor.md docs
fanquake Jul 14, 2025
69b9ad0
Merge bitcoin/bitcoin#32954: cmake: Drop no longer necessary "cmakeMi…
fanquake Jul 14, 2025
97fb46d
Merge bitcoin/bitcoin#32880: ci: Avoid cd into build dir
fanquake Jul 14, 2025
e72cb20
Merge bitcoin/bitcoin#32943: depends: Force `CMAKE_EXPORT_NO_PACKAGE_…
fanquake Jul 14, 2025
28416f3
test: fix intermittent failure in rpc_invalidateblock.py
stratospher Jul 14, 2025
61e800e
test: headers sync timeout
stringintech Jun 18, 2025
b53fab1
Merge bitcoin/bitcoin#32948: refactor: cleanup index logging
fanquake Jul 14, 2025
0087ba4
Merge bitcoin/bitcoin#32968: test: fix intermittent failure in rpc_in…
fanquake Jul 15, 2025
5d17e64
Merge bitcoin/bitcoin#32677: test: headers sync timeout
fanquake Jul 15, 2025
184159e
Merge bitcoin/bitcoin#32922: test: use notarized v28.2 binaries and f…
fanquake Jul 15, 2025
9f713b8
Merge bitcoin/bitcoin#32837: depends: fix libevent `_WIN32_WINNT` usage
fanquake Jul 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
199 changes: 199 additions & 0 deletions .cirrus.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,199 @@
env: # Global defaults
CIRRUS_CLONE_DEPTH: 1
CIRRUS_LOG_TIMESTAMP: true
MAKEJOBS: "-j10"
TEST_RUNNER_PORT_MIN: "14000" # Must be larger than 12321, which is used for the http cache. See https://cirrus-ci.org/guide/writing-tasks/#http-cache
CI_FAILFAST_TEST_LEAVE_DANGLING: "1" # Cirrus CI does not care about dangling processes and setting this variable avoids killing the CI script itself on error

# A self-hosted machine(s) can be used via Cirrus CI. It can be configured with
# multiple users to run tasks in parallel. No sudo permission is required.
#
# https://cirrus-ci.org/guide/persistent-workers/
#
# Generally, a persistent worker must run Ubuntu 23.04+ or Debian 12+.
#
# The following specific types should exist, with the following requirements:
# - small: For an x86_64 machine, with at least 2 vCPUs and 8 GB of memory.
# - medium: For an x86_64 machine, with at least 4 vCPUs and 16 GB of memory.
# - arm64: For an aarch64 machine, with at least 2 vCPUs and 8 GB of memory.
#
# CI jobs for the latter configuration can be run on x86_64 hardware
# by installing qemu-user-static, which works out of the box with
# podman or docker. Background: https://stackoverflow.com/a/72890225/313633
#
# The above machine types are matched to each task by their label. Refer to the
# Cirrus CI docs for more details.
#
# When a contributor maintains a fork of the repo, any pull request they make
# to their own fork, or to the main repository, will trigger two CI runs:
# one for the branch push and one for the pull request.
# This can be avoided by setting SKIP_BRANCH_PUSH=true as a custom env variable
# in Cirrus repository settings, accessible from
# https://cirrus-ci.com/github/my-organization/my-repository
#
# On machines that are persisted between CI jobs, RESTART_CI_DOCKER_BEFORE_RUN=1
# ensures that previous containers and artifacts are cleared before each run.
# This requires installing Podman instead of Docker.
#
# Futhermore:
# - podman-docker-4.1+ is required due to the bugfix in 4.1
# (https://github.com/bitcoin/bitcoin/pull/21652#issuecomment-1657098200)
# - The ./ci/ dependencies (with cirrus-cli) should be installed. One-liner example
# for a single user setup with sudo permission:
#
# ```
# apt update && apt install git screen python3 bash podman-docker uidmap slirp4netns curl -y && curl -L -o cirrus "https://github.com/cirruslabs/cirrus-cli/releases/latest/download/cirrus-linux-$(dpkg --print-architecture)" && mv cirrus /usr/local/bin/cirrus && chmod +x /usr/local/bin/cirrus
# ```
#
# - There are no strict requirements on the hardware. Having fewer CPU threads
# than recommended merely causes the CI script to run slower.
# To avoid rare and intermittent OOM due to short memory usage spikes,
# it is recommended to add (and persist) swap:
#
# ```
# fallocate -l 16G /swapfile_ci && chmod 600 /swapfile_ci && mkswap /swapfile_ci && swapon /swapfile_ci && ( echo '/swapfile_ci none swap sw 0 0' | tee -a /etc/fstab )
# ```
#
# - To register the persistent worker, open a `screen` session and run:
#
# ```
# RESTART_CI_DOCKER_BEFORE_RUN=1 screen cirrus worker run --labels type=todo_fill_in_type --token todo_fill_in_token
# ```

# https://cirrus-ci.org/guide/tips-and-tricks/#sharing-configuration-between-tasks
filter_template: &FILTER_TEMPLATE
# Allow forks to specify SKIP_BRANCH_PUSH=true and skip CI runs when a branch is pushed,
# but still run CI when a PR is created.
# https://cirrus-ci.org/guide/writing-tasks/#conditional-task-execution
skip: $SKIP_BRANCH_PUSH == "true" && $CIRRUS_PR == ""
stateful: false # https://cirrus-ci.org/guide/writing-tasks/#stateful-tasks

base_template: &BASE_TEMPLATE
<< : *FILTER_TEMPLATE
merge_base_script:
# Require git (used in fingerprint_script).
- git --version || ( apt-get update && apt-get install -y git )
- if [ "$CIRRUS_PR" = "" ]; then exit 0; fi
- git fetch --depth=1 $CIRRUS_REPO_CLONE_URL "pull/${CIRRUS_PR}/merge"
- git checkout FETCH_HEAD # Use merged changes to detect silent merge conflicts
# Also, the merge commit is used to lint COMMIT_RANGE="HEAD~..HEAD"

main_template: &MAIN_TEMPLATE
timeout_in: 120m # https://cirrus-ci.org/faq/#instance-timed-out
ci_script:
- ./ci/test_run_all.sh

global_task_template: &GLOBAL_TASK_TEMPLATE
<< : *BASE_TEMPLATE
<< : *MAIN_TEMPLATE

compute_credits_template: &CREDITS_TEMPLATE
# https://cirrus-ci.org/pricing/#compute-credits
# Only use credits for pull requests to the main repo
use_compute_credits: $CIRRUS_REPO_FULL_NAME == 'bitcoin/bitcoin' && $CIRRUS_PR != ""

task:
name: 'lint'
<< : *BASE_TEMPLATE
container:
dockerfile: ci/lint_imagefile
cpu: 1
memory: 1G
# For faster CI feedback, immediately schedule the linters
<< : *CREDITS_TEMPLATE
unshallow_script:
- git fetch --unshallow --no-tags
lint_script:
- ./ci/lint_run.sh

task:
name: 'tidy'
<< : *GLOBAL_TASK_TEMPLATE
persistent_worker:
labels:
type: medium
env:
FILE_ENV: "./ci/test/00_setup_env_native_tidy.sh"

task:
name: 'ARM, unit tests, no functional tests'
<< : *GLOBAL_TASK_TEMPLATE
persistent_worker:
labels:
type: arm64 # Use arm64 worker to sidestep qemu and avoid a slow CI: https://github.com/bitcoin/bitcoin/pull/28087#issuecomment-1649399453
env:
FILE_ENV: "./ci/test/00_setup_env_arm.sh"

task:
name: 'CentOS, depends, gui'
<< : *GLOBAL_TASK_TEMPLATE
persistent_worker:
labels:
type: small
env:
FILE_ENV: "./ci/test/00_setup_env_native_centos.sh"

task:
name: 'previous releases, depends DEBUG'
<< : *GLOBAL_TASK_TEMPLATE
persistent_worker:
labels:
type: small
env:
FILE_ENV: "./ci/test/00_setup_env_native_previous_releases.sh"

task:
name: 'TSan, depends, gui'
<< : *GLOBAL_TASK_TEMPLATE
persistent_worker:
labels:
type: medium
env:
FILE_ENV: "./ci/test/00_setup_env_native_tsan.sh"

task:
name: 'MSan, depends'
<< : *GLOBAL_TASK_TEMPLATE
persistent_worker:
labels:
type: small
timeout_in: 300m # Use longer timeout for the *rare* case where a full build (llvm + msan + depends + ...) needs to be done.
env:
FILE_ENV: "./ci/test/00_setup_env_native_msan.sh"

task:
name: 'fuzzer,address,undefined,integer, no depends'
<< : *GLOBAL_TASK_TEMPLATE
persistent_worker:
labels:
type: medium
timeout_in: 240m # larger timeout, due to the high CPU demand
env:
FILE_ENV: "./ci/test/00_setup_env_native_fuzz.sh"

task:
name: 'multiprocess, i686, DEBUG'
<< : *GLOBAL_TASK_TEMPLATE
persistent_worker:
labels:
type: medium
env:
FILE_ENV: "./ci/test/00_setup_env_i686_multiprocess.sh"

task:
name: 'no wallet, libbitcoinkernel'
<< : *GLOBAL_TASK_TEMPLATE
persistent_worker:
labels:
type: small
env:
FILE_ENV: "./ci/test/00_setup_env_native_nowallet_libbitcoinkernel.sh"

task:
name: 'macOS-cross, gui, no tests'
<< : *GLOBAL_TASK_TEMPLATE
persistent_worker:
labels:
type: small
env:
FILE_ENV: "./ci/test/00_setup_env_mac_cross.sh"
26 changes: 26 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# This is the top-most EditorConfig file.
root = true

# For all files.
[*]
charset = utf-8
end_of_line = lf
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true

# Source code files
[*.{h,cpp,rs,py,sh}]
indent_size = 4

# .cirrus.yml, etc.
[*.yml]
indent_size = 2

# Makefiles (only relevant for depends build)
[Makefile]
indent_style = tab

# CMake files
[{CMakeLists.txt,*.cmake,*.cmake.in}]
indent_size = 2
21 changes: 0 additions & 21 deletions .github/ISSUE_TEMPLATE.md

This file was deleted.

93 changes: 93 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
name: Bug report
description: Submit a new bug report.
labels: [bug]
body:
- type: markdown
attributes:
value: |
## This issue tracker is only for technical issues related to Bitcoin Core.

* General bitcoin questions and/or support requests should use Bitcoin StackExchange at https://bitcoin.stackexchange.com.
* For reporting security issues, please read instructions at https://bitcoincore.org/en/contact/.
* If the node is "stuck" during sync or giving "block checksum mismatch" errors, please ensure your hardware is stable by running `memtest` and observe CPU temperature with a load-test tool such as `linpack` before creating an issue.

----
- type: checkboxes
attributes:
label: Is there an existing issue for this?
description: Please search to see if an issue already exists for the bug you encountered.
options:
- label: I have searched the existing issues
required: true
- type: textarea
id: current-behaviour
attributes:
label: Current behaviour
description: Tell us what went wrong
validations:
required: true
- type: textarea
id: expected-behaviour
attributes:
label: Expected behaviour
description: Tell us what you expected to happen
validations:
required: true
- type: textarea
id: reproduction-steps
attributes:
label: Steps to reproduce
description: |
Tell us how to reproduce your bug. Please attach related screenshots if necessary.
* Run-time or compile-time configuration options
* Actions taken
validations:
required: true
- type: textarea
id: logs
attributes:
label: Relevant log output
description: |
Please copy and paste any relevant log output or attach a debug log file.

You can find the debug.log in your [data dir.](https://github.com/bitcoin/bitcoin/blob/master/doc/files.md#data-directory-location)

Please be aware that the debug log might contain personally identifying information.
validations:
required: false
- type: dropdown
attributes:
label: How did you obtain Bitcoin Core
multiple: false
options:
- Compiled from source
- Pre-built binaries
- Package manager
- Other
validations:
required: true
- type: input
id: core-version
attributes:
label: What version of Bitcoin Core are you using?
description: Run `bitcoind --version` or in Bitcoin-QT use `Help > About Bitcoin Core`
placeholder: e.g. v24.0.1 or master@e1bf547
validations:
required: true
- type: input
id: os
attributes:
label: Operating system and version
placeholder: e.g. "MacOS Ventura 13.2" or "Ubuntu 22.04 LTS"
validations:
required: true
- type: textarea
id: machine-specs
attributes:
label: Machine specifications
description: |
What are the specifications of the host machine?
e.g. OS/CPU and disk type, network connectivity
validations:
required: false

8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: true
contact_links:
- name: Bitcoin Core Security Policy
url: https://github.com/bitcoin/bitcoin/blob/master/SECURITY.md
about: View security policy
- name: Bitcoin Core Developers
url: https://bitcoincore.org
about: Bitcoin Core homepage
36 changes: 36 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: Feature Request
description: Suggest an idea for this project.
labels: [Feature]
body:
- type: textarea
id: feature
attributes:
label: Please describe the feature you'd like to see added.
description: Attach screenshots or logs if applicable.
validations:
required: true
- type: textarea
id: related-problem
attributes:
label: Is your feature related to a problem, if so please describe it.
description: Attach screenshots or logs if applicable.
validations:
required: false
- type: textarea
id: solution
attributes:
label: Describe the solution you'd like
validations:
required: false
- type: textarea
id: alternatives
attributes:
label: Describe any alternatives you've considered
validations:
required: false
- type: textarea
id: additional-context
attributes:
label: Please leave any additional context
validations:
required: false
Loading