Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
4651 commits
Select commit Hold shift + click to select a range
a34fc8b
wallet: handle disabled startup settings
Rob1Ham Sep 6, 2026
5f0daa0
Merge bitcoin/bitcoin#36169: http: Use SO_EXCLUSIVEADDRUSE on Windows
sedited Sep 6, 2026
b557fb2
Merge bitcoin/bitcoin#36164: util: diagnose dangling views of tempora…
sedited Sep 6, 2026
a174dd4
Merge bitcoin/bitcoin#36161: build: Remove `cmake/script/CoverageFuzz…
sedited Sep 6, 2026
161a9ad
Merge bitcoin/bitcoin#35164: test: cover P2SH sigop counting in test_…
sedited Sep 7, 2026
51db0e7
Merge bitcoin/bitcoin#36096: rpc: avoid quadratic JSON construction w…
sedited Sep 7, 2026
35104a8
Merge bitcoin/bitcoin#35949: miner: Enforce Murch-Zawy rule (BIP54)
sedited Sep 7, 2026
6ed7c53
iwyu: Prefer canonical headers
hebasto Sep 7, 2026
1b5ee3b
ci: Upgrade IWYU to 0.27 compatible with Clang 23
hebasto Sep 7, 2026
3b944f1
iwyu: Switch to generated Clang intrinsics mapping file
hebasto Sep 7, 2026
0c6f2af
Merge bitcoin/bitcoin#36127: wallet: remove unused code
fanquake Sep 7, 2026
19b0ff2
Merge bitcoin/bitcoin#36136: rpc: remove stale "canonical form" claim…
sedited Sep 7, 2026
2ed4be4
Merge bitcoin/bitcoin#36113: psbt: fix rendering for invalid long sig…
achow101 Sep 7, 2026
013b0b2
Merge bitcoin/bitcoin#36176: wallet: avoid a crash when creating a wa…
achow101 Sep 7, 2026
ea785a3
psbt: preserve sighash type when merging inputs
thomasbuilds Aug 25, 2026
0b46fc9
http: Add missing LIFETIMEBOUND annotations
hodlinator Sep 8, 2026
33a363e
Merge bitcoin/bitcoin#36168: PSBT: Make input/output `Merge()` method…
sedited Sep 8, 2026
59fd053
Merge bitcoin/bitcoin#34931: validation: abort on DB unreadable coins…
sedited Sep 8, 2026
4c9d55a
Merge bitcoin/bitcoin#36076: psbt: preserve sighash type when merging…
achow101 Sep 9, 2026
0ae3b40
test: characterize startup with newly added prune and index
andrewtoth Sep 9, 2026
6385aa1
contrib: Update makeseeds for 30.3 and 31.x
achow101 Sep 9, 2026
fcfc1df
contrib: Update fixed seeds
achow101 Sep 9, 2026
67726a6
kernel: update assumed blockchain and chainstate sizes
achow101 Sep 9, 2026
a25511d
kernel: update defaultAssumeValid and minimumChainWork
achow101 Sep 9, 2026
42d93d4
kernel: update chainTxData
achow101 Sep 9, 2026
494300f
Merge bitcoin/bitcoin#35796: depends: fix IPC listeners on macOS dyin…
fanquake Sep 9, 2026
fb26bc9
Merge bitcoin/bitcoin#35445: wallet, descriptor: Revert `StringType::…
fanquake Sep 9, 2026
d6a2341
doc: add rel note about potential CJDNS removal
fanquake Sep 9, 2026
4665409
lint: Use C.UTF-8 locale only in shell scripts
hebasto Jul 26, 2026
99f81fe
Merge bitcoin/bitcoin#35303: policy: fix negative CFeeRate::ToString(…
sedited Sep 9, 2026
064122a
Merge bitcoin/bitcoin#36181: ci: Upgrade IWYU to 0.27 compatible with…
fanquake Sep 9, 2026
005ea9f
Merge bitcoin/bitcoin#35778: scripted-diff: Use C.UTF-8 locale in all…
fanquake Sep 9, 2026
e6c775c
net: treat RFC 9637 new IPv6 documentation range as invalid
fjahr Sep 9, 2026
b48a276
fuzz: assert invalid addresses are not routable
fjahr Sep 9, 2026
2285d19
Merge bitcoin/bitcoin#35468: ci, iwyu: Request IPC file generation ex…
fanquake Sep 9, 2026
462ff18
iwyu, refactor: Fix includes in some source files
hebasto Sep 9, 2026
7d54a88
iwyu: Fix warnings in `src/rpc` and treat them as errors
hebasto Sep 9, 2026
da3401e
Squashed 'src/secp256k1/' changes from 687155df6b..a7f264373e
fanquake Sep 9, 2026
ba9050a
Update secp256k1 subtree to latest master
fanquake Sep 9, 2026
00d0c51
test: return False for a too-short ECDSA signature
fametrano Sep 7, 2026
ffe6aa5
Merge bitcoin/bitcoin#36199: net: treat RFC 9637 new IPv6 documentati…
sedited Sep 9, 2026
3c91db2
net: Update embedded asmap to 1788801420
fjahr Sep 9, 2026
9d4325f
Merge bitcoin/bitcoin#36203: Update secp256k1 subtree to latest master
sedited Sep 9, 2026
7e75b3b
Merge bitcoin/bitcoin#36116: iwyu: Fix warnings in `src/rpc` and trea…
fanquake Sep 9, 2026
ad4eeaf
ci: avoid modifying GOAL in 03_test_script.sh
Sjors Mar 25, 2026
28b69e2
http: stop processing requests from a client when send buffer is full
pinheadmz Sep 4, 2026
ecdf9db
test: get_previous_releases.py use `PREVIOUS_RELEASES_DIR`
davidgumberg Sep 8, 2026
af83bac
Merge bitcoin/bitcoin#36202: doc: add rel note about potential CJDNS …
achow101 Sep 9, 2026
fc4f35f
Merge bitcoin/bitcoin#35513: rpc: help metadata fixes
sedited Sep 9, 2026
b3a9b84
doc: Correct upstream-pull reference
LittleYier Sep 9, 2026
5a5b1ed
Merge bitcoin/bitcoin#36201: Update embedded asmap to 1788801420
fanquake Sep 10, 2026
b5ef74b
Merge bitcoin/bitcoin#36211: doc: Fix PR reference in productivity guide
fanquake Sep 10, 2026
4a15e0b
Merge bitcoin/bitcoin#36195: test: `get_previous_releases.py` use `PR…
fanquake Sep 10, 2026
7ee94bf
asmap: Make outputted ASMap version match externally computed hashes
hodlinator Sep 10, 2026
1fe87c2
guix: cache GUI depends separately
willcl-ark Aug 17, 2026
9c77483
build: avoid pipe2 on Darwin (for now)
fanquake Sep 10, 2026
da7d7db
contrib: remove deprecated --deep codesign flag
Sjors Mar 25, 2026
a42da81
Merge bitcoin/bitcoin#36174: http: throttle send buffer when client s…
sedited Sep 10, 2026
51b540c
Merge bitcoin/bitcoin#36218: build: avoid `pipe2` on Darwin (for now)
fanquake Sep 10, 2026
2c2667e
qt: 32.0 translations update
hebasto Sep 10, 2026
fc6923c
Merge bitcoin/bitcoin#36215: asmap: Make version match externally com…
sedited Sep 10, 2026
9b22995
indexes: set prune lock to genesis before first block
andrewtoth Sep 2, 2026
7eb4cec
kernel: Update headerssync params
achow101 Sep 9, 2026
fed5025
kernel: add recent assumeutxo snapshot
achow101 Sep 9, 2026
a6b3309
Merge bitcoin/bitcoin#36150: indexes: set prune lock to genesis befor…
sedited Sep 11, 2026
1a4e034
Merge bitcoin/bitcoin#36209: guix: cache GUI depends separately
sedited Sep 11, 2026
92986c7
Merge bitcoin/bitcoin#36213: Release: 32.0 translations update
fanquake Sep 11, 2026
501ba4c
Merge bitcoin/bitcoin#36196: contrib, kernel: fixed seeds, chainparam…
fanquake Sep 11, 2026
8c64ff0
Merge bitcoin/bitcoin#34914: contrib: replace deprecated --deep codes…
fanquake Sep 11, 2026
5df0827
doc: Move release notes to wiki ahead of branch-off
sedited Sep 11, 2026
4d463de
Merge bitcoin/bitcoin#36226: doc: Move release notes to wiki ahead of…
fanquake Sep 11, 2026
57d3d00
build: Bump version to 32.99
sedited Sep 11, 2026
9a48134
docs: Update bips.md
sedited Sep 11, 2026
f3fec67
Merge bitcoin/bitcoin#36227: Pre 32.x branching updates
fanquake Sep 11, 2026
6bdcae3
refactor: Import signet constant and helper from kernel/signet.h
ekzyis Apr 21, 2026
9b37d42
Use different datadirs for different signets
ekzyis Feb 11, 2026
6f8c43f
test: Add signet datadir tests
ekzyis Apr 21, 2026
c47ea37
doc: Update documentation for signet datadir
ekzyis Apr 21, 2026
feeb00a
cli: Add -signetchallenge info on RPC auth error
ekzyis Jun 4, 2026
0476444
Merge bitcoin/bitcoin#35935: wallet: Avoid unnecessary wtxvariant rew…
sedited Sep 12, 2026
1afa0cd
cmake: add raw data header generation target
kriss39 Sep 12, 2026
1cbbf64
ci, iwyu: generate embedded ASMap header explicitly
kriss39 Sep 12, 2026
1781781
Merge bitcoin/bitcoin#36228: ci, iwyu: generate embedded ASMap header…
hebasto Sep 12, 2026
fc718ad
test: Test that metadata is synced to malleated transactions
achow101 Aug 13, 2026
2efaa67
wallet: simplify and restrict SyncMetaData to malleated txs
furszy Sep 9, 2026
482a5d2
node: introduce BlockTemplateManager
ismaelsadeeq Jun 17, 2026
bcdadf2
node: move mining_args to BlockTemplateManager
ismaelsadeeq May 28, 2026
07964c5
miner: move SubmitBlock into BlockTemplateManager
ismaelsadeeq Jun 16, 2026
037d351
node: move tip and wait helpers into BlockTemplateManager
ismaelsadeeq Jun 20, 2026
400ac32
interfaces: create block template via BlockTemplateManager
ismaelsadeeq Jun 18, 2026
011cbfb
rpc: route getblocktemplate internals through node
ismaelsadeeq Jul 16, 2026
0998c0b
rpc: build getblocktemplate via BlockTemplateManager
ismaelsadeeq Jul 16, 2026
951fac8
rpc: do not copy template data in getblocktemplate
ismaelsadeeq Jul 20, 2026
38556f8
rpc: only copy the header in getblocktemplate
ismaelsadeeq Jul 20, 2026
8372721
rpc: build generation templates via BlockTemplateManager
ismaelsadeeq Jul 10, 2026
ec4f24e
rpc: wait for tips via BlockTemplateManager
ismaelsadeeq Jul 10, 2026
6c71166
test: create templates via BlockTemplateManager
ismaelsadeeq Jul 10, 2026
ffe3a63
node: remove NodeContext::mining and EnsureMining
ismaelsadeeq Jul 10, 2026
3d7d190
ci: enforce iwyu for block template manager
ismaelsadeeq Jul 10, 2026
b973a35
Replace CTransaction::operator== with Equals that has options
achow101 Aug 13, 2026
34533d5
wallet: Clarify IsEquivalentTo is actually checking malleation
achow101 Aug 13, 2026
6c16d76
wallet: sync tx replacement metadata to malleated txs
furszy Sep 9, 2026
31eedfc
wallet: simplify wtx metadata sync
furszy Sep 9, 2026
752fd43
wallet: persist synced metadata and do not sync on load
furszy Sep 9, 2026
a44f9ad
test: Test rbf metadata sync of malleated tx
achow101 Aug 13, 2026
2c6047d
test: Bumping a transaction prevents bumping malleations
achow101 Aug 13, 2026
d25470d
Merge bitcoin/bitcoin#35975: wallet: Fix `CWalletTx` malleated transa…
sedited Sep 14, 2026
1aa500b
iwyu: Always keep `bitcoin-build-info.h` header
hebasto Sep 14, 2026
adca0a9
Merge bitcoin/bitcoin#36247: iwyu: Always keep `bitcoin-build-info.h`…
fanquake Sep 14, 2026
fdfd196
rpc: Reuse AsmapVersion in exportasmap
fjahr Sep 13, 2026
0bc8736
init: Log asmap version from NetGroupManager
fjahr Sep 13, 2026
2ca83ba
Merge bitcoin/bitcoin#35436: wallet: Add addHDkey interface
sedited Sep 14, 2026
d9d0578
Merge bitcoin/bitcoin#34681: wallet: move rescan logic into ChainScan…
sedited Sep 14, 2026
dd5a8a6
test: Check embedded asmap version log and addrman re-bucketing
fjahr Sep 13, 2026
87ce88c
rpc: Add asmap_version to getnetworkinfo
fjahr Sep 13, 2026
c1e9d15
doc: Describe how to verify the asmap in use
fjahr Sep 13, 2026
7c4facb
Merge bitcoin/bitcoin#36081: rpc: add bestblockhash to getmininginfo
sedited Sep 14, 2026
36c1b14
Merge bitcoin/bitcoin#35472: test: add coverage for feebumper uncompu…
sedited Sep 14, 2026
dd3c62c
Merge bitcoin/bitcoin#36083: test: cover getrawtransaction on a stale…
sedited Sep 14, 2026
a49fa1f
Merge bitcoin/bitcoin#35849: init: don't suggest -reindex-chainstate …
sedited Sep 14, 2026
c38e0d2
Merge bitcoin/bitcoin#36093: test: ipc should reject invalid json
sedited Sep 14, 2026
698b5bb
p2p: pause stalling manual block downloads
willcl-ark Jun 9, 2026
4c79f3a
test: support manual connections in addconnection
willcl-ark Mar 5, 2026
24628d3
test: cover manual peer block download cooldown
willcl-ark Jun 9, 2026
5551d39
doc: document manual peer stalling behavior
willcl-ark Jun 9, 2026
76343a0
Merge bitcoin/bitcoin#36186: test: return False for a too-short ECDSA…
sedited Sep 14, 2026
a09a81e
Merge bitcoin/bitcoin#35961: depends: Update `boost` package to 1.92.0
fanquake Sep 14, 2026
cff00c5
Merge bitcoin/bitcoin#34743: p2p: don't disconnect manual peers for b…
sedited Sep 14, 2026
1566a47
rest: add generated and height to spenttxouts JSON
0xB10C Sep 14, 2026
e0229ca
fuzz: Use LIMITED_WHILE in connect_block
marcofleon Sep 14, 2026
380d3ae
wallet: rpc: Use std::optional in GetImportTimestamp
polespinasa Jun 26, 2026
9048510
wallet: lower the minimum timestamp to 0
polespinasa Jun 26, 2026
7375124
wallet: refactor: make is_ranged no longer an optional
polespinasa Jun 26, 2026
f1f61af
wallet: Add ImportDescriptorRequest structs
polespinasa Apr 14, 2026
9752156
wallet: rpc: refactor: Extract UniValue processing from ProcessDescri…
polespinasa Jun 26, 2026
04c73a9
wallet: Add ImportError struct and new WalletError codes
polespinasa Jul 9, 2026
48d3d71
wallet, util: Add HandleWalletErrorCode
polespinasa Sep 2, 2026
a40ee4e
wallet: rpc: refactor: ProcessDescriptorImport returns ImportDescript…
polespinasa Jun 26, 2026
c9650d8
wallet: rename ProcessDescriptorImport to ImportDescriptor and add Pr…
polespinasa Apr 14, 2026
a9cd985
wallet: Move ImportDescriptor and ProcessDescriptorsImport to imports…
polespinasa Apr 14, 2026
31224d0
kernel: expose transaction wtxid
KY-U Sep 8, 2026
43bba1e
kernel: expose transaction witness presence
KY-U Sep 8, 2026
3be5f40
wallet: add CheckDescriptorRangeBounds
polespinasa Aug 14, 2026
2c249db
wallet: Add an importDescriptors() interface for the wallet
polespinasa Apr 14, 2026
51ddab5
Merge bitcoin/bitcoin#35819: test: add coverage for untested descript…
ryanofsky Sep 14, 2026
16278c2
kernel: expose block header Merkle root
lucasdbr05 Sep 15, 2026
de394ad
Merge bitcoin/bitcoin#36207: kernel: add wtxid accessor
sedited Sep 15, 2026
dadca55
Merge bitcoin/bitcoin#36251: rest: add `generated` and `height` to sp…
sedited Sep 15, 2026
57721f8
Merge bitcoin/bitcoin#36253: fuzz: Use `LIMITED_WHILE` in `connect_bl…
fanquake Sep 15, 2026
4556ef6
torcontrol: Apply reconnect backoff after dropped connections
fjahr Sep 14, 2026
66eeac2
guix: Use osslsigncode 2.14
achow101 Sep 15, 2026
59a465c
guix: Validate codesigned windows binaries
achow101 Sep 15, 2026
d32a515
Merge bitcoin/bitcoin#34566: feature: Use different datadirs for diff…
sedited Sep 16, 2026
651e44f
Merge bitcoin/bitcoin#36194: kernel: expose block header Merkle root
sedited Sep 16, 2026
a687188
Merge bitcoin/bitcoin#36160: refactor: Minor improvements to HTTP uni…
sedited Sep 16, 2026
7dedc45
Merge bitcoin/bitcoin#36256: guix: Update osslsigncode to 2.14
hebasto Sep 16, 2026
fb68c27
Merge bitcoin/bitcoin#36260: torcontrol: Use reconnect backoff after …
sedited Sep 16, 2026
0b353a9
netgroup: Cache asmap version
fjahr Sep 16, 2026
b821585
Merge bitcoin/bitcoin#33593: guix: Use UCRT runtime for Windows relea…
fanquake Sep 16, 2026
59f7f3d
build: drop use of OBJC_OLD_DISPATCH_PROTOTYPES
fanquake Sep 9, 2026
21e4ea8
test: cover PSBT unknown field merging
w0xlt May 17, 2026
fcb2d83
Squashed 'src/minisketch/' changes from 4a179c61e3..a12f5de1c9
fanquake Sep 16, 2026
749bd10
Update minisketch subtree to latest master
fanquake Sep 16, 2026
4be88b9
Squashed 'src/leveldb/' changes from 13da2d6758..53a1914e00
fanquake Sep 16, 2026
7528f79
Update leveldb subtree to latest master
fanquake Sep 16, 2026
20307f0
wallet: don't double count discarded output groups with avoidpartials…
fjahr Sep 16, 2026
2bbbeaa
Merge bitcoin/bitcoin#34861: wallet: Add importdescriptors interface
achow101 Sep 17, 2026
fa8fefb
refactor: Use static const over inline const to work around ld64 bug
Sep 17, 2026
a604a76
Merge bitcoin/bitcoin#36282: Update leveldb subtree to latest master
sedited Sep 17, 2026
ad97933
Merge bitcoin/bitcoin#36285: refactor: Use static const over inline c…
sedited Sep 17, 2026
4f624bb
Revert "build: Remove `cmake/script/CoverageFuzz.cmake`"
sedited Sep 17, 2026
b388f9b
crypto: Fix MuHash3072 division by itself
fjahr Sep 17, 2026
dc3e2bc
wallet, rpc: extract PushTxAmountAndFee/PushTxDecoded helpers
pablomartin4btc Aug 27, 2026
4cc00f7
wallet: Remove WalletDescriptor's default constructor
achow101 Sep 16, 2026
bb5e832
wallet: Make WalletDescriptor's descriptor const
achow101 Sep 17, 2026
64abb3e
wallet: Compare descriptors by hash of canonical string
achow101 Sep 11, 2026
405b1d6
descriptor: Explicitly handle use_apostrophe cases
achow101 Sep 11, 2026
f0f6dce
descriptor, doc: Clarify miniscript CompatDescriptorHash
achow101 Sep 11, 2026
f6cbcfd
wallet: Document WalletDescriptor::UpdateFrom
achow101 Sep 11, 2026
ebf2f69
test: Simplify miniscript descriptor check in wallet back compat
achow101 Sep 11, 2026
61edcf9
test: Add 31.1 to wallet back compat
achow101 Sep 11, 2026
0e9018e
Merge bitcoin/bitcoin#36249: net, rpc: Asmap version improvements/fol…
sedited Sep 17, 2026
7038101
refactor/test: add wallet failure injection
l0rinc Aug 16, 2026
e6c374d
test: characterize encryption transaction failures
l0rinc Jul 24, 2026
8b23fa4
wallet: abort failed encryption transactions
l0rinc Jul 19, 2026
2daa2f9
wallet: restore lock state before re-encryption
achow101 Aug 19, 2026
ee6d45a
test: characterize passphrase write failure
l0rinc Jul 24, 2026
5bc0be1
wallet: reject failed passphrase changes
l0rinc Jul 19, 2026
14ce3fd
test: characterize descriptor key failures
l0rinc Jul 23, 2026
d8a6f5e
wallet: abort failed descriptor key writes
l0rinc Jul 24, 2026
537e791
test: cover encrypted descriptor key insertion
l0rinc Jul 23, 2026
bd55810
wallet: abort failed descriptor key erases
l0rinc Jul 23, 2026
e3712b7
test: characterize descriptor insertion failure
l0rinc Aug 18, 2026
f949b3b
wallet: publish descriptor keys after writes
l0rinc Aug 18, 2026
5935546
wallet: return passphrase errors with Expected
achow101 Aug 19, 2026
6d24145
wallet: reuse unlock and passphrase change errors
achow101 Aug 19, 2026
7193249
test: Check that ineligible output groups are discarded only once
fjahr Sep 18, 2026
d48e76e
Merge bitcoin/bitcoin#36286: crypto: Fix MuHash3072 division by itself
sedited Sep 18, 2026
ba6c179
wallet, rpc: allow omitting parent_descs from TransactionDescriptionS…
pablomartin4btc Aug 27, 2026
605c4fd
wallet, rpc: Add listrawtransactions RPC
pablomartin4btc Aug 27, 2026
b377786
test: Add functional test for listrawtransactions
pablomartin4btc Aug 11, 2026
7c311f5
doc: Add release notes for listrawtransactions
pablomartin4btc Aug 11, 2026
83434f7
kernel: expose transaction version
nervana21 Sep 8, 2026
5181c61
Squashed 'src/crc32c/' changes from efb8ea04e4..60bcf13edf
fanquake Sep 19, 2026
2c8372d
Update crc32c subtree to latest master
fanquake Sep 19, 2026
b7f740c
rpc: Correct OpenRPC default metadata
willcl-ark Sep 18, 2026
5f05d8c
Merge bitcoin/bitcoin#36297: rpc: Correct invalid OpenRPC defaults
fanquake Sep 19, 2026
4a583f3
Merge bitcoin/bitcoin#36230: wallet: Improve `HasWalletDescriptor` pe…
fanquake Sep 19, 2026
c08489f
Merge bitcoin/bitcoin#36288: build: Revert remove `cmake/script/Cover…
fanquake Sep 19, 2026
170d379
Merge bitcoin/bitcoin#36198: http: Add missing LIFETIMEBOUND annotations
fanquake Sep 19, 2026
bb52965
Merge bitcoin/bitcoin#36206: build: drop use of `OBJC_OLD_DISPATCH_PR…
fanquake Sep 19, 2026
716e860
ci: simplify macOS codesign check
fanquake Sep 20, 2026
69ad2a6
Merge bitcoin/bitcoin#36283: kernel: expose transaction version
sedited Sep 21, 2026
5945cb8
contrib: add deterministic fuzz coverage mode
HowHsu Jul 26, 2026
5ca3773
Merge bitcoin/bitcoin#36298: Update crc32c subtree to latest master
fanquake Sep 21, 2026
4ecbc82
Merge bitcoin/bitcoin#36278: Update minisketch subtree to latest master
hebasto Sep 21, 2026
0d34b6e
rpc: clarify that getaddrmaninfo counts unique addresses
0xB10C Sep 21, 2026
dac53c5
Merge bitcoin/bitcoin#31888: contrib: Support re-writing linearize-da…
sedited Sep 21, 2026
f839ee1
Merge bitcoin/bitcoin#35887: ipc: use std::optional for checkSpawned(…
ryanofsky Sep 21, 2026
bbc40ed
Merge bitcoin/bitcoin#36261: test: cover PSBT unknown field merging
sedited Sep 22, 2026
f86cbf5
Merge bitcoin/bitcoin#36310: rpc: clarify that `getaddrmaninfo` count…
sedited Sep 22, 2026
cb69853
wallet: check descriptor cache xpub length before decoding
alhudz Jun 2, 2026
db7ec4f
refactor: (de)serialize CExtKey/CExtPubKey through streams
alhudz Sep 8, 2026
995da86
Merge bitcoin/bitcoin#36302: ci: simplify macOS codesign check
sedited Sep 22, 2026
248ce46
Merge bitcoin/bitcoin#35619: test: ExtendedPrivateKey follow-ups
sedited Sep 22, 2026
2630d8e
doc: scope claims about private broadcast feature
instagibbs Sep 21, 2026
f413729
private broadcast: mark feature as experimental
instagibbs Sep 21, 2026
7ee3d62
Merge bitcoin/bitcoin#35752: wallet: make encryption state updates at…
achow101 Sep 22, 2026
b7211ba
Merge bitcoin/bitcoin#34717: p2p: remove m_getaddr_sent
sedited Sep 22, 2026
d36f4a1
Merge bitcoin/bitcoin#36155: doc: remove json quoting from gettxoutse…
sedited Sep 22, 2026
71c30b6
Merge bitcoin/bitcoin#27052: test: rpc: add last block announcement t…
ryanofsky Sep 22, 2026
2b95b45
Merge bitcoin/bitcoin#35813: wallet, rpc: Add listrawtransactions RPC
achow101 Sep 22, 2026
356c91f
crypto: add KeyPair::GetSecpKeypair
josibake Apr 4, 2025
44997c3
Add "sp" HRP
josibake Jul 18, 2023
96d487c
ci: raise BuildKit step log limit
willcl-ark Sep 23, 2026
f133d13
common: add bip352.{h,cpp} secp256k1 module
josibake Feb 7, 2024
e3ee0eb
tests: add BIP352 test vectors as unit tests
josibake May 5, 2024
1d59d5a
ci: use POSIX threads in Nix Windows cross shell
willcl-ark Sep 22, 2026
9fd18ae
ci: print Windows cross compiler thread model
willcl-ark Sep 22, 2026
3175452
Merge bitcoin/bitcoin#36309: private broadcast: clarify claims, mark …
sedited Sep 23, 2026
81e2de8
Merge bitcoin/bitcoin#35893: test: cover submitpackage other-wtxid fo…
fanquake Sep 23, 2026
dc3cd19
Merge bitcoin/bitcoin#35809: contrib: add deterministic fuzz coverage…
fanquake Sep 23, 2026
b3f846e
Merge bitcoin/bitcoin#35440: wallet: check descriptor cache xpub leng…
achow101 Sep 23, 2026
be5d0b5
Merge bitcoin/bitcoin#35301: Silent Payments: Implement bip352 (take 2)
achow101 Sep 23, 2026
a632d4f
Merge bitcoin/bitcoin#35177: test: use MiniWallet for getblockstats t…
achow101 Sep 23, 2026
2624148
Merge bitcoin/bitcoin#35923: mempool: count unbroadcast txids in memo…
achow101 Sep 23, 2026
5c726f2
Merge bitcoin/bitcoin#35675: mining: add block template manager
ryanofsky Sep 24, 2026
de9f42c
Merge bitcoin/bitcoin#36316: ci: use POSIX threads for Nix Windows bu…
fanquake Sep 24, 2026
bfdcd97
Merge bitcoin/bitcoin#35890: doc: use overwrite (>) instead of append…
sedited Sep 24, 2026
e8e7e91
Merge bitcoin/bitcoin#36284: wallet: don't double discard output grou…
achow101 Sep 24, 2026
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
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ trim_trailing_whitespace = true
[*.{h,cpp,rs,py,sh}]
indent_size = 4

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

