Skip to content
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

Btc master 29/08/2022 #64

Merged
merged 674 commits into from
Sep 5, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
674 commits
Select commit Hold shift + click to select a range
0043ec4
Merge bitcoin/bitcoin#25687: build: Do not export `PKG_CONFIG_{PATH|L…
fanquake Aug 2, 2022
fa468bd
Return optional error from ApplyArgsManOptions
Jul 20, 2022
fa14860
Remove ::fRequireStandard global
Jul 20, 2022
fa9cba7
Remove ::incrementalRelayFee and ::minRelayTxFee globals
Jul 21, 2022
fa7a911
test: Remove unused cs_main
Jul 21, 2022
fa8a7f0
Remove ::IsStandardTx(tx, reason) alias
Jul 21, 2022
fadc14e
Remove ::dustRelayFee
Jul 21, 2022
fa2f6c1
Remove ::fIsBareMultisigStd global
Jul 21, 2022
fa477d3
Remove ::GetVirtualTransactionSize() alias
Jul 21, 2022
fa2a6b8
Combine datacarrier globals into one
Jul 21, 2022
fad0b4f
Pass datacarrier setting into IsStandard
Jul 21, 2022
6666438
Remove ::g_max_datacarrier_bytes global
Jul 21, 2022
fac812c
scripted-diff: Move mempool_args to src/node
Aug 2, 2022
ddddd69
sort after scripted-diff
Aug 2, 2022
de3c46c
Merge bitcoin/bitcoin#25272: wallet: guard and alert about a wallet i…
achow101 Aug 2, 2022
faab8dc
Remove unused SetTip(nullptr) code
Apr 29, 2022
f6fdedf
Merge bitcoin/bitcoin#25648: refactor: Remove all policy globals
glozow Aug 3, 2022
9155f9b
Merge bitcoin/bitcoin#25379: test: use MiniWallet to simplify mempool…
Aug 3, 2022
fad5bc4
test: Add missing static to IsStandardTx helper
Aug 3, 2022
fa2537c
test: Target exact weight in MiniWallet _bulk_tx
Aug 3, 2022
4a4289e
Merge bitcoin/bitcoin#25772: test: Add missing static to IsStandardTx…
fanquake Aug 3, 2022
a23cca5
refactor: Replace BResult with util::Result
ryanofsky Jul 21, 2022
32024d4
scripted-diff: remove mention of BIP125 from non-signaling var names
glozow Jul 19, 2022
ae7ae36
tidy: Enable two clang-tidy checks
aureleoules Jul 26, 2022
0dbce4b
tests: Reduce calls to InitS*Cache()
dongcarl Jul 1, 2022
08dbc6e
cuckoocache: Return approximate memory size
dongcarl Jul 1, 2022
b370164
validationcaches: Abolish arbitrary limit
dongcarl Jul 25, 2022
82d3058
cuckoocache: Check for uint32 overflow in setup_bytes
dongcarl Jul 1, 2022
41c5201
validationcaches: Add and use ValidationCacheSizes
dongcarl Jul 1, 2022
0f3a253
validationcaches: Use size_t for sizes
dongcarl Jul 1, 2022
1f798fe
wallet: Cache SigningProviders
achow101 Mar 28, 2022
9753286
Change mapTxSpends to be a std::unordered_multimap
achow101 Sep 17, 2019
2723560
Change getWalletTxs to return a set instead of a vector
achow101 Sep 17, 2019
bc886fc
Change mapWallet to be a std::unordered_map
achow101 Sep 17, 2019
08085c7
Merge bitcoin/bitcoin#25633: depends: don't restrict --enable-lto to …
fanquake Aug 4, 2022
f765d4e
Merge bitcoin/bitcoin#25770: build: Fix help string for `--enable-ext…
fanquake Aug 4, 2022
0ca258a
descriptor: never ignore the return value when deriving an extended key
darosior Jul 19, 2022
50cfc9e
(pubk)key: mark Derive() as nodiscard
darosior Aug 4, 2022
8dc6670
descriptor: don't assert success of extended key derivation
darosior Jul 19, 2022
fb9faff
extended keys: fail to derive too large depth instead of wrapping around
darosior Jul 19, 2022
4cf3b7d
guix: ignore additional failing certvalidator test
fanquake Aug 4, 2022
7312eff
Merge bitcoin/bitcoin#25527: [kernel 3c/n] Decouple validation cache …
glozow Aug 4, 2022
36c83b4
Merge bitcoin/bitcoin#25023: Remove unused SetTip(nullptr) code
fanquake Aug 4, 2022
1dc03dd
[doc] remove non-signaling mentions of BIP125
glozow Jul 19, 2022
e09ad28
Merge bitcoin/bitcoin#24675: util: Use ArgsManager::GetPathArg more w…
fanquake Aug 4, 2022
2c3115d
Merge bitcoin/bitcoin#25773: test: Target exact weight in MiniWallet …
Aug 4, 2022
db10cf8
rpc/wallet: add simulaterawtransaction RPC
kallewoof Aug 20, 2021
0cb6d2a
Bugfix: Wallet: Document expectations for AddWalletFlags (now InitWal…
luke-jr Aug 5, 2022
e038605
Merge bitcoin/bitcoin#24662: addrman: Use system time instead of adju…
fanquake Aug 5, 2022
7d82f86
Merge bitcoin/bitcoin#25650: script: default to necessary tags in `te…
Aug 5, 2022
92f6461
Merge bitcoin/bitcoin#25779: guix: ignore additional failing certvali…
fanquake Aug 5, 2022
68006c1
test: check that `verifymessage` RPC fails for non-P2PKH addresses
theStack Aug 4, 2022
4786959
bench: Add a benchmark for descriptor expansion
Empact May 29, 2019
fa3be79
Add time helpers
Aug 5, 2022
eeee5ad
Make adjusted time type safe
Aug 5, 2022
acbea66
rest: clean-up for `mempool` endpoints
brunoerg Jul 19, 2022
006740b
Merge bitcoin/bitcoin#25721: refactor: Replace BResult with util::Result
Aug 5, 2022
7d3817b
Merge bitcoin/bitcoin#25760: rest: clean-up for `mempool` endpoints
Aug 5, 2022
76b3c37
refactor: wallet: return util::Result from `GetReservedDestination` m…
theStack Jul 20, 2022
7a0b129
guix: patch NSIS to remove .reloc sections from install stubs
fanquake Aug 5, 2022
35305c7
Merge bitcoin/bitcoin#22751: rpc/wallet: add simulaterawtransaction RPC
achow101 Aug 5, 2022
59bd6b6
Merge bitcoin/bitcoin#24699: wallet: Improve AvailableCoins performan…
achow101 Aug 5, 2022
b1a2021
Merge bitcoin/bitcoin#25788: guix: patch NSIS to remove .reloc sectio…
achow101 Aug 5, 2022
b5a762a
wallet: improve `{LoadActive,Deactivate}ScriptPubKeyMan` log
w0xlt Aug 5, 2022
0532aa7
test: don't rely on usdt block_conn event order
0xB10C Aug 6, 2022
5474f5c
build: fix cleanup of test logs
fanquake Aug 7, 2022
c232ef2
outputtype: remove redundant check for uncompressed keys in AddAndGet…
darosior Jul 20, 2022
857526e
test: Add test case for `ReplaceAll()` function
hebasto Aug 8, 2022
fea75ad
refactor: Drop `boost/algorithm/string/replace.hpp` dependency
hebasto Aug 8, 2022
15f762f
qt: Bump Transifex slug for 24.x
hebasto Aug 8, 2022
ff52b24
qt: Update translation source file
hebasto Aug 8, 2022
a478c53
Merge bitcoin/bitcoin#25790: wallet: improve `{LoadActive,Deactivate}…
achow101 Aug 8, 2022
9ff6adc
Merge bitcoin/bitcoin#25804: Update translations for 24.0 string freeze
fanquake Aug 8, 2022
e7ca8af
Merge bitcoin/bitcoin#25782: test: check that `verifymessage` RPC fai…
achow101 Aug 8, 2022
aa30e04
build: remove entire docs dir from Windows installer
fanquake Aug 9, 2022
d755ffc
build: package test_bitcoin in Windows installer
fanquake Aug 9, 2022
c012875
Merge bitcoin/bitcoin#24564: doc: Clarify that CheckSequenceLocksAtTi…
glozow Aug 9, 2022
0fda1c7
scripted-diff: test: rename `MAX_{ANCESTORS,DESCENDANTS}` to `DEFAULT…
theStack Aug 9, 2022
b4a5ab9
test: refactor: deduplicate `DEFAULT_{ANCESTOR,DESCENDANT}_LIMIT` con…
theStack Aug 9, 2022
4edc689
doc: test: suggest multi-line imports in functional test style guide
theStack Aug 9, 2022
ac59112
Merge bitcoin/bitcoin#23480: Add rawtr() descriptor for P2TR with spe…
achow101 Aug 9, 2022
90a5dfa
RPC/Mining: Clean out pre-Segwit miner compatibility code
luke-jr Aug 9, 2022
f5649db
refactor: add UNKNOWN OutputType
josibake Jul 28, 2022
ebf094f
Merge bitcoin/bitcoin#25731: test: negative/unknown `rpcserialversion…
Aug 10, 2022
aac2008
Merge bitcoin/bitcoin#25794: test, tracing: don't rely on `block_conn…
Aug 10, 2022
a6fc293
Merge bitcoin/bitcoin#25656: refactor: wallet: return util::Result fr…
Aug 10, 2022
d8b26ab
build: move raw rule into Makefile.am
fanquake Aug 10, 2022
daabd41
net: simplify GetLocalAddress()
vasild Aug 10, 2022
3f27a2a
refactor: add new helper methods
josibake Jul 29, 2022
b6b50b0
scripted-diff: Uppercase function names
josibake Aug 10, 2022
db09aec
wallet: switch to new shuffle, erase, push_back
josibake Jul 29, 2022
0760ce0
test: add missing BOOST_ASSERT
josibake Jul 29, 2022
f47ff71
test: only run test for descriptor wallets
josibake Jul 29, 2022
8cd21bb
refactor: improve readability for AttemptSelection
josibake Jul 29, 2022
07df6cd
wallet: Return `util::Result` from WalletLoader methods
w0xlt Aug 7, 2022
2e79fb6
validation tests: Use existing {Chainstate,Block}Man
dongcarl Jul 15, 2022
9f9339c
msvc: Drop `_SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING`
hebasto Aug 10, 2022
70a55c0
psbt: Avoid unsigned int overflow in PSBT_IN_TAP_BIP32_DERIVATION
achow101 Aug 9, 2022
f5e96ec
Merge bitcoin/bitcoin#25616: refactor: Return `util::Result` from Wal…
Aug 10, 2022
deb7ad3
Merge bitcoin/bitcoin#25813: build: move raw rule into Makefile.am
Aug 10, 2022
f89ce1f
Merge bitcoin/bitcoin#25811: doc: test: suggest multi-line imports in…
Aug 10, 2022
251c535
Merge bitcoin/bitcoin#25810: scripted-diff: test: rename `MAX_{ANCEST…
Aug 10, 2022
93999a5
Merge bitcoin/bitcoin#25642: Don't wrap around when deriving an exten…
achow101 Aug 10, 2022
cd230f3
Merge bitcoin/bitcoin#25816: msvc: Drop `_SILENCE_CXX17_OLD_ALLOCATOR…
Aug 11, 2022
0094ff3
Merge bitcoin/bitcoin#25812: psbt: Avoid unsigned int overflow in PSB…
fanquake Aug 11, 2022
49db42c
[test] make tx6 child of tx5, not tx3, in rbf_tests
glozow Aug 11, 2022
dd62721
Merge bitcoin/bitcoin#25820: [test] make tx6 child of tx5, not tx3, i…
fanquake Aug 11, 2022
b16f93c
script/sign: remove needless IsSolvable() utility
darosior Jul 20, 2022
acda7e8
[coin selection] consolidate m_change_target and m_min_change_target
glozow Aug 11, 2022
8b3d2bb
test: add tests for `datacarrier` and `datacarriersize` options
w0xlt Aug 6, 2022
2b781ad
i2p: add support for creating transient sessions
vasild Jun 8, 2022
243d7bd
Merge bitcoin/bitcoin#25798: build: fix cleanup of test logs
achow101 Aug 11, 2022
29c195c
Merge bitcoin/bitcoin#25792: test: add tests for `datacarrier` and `d…
Aug 11, 2022
e078ee9
Merge bitcoin/bitcoin#25664: refactor: Redefine `IsSolvable()` using …
achow101 Aug 11, 2022
e5d8b65
Merge bitcoin/bitcoin#25815: test: Use existing {Chainstate,Block}Man
Aug 11, 2022
5d294bc
Merge bitcoin/bitcoin#25825: wallet: consolidate CoinSelectionParams:…
achow101 Aug 11, 2022
27724c2
Merge bitcoin/bitcoin#25677: refactor: make active_chain_tip a reference
Aug 12, 2022
89b2194
Merge bitcoin/bitcoin#25814: net: simplify GetLocalAddress()
Aug 12, 2022
bf3f05f
Merge bitcoin/bitcoin#25785: bench: Add a benchmark for descriptor ex…
Aug 12, 2022
fa3f15f
refactor: Avoid copies in FlatSigningProvider Merge
Jul 30, 2022
08bd338
build: optimise arm64 darwin qt build using -O1
fanquake Aug 10, 2022
e62958d
GUI: sendCoinsDialog, remove duplicate wallet().getBalances() call
furszy May 7, 2022
321335b
GUI: add getter for WalletModel::m_cached_balances field
furszy May 9, 2022
96e3264
GUI: use cached balance in overviewpage and sendcoinsdialog
furszy May 9, 2022
050e8b1
GUI: 'getAvailableBalance', use cached balance if the user did not se…
furszy Apr 27, 2022
4584d30
GUI: remove now unneeded 'm_balances' field from overviewpage
furszy May 10, 2022
05f7f31
Reduce bandwidth during initial headers sync when a block is found
sdaftuar Jul 25, 2022
f6a9166
Add functional test for block announcements during initial headers sync
sdaftuar Jul 27, 2022
aca0200
Merge bitcoin/bitcoin#25817: build: fix cross-arch macOS M1 build rep…
fanquake Aug 13, 2022
968ea66
build: Adjust `qt/guix_cross_lib_path.patch`
hebasto Aug 13, 2022
08269e5
Squashed 'src/crc32c/' changes from 0d624261ef..0bac72c455
fanquake Aug 13, 2022
9546b3a
Update crc32c subtree to latest upstream master
fanquake Aug 13, 2022
a2e733b
doc: Remove no longer needed comments
hebasto Aug 13, 2022
d61f667
build: Add objcopy host tool
hebasto Aug 13, 2022
59f2cc2
build, qt: Use `mkspecs/bitcoin-linux-g++` for all Linux hosts
hebasto Aug 13, 2022
dc9d662
Merge bitcoin/bitcoin#25235: GetExternalSigner(): fail if multiple si…
fanquake Aug 13, 2022
c8cf08e
wallet: ensure m_min_change_target always covers change fee
S3RK Aug 15, 2022
06f558e
wallet: accurate SelectionResult::m_target
S3RK Jul 6, 2022
f8e7963
wallet: add SelectionResult::Merge
S3RK Jul 6, 2022
e3210a7
wallet: account for preselected inputs in target
S3RK Jul 6, 2022
72cad28
wallet: calculate and store min_viable_change
S3RK Jul 6, 2022
15e97a6
wallet: add SelectionResult::GetChange
S3RK Jul 6, 2022
87e0ef9
wallet: use GetChange() in tx building
S3RK Jul 13, 2022
4fef534
wallet: use GetChange() when computing waste
S3RK Jul 6, 2022
cc1efe9
Merge bitcoin/bitcoin#25838: build, qt: Use `mkspecs/bitcoin-linux-g+…
fanquake Aug 15, 2022
2778ccc
Merge bitcoin/bitcoin#25836: subtree: update crc32c subtree
Aug 15, 2022
fcc0c84
qt: Update source translations for string freeze
laanwj Aug 15, 2022
fac09f4
refactor: Remove not needed empty RPC doc std::string
Aug 15, 2022
38a911e
doc: Remove my key from SECURITY.md
laanwj Aug 15, 2022
4349051
build: reorder cxxflags in intrinsic checks
fanquake Aug 15, 2022
d9cd8b4
Merge bitcoin/bitcoin#25849: refactor: Remove not needed empty RPC do…
fanquake Aug 15, 2022
a5d5569
Merge bitcoin/bitcoin#25850: doc: Remove my key from SECURITY.md
Aug 15, 2022
867f5fd
Merge bitcoin-core/gui#654: Update source translations for string freeze
hebasto Aug 15, 2022
6d4889a
Merge bitcoin-core/gui#598: Avoid recalculating the wallet balance - …
hebasto Aug 15, 2022
22d96d7
Merge bitcoin/bitcoin#25720: p2p: Reduce bandwidth during initial hea…
achow101 Aug 15, 2022
98383d6
doc: minor updates to guix README
satsie Aug 12, 2022
0f90b58
Merge bitcoin/bitcoin#25833: doc: minor updates to guix README
Aug 16, 2022
b63c24a
Merge bitcoin/bitcoin#25809: build: add test_bitcoin.exe to win insta…
fanquake Aug 16, 2022
cf39913
Merge bitcoin/bitcoin#25803: refactor: Drop `boost/algorithm/string/r…
fanquake Aug 16, 2022
0eac1f7
build: include share/rpcauth in tarball & installer
fanquake Aug 12, 2022
495caa9
build: add example bitcoin conf to win installer
fanquake Aug 16, 2022
a1580a0
net: store an optional I2P session in CNode
vasild Jun 8, 2022
ae1e97c
net: use transient I2P session for outbound if -i2pacceptincoming=0
vasild Jun 8, 2022
3914e47
test: add a test that -i2pacceptincoming=0 creates a transient session
vasild Jun 9, 2022
47c0d02
doc: document I2P transient addresses usage in doc/i2p.md
vasild Jun 9, 2022
d7ec30b
doc: add release notes about the I2P transient addresses
vasild Jun 9, 2022
59aa54f
i2p: log "SAM session" instead of "session"
vasild Jul 29, 2022
fa530bc
Add ChainstateManager::GetMutex(), an alias for ::cs_main
Jul 12, 2022
fa97a52
Fix UB/data-race in RPCNotifyBlockChange
Jul 12, 2022
fac15ff
Fix logical race in rest_getutxos
Jul 12, 2022
fac04cb
refactor: Add lock annotations to Active* methods
May 6, 2022
0fd2d14
rpc: add an include_change parameter to listsinceblock
darosior Jul 7, 2022
a6b0c1f
doc: add releases notes for 25504 (listsinceblock updates)
darosior Jul 15, 2022
c336f81
Merge bitcoin/bitcoin#25504: RPC: allow to track coins by parent desc…
achow101 Aug 16, 2022
64f7a19
Merge bitcoin/bitcoin#25734: wallet, refactor: #24584 follow-ups
achow101 Aug 17, 2022
f2d00bf
wallet: Add CWallet::IsMine(COutPoint)
achow101 Jul 22, 2022
95d4744
Merge bitcoin/bitcoin#19391: RPC/Mining: Clean out pre-Segwit miner c…
fanquake Aug 17, 2022
0ae0aa2
Merge bitcoin/bitcoin#24678: Prevent wallet unload on GetWalletForJSO…
fanquake Aug 17, 2022
aa774f3
Merge bitcoin/bitcoin#25829: build: include share/rpcauth in release …
fanquake Aug 17, 2022
a75b779
Merge bitcoin/bitcoin#25077: Fix chain tip data race and corrupt rest…
fanquake Aug 17, 2022
416ceb8
descriptor: check if `rawtr` has only one key.
w0xlt Aug 12, 2022
a8f6954
Merge bitcoin/bitcoin#25748: refactor: Avoid copies in FlatSigningPro…
achow101 Aug 17, 2022
b21e522
test: speedup wallet tests by whitelisting peers (immediate tx relay)
theStack Aug 17, 2022
a537d7a
wallet: SelectExternal actually external inputs
achow101 Jul 22, 2022
eb87963
wallet: Try estimating input size with external data if wallet fails
achow101 Jul 22, 2022
ef8e2a5
tests: Test that external inputs of txs in wallet is handled correctly
achow101 Jul 22, 2022
5b4fdbb
wallet: remove UNKNOWN type from OUTPUT_TYPES array
furszy Aug 18, 2022
888628c
Merge bitcoin/bitcoin#25827: descriptor: check if `rawtr` has only on…
achow101 Aug 18, 2022
0425ce5
Merge bitcoin/bitcoin#25679: wallet: Correctly identify external inpu…
fanquake Aug 19, 2022
ced00f5
fs: work around u8path deprecated-declaration warnings with libc++
fanquake Aug 8, 2022
02aefa1
Merge bitcoin/bitcoin#25852: build: reorder CXXFLAGS in intrinsic checks
Aug 19, 2022
d480586
Merge bitcoin/bitcoin#25808: fs: work around u8path deprecated-declar…
Aug 19, 2022
9eaef10
Merge bitcoin/bitcoin#25707: refactor: Make const references to avoid…
Aug 19, 2022
612f1e4
bumpfee: Calculate fee by looking up UTXOs
achow101 Oct 6, 2021
a0c3afb
bumpfee: extract weights of external inputs when bumping fee
achow101 Oct 6, 2021
31dd3dc
bumpfee: Clear scriptSigs and scriptWitnesses before calculated max size
achow101 Aug 17, 2022
1bc8106
bumpfee: be able to bump fee of a tx with external inputs
achow101 Oct 6, 2021
0f0508b
Merge bitcoin/bitcoin#25869: wallet: remove UNKNOWN type from OUTPUT_…
achow101 Aug 19, 2022
6b56873
Merge bitcoin/bitcoin#25784: Wallet: Document expectations for AddWal…
achow101 Aug 19, 2022
faf8da3
Remove Join() helper only used in tests
Aug 19, 2022
02dea9a
tests: Use mocktime for wallet encryption timeout
achow101 Aug 19, 2022
ff63832
test, bumpfee: Check that psbtbumpfee can bump txs with external inputs
achow101 Oct 6, 2021
116a620
Make DUMMY_CHECKER availble outside of script/sign.cpp
achow101 Aug 12, 2022
c3b099a
wallet, tests: Test bumpfee's max input weight calculation
achow101 Aug 12, 2022
3a71da0
Security config warning
Rspigler Aug 20, 2022
c73c8d5
Merge bitcoin/bitcoin#25878: tests: Use mocktime for wallet encryptio…
Aug 20, 2022
706c8e0
refactor: use `strprintf` for creating unknown-service-flag string
theStack Aug 20, 2022
57d1367
test: remove unused `norm_prv` parameter
w0xlt Aug 17, 2022
027b672
Merge bitcoin/bitcoin#25888: refactor: use `strprintf` for creating u…
Aug 22, 2022
0f35f4d
Merge bitcoin/bitcoin#25786: refactor: Make adjusted time type safe
fanquake Aug 22, 2022
e5a8314
Merge bitcoin/bitcoin#25883: doc: Security config warning
Aug 22, 2022
607d5a4
Merge bitcoin/bitcoin#23202: wallet: allow psbtbumpfee to work with t…
fanquake Aug 22, 2022
c5f0cbe
Merge bitcoin/bitcoin#25775: docs: remove non-signaling mentions of B…
fanquake Aug 22, 2022
375ebad
fixups for BIP125 doc cleanup
glozow Aug 22, 2022
92bb700
Merge bitcoin/bitcoin#25902: fixups for BIP125 doc cleanup
Aug 22, 2022
2bd9aa5
Merge bitcoin/bitcoin#25647: wallet: return change from SelectionResult
achow101 Aug 22, 2022
7bc33a8
refactor: Move ChainstateManager options into m_options struct
ryanofsky Aug 22, 2022
d1a0004
test: add coverage for invalid parameters for `rescanblockchain`
brunoerg Aug 22, 2022
207abc1
doc: Add my key to SECURITY.md
achow101 Aug 23, 2022
6075a0b
net: update manual hardcoded mainnet seeds for 24.x
jonatack Aug 23, 2022
7fd9028
contrib: make-seeds updates for 24.x
jonatack Aug 23, 2022
9b6f5fa
net: update hardcoded mainnet seeds for 24.x
jonatack Aug 23, 2022
713ea7a
Merge bitcoin/bitcoin#25906: test: add coverage for invalid parameter…
Aug 24, 2022
fa1c716
Make Join() util work with any container type
Aug 19, 2022
fa95315
Use new Join() helper for ListBlockFilterTypes()
Aug 19, 2022
3c1e75e
Merge bitcoin/bitcoin#25865: test: speedup wallet tests by whitelisti…
Aug 24, 2022
c89fabf
Merge bitcoin/bitcoin#25879: refactor: Make Join() util work with any…
Aug 24, 2022
2d83a20
Merge bitcoin/bitcoin#25863: test: remove unused `norm_prv` parameter…
fanquake Aug 24, 2022
1420547
Merge bitcoin/bitcoin#25911: net: update hardcoded mainnet seeds for …
Aug 24, 2022
e90a445
scripted-diff: rpc: fix rescan RPC name (s/rescanwallet/rescanblockch…
theStack Aug 24, 2022
6242314
doc: add `{import,list}descriptors` to list of descriptor RPCs
theStack Aug 24, 2022
905f614
ci: Force `ccache` package version for MSVC build
hebasto Aug 25, 2022
d36bec9
Merge bitcoin/bitcoin#25905: refactor: Move ChainstateManager options…
Aug 25, 2022
cda6265
ci: Increase `windows_container` resources
hebasto Aug 25, 2022
6057e7e
Merge bitcoin/bitcoin#25929: ci: Force `ccache` package version for M…
Aug 25, 2022
fbba4a1
wallet: trigger MaybeResendWalletTxs() every minute
stickies-v Aug 24, 2022
5ef8c2c
test: fix typo for MaybeResendWalletTxs
stickies-v Aug 25, 2022
ba2edca
Merge bitcoin/bitcoin#25925: doc: add `{import,list}descriptors` to l…
achow101 Aug 25, 2022
835bd27
Wallet::SetMinVersion - Log the new minversion
ZenulAbidin Aug 21, 2022
bbbc26d
Merge bitcoin/bitcoin#25924: scripted-diff: rpc: fix rescan RPC name …
achow101 Aug 25, 2022
15692e2
Merge bitcoin/bitcoin#25910: doc: Add my key to SECURITY.md
Aug 26, 2022
eed2bd3
Merge bitcoin/bitcoin#25355: I2P: add support for transient addresses…
achow101 Aug 26, 2022
80da4be
Merge bitcoin/bitcoin#25896: wallet: Log when Wallet::SetMinVersion s…
achow101 Aug 26, 2022
e191fac
Merge bitcoin/bitcoin#25922: wallet: trigger MaybeResendWalletTxs() e…
achow101 Aug 26, 2022
fea3078
Blsct arith classes with tests (#54)
gogoex Aug 25, 2022
95dffaa
Merge remote-tracking branch 'btc/master' into btc-master
mxaddict Aug 29, 2022
50280fc
Merge branch 'master' into btc-master
mxaddict Aug 30, 2022
59f8a3c
Updated test_scalar_shift_left test to pass UBSan
mxaddict Sep 1, 2022
2d7231d
Fixed issue with clang-tidy complaining about a copied value that was…
mxaddict Sep 1, 2022
9bb6172
Updated test_scalar_getint64 to pass UBSan test
mxaddict Sep 1, 2022
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
  •  
  •  
  •  
26 changes: 17 additions & 9 deletions .cirrus.yml
Original file line number Diff line number Diff line change
Expand Up @@ -97,8 +97,8 @@ task:
name: "Win64 native [vs2022]"
<< : *FILTER_TEMPLATE
windows_container:
cpu: 4
memory: 8G
cpu: 6
memory: 12G
image: cirrusci/windowsservercore:visualstudio2022
timeout_in: 120m
env:
Expand All @@ -109,9 +109,9 @@ task:
VCPKG_DEFAULT_BINARY_CACHE: 'C:\Users\ContainerAdministrator\AppData\Local\vcpkg\archives'
CCACHE_DIR: 'C:\Users\ContainerAdministrator\AppData\Local\ccache'
WRAPPED_CL: 'C:\Users\ContainerAdministrator\AppData\Local\Temp\cirrus-ci-build\ci\test\wrapped-cl.bat'
QT_DOWNLOAD_URL: 'https://download.qt.io/official_releases/qt/5.15/5.15.3/single/qt-everywhere-opensource-src-5.15.3.zip'
QT_LOCAL_PATH: 'C:\qt-everywhere-opensource-src-5.15.3.zip'
QT_SOURCE_DIR: 'C:\qt-everywhere-src-5.15.3'
QT_DOWNLOAD_URL: 'https://download.qt.io/official_releases/qt/5.15/5.15.5/single/qt-everywhere-opensource-src-5.15.5.zip'
QT_LOCAL_PATH: 'C:\qt-everywhere-opensource-src-5.15.5.zip'
QT_SOURCE_DIR: 'C:\qt-everywhere-src-5.15.5'
QTBASEDIR: 'C:\Qt_static'
x64_NATIVE_TOOLS: '"C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\Build\vcvars64.bat"'
QT_CONFIGURE_COMMAND: '..\configure -release -silent -opensource -confirm-license -opengl desktop -static -static-runtime -mp -qt-zlib -qt-pcre -qt-libpng -nomake examples -nomake tests -nomake tools -no-angle -no-dbus -no-gif -no-gtk -no-ico -no-icu -no-libjpeg -no-libudev -no-sql-sqlite -no-sql-odbc -no-sqlite -no-vulkan -skip qt3d -skip qtactiveqt -skip qtandroidextras -skip qtcharts -skip qtconnectivity -skip qtdatavis3d -skip qtdeclarative -skip doc -skip qtdoc -skip qtgamepad -skip qtgraphicaleffects -skip qtimageformats -skip qtlocation -skip qtlottie -skip qtmacextras -skip qtmultimedia -skip qtnetworkauth -skip qtpurchasing -skip qtquick3d -skip qtquickcontrols -skip qtquickcontrols2 -skip qtquicktimeline -skip qtremoteobjects -skip qtscript -skip qtscxml -skip qtsensors -skip qtserialbus -skip qtserialport -skip qtspeech -skip qtsvg -skip qtvirtualkeyboard -skip qtwayland -skip qtwebchannel -skip qtwebengine -skip qtwebglplugin -skip qtwebsockets -skip qtwebview -skip qtx11extras -skip qtxmlpatterns -no-openssl -no-feature-bearermanagement -no-feature-printdialog -no-feature-printer -no-feature-printpreviewdialog -no-feature-printpreviewwidget -no-feature-sql -no-feature-sqlmodel -no-feature-textbrowser -no-feature-textmarkdownwriter -no-feature-textodfwriter -no-feature-xml'
Expand Down Expand Up @@ -162,7 +162,7 @@ task:
ccache_cache:
folder: '%CCACHE_DIR%'
install_tools_script:
- choco install --yes --no-progress ccache
- choco install --yes --no-progress ccache --version=4.6.1
- choco install --yes --no-progress python3 --version=3.9.6
- pip install zmq
- ccache --version
Expand Down Expand Up @@ -259,12 +259,20 @@ task:
MAKEJOBS: "-j4" # Avoid excessive memory use due to MSan

task:
name: '[ASan + LSan + UBSan + integer, no depends] [jammy]'
name: '[ASan + LSan + UBSan + integer, no depends, USDT] [jammy]'
<< : *GLOBAL_TASK_TEMPLATE
container:
image: ubuntu:jammy
# We can't use a 'container' for the USDT interface tests as the CirrusCI
# containers don't have privileges to hook into bitcoind. CirrusCI uses
# Google Compute Engine instances: https://cirrus-ci.org/guide/custom-vms/
# Images can be found here: https://cloud.google.com/compute/docs/images/os-details
compute_engine_instance:
image_project: ubuntu-os-cloud
image: family/ubuntu-2204-lts # when upgrading, check if we can drop "ADD_UNTRUSTED_BPFCC_PPA"
cpu: 4
memory: 12G
env:
<< : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
HOME: /root/ # Only needed for compute_engine_instance
FILE_ENV: "./ci/test/00_setup_env_native_asan.sh"
MAKEJOBS: "-j4" # Avoid excessive memory use

Expand Down
2 changes: 1 addition & 1 deletion .tx/config
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[main]
host = https://www.transifex.com

[bitcoin.qt-translation-023x]
[bitcoin.qt-translation-024x]
file_filter = src/qt/locale/bitcoin_<lang>.xlf
source_file = src/qt/locale/bitcoin_en.xlf
source_lang = en
2 changes: 2 additions & 0 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ endif

BITCOIND_BIN=$(top_builddir)/src/$(BITCOIN_DAEMON_NAME)$(EXEEXT)
BITCOIN_QT_BIN=$(top_builddir)/src/qt/$(BITCOIN_GUI_NAME)$(EXEEXT)
BITCOIN_TEST_BIN=$(top_builddir)/src/test/$(BITCOIN_TEST_NAME)$(EXEEXT)
BITCOIN_CLI_BIN=$(top_builddir)/src/$(BITCOIN_CLI_NAME)$(EXEEXT)
BITCOIN_TX_BIN=$(top_builddir)/src/$(BITCOIN_TX_NAME)$(EXEEXT)
BITCOIN_UTIL_BIN=$(top_builddir)/src/$(BITCOIN_UTIL_NAME)$(EXEEXT)
Expand Down Expand Up @@ -78,6 +79,7 @@ $(BITCOIN_WIN_INSTALLER): all-recursive
$(MKDIR_P) $(top_builddir)/release
STRIPPROG="$(STRIP)" $(INSTALL_STRIP_PROGRAM) $(BITCOIND_BIN) $(top_builddir)/release
STRIPPROG="$(STRIP)" $(INSTALL_STRIP_PROGRAM) $(BITCOIN_QT_BIN) $(top_builddir)/release
STRIPPROG="$(STRIP)" $(INSTALL_STRIP_PROGRAM) $(BITCOIN_TEST_BIN) $(top_builddir)/release
STRIPPROG="$(STRIP)" $(INSTALL_STRIP_PROGRAM) $(BITCOIN_CLI_BIN) $(top_builddir)/release
STRIPPROG="$(STRIP)" $(INSTALL_STRIP_PROGRAM) $(BITCOIN_TX_BIN) $(top_builddir)/release
STRIPPROG="$(STRIP)" $(INSTALL_STRIP_PROGRAM) $(BITCOIN_WALLET_BIN) $(top_builddir)/release
Expand Down
118 changes: 0 additions & 118 deletions REVIEWERS
Original file line number Diff line number Diff line change
Expand Up @@ -15,121 +15,3 @@
# review a pull request. Peer review is always welcome and is a critical
# component of the progress of the codebase. Information on peer review
# guidelines can be found in the CONTRIBUTING.md doc.


# Maintainers
# @aguycalled

# Docs
/doc/*[a-zA-Z-].md @aguycalled
/doc/Doxyfile.in @aguycalled
/doc/REST-interface.md @aguycalled
/doc/benchmarking.md @aguycalled
/doc/bitcoin-conf.md @aguycalled
/doc/build-freebsd.md @aguycalled
/doc/build-netbsd.md @aguycalled
/doc/build-openbsd.md @aguycalled
/doc/build-osx.md @aguycalled
/doc/build-unix.md @aguycalled
/doc/build-windows.md @aguycalled
/doc/dependencies.md @aguycalled
/doc/developer-notes.md @aguycalled
/doc/files.md @aguycalled
/doc/reduce-memory.md @aguycalled
/doc/reduce-traffic.md @aguycalled
/doc/release-process.md @aguycalled
/doc/translation_strings_policy.md @aguycalled

# Build aux
/build-aux/m4/bitcoin_qt.m4 @aguycalled

# MSVC build system
/build_msvc/ @aguycalled

# Settings
/src/util/settings.* @aguycalled

# Fuzzing

# Tests
/src/test/net_peer_eviction_tests.cpp @aguycalled
/test/functional/mempool_updatefromblock.py @aguycalled
/test/functional/feature_asmap.py @aguycalled
/test/functional/interface_bitcoin_cli.py @aguycalled

# Backwards compatibility tests
*_compatibility.py @aguycalled
/test/functional/wallet_upgradewallet.py @aguycalled
/test/get_previous_releases.py @aguycalled

# Translations
/src/util/translation.h @aguycalled

# Dev Tools
/contrib/devtools/security-check.py @aguycalled
/contrib/devtools/test-security-check.py @aguycalled
/contrib/devtools/symbol-check.py @aguycalled

# Guix
/contrib/guix/ @aguycalled

# Compatibility
/src/compat/glibc_* @aguycalled

# GUI
/src/qt/forms/ @aguycalled

# Wallet
/src/wallet/ @aguycalled

# CLI
/src/bitcoin-cli.cpp @aguycalled

# Coinstats
/src/node/coinstats.* @aguycalled

# Index
/src/index/ @aguycalled

# Descriptors
*descriptor* @aguycalled

# External signer
*external_signer* @aguycalled
/doc/external-signer.md @aguycalled
*signer.py @aguycalled

# Interfaces
/src/interfaces/ @aguycalled

# DB
/src/txdb.* @aguycalled
/src/dbwrapper.* @aguycalled

# Linter
/test/lint/lint-shell.py @aguycalled

# Bech32
/src/bech32.* @aguycalled
/src/bench/bech32.* @aguycalled

# PSBT
/src/psbt* @aguycalled
/src/node/psbt* @aguycalled
/doc/psbt.md @aguycalled

# P2P
/src/net_processing.* @aguycalled
/src/protocol.* @aguycalled

# Consensus
/src/coins.* @aguycalled
/src/script/script.* @aguycalled
/src/script/interpreter.* @aguycalled
/src/validation.* @aguycalled
/src/consensus/ @aguycalled

# Tracing
/doc/tracing.md @aguycalled
/src/util/trace.h @aguycalled
/contrib/tracing/ @aguycalled
5 changes: 4 additions & 1 deletion build-aux/m4/l_atomic.m4
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ m4_define([_CHECK_ATOMIC_testbody], [[

int main() {
std::atomic<bool> lock{true};
std::atomic_exchange(&lock, false);
lock.exchange(false);

std::atomic<std::chrono::seconds> t{0s};
t.store(2s);
Expand All @@ -34,6 +34,8 @@ m4_define([_CHECK_ATOMIC_testbody], [[
AC_DEFUN([CHECK_ATOMIC], [

AC_LANG_PUSH(C++)
TEMP_CXXFLAGS="$CXXFLAGS"
CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS"

AC_MSG_CHECKING([whether std::atomic can be used without link library])

Expand All @@ -51,5 +53,6 @@ AC_DEFUN([CHECK_ATOMIC], [
])
])

CXXFLAGS="$TEMP_CXXFLAGS"
AC_LANG_POP
])
6 changes: 4 additions & 2 deletions build_msvc/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@ Building Navcoin Core with Visual Studio

Introduction
---------------------
Solution and project files to build Navcoin Core with `msbuild` or Visual Studio can be found in the `build_msvc` directory. The build has been tested with Visual Studio 2022 and Visual Studio 2019 (building with earlier versions of Visual Studio should not be expected to work).
Visual Studio 2022 is minimum required to build Navcoin Core.

Solution and project files to build with `msbuild` or Visual Studio can be found in the `build_msvc` directory.

To build Navcoin Core from the command-line, it is sufficient to only install the Visual Studio Build Tools component.

Expand All @@ -28,7 +30,7 @@ Qt
---------------------
To build Navcoin Core with the GUI, a static build of Qt is required.

1. Download a single ZIP archive of Qt source code from https://download.qt.io/official_releases/qt/ (e.g., [`qt-everywhere-opensource-src-5.15.3.zip`](https://download.qt.io/official_releases/qt/5.15/5.15.3/single/qt-everywhere-opensource-src-5.15.3.zip)), and expand it into a dedicated folder. The following instructions assume that this folder is `C:\dev\qt-source`.
1. Download a single ZIP archive of Qt source code from https://download.qt.io/official_releases/qt/ (e.g., [`qt-everywhere-opensource-src-5.15.5.zip`](https://download.qt.io/official_releases/qt/5.15/5.15.5/single/qt-everywhere-opensource-src-5.15.5.zip)), and expand it into a dedicated folder. The following instructions assume that this folder is `C:\dev\qt-source`.

2. Open "x64 Native Tools Command Prompt for VS 2022", and input the following commands:
```cmd
Expand Down
4 changes: 2 additions & 2 deletions build_msvc/bitcoin_config.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,8 @@
/* Define this symbol if the consensus lib has been built */
#define HAVE_CONSENSUS_LIB 1

/* define if the compiler supports basic C++17 syntax */
#define HAVE_CXX17 1
/* define if the compiler supports basic C++20 syntax */
#define HAVE_CXX20 1

/* Define to 1 if you have the declaration of `be16toh', and to 0 if you
don't. */
Expand Down
4 changes: 2 additions & 2 deletions build_msvc/common.init.vcxproj.in
Original file line number Diff line number Diff line change
Expand Up @@ -87,10 +87,10 @@
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<PrecompiledHeader>NotUsing</PrecompiledHeader>
<AdditionalOptions>/utf-8 /Zc:__cplusplus /std:c++17 %(AdditionalOptions)</AdditionalOptions>
<AdditionalOptions>/utf-8 /Zc:__cplusplus /std:c++20 %(AdditionalOptions)</AdditionalOptions>
<DisableSpecificWarnings>4018;4244;4267;4334;4715;4805;4834</DisableSpecificWarnings>
<TreatWarningAsError>true</TreatWarningAsError>
<PreprocessorDefinitions>DISABLE_DESIGNATED_INITIALIZER_ERRORS;_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING;_SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING;ZMQ_STATIC;NOMINMAX;WIN32;HAVE_CONFIG_H;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_CONSOLE;_WIN32_WINNT=0x0601;_WIN32_IE=0x0501;WIN32_LEAN_AND_MEAN;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING;ZMQ_STATIC;NOMINMAX;WIN32;HAVE_CONFIG_H;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_CONSOLE;_WIN32_WINNT=0x0601;_WIN32_IE=0x0501;WIN32_LEAN_AND_MEAN;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>..\..\src;..\..\src\minisketch\include;..\..\src\univalue\include;..\..\src\secp256k1\include;..\..\src\leveldb\include;..\..\src\leveldb\helpers\memenv;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
Expand Down
2 changes: 1 addition & 1 deletion build_msvc/msvc-autogen.py
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ def set_properties(vcxproj_filename, placeholder, content):
def main():
parser = argparse.ArgumentParser(description='Navcoin-core msbuild configuration initialiser.')
parser.add_argument('-toolset', nargs='?', default=DEFAULT_PLATFORM_TOOLSET,
help='Optionally sets the msbuild platform toolset, e.g. v142 for Visual Studio 2019, or v143 for Visual Studio 2022.'
help='Optionally sets the msbuild platform toolset, e.g. v143 for Visual Studio 2022.'
' default is %s.'%DEFAULT_PLATFORM_TOOLSET)
args = parser.parse_args()
set_properties(os.path.join(SOURCE_DIR, '../build_msvc/common.init.vcxproj'), '@TOOLSET@', args.toolset)
Expand Down
11 changes: 8 additions & 3 deletions ci/test/00_setup_env_native_asan.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,14 @@

export LC_ALL=C.UTF-8

# We install an up-to-date 'bpfcc-tools' package from an untrusted PPA.
# This can be dropped with the next Ubuntu or Debian release that includes up-to-date packages.
# See the if-then in ci/test/04_install.sh too.
export ADD_UNTRUSTED_BPFCC_PPA=true

export CONTAINER_NAME=ci_native_asan
export PACKAGES="clang llvm python3-zmq qtbase5-dev qttools5-dev-tools libevent-dev bsdmainutils libboost-dev libdb5.3++-dev libminiupnpc-dev libnatpmp-dev libzmq3-dev libqrencode-dev libsqlite3-dev"
export DOCKER_NAME_TAG=ubuntu:22.04
export PACKAGES="systemtap-sdt-dev bpfcc-tools clang llvm python3-zmq qtbase5-dev qttools5-dev-tools libevent-dev bsdmainutils libboost-dev libdb5.3++-dev libminiupnpc-dev libnatpmp-dev libzmq3-dev libqrencode-dev libsqlite3-dev"
export DOCKER_NAME_TAG=ubuntu:22.04 # May not run in docker unless --enable-usdt is dropped
export NO_DEPENDS=1
export GOAL="install"
export BITCOIN_CONFIG="--enable-c++20 --enable-zmq --with-incompatible-bdb --with-gui=qt5 CPPFLAGS='-DARENA_DEBUG -DDEBUG_LOCKORDER' --with-sanitizers=address,integer,undefined CC=clang CXX=clang++"
export BITCOIN_CONFIG="--enable-usdt --enable-zmq --with-incompatible-bdb --with-gui=qt5 CPPFLAGS='-DARENA_DEBUG -DDEBUG_LOCKORDER' --with-sanitizers=address,integer,undefined CC=clang CXX=clang++"
2 changes: 1 addition & 1 deletion ci/test/00_setup_env_native_fuzz_with_valgrind.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,5 @@ export RUN_FUZZ_TESTS=true
export FUZZ_TESTS_CONFIG="--valgrind"
export GOAL="install"
# Temporarily pin dwarf 4, until valgrind can understand clang's dwarf 5
export BITCOIN_CONFIG="--enable-fuzz --with-sanitizers=fuzzer CC=clang CXX=clang++ CXXFLAGS='-fdebug-default-version=4'"
export BITCOIN_CONFIG="--enable-fuzz --with-sanitizers=fuzzer CC=clang CXX=clang++ CFLAGS='-gdwarf-4' CXXFLAGS='-gdwarf-4'"
export CCACHE_SIZE=200M
2 changes: 1 addition & 1 deletion ci/test/00_setup_env_native_qt5.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,6 @@ export TEST_RUNNER_EXTRA="--previous-releases --coverage --extended --exclude fe
export RUN_UNIT_TESTS_SEQUENTIAL="true"
export RUN_UNIT_TESTS="false"
export GOAL="install"
export PREVIOUS_RELEASES_TO_DOWNLOAD="v0.14.3 v0.15.2 v0.16.3 v0.17.2 v0.18.1 v0.19.1 v0.20.1 v0.21.0 v22.0 v23.0"
export DOWNLOAD_PREVIOUS_RELEASES="true"
export BITCOIN_CONFIG="--enable-zmq --with-libs=no --with-gui=qt5 --enable-reduce-exports \
--enable-debug CFLAGS=\"-g0 -O2 -funsigned-char\" CXXFLAGS=\"-g0 -O2 -funsigned-char\" CC=gcc-8 CXX=g++-8"
2 changes: 1 addition & 1 deletion ci/test/00_setup_env_native_tidy.sh
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@ export RUN_FUNCTIONAL_TESTS=false
export RUN_FUZZ_TESTS=false
export RUN_TIDY=true
export GOAL="install"
export BITCOIN_CONFIG="CC=clang CXX=clang++ --with-incompatible-bdb --disable-hardening CFLAGS='-O0 -g0' CXXFLAGS='-O0 -g0'"
export BITCOIN_CONFIG="CC=clang CXX=clang++ --enable-c++20 --with-incompatible-bdb --disable-hardening CFLAGS='-O0 -g0' CXXFLAGS='-O0 -g0'"
export CCACHE_SIZE=200M
2 changes: 1 addition & 1 deletion ci/test/00_setup_env_native_valgrind.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,4 @@ export NO_DEPENDS=1
export TEST_RUNNER_EXTRA="--nosandbox --exclude feature_init,rpc_bind,feature_bind_extra" # Excluded for now, see https://github.com/bitcoin/bitcoin/issues/17765#issuecomment-602068547
export GOAL="install"
# Temporarily pin dwarf 4, until valgrind can understand clang's dwarf 5
export BITCOIN_CONFIG="--enable-zmq --with-incompatible-bdb --with-gui=no CC=clang CXX=clang++ CXXFLAGS='-fdebug-default-version=4'" # TODO enable GUI
export BITCOIN_CONFIG="--enable-zmq --with-incompatible-bdb --with-gui=no CC=clang CXX=clang++ CFLAGS='-gdwarf-4' CXXFLAGS='-gdwarf-4'" # TODO enable GUI
8 changes: 8 additions & 0 deletions ci/test/04_install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,14 @@ if [[ $DOCKER_NAME_TAG == *centos* ]]; then
${CI_RETRY_EXE} CI_EXEC dnf -y install epel-release
${CI_RETRY_EXE} CI_EXEC dnf -y --allowerasing install "$DOCKER_PACKAGES" "$PACKAGES"
elif [ "$CI_USE_APT_INSTALL" != "no" ]; then
if [[ "${ADD_UNTRUSTED_BPFCC_PPA}" == "true" ]]; then
# Ubuntu 22.04 LTS and Debian 11 both have an outdated bpfcc-tools packages.
# The iovisor PPA is outdated as well. The next Ubuntu and Debian releases will contain updated
# packages. Meanwhile, use an untrusted PPA to install an up-to-date version of the bpfcc-tools
# package.
# TODO: drop this once we can use newer images in GCE
CI_EXEC add-apt-repository ppa:hadret/bpfcc
fi
${CI_RETRY_EXE} CI_EXEC apt-get update
${CI_RETRY_EXE} CI_EXEC apt-get install --no-install-recommends --no-upgrade -y "$PACKAGES" "$DOCKER_PACKAGES"
if [ -n "$PIP_PACKAGES" ]; then
Expand Down
4 changes: 2 additions & 2 deletions ci/test/05_before_script.sh
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,6 @@ if [ -z "$NO_DEPENDS" ]; then
fi
CI_EXEC "$SHELL_OPTS" make "$MAKEJOBS" -C depends HOST="$HOST" "$DEP_OPTS" LOG=1
fi
if [ -n "$PREVIOUS_RELEASES_TO_DOWNLOAD" ]; then
CI_EXEC test/get_previous_releases.py -b -t "$PREVIOUS_RELEASES_DIR" "${PREVIOUS_RELEASES_TO_DOWNLOAD}"
if [ "$DOWNLOAD_PREVIOUS_RELEASES" = "true" ]; then
CI_EXEC test/get_previous_releases.py -b -t "$PREVIOUS_RELEASES_DIR"
fi
7 changes: 5 additions & 2 deletions ci/test/06_script_a.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,19 @@ if [ -z "$NO_WERROR" ]; then
BITCOIN_CONFIG_ALL="${BITCOIN_CONFIG_ALL} --enable-werror"
fi

CI_EXEC "ccache --zero-stats --max-size=$CCACHE_SIZE"
PRINT_CCACHE_STATISTICS="ccache --version | head -n 1 && ccache --show-stats"

if [ -n "$ANDROID_TOOLS_URL" ]; then
CI_EXEC make distclean || true
CI_EXEC ./autogen.sh
CI_EXEC ./configure "$BITCOIN_CONFIG_ALL" "$BITCOIN_CONFIG" || ( (CI_EXEC cat config.log) && false)
CI_EXEC "make $MAKEJOBS && cd src/qt && ANDROID_HOME=${ANDROID_HOME} ANDROID_NDK_HOME=${ANDROID_NDK_HOME} make apk"
CI_EXEC "${PRINT_CCACHE_STATISTICS}"
exit 0
fi

BITCOIN_CONFIG_ALL="${BITCOIN_CONFIG_ALL} --enable-external-signer --bindir=$BASE_OUTDIR/bin --libdir=$BASE_OUTDIR/lib"
CI_EXEC "ccache --zero-stats --max-size=$CCACHE_SIZE"

if [ -n "$CONFIG_SHELL" ]; then
CI_EXEC "$CONFIG_SHELL" -c "./autogen.sh"
Expand Down Expand Up @@ -57,6 +60,6 @@ fi

CI_EXEC "${MAYBE_BEAR}" "${MAYBE_TOKEN}" make "$MAKEJOBS" "$GOAL" || ( echo "Build failure. Verbose build follows." && CI_EXEC make "$GOAL" V=1 ; false )

CI_EXEC "ccache --version | head -n 1 && ccache --show-stats"
CI_EXEC "${PRINT_CCACHE_STATISTICS}"
CI_EXEC du -sh "${DEPENDS_DIR}"/*/
CI_EXEC du -sh "${PREVIOUS_RELEASES_DIR}"
Loading