Expand Down
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
src/clientversion.cpp export-subst
src/CMakeLists.txt export-subst
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ body:
* 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.
* If you use AI tools when opening this issue, please read the [AI policy](https://github.com/bitcoin/bitcoin/blob/master/doc/AI_POLICY.md).

----
- type: checkboxes
Expand Down Expand Up @@ -78,7 +79,7 @@ body:
id: os
attributes:
label: Operating system and version
placeholder: e.g. "MacOS Ventura 13.2" or "Ubuntu 22.04 LTS"
placeholder: e.g. "MacOS 26.0" or "Ubuntu 26.04 LTS"
validations:
required: true
- type: textarea
Expand All @@ -90,4 +91,3 @@ body:
e.g. OS/CPU and disk type, network connectivity
validations:
required: false

5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@ name: Feature Request
description: Suggest an idea for this project.
labels: [Feature]
body:
- type: markdown
attributes:
value: |
If you use AI tools when opening this issue, please read the [AI policy](https://github.com/bitcoin/bitcoin/blob/master/doc/AI_POLICY.md).
- type: textarea
id: feature
attributes:
Expand Down
44 changes: 0 additions & 44 deletions .github/ISSUE_TEMPLATE/good_first_issue.yml

This file was deleted.

5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/gui_issue.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@ name: Issue or feature request related to the GUI
description: Any report, issue or feature request related to the GUI
labels: [GUI]
body:
- type: markdown
attributes:
value: |
If you use AI tools when opening this issue, please read the [AI policy](https://github.com/bitcoin/bitcoin/blob/master/doc/AI_POLICY.md).
- type: checkboxes
id: acknowledgement
attributes:
Expand Down
9 changes: 5 additions & 4 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
<!--
*** Please remove the following help text before submitting: ***
Pull requests without a rationale and clear improvement may be closed
immediately.
Pull requests may be closed immediately if they:
- do not have a rationale and clear improvement
- do not adhere to doc/AI_POLICY.md
GUI-related pull requests should be opened against
https://github.com/bitcoin-core/gui
first. See CONTRIBUTING.md
https://github.com/bitcoin-core/gui first.
See CONTRIBUTING.md
-->

<!--
Expand Down
Original file line number Diff line number Diff line change
@@ -1,43 +1,51 @@
name: 'Restore Caches'
description: 'Restore ccache, depends sources, and built depends caches'
inputs:
provider:
description: 'The cache provider to use'
required: true
runs:
using: 'composite'
steps:
- name: Restore Ccache cache
id: ccache-cache
uses: cirruslabs/cache/restore@v4
uses: ./.github/actions/cache/restore/internal
with:
path: ${{ env.CCACHE_DIR }}
key: ccache-${{ env.CONTAINER_NAME }}-${{ github.run_id }}
restore-keys: |
ccache-${{ env.CONTAINER_NAME }}-
provider: ${{ inputs.provider }}

- name: Restore depends sources cache
id: depends-sources
uses: cirruslabs/cache/restore@v4
uses: ./.github/actions/cache/restore/internal
with:
path: ${{ env.SOURCES_PATH }}
key: depends-sources-${{ env.CONTAINER_NAME }}-${{ env.DEPENDS_HASH }}
restore-keys: |
depends-sources-${{ env.CONTAINER_NAME }}-
provider: ${{ inputs.provider }}

- name: Restore built depends cache
id: depends-built
uses: cirruslabs/cache/restore@v4
uses: ./.github/actions/cache/restore/internal
with:
path: ${{ env.BASE_CACHE }}
key: depends-built-${{ env.CONTAINER_NAME }}-${{ env.DEPENDS_HASH }}
restore-keys: |
depends-built-${{ env.CONTAINER_NAME }}-
provider: ${{ inputs.provider }}

- name: Restore previous releases cache
id: previous-releases
uses: cirruslabs/cache/restore@v4
uses: ./.github/actions/cache/restore/internal
with:
path: ${{ env.PREVIOUS_RELEASES_DIR }}
key: previous-releases-${{ env.CONTAINER_NAME }}-${{ env.PREVIOUS_RELEASES_HASH }}
restore-keys: |
previous-releases-${{ env.CONTAINER_NAME }}-
provider: ${{ inputs.provider }}

- name: export cache hits
shell: bash
Expand Down
43 changes: 43 additions & 0 deletions .github/actions/cache/restore/internal/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: 'Cache Restore'
description: 'Restore a cache with WarpBuild on Warp runners and GitHub Actions cache otherwise'
inputs:
path:
description: 'A list of files, directories, and wildcard patterns to restore'
required: true
key:
description: 'An explicit key for restoring the cache'
required: true
restore-keys:
description: 'An ordered multiline string listing prefix-matched restore keys'
required: false
default: ''
provider:
description: 'The cache provider to use'
required: true
outputs:
cache-hit:
description: 'A boolean value to indicate an exact match was found for the primary key'
value: ${{ steps.warp.outputs.cache-hit || steps.gha.outputs.cache-hit }}
cache-primary-key:
description: 'The primary key used to restore the cache'
value: ${{ steps.warp.outputs.cache-primary-key || steps.gha.outputs.cache-primary-key }}
runs:
using: 'composite'
steps:
- name: Restore cache with WarpBuild
id: warp
if: ${{ inputs.provider == 'warp' }}
uses: WarpBuilds/cache/restore@v1
with:
path: ${{ inputs.path }}
key: ${{ inputs.key }}
restore-keys: ${{ inputs.restore-keys }}

- name: Restore cache with GitHub Actions
id: gha
if: ${{ inputs.provider == 'gha' }}
uses: actions/cache/restore@v5
with:
path: ${{ inputs.path }}
key: ${{ inputs.key }}
restore-keys: ${{ inputs.restore-keys }}
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
name: 'Save Caches'
description: 'Save ccache, depends sources, and built depends caches'
inputs:
provider:
description: 'The cache provider to use'
required: true
runs:
using: 'composite'
steps:
Expand All @@ -11,29 +15,33 @@ runs:
echo "previous releases direct cache hit to primary key: ${{ env.previous-releases-cache-hit }}"

- name: Save Ccache cache
uses: cirruslabs/cache/save@v4
uses: ./.github/actions/cache/save/internal
if: ${{ (github.event_name == 'push') && (github.ref_name == github.event.repository.default_branch) }}
with:
path: ${{ env.CCACHE_DIR }}
key: ccache-${{ env.CONTAINER_NAME }}-${{ github.run_id }}
provider: ${{ inputs.provider }}

- name: Save depends sources cache
uses: cirruslabs/cache/save@v4
uses: ./.github/actions/cache/save/internal
if: ${{ (github.event_name == 'push') && (github.ref_name == github.event.repository.default_branch) && (env.depends-sources-cache-hit != 'true') }}
with:
path: ${{ env.SOURCES_PATH }}
key: depends-sources-${{ env.CONTAINER_NAME }}-${{ env.DEPENDS_HASH }}
provider: ${{ inputs.provider }}

- name: Save built depends cache
uses: cirruslabs/cache/save@v4
uses: ./.github/actions/cache/save/internal
if: ${{ (github.event_name == 'push') && (github.ref_name == github.event.repository.default_branch) && (env.depends-built-cache-hit != 'true' )}}
with:
path: ${{ env.BASE_CACHE }}
key: depends-built-${{ env.CONTAINER_NAME }}-${{ env.DEPENDS_HASH }}
provider: ${{ inputs.provider }}

- name: Save previous releases cache
uses: cirruslabs/cache/save@v4
uses: ./.github/actions/cache/save/internal
if: ${{ (github.event_name == 'push') && (github.ref_name == github.event.repository.default_branch) && (env.previous-releases-cache-hit != 'true' )}}
with:
path: ${{ env.PREVIOUS_RELEASES_DIR }}
key: previous-releases-${{ env.CONTAINER_NAME }}-${{ env.PREVIOUS_RELEASES_HASH }}
provider: ${{ inputs.provider }}
28 changes: 28 additions & 0 deletions .github/actions/cache/save/internal/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: 'Cache Save'
description: 'Save a cache with WarpBuild on Warp runners and GitHub Actions cache otherwise'
inputs:
path:
description: 'A list of files, directories, and wildcard patterns to cache'
required: true
key:
description: 'An explicit key for saving the cache'
required: true
provider:
description: 'The cache provider to use'
required: true
runs:
using: 'composite'
steps:
- name: Save cache with WarpBuild
if: ${{ inputs.provider == 'warp' }}
uses: WarpBuilds/cache/save@v1
with:
path: ${{ inputs.path }}
key: ${{ inputs.key }}

- name: Save cache with GitHub Actions
if: ${{ inputs.provider == 'gha' }}
uses: actions/cache/save@v5
with:
path: ${{ inputs.path }}
key: ${{ inputs.key }}
12 changes: 12 additions & 0 deletions .github/actions/clear-files/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
name: 'Clear unnecessary files'
description: 'Clear out unnecessary files to make space on the VM'
runs:
using: 'composite'
steps:
- name: Clear unnecessary files
shell: bash
env:
DEBIAN_FRONTEND: noninteractive
run: |
set +o errexit
sudo bash -c '(ionice -c 3 nice -n 19 rm -rf /usr/share/dotnet/ /usr/local/graalvm/ /usr/local/.ghcup/ /usr/local/share/powershell /usr/local/share/chromium /usr/local/lib/android /usr/local/lib/node_modules)&'
56 changes: 32 additions & 24 deletions .github/actions/configure-docker/action.yml
Original file line number Diff line number Diff line change
@@ -1,49 +1,57 @@
name: 'Configure Docker'
description: 'Set up Docker build driver and configure build cache args'
inputs:
use-cirrus:
description: 'Use cirrus cache'
required: true
provider:
description: 'The cache provider to use'
required: false
default: 'gha'
runs:
using: 'composite'
steps:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Set up Docker Buildx for Warp cache
if: ${{ inputs.provider == 'warp' }}
uses: docker/setup-buildx-action@v4
with:
# Use host network to allow access to cirrus gha cache running on the host
driver-opts: |
network=host
env.BUILDKIT_STEP_LOG_MAX_SIZE=5242880

- name: Set up Docker Buildx
if: ${{ inputs.provider != 'warp' }}
uses: docker/setup-buildx-action@v4
with:
driver-opts: |
env.BUILDKIT_STEP_LOG_MAX_SIZE=5242880

# This is required to allow buildkit to access the actions cache
# This is required when using the gha cache backend with a manual docker buildx invocation.
# Docker will check for variables $ACTIONS_CACHE_URL, $ACTIONS_RESULTS_URL and $ACTIONS_RUNTIME_TOKEN
# which are set automatically when running on GitHub infra: https://docs.docker.com/build/cache/backends/gha/#synopsis
- name: Expose actions cache variables
uses: actions/github-script@v6
uses: actions/github-script@v8
with:
script: |
core.exportVariable('ACTIONS_CACHE_URL', process.env['ACTIONS_CACHE_URL'])
core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env['ACTIONS_RUNTIME_TOKEN'])
Object.keys(process.env).forEach(function (key) {
if (key.startsWith('ACTIONS_')) {
core.info(`Exporting ${key}`);
core.exportVariable(key, process.env[key]);
}
});

- name: Construct docker build cache args
shell: bash
run: |
# Configure docker build cache backend
#
# On forks the gha cache will work but will use Github's cache backend.
# Docker will check for variables $ACTIONS_CACHE_URL, $ACTIONS_RESULTS_URL and $ACTIONS_RUNTIME_TOKEN
# which are set automatically when running on GitHub infra: https://docs.docker.com/build/cache/backends/gha/#synopsis

# Use cirrus cache host
if [[ ${{ inputs.use-cirrus }} == 'true' ]]; then
url_args="url=${CIRRUS_CACHE_HOST},url_v2=${CIRRUS_CACHE_HOST}"
else
url_args=""
cache_options="scope=${CONTAINER_NAME}"
if [[ "${{ inputs.provider }}" == "warp" ]]; then
cache_options="url=http://127.0.0.1:49160/,version=1,${cache_options}"
fi

# Configure docker build cache backend
# Always optimistically --cache‑from in case a cache blob exists
args=(--cache-from "type=gha${url_args:+,${url_args}},scope=${CONTAINER_NAME}")
args=(--cache-from "type=gha,${cache_options}")

# If this is a push to the default branch, also add --cache‑to to save the cache
# Only add --cache-to when pushing to the default branch.
if [[ ${{ github.event_name }} == "push" && ${{ github.ref_name }} == ${{ github.event.repository.default_branch }} ]]; then
args+=(--cache-to "type=gha${url_args:+,${url_args}},mode=max,ignore-error=true,scope=${CONTAINER_NAME}")
args+=(--cache-to "type=gha,mode=max,ignore-error=true,${cache_options}")
fi

# Always `--load` into docker images (needed when using the `docker-container` build driver).
Expand Down
Loading