CExtPubKey does not store the version bytes for the extended public key.
We store these so that a CExtPubKey can be serialized and deserialized with
the same version bytes.
SerializeToVector, UnserializeFromVector, DeserializeHDKeypaths, and SerializeHDKeypaths
were in sign.h where PSBT was originally implemented. Since all of the PSBT serialization
has moved to its own file, these functions should follow.
Reset back to Bitcoin PSBT and disable PSBT/PSET handling in wallet and
rpc.
This is just a reset to allow for PSBTv2 change and then a new and
improved PSET.
43657b5aaa Adds an -fno-stack-check compile time flag to OSX local builds (Mike Slominsk)
Pull request description:
As a workaround for several elements issues on OSX 10.15 and later, this PR adds the `-fno-stack-check` flag to local (non-cross compile) OSX builds.
Background: There seems to be a general issue with OSX (version >= 10.15) builds and clang's default use of `-fstack-check` which seems to be buggy enough to cause issues with multiple projects.
closes#987#998
Also related to #782
Top commit has no ACKs.
Tree-SHA512: b8ecf10771da235878d10a59cddf22be9e587c2c6b278a62ea777d547b1a37abfbec4945842df2b581407e81dafcfc3df1d86e27f861a03322cb188917a5e940
b7a116d910 Undo default signalling behavior for dynafed unless enabled (Steven Roose)
Pull request description:
This adds an explicit argument to enable dynafed signalling that is not active by default.
ACKs for top commit:
gwillen:
That looks great, utACK b7a116d.
Tree-SHA512: bf13ff2b0a8b2cb1d5570ef8f5c423c3b112249d08407791fdca9a86ab7759dd37aa28edce14b5c8600bf22f100472515bed465243253fefd3f51ce9782e9210
f2a0050f31 primitives: do not de/serialize asset issuance in bitcoin mode (Andrew Poelstra)
9c1de4d85f ci: give more memory to a couple Cirrus jobs (Andrew Poelstra)
40c09f637c rpc: fix error message accidentally changed in 5e62edc (Andrew Poelstra)
adbd9f163a qt: fix PSBT/PSET change from 4839db857d (Andrew Poelstra)
057237bd02 qt: fix double-scoping of enum introduced in c3b6bbb (Andrew Poelstra)
5819f25975 bitcoin-tx: add ASSET to the help text of some option (Andrew Poelstra)
1f3cfb451a chainparamsbase: fix bool-vs-enum mistake in 9c3480fea9 (Andrew Poelstra)
2573747447 fix test code duplication from 3a0de44d90 (Andrew Poelstra)
0045cafd75 rpc/mining: restore code erroneously dropped in 0e2c963dbf (Andrew Poelstra)
39112e1eaa correct copy/paste error in error message (Andrew Poelstra)
Pull request description:
ACKs for top commit:
stevenroose:
utACK f2a0050
Tree-SHA512: 5ce831ef24e51e76b93cd4d8e345a382dbd716e38c99565a7c2f25b5eeb8bac1e36c623491c5763ceb7b47444024b5821a878942df150bb01b33eeae33f292b1
8e19dfa35b Specify PSET (Andrew Chow)
Pull request description:
Adds the document specifying the new PSET format that #900 implements.
Pulled out of #900
Top commit has no ACKs.
Tree-SHA512: 892d27a5735fc581b0963b3e230cc028c08f7750a55c8b4030f9f909dee89910348fdc565739c6ec73ce206b7cfd08d3614ccaf884d5abc43a7470f36368ca43
b47c279ee1 Fix compilation errors after rebase onto master (Glenn Willen)
6d19c44bd0 Add liquidv1test chainparams. (Glenn Willen)
a8704b270d Fix description of -chain parameter (Glenn Willen)
188283eecb Change stray uses of global gArgs to args in CCustomParams (Glenn Willen)
Pull request description:
Add the `liquidv1test` chain, which is meant to more closely track the `liquidv1` chain for realistic testing in CI and on test networks (vs `elementsregtest`, a "custom chain" which has diverged a bit more than I'm comfortable with.)
I also fixed a few stray things that looked like minor mistakes to me (uses of the global `gArgs` instead of the parameter `args`, and the `-chain` help text not mentioning `liquidv1` as the default.)
Top commit has no ACKs.
Tree-SHA512: 0009740b6811af4b52c771e4559a4e941aec188e9994809b28642b5bd74f6e10fc0053c6246f89a7d8224269305308b7ffae082c93ac61355c305bdb326daeca
291da8bedb ci: increase memory on asan run (Andrew Poelstra)
24ca09cb84 test: add missing `sync_blocks` to dynafed test; disable timing out travis test (Andrew Poelstra)
f76fe5e469 ci: fix some test timeouts (Andrew Poelstra)
f994740dd1 fuzz: fix `SignatureHash` stuff for rangeproof sighash API changes (Andrew Poelstra)
7575e050bb remove some unused imports from new sighash_rangeproof test (Andrew Poelstra)
e801e951df ci: whitelist some RPCs on the functional test coverage check (Andrew Poelstra)
1f068f8bd9 ci: fiddle with macos CFLAGS to work around apparent clang bug (Andrew Poelstra)
fec99efb8f fix invalid memory access that I added when merging descriptor wallets (Andrew Poelstra)
98d0ff7035 tests: actually fix intermittent failure in feature_assetsdir.py (Andrew Poelstra)
14ff891036 Various ubsan fixes (Andrew Poelstra)
f1092db80e disable previous-release compatibility test and walletupgrade test (Andrew Poelstra)
ef3bc3084a build: move dynafed and pak to server rather than libelementsconsensus (Andrew Poelstra)
55be2930fb test: disable "is everyone connected" check in sync_all in blocksigner test (Andrew Poelstra)
89926e6b5f ci: correct bitcoin-node to elements-node for multiprocess CI job (Andrew Poelstra)
f912cb8e2e Revert "gui: Alternate row background based on txid" (Andrew Poelstra)
e5ecee8d2d reduce cache sizes so that default maxsigcache size is same as Bitcoin (Andrew Poelstra)
1670bdfa0b ci: fix benchmarks, fuzztests and unit tests (Andrew Poelstra)
697cd77985 ci: disable broken feature_pruning test (Andrew Poelstra)
0c98d2f5d4 ci: fix address in signet test so that the test works with wallet disabled (Andrew Poelstra)
47885e97bf ci: tighten locking in signblock to ensure consistent main/wallet locking order (Andrew Poelstra)
2f5c624b18 ci: eliminate a bunch of build warnings (Andrew Poelstra)
a1bac6d8a6 build: drop the rendered icon stuff (Andrew Poelstra)
ee5d4e3256 ci: temporarily disable qa-assets unit tests (Andrew Poelstra)
db64bd5276 ci: change bitcoin- paths to elements- paths since that's where autotools puts stuff (Andrew Poelstra)
f1642283f5 travis: temporarily remove bitcoin_functional tests from Python linter (Andrew Poelstra)
848c597959 (temporarily?) delete Liquid gitian descriptors (Andrew Poelstra)
79bab21c58 ci: reduce secp test iterations from default 64 to 16 (Andrew Poelstra)
68bfd70b43 ci: various linter / CI compiler error fixes (Andrew Poelstra)
1e98c9fa9e fix RPC linter issues (Andrew Poelstra)
29ab3fdda1 travis: temporarily disable lint-git-commit-check.sh (Andrew Poelstra)
ae064874bc travis: temporarily blacklist a specific commit in the `scripted-diff` filter (Andrew Poelstra)
bb6441b7a4 qt: Pre-splitoff translations update (Wladimir J. van der Laan)
05e82d86b0 wallet: override minfee checks (fOverrideFeeRate) for fee_rate (Jon Atack)
9a670b4f07 wallet: update sendtoaddress, send RPC examples with fee_rate (Jon Atack)
be481b72e2 wallet: use MIN_RELAY_TX_FEE in bumpfee help (Jon Atack)
449b730579 wallet: provide valid values if invalid estimate mode passed (Jon Atack)
6da3afbaee wallet: update remaining rpcwallet fee rate units to BTC/kvB (Jon Atack)
173b5b5fe0 wallet: update fee rate units, use sat/vB for fee_rate error messages (Jon Atack)
7f9835a05a wallet: remove fee rates from conf_target helps (Jon Atack)
b7994c01e9 wallet: add fee_rate unit warnings to bumpfee (Jon Atack)
410e471fa4 wallet: remove redundant bumpfee fee_rate checks (Jon Atack)
a0d4957473 wallet: introduce fee_rate (sat/vB) param/option (Jon Atack)
e21212f01b wallet: remove unneeded WALLET_BTC_KB_TO_SAT_B constant (Jon Atack)
6112cf20d4 wallet: add CFeeRate ctor doxygen documentation (Jon Atack)
3f72791613 wallet: fix bug in RPC send options (Jon Atack)
ac64cec4ce gui: create wallet: add advanced section (Sjors Provoost)
c99d6f644a gui: create wallet: name placeholder (Sjors Provoost)
5bff82540b [gui] create wallet: smarter checkbox toggling (Sjors Provoost)
9636962889 [upgradewallet] removed unused warning param (Sishir Giri)
b6121edf70 swapped "is" for "==" in literal comparison (Tyler Chambers)
d355a302d9 Break circuit earlier (lontivero)
5f9c0b6360 wallet: Remove -upgradewallet from dummywallet (MarcoFalke)
a314271f08 test: Remove unused wallet.dat (MarcoFalke)
bf7635963c tests: Test specific upgradewallet scenarios and that upgrades work (Andrew Chow)
4b418a9dec test: Add test_framework/bdb.py module for inspecting bdb files (Andrew Chow)
092fc43485 tests: Add a sha256sum_file function to util (Andrew Chow)
0bd995aa19 wallet: upgrade the CHDChain version number when upgrading to split hd (Andrew Chow)
8e32e1c41c wallet: remove nWalletMaxVersion (Andrew Chow)
bd7398cc62 wallet: have ScriptPubKeyMan::Upgrade check against the new version (Andrew Chow)
5f720544f3 wallet: Add GetClosestWalletFeature function (Andrew Chow)
842ae3842d wallet: Add utility method for CanSupportFeature (Andrew Chow)
9c08f3332c doc: Missing comments for signet parameters (kanon)
20e491ddcb CI/Cirrus: Skip merge_base step for non-PRs (Luke Dashjr)
89836a82ee style: minor improvements as a followup to #19845 (Vasil Dimov)
049feabf28 Add missing optional.h include (Kristaps Kaupe)
29c66ace5c Silence false positive GCC warning (Kristaps Kaupe)
406097c810 ci: Use the previous build worker image in AppVeyor (Hennadii Stepanov)
440f8d3abe fix potential devision by 0 (Jonas Schnelli)
d04a17a790 fuzz: Use ConsumeRandomLengthBitVector(...) in src/test/fuzz/connman and src/test/fuzz/net (practicalswift)
e6bb9fde85 tests: Add fuzzing harness for CAddrMan (practicalswift)
0ccb3addf6 tests: Remove no longer needed UBSan suppression (float-divide-by-zero in validation.cpp) (practicalswift)
38ada892ed addrman: ensure old versions don't parse peers.dat (Vasil Dimov)
241434200e refactor: qt: Use vQueueNotifications.clear() (João Barbosa)
989e579d07 qt: Make transaction notification queue wallet specific (João Barbosa)
7b3b2303f4 move-only: Define TransactionNotification before TransactionTablePriv (João Barbosa)
79ef8324d4 tests: Add fuzzing harness for CConnman (practicalswift)
3c77b8009d fuzz: Improve coverage for CPartialMerkleTree fuzzing harness (practicalswift)
ee11a412a5 Avoid signed integer overflow when loading a mempool.dat file with a malformed time field (practicalswift)
c82336c493 Remove references to CreateWalletFromFile (fanquake)
24d2d3341d QA: wallet_multiwallet: Check that recursive symlink directory and wallet.dat loops are ignored (Luke Dashjr)
69f59af54d Bugfix: Wallet: Soft-fail exceptions within ListWalletDir file checks (Luke Dashjr)
5e146022da wallet: fix scanning progress calculation for single block range (Sebastian Falbesoner)
fa949b3c13 test: Suppress epoll_ctl data race (MarcoFalke)
fa92cf29d9 ci: Remove redundant valgrind fuzz task (MarcoFalke)
fa4234d877 test: Mock IBD in net_processing fuzzers (MarcoFalke)
444412821e test: Fix intermittent issue in wallet_listsinceblock (MarcoFalke)
79b8f8d574 fuzz: Assert roundtrip equality for both addrv1 and addrv2 versions of CService (practicalswift)
0e3a78a8ab fuzz: Check for addrv1 compatibility before using addrv1 serializer/deserializer on CSubNet (practicalswift)
538be4219a wallet: fix importdescriptor silent fail (Ivan Metlushko)
7b5bd3102e test: add getnetworkinfo network name regression tests (Jon Atack)
9a75e1e569 rpc: update GetNetworksInfo() to not return unsupported networks (Jon Atack)
ba8997fb2e net: update GetNetworkName() with all enum Network cases (Jon Atack)
fab900802d ci: Bump timeout factor (MarcoFalke)
50eb0c2512 Small improvements to the Taproot functional tests (Pieter Wuille)
fac865b72d test: Fix intermittent feature_taproot issue (MarcoFalke)
fa1dea19fc test: Fix deser issue in create_block (MarcoFalke)
fa762a3fd4 test: Remove unused unnamed parameter from block.serialize call (MarcoFalke)
77777c8b5e ci: Run windows ci config on cirrus (MarcoFalke)
3333d6942e ci: Run macos ci config on cirrus (MarcoFalke)
fa8b1114e6 ci: Run arm ci config on cirrus (MarcoFalke)
fa0795f54d ci: Replace TRAVIS_OS_NAME with CI_OS_NAME (MarcoFalke)
fafce1a13a ci: Move documentation to correct config file (MarcoFalke)
bd93fc9945 Fix change detection of imported internal descriptors (Andrew Chow)
faa2f06f5e scripted-diff: [build] Ensure source tarball has leading directory name (MarcoFalke)
fa2c3c0d96 ci: Set LC_ALL=C to allow running the s390x tests in qemu (MarcoFalke)
fac0517836 travis: Remove s390x build (MarcoFalke)
66667acc53 cirrus: Skip tasks on the gui repo main branch (MarcoFalke)
04a69c200e macOS deploy: use the new plistlib API (Jonas Schnelli)
568a1d7261 fix ecdsa verify in test framework (Stepan Snigirev)
faf5fa7413 wallet: Set DatabaseStatus::SUCCESS in MakeSQLiteDatabase (MarcoFalke)
fa00ff0399 test: Fix wallet_multiwallet test issue on Windows (MarcoFalke)
090b8385af Set bilingual error completely (Hennadii Stepanov)
f1f433e8ca Make it easier to reason about node eviction by removing unused NodeEvictionCandidate::addr (CAddress) (practicalswift)
d7901ab8d2 fuzz: Assert expected DecodeHexTx behaviour when using legacy decoding (practicalswift)
fae45c34d1 test: Only try witness deserialize when checking for witness deserialize failure (MarcoFalke)
58cfbc38e0 Ignoring (but warn) on duplicate -wallet parameters (Jonas Schnelli)
5cafe2b25c fuzz: Add missing ECC_Start to descriptor_parse test (Ivan Metlushko)
fa8e494554 ci: Run ci configs on cirrus (MarcoFalke)
fa2ecadd0d test: Fix intermittent rpc_net issue (MarcoFalke)
af3b0dfc54 net: fix output of peer address in version message (Vasil Dimov)
fa3967efdb test: Replace ARRAYLEN with C++11 ranged for loop (MarcoFalke)
fafc529053 test: Run AssetTest even if built --with-libs=no (MarcoFalke)
faf58ab139 ci: Add --with-libs=no to one ci config (MarcoFalke)
0be29000c0 rpc: update conf_target helps for correctness/consistency (Jon Atack)
778b9be406 wallet, rpc: fix send subtract_fee_from_outputs help (Jon Atack)
603c005083 wallet: add rpc send explicit fee rate coverage (Jon Atack)
dd341e602d wallet: add sendtoaddress/sendmany explicit fee rate coverage (Jon Atack)
44e7bfa603 wallet: add walletcreatefundedpsbt explicit fee rate coverage (Jon Atack)
6e1ea4273e test: refactor for walletcreatefundedpsbt fee rate coverage (Jon Atack)
3ac7b0c6f1 wallet: fundrawtx fee rate coverage, fixup ParseConfirmTarget() (Jon Atack)
2d8eba8f84 wallet: combine redundant bumpfee invalid params and args tests (Jon Atack)
1697a40b6f wallet: improve bumpfee error/help, add explicit fee rate coverage (Jon Atack)
fc5721723d wallet: fix SetFeeEstimateMode() error message (Jon Atack)
052427eef1 wallet, bugfix: fix bumpfee with explicit fee rate modes (Jon Atack)
2ead31fb1b [wallet] Return object from upgradewallet RPC (Sishir Giri)
6866259fab net: Hardcoded seeds update for 0.21 (Wladimir J. van der Laan)
36e875b4c5 contrib: Add new versions to makeseeds.py and update gitignore (RandyMcMillan)
28f8cb13d4 fuzz: Fix DecodeHexTx fuzzing harness issue (practicalswift)
c2cf8a18c2 fuzz: Check for addrv1 compatibility before using addrv1 serializer on CService (practicalswift)
16d9bfc417 Avoid test-before-evict evictions of current peers (Suhas Daftuar)
e8b215a086 Refactor test for existing peer connection into own function (Suhas Daftuar)
4fe338ab3e Call CAddrMan::Good() on block-relay-only peer addresses (Suhas Daftuar)
daf5553126 Avoid calling CAddrMan::Connected() on block-relay-only peer addresses (Suhas Daftuar)
fa90ba36d3 Update assumed chain params (MarcoFalke)
c7b7e0a692 tests: Make only desc wallets for wallet_multwallet.py --descriptors (Andrew Chow)
d4b67ad214 Avoid creating legacy wallets in wallet_importdescriptors.py (Andrew Chow)
6c9c12bf87 Update feature_backwards_compatibility for descriptor wallets (Andrew Chow)
9a4c631e1c Update wallet_labels.py to not require descriptors=False (Andrew Chow)
242aed7cc1 tests: Add a --legacy-wallet that is mutually exclusive with --descriptors (Andrew Chow)
388053e172 Disable some tests for tool_wallet when descriptors (Andrew Chow)
47d3243160 Make raw multisig tests legacy wallet only in rpc_rawtransaction.py (Andrew Chow)
59d3da5bce Do addmultisigaddress tests in legacy wallet mode in wallet_address_types.py (Andrew Chow)
25bc5dccbf Use importdescriptors when in descriptor wallet mode in wallet_createwallet.py (Andrew Chow)
0bd1860300 Avoid dumpprivkey and watchonly behavior in rpc_signrawtransaction.py (Andrew Chow)
08067aebfd Add script equivalent of functions in address.py (Andrew Chow)
86968882a8 Add descriptor wallet output to tool_wallet.py (Andrew Chow)
3457679870 Use separate watchonly wallet for multisig in feature_nulldummy.py (Andrew Chow)
a42652ec10 Move import and watchonly tests to be legacy wallet only in wallet_balance.py (Andrew Chow)
4b871909d6 Use importdescriptors for descriptor wallets in wallet_bumpfee.py (Andrew Chow)
c2711e4230 Avoid dumpprivkey in wallet_listsinceblock.py (Andrew Chow)
553dbf9af4 Make import tests in wallet_listtransactions.py legacy wallet only (Andrew Chow)
dc81418fd0 Use a separate watchonly wallet in rpc_fundrawtransaction.py (Andrew Chow)
a357111047 Update wallet_importprunedfunds to avoid dumpprivkey (Andrew Chow)
e5f3e95a8e doc: fix getchaintxstats fields in release-process.md (Jon Atack)
3d0556d410 Increase feature_taproot inactive test coverage (Pieter Wuille)
525cbd425e Only relay Taproot spends if next block has it active (Pieter Wuille)
5d9917464a docs: Correct getblockstats documentation for (sw)total_weight (Nadav Ivgi)
bf6855a909 wallet: Fix bug when just created encrypted wallet cannot get address (Hennadii Stepanov)
fab94534b6 doc: Document that wallet salvage is experimental (MarcoFalke)
7411876c75 Ensure a legacy wallet for BDB format check (Andrew Chow)
586640381a Skip --descriptor tests if sqlite is not compiled (Andrew Chow)
ad5cef5dfd doc: Update data directory path comments (Hennadii Stepanov)
b19e88230f util: Add StripRedundantLastElementsOfPath function (Hennadii Stepanov)
01476a88a6 wallet: Make -wallet setting not create wallets (Russell Yanofsky)
6c0259fc2f Squashed 'src/secp256k1/' changes from c6b6b8f1bb..3967d96bf1 (Pieter Wuille)
d0a829e963 build: fix mutex detection when building bdb on macOS (fanquake)
398045ba8b cli -netinfo: print oversized/extreme ping times as "-" (Jon Atack)
773f4c99c0 cli -netinfo: handle longer tor v3 local addresses (Jon Atack)
33e987452f cli -netinfo: make age column variable-width (Jon Atack)
f8a1c4d946 cli -netinfo: various quick updates and fixes (Jon Atack)
bbb42a6896 RPC: createwallet: Nicer error message if descriptor wallet requested and sqlite support not compiled in (Luke Dashjr)
6608fec332 GUI: Create Wallet: Nicely disable descriptor wallet checkbox if sqlite support not compiled in (Luke Dashjr)
7b54d768e1 Make sqlite support optional (compile-time) (Luke Dashjr)
fa56d56d4e fuzz: Properly initialize PrecomputedTransactionData (MarcoFalke)
d419fdedbe [net processing] Don't add AlreadyHave txs to recentRejects (Troy Giorshev)
778cd0d88d [tests] Remove getnettotals/getpeerinfo consistency test (John Newbery)
47ff5098ad [test] Clarify setup of node topology. (Amiti Uttarwar)
0672522aed [move-only, test]: Match test order with run order (Amiti Uttarwar)
a193f969ee qt: Pre-splitoff translations update (Wladimir J. van der Laan)
7b2e42ecc4 qt: Add WalletFrame::sizeHint (Hennadii Stepanov)
fa9b48549c test: Add test for -blockversion (MarcoFalke)
fa7fb0e442 test: Default blockversion to 4 in feature_block (MarcoFalke)
fa2b778d0c test: Remove unused -blockversion from tests (MarcoFalke)
47e2a35fac doc: Document ALLOW_HOST_PACKAGES dependency option (skmcontrib)
defe48a51f doc: Update wallet files in files.md (Hennadii Stepanov)
903f3d0627 fuzz: Check for addrv1 compatibility before using addrv1 serializer (practicalswift)
20c9e03554 gui: Call setWalletActionsEnabled(true) only for the first wallet (Hennadii Stepanov)
6954156b40 qt: Fix visual quality of text in QR image (Hennadii Stepanov)
8071c75d45 qt, refactor: Limit scope of QPainter object (Hennadii Stepanov)
56a461f727 wallet: fix buffer over-read in SQLite file magic check (Sebastian Falbesoner)
6ed4bcabc1 qt: Wrap tooltips in the intro window (Hennadii Stepanov)
fa299ac273 test: Speed up wallet_resendwallettransactions test with mockscheduler RPC (MarcoFalke)
fa5a91a352 test: Fix typo (one tx is enough) in p2p_feefilter (MarcoFalke)
fa3af2c0d3 test: Fix intermittent issue in p2p_feefilter (MarcoFalke)
5aadd4be18 Convert amounts from float to decimal (Prayank)
fa5f46600f test: Fix rpc_net intermittent issue (MarcoFalke)
fa4074b395 Show name, format and if uses descriptors in bitcoin-wallet tool (Jonas Schnelli)
3c7d9ab8c8 test: Move (dis)?connect_nodes globals into TestFramework as helpers (Elliott Jin)
4b16c61461 scripted-diff: test: Replace uses of (dis)?connect_nodes global (Prayank)
be386840d4 test: Replace use of (dis)?connect_nodes globals (Elliott Jin)
2d5793c016 Bugfix: chainparams: Add missing (disabled) Taproot deployment for Signet (Luke Dashjr)
624bab00dd test: add coverage for getwalletinfo format field (Jon Atack)
5e737a0092 rpc, wallet: Expose database format in getwalletinfo (João Barbosa)
c8abbc9d1f p2p: declare Announcement::m_state as uint8_t, add getter/setter (Jon Atack)
fa38093bee doc: Merge release notes (MarcoFalke)
fa48405ef8 Warn on unknown rw_settings (MarcoFalke)
faab86f6c8 test: Fix intermittent issue in wallet_send (MarcoFalke)
faca3734c0 test: Fix intermittent issue in wallet_import_rescan (MarcoFalke)
76bbcc414f test: Fix -Wunused-function warning if configured --without-libs (Hennadii Stepanov)
bd5215103e random: fixes read buffer resizing in RandAddSeedPerfmon (Ethan Heilman)
95fedd33a2 refactor: Clean up -Wlogical-op warning (maskoficarus)
da0988daf1 scripted-diff: rename vRecvGetData (Neha Narula)
ba951812ec Guard vRecvGetData (now in net processing) with its own mutex (Neha Narula)
2d9f2fca43 Move vRecvGetData to net processing (Neha Narula)
673247b58c Lock before checking if orphan_work_set is empty; indicate it is guarded (Neha Narula)
8803aee668 Move m_orphan_work_set to net_processing (Neha Narula)
9c47cb29f9 [Rename only] Rename orphan_work_set to m_orphan_work_set. (Neha Narula)
b128b56672 test: add logging for mining_getblocktemplate_longpoll.py (Sebastian Falbesoner)
8ee3536b2b test: remove unused helpers random_transaction(), make_change() and gather_inputs() (Sebastian Falbesoner)
fddce7e199 test: use MiniWallet for mining_getblocktemplate_longpoll.py (Sebastian Falbesoner)
51365674e8 script: Make ComputeEntrySchnorr and ComputeEntryECDSA const to clarify contract (practicalswift)
fa68755364 contrib: Fix gen_key_io_test_vectors.py imports (MarcoFalke)
0d9d2a1f7c Only update the updateSmartFeeLabel once in sync (Jonas Schnelli)
d438d609cd QA: Use GBT to get block versions correct (Luke Dashjr)
1df2cd1c8f QA: blocktools: Accept block template to create_block (Luke Dashjr)
fa723e3d43 Initialize default-initialized uint256 consensus params to zero explicitly (MarcoFalke)
fa729cdb2c doc: Move assumed-values doxygen comments to header (MarcoFalke)
fa64892b82 signet: Fix uninitialized read in validation (MarcoFalke)
1d22300b99 Address functional test nits (Pieter Wuille)
5669642a0b docs: mention BIPs 340-342 in doc/bips.md (Pieter Wuille)
3333077823 rpc: Adjust witness-tx deserialize error message (MarcoFalke)
cccc752569 rpc: Properly deserialize txs with witness before signing (MarcoFalke)
41dca087b7 [trivial] Extract connection type doc into file where it is used. (Amiti Uttarwar)
3069b56a45 [doc] Improve help for getpeerinfo connection_type field. (Amiti Uttarwar)
a490d074b3 doc: Add anchors.dat to files.md (Hennadii Stepanov)
0a85e5a7bc p2p: Try to connect to anchors once (Hennadii Stepanov)
5543c7ab28 p2p: Fix off-by-one error in fetching address loop (Hennadii Stepanov)
4170b46544 p2p: Integrate DumpAnchors() and ReadAnchors() into CConnman (Hennadii Stepanov)
bad16aff49 p2p: Add CConnman::GetCurrentBlockRelayOnlyConns() (Hennadii Stepanov)
c29272a157 p2p: Add ReadAnchors() (Hennadii Stepanov)
567008d2a0 p2p: Add DumpAnchors() (Hennadii Stepanov)
6272604bef refactor: enable -netinfo to add future networks (i2p, cjdns) (Jon Atack)
82fd40216c refactor: promote some -netinfo localvars to class members (Jon Atack)
5133fab37e cli: simplify -netinfo using getpeerinfo network field (Jon Atack)
4938a109ad rpc, test: expose CNodeStats network in RPC getpeerinfo (Jon Atack)
6df7882029 net: add peer network to CNodeStats (Jon Atack)
faad92fe1c test: Remove unused nVersion=1 in p2p tests (MarcoFalke)
5b57dc5458 RPC: getpeerinfo: Wrap long help line for bytesrecv_per_msg (Luke Dashjr)
d681a28219 RPC: getpeerinfo: Deprecate "whitelisted" field (replaced by "permissions") (Luke Dashjr)
886be97af5 Ignore incorrectly-serialized banlist.dat entries (Pieter Wuille)
883cea7dea Restore compatibility with old CSubNet serialization (Pieter Wuille)
27fc6a38f8 DecodeHexTx: Break out transaction decoding logic into own function (Gregory Sanders)
6020ce3c01 DecodeHexTx: Try case where txn has inputs first (Gregory Sanders)
0e2a5e448f tests: dumping and minimizing of script assets data (Pieter Wuille)
4567ba034c tests: add generic qa-asset-based script verification unit test (Pieter Wuille)
f06e6d0345 tests: functional tests for Schnorr/Taproot/Tapscript (Pieter Wuille)
3c226639eb tests: add BIP340 Schnorr signature support to test framework (Pieter Wuille)
206fb180ec --- [TAPROOT] Tests --- (Pieter Wuille)
d7ff237f29 Activate Taproot/Tapscript on regtest (BIP 341, BIP 342) (Pieter Wuille)
e9a021d7e6 Make Taproot spends standard + policy limits (Pieter Wuille)
865d2c37e2 --- [TAPROOT] Regtest activation and policy --- (Pieter Wuille)
72422ce396 Implement Tapscript script validation rules (BIP 342) (Johnson Lau)
330de894a9 Use ScriptExecutionData to pass through annex hash (Pieter Wuille)
8bbed4b7ac Implement Taproot validation (BIP 341) (Pieter Wuille)
0664f5fe1f Support for Schnorr signatures and integration in SignatureCheckers (BIP 340) (Pieter Wuille)
5de246ca81 Implement Taproot signature hashing (BIP 341) (Johnson Lau)
9eb590894f Add TaggedHash function (BIP 340) (Pieter Wuille)
450d2b2371 --- [TAPROOT] BIP340/341/342 consensus rules --- (Pieter Wuille)
5d62e3a68b refactor: keep spent outputs in PrecomputedTransactionData (Pieter Wuille)
8bd2b4e784 refactor: rename scriptPubKey in VerifyWitnessProgram to exec_script (Pieter Wuille)
107b57df9f scripted-diff: put ECDSA in name of signature functions (Pieter Wuille)
f8c099e220 --- [TAPROOT] Refactors --- (Pieter Wuille)
c4a29d0a90 Update wallet_multiwallet.py for descriptor and sqlite wallets (Russell Yanofsky)
310b0fde04 Run dumpwallet for legacy wallets only in wallet_backup.py (Andrew Chow)
6c6639ac9f Include sqlite3 in documentation (Andrew Chow)
f023b7cac0 wallet: Enforce sqlite serialized threading mode (Andrew Chow)
6173269866 Set and check the sqlite user version (Andrew Chow)
9d3d2d263c Use network magic as sqlite wallet application ID (Andrew Chow)
9af5de3798 Use SQLite for descriptor wallets (Andrew Chow)
9b78f3ce8e walletutil: Wallets can also be sqlite (Andrew Chow)
ac38a87225 Determine wallet file type based on file magic (Andrew Chow)
6045f77003 Implement SQLiteDatabase::MakeBatch (Andrew Chow)
727e6b2a4e Implement SQLiteDatabase::Verify (Andrew Chow)
b4df8fdb19 Implement SQLiteDatabase::Rewrite (Andrew Chow)
010e365906 Implement SQLiteDatabase::TxnBegin, TxnCommit, and TxnAbort (Andrew Chow)
ac5c1617e7 Implement SQLiteDatabase::Backup (Andrew Chow)
f6f9cd6a64 Implement SQLiteBatch::StartCursor, ReadAtCursor, and CloseCursor (Andrew Chow)
bf90e033f4 Implement SQLiteBatch::ReadKey, WriteKey, EraseKey, and HasKey (Andrew Chow)
7aa45620e2 Add SetupSQLStatements (Andrew Chow)
6636a2608a Implement SQLiteBatch::Close (Andrew Chow)
93825352a3 Implement SQLiteDatabase::Close (Andrew Chow)
a0de83372b Implement SQLiteDatabase::Open (Andrew Chow)
3bfa0fe125 Initialize and Shutdown sqlite3 globals (Andrew Chow)
5a488b3d77 Constructors, destructors, and relevant private fields for SQLiteDatabase/Batch (Andrew Chow)
ca8b7e04ab Implement SQLiteDatabaseVersion (Andrew Chow)
7577b6e1c8 Add SQLiteDatabase and SQLiteBatch dummy classes (Andrew Chow)
e87df82580 Add sqlite to travis and depends (Andrew Chow)
54729f3f4e Add libsqlite3 (Andrew Chow)
52380bf304 Squashed 'src/secp256k1/' changes from 8ab24e8dad..c6b6b8f1bb (Pieter Wuille)
fa1f6f237d net: Send post-verack handshake messages at most once (MarcoFalke)
fd9a0060f0 Report and verify expirations (Pieter Wuille)
86f50ed10f Delete limitedmap as it is unused now (Pieter Wuille)
cc16fff3e4 Make txid delay penalty also apply to fetches of orphan's parents (Pieter Wuille)
173a1d2d3f Expedite removal of tx requests that are no longer needed (Pieter Wuille)
de11b0a4ef Reduce MAX_PEER_TX_ANNOUNCEMENTS for non-PF_RELAY peers (Pieter Wuille)
242d16477d Change transaction request logic to use txrequest (Pieter Wuille)
5b03121d60 Add txrequest fuzz tests (Pieter Wuille)
3c7fe0e5a0 Add txrequest unit tests (Pieter Wuille)
da3b8fde03 Add txrequest module (Pieter Wuille)
ba8950ee01 build: optionally skip external warnings (Vasil Dimov)
135afa749c wallet: remove db mode string (Ivan Metlushko)
8e4d62280e tests: don't export in6addr_loopback (Vasil Dimov)
88197b0769 [doc] release notes for max fee checking (gzhao408)
c201d73df3 style and nits for fee-checking in BroadcastTransaction (gzhao408)
c056064a4a gui: Fix SplashScreen crash when run with -disablewallet (Hennadii Stepanov)
5b77f8098d test: add p2p_lock acquires in p2p_leak_tx.py (Sebastian Falbesoner)
cc8c6823b4 test: use MiniWallet for p2p_leak_tx.py (Sebastian Falbesoner)
d1292f25f2 Avoid the use of abs64 in timedata (Pieter Wuille)
3984b78cd7 test: Add tests for CNode::ConnectedThroughNetwork (Hennadii Stepanov)
49fba9c1aa net: Add CNode::ConnectedThroughNetwork member function (Hennadii Stepanov)
d4dde24034 net: Add CNode::m_inbound_onion data member (Hennadii Stepanov)
56f9dba015 Only relay IPv4, IPv6, Tor addresses (Pieter Wuille)
79f3d9b932 Mention BIP155 in doc/bips.md (Pieter Wuille)
dcf0cb4776 tor: make a TORv3 hidden service instead of TORv2 (Vasil Dimov)
353a3fdaad net: advertise support for ADDRv2 via new message (Vasil Dimov)
201a4596d9 net: CAddress & CAddrMan: (un)serialize as ADDRv2 (Vasil Dimov)
1d3ec2a1fd Support bypassing range check in ReadCompactSize (Pieter Wuille)
faa0847dec doc: Add release notes for #20101 (MarcoFalke)
99992e7832 doc: Collect release-notes snippets (MarcoFalke)
2dc79c4264 doc: Update and improve files.md (Hennadii Stepanov)
faf2999e25 cirrus: Use kvm to avoid spurious CI failures in the default virtualization cluster (MarcoFalke)
1afcd41a90 [net] Remove CombinerAll (John Newbery)
907f142fc7 rpc: change no wallet loaded message to be clearer (Andrew Chow)
fae7a1c188 fuzz: Configure check for main function (MarcoFalke)
b6834e312a Avoid 'timing mishap' warnings when mocking (Pieter Wuille)
ec3916f40a Use mockable time everywhere in net_processing (Pieter Wuille)
d103484fe8 util: Do not use gArgs global in ArgsManager member functions (Hennadii Stepanov)
b048b275d9 [validation] Remove absurdfee from accepttomempool (John Newbery)
932564b9cf scripted-diff: update max-fee-exceeded error message to include RPC (gzhao408)
8f1290c601 [rpc/node] check for high fee before ATMP in clients (gzhao408)
c83155b406 Bump vcpkg commit ID to get new msys mirror list (Aaron Clauson)
a56e9f5670 test: Assert exclusive PSBT funding options (Oliver Gugger)
64bc5efd39 test: Assert PSBT change type (Oliver Gugger)
1885ad3546 RPC: remove duplicate line in getblock help (Fabian Jahr)
675e55e013 Ignore unknown messages before VERACK (Suhas Daftuar)
33df8d46bb ci: Build Arm64 on Travis without functional tests (Fabian Jahr)
3491bf358a test: Mention commit id in scripted diff error (Wladimir J. van der Laan)
a91ab86fae lint: Use TRAVIS_BRANCH in lint-git-commit-check.sh (Fabian Jahr)
c11dc995c9 lint: Don't use TRAVIS_COMMIT_RANGE in whitespace linter (Fabian Jahr)
1b41ce8f5f lint: Don't use TRAVIS_COMMIT_RANGE for commit-script-check (Fabian Jahr)
f471a3be00 scripted diff: Improve invalid vout value rpc error message (Nima Yazdanmehr)
c1585bca8d test: Get rid of default wallet hacks (Russell Yanofsky)
ed3acda33b test, refactor: add default_wallet_name and wallet_data_filename variables (Russell Yanofsky)
f36887fa47 net: rename CNetAddr scopeId to m_scope_id, improve code doc (Jon Atack)
5cb5fd3005 test: add test coverage for CNetAddr ipv6 scoped addresses (Jon Atack)
d76925478e [doc] Clarify semantic of peer's m_protect w.r.t to outbound eviction logics (Antoine Riard)
ac71fe936d [doc] Clarify scope of eviction protection of outbound block-relay peers (Antoine Riard)
96571b3d4c doc: Update onion service target port numbers in tor.md (Hennadii Stepanov)
bb145c9050 net: Extend -bind config option with optional network type (Hennadii Stepanov)
92bd3c1da4 net, refactor: Move AddLocal call one level up (Hennadii Stepanov)
57f17e57c8 net: Pass onion service target to Tor controller (Hennadii Stepanov)
e3f07851f0 refactor: Rename TorController::target to m_tor_control_center (Hennadii Stepanov)
fdd3ae4d26 net, refactor: Refactor CBaseChainParams::RPCPort function (Hennadii Stepanov)
a5266d4546 net: Add alternative port for onion service (Hennadii Stepanov)
b3273cf403 net: Use network byte order for in_addr.s_addr (Hennadii Stepanov)
7eab781a14 rpc: Set HTTP Content-Type in bitcoin-cli (Wladimir J. van der Laan)
82b70f15c7 refactor: fix -Wbraced-scalar-init warning in validation tests (fanquake)
7532c9a221 qt: Periodic translations update (Wladimir J. van der Laan)
598e3b1ed3 tx: Update transifex slug for 0.21 (Wladimir J. van der Laan)
e66870c5a4 zmq: Append address to notify log output (nthumann)
241803da21 test: Add zmq test to support multiple interfaces (nthumann)
a0b2e5cb6a doc: Add release notes to support multiple interfaces (nthumann)
b1c3f180ec doc: Adjust ZMQ usage to support multiple interfaces (nthumann)
347c94f551 zmq: Add support to listen on multiple interfaces (Nicolas Thumann)
6fccad7f71 signet: do not log signet startup messages for other chains (Jon Atack)
825fcae484 [tests] Replace bytes literals with hex literals (John Newbery)
64eca45100 [tests] Fix pep8 style violations in address.py (John Newbery)
b230f8b3f3 [tests] Correct docstring for address.py (John Newbery)
ea70e6a2ca [tests] Tidy up imports in address.py (John Newbery)
7f639df0b8 [tests] Remove unused optional verify_checksum parameter (John Newbery)
011e784f74 [tests] Rename segwit encode and decode functions (John Newbery)
e4557133f5 [tests] Move bech32 unit tests to test framework (John Newbery)
fa29b5ae66 test: Add signet witness commitment section parse tests (MarcoFalke)
fa23308e9a Remove gArgs global from CreateChainParams to aid testing (MarcoFalke)
8de51d1513 doc: elaborate on release notes wrt netmasks (Vasil Dimov)
001343f4bc ProcessOrphanTx: Move AddToCompactExtraTransactions call into ProcessOrphanTx (John Newbery)
4fce726bd1 ProcessOrphanTx: Remove aliases (John Newbery)
e07c5d9423 ProcessOrphanTx: Remove outdated commented (John Newbery)
4763b51bca ProcessOrphanTx: remove useless setMisbehaving set (John Newbery)
55c79a9cef ProcessOrphanTx: remove useless done variable (John Newbery)
6e8dd99ef1 [net processing] Add doxygen comments for orphan data and function (John Newbery)
fa710a6d67 doc: Add 19501 release notes (MarcoFalke)
faf60dee34 doc: Remove double-whitespace from help string, other whitespace fixups (MarcoFalke)
af57766182 Fix misleading error message: Clean stack rule (sanket1729)
fac966142e signet: Add assumed values for default signet (MarcoFalke)
69cf5d4eeb [test] Make sure send rpc returns fee reason (Sishir Giri)
d5863c0b3e [send] Make send RPCs return fee reason (Sishir Giri)
712f95d332 Update msvc build to use new vcpkg manifest (Aaron Clauson)
2ea62cae48 Improve docs about feeler connections (Gleb Naumenko)
8a4dcda414 doc: Added default signet config for linearize script (gr0kchain)
f22d6a1142 log: Remove static log message "Initializing chainstate Chainstate [ibd] @ height -1 (null)" (practicalswift)
9b4fa0af40 net: Print error message if -proxy is specified without arguments (instead of continuing without proxy server) (practicalswift)
62dba9628d log: print unexpected version warning in validation log category (nthumann)
a3abeec33a policy/fees: remove a floating-point division by zero (Antoine Poinsot)
c36869bbf6 policy/fees: unify some duplicated for loops (Antoine Poinsot)
569d92a4d2 policy/fees: small readability improvements (Antoine Poinsot)
5b8cb35621 policy/fee: remove requireGreater parameter in EstimateMedianVal() (Antoine Poinsot)
dba8196b44 policy/fees: correct decay explanation comments (Antoine Poinsot)
deb52711a1 Remove header checks out of net_processing (Troy Giorshev)
52d4ae46ab Give V1TransportDeserializer CChainParams& member (Troy Giorshev)
5bceef6b12 Change CMessageHeader Constructor (Troy Giorshev)
1ca20c1af8 Add doxygen comment for ReceiveMsgBytes (Troy Giorshev)
890b1d7c2b Move checksum check from net_processing to net (Troy Giorshev)
2716647ebf Give V1TransportDeserializer an m_node_id member (Troy Giorshev)
f7b331ea85 rpc: add brackets to ConstructTransaction (Sjors Provoost)
d813d26f06 [rpc] send: various touch-ups (Sjors Provoost)
0fc1c685e1 [rpc] send: fix parsing replaceable option (Sjors Provoost)
efc9b85e6f Mark send RPC experimental (Sjors Provoost)
faa94cb167 test: Check that invalid peer traffic is accounted for (MarcoFalke)
fae243f0cb test: Remove confusing cast to same type (int to int) (MarcoFalke)
b3972bca9f doc: Mention signet in -help output (Hennadii Stepanov)
7be6ff6187 net: recognize TORv3/I2P/CJDNS networks (Vasil Dimov)
e0d73573a3 net: CNetAddr: add support to (un)serialize as ADDRv2 (Vasil Dimov)
fe42411b4b test: move HasReason so it can be reused (Vasil Dimov)
d2bb681f96 util: move HasPrefix() so it can be reused (Vasil Dimov)
090530cc24 feature: Added ability for users to add a startup command (Ben Carman)
4cc7171c98 wallet: no need for duplicate storage for ABANDON_HASH constant (Anthony Towns)
82cf4641f4 scripted-diff: Replace UINT256_ONE() with uint256::ONE (Anthony Towns)
183f308fff uint256: Update constructors to c++11, make ONE static (Anthony Towns)
a5a6965157 [Trivial] python help message (kanon)
92e28fa8b2 test: remove unused constants in functional tests (Sebastian Falbesoner)
a512925e19 [doc] Release notes (Amiti Uttarwar)
50f94b34a3 [rpc] Deprecate getpeerinfo addnode field (Amiti Uttarwar)
df091b9b50 [refactor] Rename test file to allow any getpeerinfo deprecations. (Amiti Uttarwar)
395acfa83a [rpc] Add connection type to getpeerinfo RPC, update tests (Amiti Uttarwar)
49c10a9ca4 [log] Add connection type to log statement (Amiti Uttarwar)
0fcaf73199 test: use explicit p2p objects where available (Oliver Gugger)
10d61505fe [test] remove confusing p2p property (gzhao408)
549d30faf0 scripted-diff: replace p2p with p2ps[0] in p2p_invalid_tx (gzhao408)
7a0de46aea [doc] sample code for test framework p2p objects (gzhao408)
784f757994 [refactor] clarify tests by referencing p2p objects directly (gzhao408)
72a1d5c6f3 validation: Remove review-only comments + assertions (Carl Dong)
3756853b15 docs: Move FindFilesToPrune{,Manual} doxygen comment (Carl Dong)
485899a93c style: Make FindFilesToPrune{,Manual} match style guide (Carl Dong)
3f5b5f3f6d validation: Move FindFilesToPrune{,Manual} to BlockManager (Carl Dong)
f8d4975ab3 validation: Move PruneOneBlockFile to BlockManager (Carl Dong)
74f73c783d validation: Pass in chainman to UnloadBlockIndex (Carl Dong)
4668ded6d6 validation: Move ~CMainCleanup logic to ~BlockManager (Carl Dong)
7a89f2e6c5 build: Fix target name (Hennadii Stepanov)
fa14f57fbc Assert that RPCArg names are equal to CRPCCommand ones (net, rpcwallet) (MarcoFalke)
0bd1184adf Remove unused LockAssertion struct (Hennadii Stepanov)
ab2a44297f Replace LockAssertion with a proper thread safety annotations (Hennadii Stepanov)
73f71e1996 refactor: Use explicit function type instead of template (Hennadii Stepanov)
759d94e70f Update zmq notification documentation and sample consumer (Gregory Sanders)
68c3c7e1bd Add functional tests for zmq sequence topic and mempool sequence logic (Gregory Sanders)
e76fc2b84d Add 'sequence' zmq publisher to track all block (dis)connects, mempool deltas (Gregory Sanders)
1b615e61bf zmq test: Actually make reorg occur (Gregory Sanders)
facaf9e61f doc: Document signet BIP (MarcoFalke)
faf0a26711 doc: Update comments for new chain settings (-signet and -chain=signet) (MarcoFalke)
fae0548686 fuzz: Remove needless guard (MarcoFalke)
77771a03df refactor: Remove SignetTxs::m_valid and use optional instead (MarcoFalke)
fa2ad5dae1 test: Run signet test even when wallet was not compiled (MarcoFalke)
e15344889a Clarify blocksonly whitelistforcerelay test (t-bast)
f07fb5a55e build: patch qt libpng to fix powerpc build (fanquake)
fa6bb0ce5d Assert that RPCArg names are equal to CRPCCommand ones (rawtransaction) (MarcoFalke)
fa80c81487 Assert that RPCArg names are equal to CRPCCommand ones (blockchain) (MarcoFalke)
ddefb5c0b7 p2p: Use the greatest common version in peer logic (Hennadii Stepanov)
e084d45562 p2p: Remove SetCommonVersion() from VERACK handler (Hennadii Stepanov)
8d2026796a refactor: Rename local variable nSendVersion (Hennadii Stepanov)
e9a6d8b13b p2p: Unify Send and Receive protocol versions (Hennadii Stepanov)
8258c4c007 test: some sanity checks for consensus logic (Anthony Towns)
e47ad375bf test: basic signet tests (Karl-Johan Alm)
4c189abdc4 test: add small signet fuzzer (practicalswift)
ec9b25d046 test: signet network selection tests (Karl-Johan Alm)
3efe298dcc signet: hard-coded parameters for Signet Global Network VI (2020-09-07) (Karl-Johan Alm)
c7898bca4e qt: update QT to support signet network (Karl-Johan Alm)
a8de47a1c9 consensus: add signet validation (Karl-Johan Alm)
e8990f1214 add signet chain and accompanying parameters (Karl-Johan Alm)
404682b7cd add signet basic support (signet.cpp) (Karl-Johan Alm)
a2147d7dad validation: move GetWitnessCommitmentIndex to consensus/validation (Karl-Johan Alm)
0d04784af1 Refactor the functional test (Gleb Naumenko)
83ad65f31b Address nits in ADDR caching (Gleb Naumenko)
81b00f8780 Add indexing ADDR cache by local socket addr (Gleb Naumenko)
42ec558542 Justify the choice of ADDR cache lifetime (Gleb Naumenko)
638441928a test: add parameterized constructor for msg_sendcmpct() (Sebastian Falbesoner)
a06eb03ded doc: Add comments and additional reviewers to CODEOWNERS file (Adam Jonas)
e02da22906 doc: Add CODEOWNERS file (Wladimir J. van der Laan)
6fe2ef2acb scripted-diff: Rename SendMessage to SendZmqMessage. (Daniel Kraft)
a3ffb6ebeb Replace zmqconfig.h by a simple zmqutil. (Daniel Kraft)
7f2ad1b9ac Use std::unique_ptr for CZMQNotifierFactory. (Daniel Kraft)
b93b9d5456 Simplify and fix notifier removal on error. (Daniel Kraft)
e15b1cfc31 Various cleanups in zmqnotificationinterface. (Daniel Kraft)
ead771bf6f qt: Rename qt-init thread before logging start (Hennadii Stepanov)
ad5f614bf3 qt: Name ClientModel timer QThread (Hennadii Stepanov)
2c7f5d8c2e qt: Name WalletController worker QThread (Hennadii Stepanov)
27dcc37d42 qt: Name RPCConsole executor QThread (Hennadii Stepanov)
23c35bf005 [test] add get_vsize util for more programmatic testing (gzhao408)
2233a93a10 [rpc] Return fee and vsize from testmempoolaccept (codeShark149)
a5f5374b43 test: create default wallet in extended tests (Sjors Provoost)
d26f0648f1 Tell users how to load or create a wallet when no wallet is loaded (Andrew Chow)
1bee1e6269 Do not create default wallet (Andrew Chow)
fc7f84a9ca tests: Add fuzzing harness for Keccak and SHA3_256 (practicalswift)
e1fdd2963b Test batch rpc with params (Gregory Sanders)
a8a64acaf3 [BroadcastTransaction] Remove unsafe move operator (Amiti Uttarwar)
125c038126 [p2p] Remove dead code (Amiti Uttarwar)
fc66d0a65c [p2p] Check for nullptr before dereferencing pointer (Adam Jonas)
cb79b9dbf4 [mempool] Revert unbroadcast set to tracking just txid (Amiti Uttarwar)
916d3596c4 help: Generate checkpoint height from chainparams (Luke Dashjr)
fc9278d162 build: AX_PTHREAD serial 27 (fanquake)
15c27c4441 build: split PTHREAD_* flags out of AM_LDFLAGS (fanquake)
68e3e22944 scripted-diff: add FUZZ_SUITE_LDFLAGS_COMMON (fanquake)
afecde8046 build: add PTHREAD_LIBS to LDFLAGS configure output (fanquake)
bf1f913c44 cli -netinfo: display multiple levels of details (Jon Atack)
077b3ac928 cli: change -netinfo optional arg from bool to int (Jon Atack)
4e2f2ddd64 cli: add getpeerinfo last_{block,transaction} to -netinfo (Jon Atack)
644be659ab cli: add -netinfo server version check and error message (Jon Atack)
ce57bf6cc0 cli: create peer connections report sorted by dir, minping (Jon Atack)
f5edd66e5d cli: create vector of Peer structs for peers data (Jon Atack)
3a0ab93e1c cli: add NetType enum struct and NetTypeEnumToString() (Jon Atack)
c227100919 cli: create local addresses, ports, and scores report (Jon Atack)
d3f77b736e cli: create inbound/outbound peer connections report (Jon Atack)
19377b2fd2 cli: start dashboard report with chain and version header (Jon Atack)
a3653c159e cli: tally peer connections by type (Jon Atack)
54799b66b4 cli: add ipv6 and onion address type detection helpers (Jon Atack)
12242b17a5 cli: create initial -netinfo option, NetinfoRequestHandler class (Jon Atack)
d11020019a Add OpenBSD instructions for building the Qt GUI (grubles)
92326d8976 [rpc] add send method (Sjors Provoost)
2c2a1445dc [rpc] add snake case aliases for transaction methods (Sjors Provoost)
1bc8d0fd59 [rpc] walletcreatefundedpsbt: allow inputs to be null (Sjors Provoost)
812037cb80 Change CSipHasher's count variable to uint8_t (Pieter Wuille)
b9c1a76481 Squashed 'src/secp256k1/' changes from 2ed54da18a..8ab24e8dad (Pieter Wuille)
8b39a87558 bugfix: make LoadWallet assigns status always (Akio Nakamura)
faf251d854 test: gettxoutproof duplicate txid (João Barbosa)
faf5eb45c4 test: Test empty array in gettxoutproof (MarcoFalke)
fa56e866e8 test: Run rpc_txoutproof.py even with wallet disabled (MarcoFalke)
faba790bd4 test: MiniWallet: Default fee_rate in send_self_transfer, Pass in utxo_to_spend (MarcoFalke)
fa65a11d0c test: bugfix: Actually pick largest utxo (MarcoFalke)
fb3bacce69 .gitignore: ignore qa-assets/ folder (eugene)
a9f201439a build: use DIR_FUZZ_SEED_CORPUS if specified for cov_fuzz target (eugene)
062e6699c4 script: fix zmq_sub.py file permissions (Jon Atack)
36f8e0cce7 doc: update PyZMQ installation instructions, ZeroMQ link (Jon Atack)
ab654c7d58 Unroll Keccak-f implementation (Pieter Wuille)
3f01ddb01b Add SHA3 benchmark (Pieter Wuille)
2ac8bf9583 Implement keccak-f[1600] and SHA3-256 (Pieter Wuille)
fa188c9c59 test: Use MiniWalet in p2p_feefilter (MarcoFalke)
fa39c62eb7 test: inline hashToHex (MarcoFalke)
fa7e407b50 Do not pass chain params to CheckForStaleTipAndEvictPeers twice (MarcoFalke)
bb6a32ce99 [net processing] Move Misbehaving() to PeerManager (John Newbery)
aa114b1c9b [net_processing] Move SendBlockTransactions into PeerManager (John Newbery)
3115e00f75 [net processing] Move MaybePunishPeerForTx to PeerManager (John Newbery)
e662e2d42a [net processing] Move ProcessOrphanTx to PeerManager (John Newbery)
b70cd890e3 [net processing] Move MaybePunishNodeForBlock into PeerManager (John Newbery)
d7778351bf [net processing] Move ProcessHeadersMessage to PeerManager (John Newbery)
64f6162651 [whitespace] tidy up indentation after scripted diff (John Newbery)
58bd369b0d scripted-diff: [net processing] Rename PeerLogicValidation to PeerManager (John Newbery)
2297b26b3c [net_processing] Pass chainparams to PeerLogicValidation constructor (John Newbery)
824bbd1ffb [move only] Collect all private members of PeerLogicValidation together (John Newbery)
296be8f58e Get rid of unused functions CTxMemPool::GetMemPoolChildren, CTxMemPool::GetMemPoolParents (Jeremy Rubin)
46d955d196 Remove mapLinks in favor of entry inlined structs with iterator type erasure (Jeremy Rubin)
fafb381af8 Remove mempool global (MarcoFalke)
fa0359c5b3 Remove mempool global from p2p (MarcoFalke)
eeee1104d7 Remove mempool global from init (MarcoFalke)
abac436760 wallet: Avoid multiple BerkeleyBatch in DelAddressBook (João Barbosa)
7bf6dfbb48 wallet: Remove path checking code from bitcoin-wallet tool (Russell Yanofsky)
77d5bb72b8 wallet: Remove path checking code from createwallet RPC (Russell Yanofsky)
a987438e9d wallet: Remove path checking code from loadwallet RPC (Russell Yanofsky)
8b5e7297c0 refactor: Pass wallet database into CWallet::Create (Russell Yanofsky)
3c815cfe54 wallet: Remove Verify and IsLoaded methods (Russell Yanofsky)
0d94e60625 refactor: Use DatabaseStatus and DatabaseOptions types (Russell Yanofsky)
b5b414151a wallet: Add MakeDatabase function (Russell Yanofsky)
288b4ffb6b Remove WalletLocation class (Russell Yanofsky)
637d8bce74 Change FILE_CHAR_BLOCKLIST to FILE_CHARS_DISALLOWED (Benoit Verret)
2f79e9d002 refactor: remove unused header <arpa/inet.h> in protocol.cpp (Sebastian Falbesoner)
56b018ca7f test: Fix flaky wallet_basic test (Fabian Jahr)
fa8e148714 ci: Double tsan CPU and Memory to avoid global timeout (MarcoFalke)
fa9ee52556 doc: Add doxygen comment to IsRBFOptIn (MarcoFalke)
faef4fc9b4 Remove mempool global from interfaces (MarcoFalke)
fa831684e5 refactor: Add IsRBFOptInEmptyMempool (MarcoFalke)
86d4cf42d9 Increase the ip address relay branching factor for unreachable networks (Pieter Wuille)
ac2ff4fb1e refactor: Avoid duplicate map lookup in ScriptToAsmStr (João Barbosa)
4294e70690 rawtransaction: fix argument in combinerawtransaction help message (Matthew Zipkin)
581b343d5b Add in/out connections to cli -getinfo (Jon Atack)
d9cc13e88d UNIX_EPOCH_TIME fixup in rpc getnettotals (Jon Atack)
1ab49b81cf Add in/out connections to rpc getnetworkinfo (Jon Atack)
020f0519ec refactor: CTxMemPool::IsUnbroadcastTx() requires CTxMemPool::cs lock (Hennadii Stepanov)
7c4bd0387a refactor: CTxMemPool::GetTotalTxSize() requires CTxMemPool::cs lock (Hennadii Stepanov)
fa5fcb032b refactor: CTxMemPool::ClearPrioritisation() requires CTxMemPool::cs lock (Hennadii Stepanov)
7140b31b90 refactor: CTxMemPool::ApplyDelta() requires CTxMemPool::cs lock (Hennadii Stepanov)
66e47e5e50 refactor: CTxMemPool::UpdateChild() requires CTxMemPool::cs lock (Hennadii Stepanov)
939807768a refactor: CTxMemPool::UpdateParent() requires CTxMemPool::cs lock (Hennadii Stepanov)
f1ee37319a wallet: Reload previously loaded wallets on GUI startup (Andrew Chow)
7984c39be1 test framework: serialize/deserialize inv type as unsigned int (Jon Atack)
407175e0c2 p2p: change CInv::type from int to uint32_t (Jon Atack)
752e6ad533 Protect localhost and block-relay-only peers from eviction (Suhas Daftuar)
6de9429087 qa: Changes v0.17.1 to v0.17.2 (nthumann)
eb1c5d090f [doc] Follow developer notes, add comment about missing default. (Amiti Uttarwar)
d5a57cef62 [doc] Describe connection types in more depth. (Amiti Uttarwar)
4829b6fcc6 [refactor] Simplify connection type logic in ThreadOpenConnections (Amiti Uttarwar)
1e563aed78 [refactor] Simplify check for block-relay-only connection. (Amiti Uttarwar)
da3a0be61b [test] Add explicit tests that connection types get set correctly (Amiti Uttarwar)
1d74fc7df6 [trivial] Small style updates (Amiti Uttarwar)
ff6b9081ad [doc] Explain address handling logic in process messages (Amiti Uttarwar)
dff16b184b [refactor] Restructure logic to check for addr relay. (Amiti Uttarwar)
a6ab1e81f9 [net] Remove unnecessary default args on OpenNetworkConnection (Amiti Uttarwar)
8d6ff46f55 scripted-diff: Rename `OUTBOUND` ConnectionType to `OUTBOUND_FULL_RELAY` (Amiti Uttarwar)
0bbe26a1af wallet: filter for keys only before record deser in salvage (Andrew Chow)
544e12a4e8 walletdb: Add KeyFilterFn to ReadKeyValue (Andrew Chow)
fa1cd9e1dd test: Remove unused lock arg from BitcoinTestFramework.wait_until (MarcoFalke)
fad2794e93 test: Rename wait until helper to wait_until_helper (MarcoFalke)
facb41bf1d test: Remove unused p2p_lock in VersionBitsWarningTest (MarcoFalke)
e36f802fa4 lint: add C++ code linter (fanquake)
c4be50fea3 remove usage of boost::bind (fanquake)
9bdde3c802 build: add /usr/local/ to LCOV_FILTER_PATTERN for macOS builds (eugene)
413e0d1d31 Avoid callback when -blocknotify is empty (João Barbosa)
b893688357 depends: Specify LDFLAGS to cmake as well (Carl Dong)
b3f541f618 depends: Prepend CPPFLAGS to C{,XX}FLAGS for CMake (Carl Dong)
8e121e5509 depends: Cleanup CMake invocation (Carl Dong)
8c7cd0c6d9 depends: More robust cmake invocation (Carl Dong)
3ecf0eca63 depends: Use $($(package)_cmake) instead of cmake (Carl Dong)
d780293e1e net: improve nLastBlockTime and nLastTXTime documentation (Jon Atack)
fb56d37612 p2p: ensure inv is GenMsgTx before ToGenTxid in inv processing (John Newbery)
aa3621385e test: use CInv::MSG_WITNESS_TX flag in p2p_segwit (Jon Atack)
24ee4f01ea p2p: make gtxid(.hash) and fAlreadyHave localvars const (Jon Atack)
b1c855453b p2p: use CInv block message helpers in net_processing.cpp (Jon Atack)
acd6642167 [net processing] Change AlreadyHaveTx() to take a GenTxid (John Newbery)
5fdfb80b86 [net processing] Change AlreadyHaveBlock() to take block_hash argument (John Newbery)
430e183b89 [net processing] Remove mempool argument from AlreadyHaveBlock() (John Newbery)
42ca5618ca [net processing] Split AlreadyHave() into separate block and tx functions (John Newbery)
39f1dc9445 p2p: remove nFetchFlags from NetMsgType TX and INV processing (Jon Atack)
471714e1f0 p2p: add CInv block message helper methods (Jon Atack)
c276df7759 zmq: enable tcp keepalive (mruddy)
36ec9801a4 test: Add chacha20 test vectors in muhash (Fabian Jahr)
0e2b400fea test: Add basic Python/C++ Muhash implementation parity unit test (Fabian Jahr)
b85543cb73 test: Add Python MuHash3072 implementation to test framework (Pieter Wuille)
ab30cece0e test: Move modinv to util and add unit test (Fabian Jahr)
ea74e10acf doc: Add best practice for annotating/asserting locks (Hennadii Stepanov)
2ee7743fe7 sync.h: Make runtime lock checks require compile-time lock checks (Anthony Towns)
23d71d171e Do not hide compile-time thread safety warnings (Hennadii Stepanov)
3ddc150857 Add missed thread safety annotations (Hennadii Stepanov)
af9ea55a72 Use LockAssertion utility class instead of AssertLockHeld() (Hennadii Stepanov)
3340dbadd3 Remove -zapwallettxes (Andrew Chow)
7356292e1d Have zmq reorg test cover mempool txns (Gregory Sanders)
a0f4f9c983 Add zmq test for transaction pub during reorg (Gregory Sanders)
2399a0600c Add test case for mempool->block zmq notification (Gregory Sanders)
e70512a83c Make ordering of zmq consumption irrelevant to functional test (Gregory Sanders)
fa3d9ce325 rpc: Assert that RPCArg names are equal to CRPCCommand ones (rpcdump) (MarcoFalke)
fa32c1d5ec rpc: Assert that RPCArg names are equal to CRPCCommand ones (zmq) (MarcoFalke)
faaa46dc20 rpc: Assert that RPCArg names are equal to CRPCCommand ones (mining) (MarcoFalke)
fa93bc14c7 rpc: Remove unused return type from appendCommand (MarcoFalke)
a104caeb40 Update the vcpkg checkout commit ID in appveyor config. (Aaron Clauson)
0374e821bd util: Hard code previous release tarball checksums (Hennadii Stepanov)
bd897ce79f scripted-diff: Move previous_release.py to test/get_previous_releases.py (Hennadii Stepanov)
6d1f51343c [rpc] fundrawtransaction, walletcreatefundedpsbt lock manually selected coins (Sjors Provoost)
772ea4844c wallet: Avoid recursive lock in IsTrusted (João Barbosa)
819f10f671 wallet, refactor: Immutable CWalletTx::pwallet (João Barbosa)
46fcac1e4b tests: Add fuzzing harness for ec_seckey_import_der(...) and ec_seckey_export_der(...) (practicalswift)
b667a90389 tests: Add fuzzing harness for SigHasLowR(...) and ecdsa_signature_parse_der_lax(...) (practicalswift)
24bf17602c gui refactor: Inline SplashScreen::ConnectWallet (Russell Yanofsky)
e4f4350471 refactor: Move wallet methods out of chain.h and node.h (Russell Yanofsky)
b266b3e0bf refactor: Create interfaces earlier during initialization (Russell Yanofsky)
3edc4e34fe bench: Prevent thread oversubscription (Hennadii Stepanov)
ce3e6a7cb2 bench: Allow skip benchmark (Hennadii Stepanov)
fa0572d0f3 Pass mempool reference to chainstate constructor (MarcoFalke)
c4b85ba704 Bugfix: Define and use HAVE_FDATASYNC correctly outside LevelDB (Luke Dashjr)
b35e74ba37 wallet, refactor: Remove duplicate map lookups in GetAddressBalances (João Barbosa)
fa1fc536bb test: Add tsan supp for leveldb::DBImpl::DeleteObsoleteFiles (MarcoFalke)
3ec8f4c080 Set appveyor vm version to previous Visual Studio 2019 release. (Aaron Clauson)
b536813cef build: add -fstack-clash-protection to hardening flags (fanquake)
076183b36b build: add -fcf-protection=full to hardening options (fanquake)
ca185cf5a1 doc: Document differences in bitcoind and bitcoin-qt locale handling (practicalswift)
8e35bf5906 scripted-diff: rename misbehavior members (John Newbery)
1f96d2e673 [net processing] Move misbehavior tracking state to Peer (John Newbery)
7cd4159ac8 [net processing] Add Peer (John Newbery)
aba03359a6 [net processing] Remove CNodeState.name (John Newbery)
4ec49f8d1e qt: Leverage the default "Create new receiving address" button (Hennadii Stepanov)
4227a8e1f3 qt: Make "Create new receiving address" default unconditionally (Hennadii Stepanov)
7b6d0f10a7 Remove old check for 3-byte shifted IP addresses from pre-0.2.9 node messages (Raúl Martínez (RME))
d3e8adfada util: remove c-string interfaces for DecodeBase58{Check} (Sebastian Falbesoner)
c91b241b48 Updated outdated help command for getblocktemplate (fixes#19625) (Jake Leventhal)
9034f6e30e Drop deprecated and unused GUARDED_VAR and PT_GUARDED_VAR annotations (Hennadii Stepanov)
df536883d2 chain: Remove UB CChain comparison (Carl Dong)
cc26fab48d tests: Add fuzzing harness for CNode (practicalswift)
b6dcc6d741 gui: Clarify block height label (Hennadii Stepanov)
a99a3c0bd6 rpc: Validate provided keys for query_options parameter in listunspent (pasta)
b8405b833a wallet: IsChange requires cs_wallet lock (João Barbosa)
d8441f30ff wallet: IsMine overloads require cs_wallet lock (João Barbosa)
a13cafc6c6 wallet: GetWalletTx requires cs_wallet lock (João Barbosa)
3de365e4f1 build: replace wingenminiupnpcstrings sed with a patch in miniupnpc package (fanquake)
bbc01a753d build: replace qtranslations lrelease sed with a patch in qt package (fanquake)
c723e4176e build: replace FreeType back-compat sed with a patch in qt package (fanquake)
3aaa39d436 build: replace pwd sed in qt package with a patch (fanquake)
9d440f4e11 build: remove no-longer needed qt workaround (fanquake)
bf85eace1a build: remove no-longer needed qt configure workaround (fanquake)
4af59a407a build: use patch rather than sed in zeromq package (fanquake)
cc107a3af1 build: use patch rather than sed in native_cctools package (fanquake)
865cb23a48 build: use patch rather than sed in fontconfig package (fanquake)
335bd7f8bc build: use patch rather than sed in Boost package (fanquake)
f36140d00c build: use patch rather than sed in bdb package (fanquake)
d841301010 test: Add docstring to wait_until() in util.py to warn about its usage (Seleme Topuz)
1343c86c7c test: Update wait_until usage in tests not to use the one from utils (Seleme Topuz)
fafc9d5af4 test: Fix intermittent issue in wallet_bumpfee (MarcoFalke)
fa347b2f25 test: Select at least the fee in wallet_bumpfee to avoid negative amounts (MarcoFalke)
519cae8fd6 gui: Delay interfaces::Node initialization (Russell Yanofsky)
102abff9eb gui: Replace interface::Node references with pointers (Russell Yanofsky)
91aced7c7e gui: Remove unused interfaces::Node references (Russell Yanofsky)
e133631625 gui: Partially revert #10244 gArgs and Params changes (Russell Yanofsky)
e2aa1a585a util: make EncodeBase64 consume Spans (Sebastian Falbesoner)
2bc207190e util: make EncodeBase32 consume Spans (Sebastian Falbesoner)
d5800da519 [test] Remove final references to mininode (John Newbery)
5e8df3312e test: resort imports (John Newbery)
85165d4332 scripted-diff: Rename mininode to p2p (John Newbery)
9e2897d020 scripted-diff: Rename mininode_lock to p2p_lock (John Newbery)
fa9d5902f7 scripted-diff: gArgs -> args (MarcoFalke)
fa33bc2dab init: Capture copy of blocknotify setting for BlockNotifyCallback (MarcoFalke)
fa40017706 init: Pass reference to ArgsManager around instead of relying on global (MarcoFalke)
fad84b7e14 test: Activate segwit in TestChain100Setup (MarcoFalke)
fa11ff2980 test: Pass empty tx pool to block assembler (MarcoFalke)
fa96574b0d test: Move doxygen comment to header (MarcoFalke)
102867c587 net: change CNetAddr::ip to have flexible size (Vasil Dimov)
1ea57ad674 net: don't accept non-left-contiguous netmasks (Vasil Dimov)
9ab4cafabd Refactor Get{Prevout,Sequence,Outputs}Hash to Get{Prevouts,Sequences,Outputs}SHA256. (Jeremy Rubin)
6510d0ff41 Add SHA256Uint256 helper functions (Jeremy Rubin)
b475d7d0fa Add single sha256 call to CHashWriter (Jeremy Rubin)
1ccb9f30c0 Move Win32 defines to configure.ac to ensure they are globally defined (Luke Dashjr)
f642b49af7 build: Drop ZeroMQ patch for glibc < 2.12 (Hennadii Stepanov)
079df9609e build: Drop ZeroMQ patch for Mingw-w64 < 4.0 (Hennadii Stepanov)
5da96210fc doc: release note for getpeerinfo last_block/last_transaction (Jon Atack)
cfef5a2c98 test: rpc_net.py logging and test naming improvements (Jon Atack)
21c57bacda test: getpeerinfo last_block and last_transaction tests (Jon Atack)
8a560a7d57 rpc: expose nLastBlockTime/TXTime as getpeerinfo last_block/transaction (Jon Atack)
02fbe3ae0b net: add nLastBlockTime/TXTime to CNodeStats, CNode::copyStats (Jon Atack)
daed542a12 [net_processing] Move ProcessMessage to PeerLogicValidation (John Newbery)
c556770b5e [net_processing] Change PeerLogicValidation to hold a connman reference (John Newbery)
366913e307 build: AX_BOOST_THREAD serial 33 (Igor Cota)
cf0681133a build: disable D-Bus on Android by default (Igor Cota)
fa30d5282c doc: Remove label from good first issue template (MarcoFalke)
15ae4a17c4 test/fuzz: add a seed corpus generation option to the test_runner (Antoine Poinsot)
4af4672525 build, qt: Add Qt version checking (Hennadii Stepanov)
30e336f785 build: Drop unused bitcoin_cv_qt58 (Hennadii Stepanov)
4148f55dd0 docs: Correct description for getblockstats's txs field (Nadav Ivgi)
5067c5acc3 [test] Add test for getblockheader verboseness (Torhte Butler)
8ed2f1ed78 Remove unused includes (Marcin Jachymiak)
cf095a53fc Move comment about BaseIndex::DB from TxIndex::DB (Marcin Jachymiak)
124e1ee134 doc: Add release notes for getindexinfo RPC (Fabian Jahr)
c447b09458 test: Add tests for getindexinfo RPC (Fabian Jahr)
667bc7a7f7 rpc: Add getindexinfo RPC (Fabian Jahr)
ed5cd12869 test: Distinguish between nodes(bitcoind) and peers(mininodes) in p2p_leak.py (Dhruv Mehta)
f6f082b934 test: remove `CNodeNoVersionIdle` from p2p_leak.py (Dhruv Mehta)
45cf55ccac test: remove `CNodeNoVersionMisbehavior` from p2p_leak.py (Dhruv Mehta)
333329dbda doc: Fix getmempoolancestor RPC result doc (MarcoFalke)
71e0f07e9c util: remove unused c-string variant of atoi64() (Sebastian Falbesoner)
356988e200 util: make EncodeBase58Check consume Spans (Sebastian Falbesoner)
f0fce0675d util: make EncodeBase58 consume Spans (Sebastian Falbesoner)
fa0538e94d ci: Set cirrus RAM to 8GB (MarcoFalke)
fa41810d0e ci: Run valgrind fuzzer on cirrus (MarcoFalke)
7e31ea9fa0 -maxapsfee: follow-up fixes (Karl-Johan Alm)
9f77b82176 doc: release notes for -maxapsfee (Karl-Johan Alm)
72ae20fc14 tests: add sync_all to fix race condition in wallet groups test (Karl-Johan Alm)
2f8a4c9a06 build: Enable some commonly enabled compiler diagnostics (practicalswift)
4792cad88c doc: comment out and add annotation to unused MSG_FILTERED_WITNESS_BLOCK (Adam Jonas)
fa55c1d5fd build: Add Werror=range-loop-analysis (MarcoFalke)
7668db3b08 Move only: Move CDiskTxPos to its own file (Marcin Jachymiak)
7f13dfb587 test: test the implicit avoid partial spends functionality (Karl-Johan Alm)
b82067bf69 wallet: try -avoidpartialspends mode and use its result if fees are below threshold (Karl-Johan Alm)
767073fb96 Shrink CAddress from 48 to 40 bytes on x64 (Vasil Dimov)
9e7894357e test: speedup p2p_feefilter.py by whitelisting peers (immediate tx relay) (Sebastian Falbesoner)
fe3f0cc44e test: use wait_until for invs matching in p2p_feefilter.py (Sebastian Falbesoner)
6d941923c3 test: add logging for p2p_feefilter.py (Sebastian Falbesoner)
fa330ec2fe test: Remove confusing and broken use of wait_until global (MarcoFalke)
fa6583c30b ci: Set increased --timeout-factor by default (MarcoFalke)
6cb8771173 build: Add missed gcov files to 'make clean' (Hennadii Stepanov)
7966aa424a Add variables for repeated scripts (MeshCollider)
fec8336ad9 Remove GetScriptForWitness function (MeshCollider)
b887060d06 Replace usage of GetScriptForWitness with GetScriptForDestination (MeshCollider)
642ad31b41 Add loadwallet and createwallet RPC load_on_startup options (Russell Yanofsky)
9adc2f80fc Refactor OutputGroups to handle effective values, fees, and filtering (Andrew Chow)
7d07e864b8 Use real value when calculating OutputGroup value (Andrew Chow)
0e279fe489 walletdb: Remove unused static functions from walletdb.h (Andrew Chow)
9f536d4fe9 wallettool: Have RecoverDatabaseFile return errors and warnings (Andrew Chow)
06e263a4e3 Call RecoverDatabaseFile directly from wallettool (Andrew Chow)
35cd2da623 test: Fix 'make cov' with clang (Hennadii Stepanov)
dca28634d7 test: ensure OP_1NEGATE satisfies BIP62 minimal push rule (Jon Atack)
e629d07199 Do not turn OP_1NEGATE in scriptSig into 0x0181 in signing code (Pieter Wuille)
f0aa8aeea5 test: add rpc_generate functional test (Jon Atack)
92d94ffb8d rpc: print useful help and error message for generate (Jon Atack)
8d32d2011d test: consider generate covered in _get_uncovered_rpc_commands() (Jon Atack)
e7448d6680 wallet: Don't override signing errors (Fabian Jahr)
fa77de2baa rpc: Assert that RPCArg names are equal to CRPCCommand ones (misc) (MarcoFalke)
fa50bdc755 rpc: Limit echo to 10 args (MarcoFalke)
fa89ca9b5b refactor: Use C++11 range based for loops to simplify rpc code (MarcoFalke)
fa459bdc87 rpc: Treat all args after a hidden arg as hidden as well (MarcoFalke)
f110b7c722 rpc: document returned error fields as optional if applicable (Sebastian Falbesoner)
f5c003d3ea [test] Add test for NODE_COMPACT_FILTER. (Jim Posen)
132b30d9c8 [net] Signal NODE_COMPACT_FILTERS if we're serving compact filters. (Jim Posen)
b3fbc94d4f Apply cfilters review fixups (John Newbery)
c133cdcdc3 Cap listsinceblock target_confirmations param (Adam Stein)
386ec192a5 Reduce cs_main lock accumulation during GUI startup (Jonas Schnelli)
d42cb79068 Optionally populate BlockAndHeaderTipInfo during AppInitMain (Jonas Schnelli)
b354a1480a Add BlockAndHeaderTipInfo to the node interface/appInit (Jonas Schnelli)
25e1d0bf41 RPCConsole, take initial chaintip data as parameter (Jonas Schnelli)
79d6332e9e moveonly: Fix indentation in bumpfee RPC (Andrew Chow)
431071c28a Hide bumpfee's psbt creation behavior behind -deprecatedrpc (Andrew Chow)
4638224f64 Add psbtbumpfee RPC (Andrew Chow)
75f9659d7a build: Add missed fuzz.coverage/ directory to .gitignore (Hennadii Stepanov)
8ebc0505e9 build: Add missed fuzz_filtered.info to COVERAGE_INFO (Hennadii Stepanov)
c71bdf93d7 build, test: Add support for llvm-cov (Hennadii Stepanov)
a51d0ad2de rpc: Improve addnode remove command error message (Fabian Jahr)
37a480e0cd [net] Add addpeeraddress RPC method (John Newbery)
ae8051bbd8 [test] Test that getnodeaddresses() can return all known addresses (John Newbery)
f26502e9fc [addrman] Specify max addresses and pct when calling GetAddresses() (John Newbery)
01e283068b [net] Remove unnecessary default args on CNode constructor (Amiti Uttarwar)
bc5d65b3ca [refactor] Remove IsOutboundDisconnectionCandidate (Amiti Uttarwar)
2f2e13b6c2 [net/refactor] Simplify multiple-connection checks (Amiti Uttarwar)
7f7b83deb2 [net/refactor] Rework ThreadOpenConnections logic (Amiti Uttarwar)
35839e963b [net] Fix bug where AddrFetch connections would be counted as outbound full relay (Amiti Uttarwar)
4972c21b67 [net/refactor] Clarify logic for selecting connections in ThreadOpenConnections (Amiti Uttarwar)
60156f5fc4 [net/refactor] Remove fInbound flag from CNode (Amiti Uttarwar)
7b322df629 [net/refactor] Remove m_addr_fetch member var from CNode (Amiti Uttarwar)
14923422b0 [net/refactor] Remove fFeeler flag from CNode (Amiti Uttarwar)
49efac5cae [net/refactor] Remove m_manual_connection flag from CNode (Amiti Uttarwar)
d3698b5ee3 [net/refactor] Add connection type as a member var to CNode (Amiti Uttarwar)
46578c03e9 [doc] Describe different connection types (Amiti Uttarwar)
442abae2ba [net/refactor] Add AddrFetch connections to ConnectionType enum (Amiti Uttarwar)
af59feb052 [net/refactor] Extract m_addr_known logic from initializer list (Amiti Uttarwar)
e1bc29812d [net/refactor] Add block relay only connections to ConnectionType enum (Amiti Uttarwar)
0e52a659a2 [net/refactor] Add feeler connections to ConnectionType enum (Amiti Uttarwar)
1521c47438 [net/refactor] Add manual connections to ConnectionType enum (Amiti Uttarwar)
26304b4100 [net/refactor] Introduce an enum to distinguish type of connection (Amiti Uttarwar)
3f1b7140e9 scripted-diff: Rename OneShot to AddrFetch (Amiti Uttarwar)
dac7a111bd refactor: test: use _ variable for unused loop counters (Sebastian Falbesoner)
4c0731f9c5 Deduplicate missing parents of orphan transactions (Suhas Daftuar)
8196176243 Rewrite parent txid loop of requested transactions (Suhas Daftuar)
01cd24c226 doc: set CC_FOR_BUILD when building on OpenBSD (fanquake)
ca2e474372 Fix a compiler warning: unused GetDevURandom() (Vasil Dimov)
33a84e8f40 build: Update and sort package list in gitian-linux.yml (Hennadii Stepanov)
95051682be build: Drop old hack which is unneeded now (Hennadii Stepanov)
9e165d0de4 test: Wait for 'cmpctblock' in p2p_compactblocks when it is expected (Ben Woosley)
fa4dfd215f test: Wait until is_connected in add_p2p_connection (MarcoFalke)
566aada386 Test that wtxid relay peers add wtxid to reject filter (Gregory Sanders)
0fea6ede1b Restore test case for p2p transaction blinding (Gregory Sanders)
0a8aa626dd refactor: Make HexStr take a span (Wladimir J. van der Laan)
1e72b68ab3 Replace `hidden service` with `onion service` (Riccardo Masutti)
90bd476ea6 build: make clean removes .gcda and .gcno files from fuzz directory (eugene)
edc316020e test: Remove duplicate NodeContext hacks (Russell Yanofsky)
9f88ded82b test addition of unknown segwit spends to txid reject filter (Gregory Sanders)
7989901c7e Add txids with non-standard inputs to reject filter (Suhas Daftuar)
70452a070b build: set minimum required Boost to 1.58 (fanquake)
fa5288cf5c contrib: Fixup valgrind suppressions file (MarcoFalke)
1d8338d6b7 util: use HAVE_FDATASYNC to determine fdatasync() use (fanquake)
82fc4017b7 test: Catch decimal.InvalidOperation from TestNodeCLI#send_cli (Ben Woosley)
31cf68a3ad [util] add RunCommandParseJSON (Sjors Provoost)
c17f54ee53 [ci] use boost::process (Sjors Provoost)
32128ba682 [doc] include Doxygen comments for HAVE_BOOST_PROCESS (Sjors Provoost)
3c84d85f7d [build] msvc: add boost::process (Sjors Provoost)
c47e4bbf0b [build] make boost-process opt-in (Sjors Provoost)
929cda5470 configure: add ax_boost_process (Sjors Provoost)
8314c23d7b [depends] boost: patch unused variable in boost_process (Sjors Provoost)
72351784b3 lint: Remove travis env var from commit linter (Fabian Jahr)
63e9e40b73 test: Add LockStackEmpty() (Hennadii Stepanov)
42b2a95373 test: Repeat deadlock tests (Hennadii Stepanov)
1f96be25b0 Preserve initial state if push_lock() throws exception (Hennadii Stepanov)
faa9a74c9e test: Fail wait_until early if connection is lost (MarcoFalke)
f916847d2b rpc: Document getwalletinfo's unlocked_until field as optional (Justin Moon)
77c507358b Make Hash[160] consume range-like objects (Pieter Wuille)
02c4cc5c5d Make CHash256/CHash160 output to Span (Pieter Wuille)
0ef97b1b10 Make MurmurHash3 consume Spans (Pieter Wuille)
e549bf8a9a Make CHash256 and CHash160 consume Spans (Pieter Wuille)
2a2182c387 Make script/standard's BaseHash Span-convertible (Pieter Wuille)
e63dcc3a67 Add MakeUCharSpan, to help constructing Span<[const] unsigned char> (Pieter Wuille)
567825049f Make uint256 Span-convertible by adding ::data() (Pieter Wuille)
131a2f0337 scripted-diff: rename base_blob::data to m_data (Pieter Wuille)
3bd67ba5a4 Test addr response caching (Gleb Naumenko)
cf1569e074 Add addr permission flag enabling non-cached addr sharing (Gleb Naumenko)
acd6135b43 Cache responses to addr requests (Gleb Naumenko)
7cc0e8101f Remove useless 2500 limit on AddrMan queries (Gleb Naumenko)
ded742bc5b Move filtering banned addrs inside GetAddresses() (Gleb Naumenko)
334de75885 scripted-diff: Remove Reference Links (Robert)
05e2740d92 doc: Add historical release notes for 0.20.1 (Wladimir J. van der Laan)
10b7a6d532 refactor: make txmempool interface use GenTxid (Pieter Wuille)
5c124e1740 refactor: make FindTxForGetData use GenTxid (Pieter Wuille)
a2bfac8935 refactor: use GenTxid in tx request functions (Pieter Wuille)
e65d115b72 test: request parents of orphan from wtxid relay peer (Anthony Towns)
900d7f6c07 p2p: enable fetching of orphans from wtxid peers (Pieter Wuille)
9efd86a908 refactor: add GenTxid (=txid or wtxid) type and use it for tx request logic (Pieter Wuille)
d362f19355 doc: list support for BIP 339 in doc/bips.md (Pieter Wuille)
ae4958be95 rpc: RPCResult Type of MempoolEntryDescription should be OBJ. If multiple entries are possible, wrapping Type should be OBJ_DYN. fixes#19579 (Chris L)
e60ef21b8a doc: Clang 8 or later is required with FORCE_USE_SYSTEM_CLANG (fanquake)
284a969cc0 Linter to check commit message formatting (Amir Ghorbanian)
fae8c28dae Pass mempool pointer to GetCoinsCacheSizeState (MarcoFalke)
fac674db20 Pass mempool pointer to UnloadBlockIndex (MarcoFalke)
faec851b6e test: Simplify cs_main locks (MarcoFalke)
8ed9002cd1 refactor: use local argsmanager in CRegTestParams (Ivan Metlushko)
9b20f66828 scripted-diff: Replace gArgs with local argsman (Ivan Metlushko)
a316e9ce26 refactor: add unused ArgsManager to replace gArgs (Ivan Metlushko)
0fcff547d5 walletdb: Ensure that having no database handle is a failure (Andrew Chow)
da039d2a91 Remove BDB dummy databases (Andrew Chow)
0103d6434e Introduce DummyDatabase and use it in the tests (Andrew Chow)
c251d710a4 p2p, refactoring: use CInv helpers in net_processing.cpp (Jon Atack)
4254cd9f8f p2p: add CInv transaction message helper methods (Jon Atack)
78c312c983 Replace current benchmarking framework with nanobench (Martin Ankerl)
82dee87933 test: test decodepsbt fee calculation (count input value only once per UTXO) (Sebastian Falbesoner)
2c6a02e024 Clean message_count and last_message (Troy Giorshev)
74507ce71e walletdb: Remove BerkeleyBatch friend class from BerkeleyDatabase (Andrew Chow)
00f0041351 No need to check for duplicate fileids in all dbenvs (Andrew Chow)
d86efab370 walletdb: Move Db->open to BerkeleyDatabase::Open (Andrew Chow)
4fe4b3bf1b walletdb: track database file use as m_refcount within BerkeleyDatabase (Andrew Chow)
65fb8807ac Combine BerkeleyEnvironment::Verify into BerkeleyDatabase::Verify (Andrew Chow)
65d0f1a533 devtools: Add security check for separate_code (Wladimir J. van der Laan)
2e9e6377f1 build: add -Wl,-z,separate-code to hardening flags (fanquake)
bcfebb6d55 net: save the network type explicitly in CNetAddr (Vasil Dimov)
100c64a95b net: document `enum Network` (Vasil Dimov)
f19fdd47a6 test: add test for CChainState::ResizeCoinsCaches() (James O'Beirne)
8ac3ef4699 add ChainstateManager::MaybeRebalanceCaches() (James O'Beirne)
f36aaa6392 Add CChainState::ResizeCoinsCaches (James O'Beirne)
b223111da2 txdb: add CCoinsViewDB::ChangeCacheSize (James O'Beirne)
fae656144e travis: Re-enable s390x (MarcoFalke)
fdf697fe75 ci: Increase CCACHE_SIZE in some builds on Travis (Hennadii Stepanov)
5962522fbc depends: bump native_cctools for fixed lto with external clang (Cory Fields)
00d1ba7aaa depends: enable lto support for Apple's ld64 (Cory Fields)
623f66554d Fix .gitignore for src/test/fuzz directory (Hennadii Stepanov)
a8865f8b72 [net processing] Tidy up Misbehaving() (John Newbery)
d15b3afb4c [net processing] Always supply debug message to Misbehaving() (John Newbery)
634144a1c2 [net processing] Fixup MaybeDiscourageAndDisconnect() style (John Newbery)
fa5979d12f rpc: Avoid useless mempool query in gettxoutproof (MarcoFalke)
fa1f7f28cb rpc: Style fixups in gettxoutproof (MarcoFalke)
7b3851e947 refactor: Drop unused CBufferedFile::Seek() (Hennadii Stepanov)
fa2ae0ac8d span: Add Span::empty() and use it in script/descriptor (MarcoFalke)
fa8a992589 Work around memory-aliasing in descriptor ParsePubkey (MarcoFalke)
655b195747 [net processing] Continue SendMessages processing if not disconnecting peer (John Newbery)
a49781e56d [net processing] Only call MaybeDiscourageAndDisconnect from SendMessages (John Newbery)
a1d5a428a2 [net processing] Fix bad indentation in SendMessages() (John Newbery)
1a1c23f8d4 [net processing] Change cs_main TRY_LOCK to LOCK in SendMessages() (John Newbery)
ef3d4ce4c3 build: call AC_PATH_TOOL for dsymutil in macOS cross-compile (fanquake)
9c69cfe4c5 Add <datadir>/settings.json persistent settings storage. (Russell Yanofsky)
eb682c5700 util: Add ReadSettings and WriteSettings functions (Russell Yanofsky)
2aac093a3d test: Add test coverage for -networkactive option (Hennadii Stepanov)
3c58129b12 net: Log network activity status change unconditionally (Hennadii Stepanov)
62fe6aa87e net: Add -networkactive option (Hennadii Stepanov)
d416ae560e walletdb: Introduce WalletDatabase abstract class (Andrew Chow)
2179dbcbcd walletdb: Add BerkeleyDatabase::Open dummy function (Andrew Chow)
71d28e7cdc walletdb: Introduce AddRef and RemoveRef functions (Andrew Chow)
27b2766384 walletdb: Move BerkeleyDatabase::Flush(true) to Close() (Andrew Chow)
0a4f1422cd Further improve comments around recentRejects (Suhas Daftuar)
0e20cfedb7 Disconnect peers sending wtxidrelay message after VERACK (Suhas Daftuar)
cacd85209e test: Use wtxid relay generally in functional tests (Fabian Jahr)
8d8099e97a test: Add tests for wtxid tx relay in segwit test (Fabian Jahr)
9a5392fdf6 test: Update test framework p2p protocol version to 70016 (Fabian Jahr)
dd78d1d641 Rename AddInventoryKnown() to AddKnownTx() (Suhas Daftuar)
4eb515574e Make TX_WITNESS_STRIPPED its own rejection reason (Suhas Daftuar)
97141ca442 Delay getdata requests from peers using txid-based relay (Suhas Daftuar)
46d78d47de Add p2p message "wtxidrelay" (Suhas Daftuar)
2d282e0cba ignore non-wtxidrelay compliant invs (Anthony Towns)
ac88e2eb61 Add support for tx-relay via wtxid (Suhas Daftuar)
8e68fc246d Add wtxids to recentRejects instead of txids (Suhas Daftuar)
144c385820 Add wtxids of confirmed transactions to bloom filter (Suhas Daftuar)
85c78d54af Add wtxid-index to orphan map (Suhas Daftuar)
08b39955ec Add a wtxid-index to mapRelay (Suhas Daftuar)
60f0acda71 Just pass a hash to AddInventoryKnown (Suhas Daftuar)
c7eb6b4f1f Add wtxid to mempool unbroadcast tracking (Amiti Uttarwar)
2b4b90aa8f Add a wtxid-index to the mempool (Suhas Daftuar)
fa56eda58e log: Avoid treating remote misbehvior as local system error (MarcoFalke)
fa492895b5 refactor: Switch ValidationState mode to C++11 enum class (MarcoFalke)
1554b54d47 Static asserts for consistency of fee defaults. (Daniel Kraft)
2a701a1c42 build: pass -fcommon when building genisoimage (fanquake)
c8992e8959 test: Fix fuzzer compilation on macOS fixes#19557 (freenancial)
c0f09c2c9d fuzz: add missing overrides to signature_checker (Jon Atack)
d0ea9bab28 walletdb: Don't remove database transaction logs and instead error (Andrew Chow)
ec4c6a17e8 scripted-diff: replace MAX_BLOCKS_ONLY_CONNECTIONS with MAX_BLOCK_RELAY_ONLY_CONNECTIONS (glowang)
12410b1feb test: fix intermittent p2p_ibd_txrelay race, add test_framework.py#wait_until (Jon Atack)
facdf530c7 contrib: Clean up previous_releases.py (MarcoFalke)
5fa067a27d Remove unnecessary blockfile SetPos (Tom Harding)
9c34aff393 Remove previous_release.sh (Brian Liotti)
e1e5960e10 script: Add previous_release.py (Brian Liotti)
4455949d6f Make test DoS_mapOrphans deterministic (David Reikher)
6be3eebd74 doc: Update macOS cross compilation dependencies for Focal (Hennadii Stepanov)
55057ffc51 rpc: deduplicate WriteHDKeypath() used in decodepsbt (Sebastian Falbesoner)
1cdc2a642b fuzz: fix unused variable addrdb compiler warning (Jon Atack)
ad6c34881d tests: Add fuzzing harness for CBlockPolicyEstimator::{Read,Write} (policy/fees.h) (practicalswift)
614e0807a8 tests: Add fuzzing harness for CBufferedFile::{SetPos,GetPos,GetType,GetVersion} (stream.h) (practicalswift)
7bcc71e5f8 tests: Add fuzzing harness for LoadExternalBlockFile(...) (validation.h) (practicalswift)
9823376030 tests: Add fuzzing harness for CBufferedFile (streams.h) (practicalswift)
f3aa659be6 tests: Add fuzzing harness for CAutoFile (streams.h) (practicalswift)
e507c0799d tests: Add serialization/deserialization fuzzing helpers WriteToStream(…)/ReadFromStream(…) (practicalswift)
e48094a506 tests: Add FuzzedAutoFileProvider which provides a CAutoFile interface to FuzzedDataProvider (practicalswift)
9dbcd6854c tests: Add FuzzedFileProvider which provides a FILE* interface to FuzzedDataProvider using fopencookie (practicalswift)
0cdf2a77dd ci: add tsan debug symbols option (Russell Yanofsky)
9a2f12680b ci: Add tsan suppression for race in DatabaseBatch (Hennadii Stepanov)
6457361e90 qt: Fix QFileDialog for static builds (Hennadii Stepanov)
cb31ee01b4 [test] feefilter during and after IBD (gzhao408)
e80259f197 Additionally treat Tx.nVersion as unsigned in joinpsbts (Matt Corallo)
970de70bdd Dump transaction version as an unsigned integer in RPC/TxToUniv (Matt Corallo)
de4fedb6c3 depends: Add documentation for FORCE_USE_SYSTEM_CLANG make flag (Carl Dong)
fe98999dcf depends: Reformat make options as definition list (Carl Dong)
60c55b1b9b depends: Add justifications for macOS clang flags (Carl Dong)
6b8e497eea depends: specify libc++ header location for darwin (Cory Fields)
156b604203 depends: force a new host id string if FORCE_USE_SYSTEM_CLANG is in use (Cory Fields)
c9c572a367 depends: Allow building with system clang (Carl Dong)
e6e5c8d6ca depends: Decouple toolchain + binutils (Carl Dong)
f58c4b538e [tests] Remove unnecessary cs_mains in denialofservice_tests (Matt Corallo)
80968cff68 scripted-diff: rename movie folder to animation (Peter Bushnell)
784ef8be41 gui: Show permissions instead of whitelisted (Wladimir J. van der Laan)
0c8461a88e refactor: replace CConnman pointers by references in net_processing.cpp (Sebastian Falbesoner)
bc74a40a56 net: improve encapsulation of CNetAddr (Vasil Dimov)
0ecff9dd34 Improve "detected inconsistent lock order" error message (Hennadii Stepanov)
bbe9cf4fe4 test: Improve "potential deadlock detected" exception message (Hennadii Stepanov)
35599344c8 Fix mistakenly swapped "previous" and "current" lock orders (Hennadii Stepanov)
fa7592bfa8 rpc: Update server to use new RPCHelpMan (MarcoFalke)
aaaaad5627 rpc: Add option to hide RPCArg (MarcoFalke)
fa9708f94c rpc: Assert that passed arg names are equal to hardcoded ones (MarcoFalke)
faaeb2b0b3 rpc: Add CRPCCommand constructor which takes RPCHelpMan (MarcoFalke)
fa8ec00061 rpc: Check that left section is not multiline (MarcoFalke)
bd315eb5e2 qt: Get rid of cursor in out-of-focus labels (Hennadii Stepanov)
fa108d6a75 test: update tests for peer discouragement (Jon Atack)
1a9f462caa gui, doc: rm Ban Score in GUI Peers window/release notes updates (Jon Atack)
addf18da95 Call SHA256AutoDetect in benchmark setup (Pieter Wuille)
cca7c577d5 tests: Add fuzzing harness for ChaCha20Poly1305AEAD (practicalswift)
2fc4e5916c tests: Add fuzzing harness for ChaCha20 (practicalswift)
e9e8aac029 tests: Add fuzzing harness for CHKDF_HMAC_SHA256_L32 (practicalswift)
ec86ca1aaa tests: Add fuzzing harness for poly1305_auth(...) (practicalswift)
4cee53bba7 tests: Add fuzzing harness for AES256CBCEncrypt/AES256CBCDecrypt (practicalswift)
9352c32325 tests: Add fuzzing harness for AES256Encrypt/AES256Decrypt (practicalswift)
6cef3652d1 build: fix -Wformat-security check when compiling with GCC (fanquake)
fa53635381 util: Make Assert work with any value (MarcoFalke)
75122780e2 Increment input value sum only once per UTXO in decodepsbt (Andrew Chow)
fabd33b541 test: Fix intermittent failure in wallet_encryption (MarcoFalke)
314b49bd50 gui: Fix regression in GUI console (Hennadii Stepanov)
b82f0ca4d5 walletdb: Add MakeBatch function to BerkeleyDatabase and use it (Andrew Chow)
eac9200814 walletdb: Refactor DatabaseBatch abstract class from BerkeleyBatch (Andrew Chow)
fa9f20b647 log: Properly log txs rejected from mempool (MarcoFalke)
ca3585a483 [net/net processing] check banman pointer before dereferencing (John Newbery)
d842e6ac96 doc: Add non-thread-safe note to FeeFilterRounder::round() (Hennadii Stepanov)
60824b3c3a ci: Fix configure options for macOS builds (Hennadii Stepanov)
687939e3d2 ci: Drop Homebrew caching while using Homebrew addon on Travis (Hennadii Stepanov)
557d3f1cc0 ci: Do not activate Travis ccache caching strategy (Hennadii Stepanov)
2d747428e2 ci: Disable functional tests on forked repos to avoid timeouts for macOS (Hennadii Stepanov)
06059b0c2a net: rename DEFAULT_BANSCORE_THRESHOLD to DISCOURAGEMENT_THRESHOLD (Jon Atack)
1d4024bca8 net: remove -banscore configuration option (Jon Atack)
f32c408f3a Make sure unconfirmed parents are requestable (Pieter Wuille)
c4626bcd21 Drop setInventoryTxToSend based filtering (Pieter Wuille)
43f02ccbff Only respond to requests for recently announced transactions (Pieter Wuille)
b24a17f039 Introduce constant for mempool-based relay separate from mapRelay caching (Pieter Wuille)
a9bc563803 Swap relay pool and mempool lookup (Pieter Wuille)
b03697b68e doc: CONTRIBUTING.md improvements (Jon Atack)
fa740d4cea doc: move-only release notes (MarcoFalke)
faa3d2eee1 doc: Remove release notes of backports (MarcoFalke)
d0cc1f6df7 qt: Disable toolbar when overlay is shown (Hennadii Stepanov)
e74cd2083d qt, refactor: Cleanup ModalOverlay slots (Hennadii Stepanov)
7bb6f9bfdb [protocol] Remove unused GETHEADERS_VERSION (John Newbery)
37a934e6b3 [protocol] Remove unused CADDR_TIME_VERSION (John Newbery)
08fc6f6cfc [rpc] refactor: consolidate sendmany and sendtoaddress code (Sjors Provoost)
facd7dd3d1 wallet: Fix typo in comments; Simplify assert (MarcoFalke)
1e58bcc9af wallet: Fix clang build in Mac (Anthony Fieroni)
a66a7a1a70 walletdb: don't reinitialize desc cache with multiple cache entries (Andrew Chow)
fa73493930 refactor: Use C++11 range-based for loop (MarcoFalke)
fa7b164d62 wallet: Never schedule MaybeCompactWalletDB when -flushwallet is off (MarcoFalke)
faf8401c19 wallet: Pass unused args to StartWallets (MarcoFalke)
fa6c186436 gui tests: Limit life-time of dummy testing setup (MarcoFalke)
fa28a61897 test: Add smoke test to check that wallets are flushed by default (MarcoFalke)
3a9aba21a4 Split SetWalletFlags into Add/LoadWalletFlags (Andrew Chow)
d9cd095b59 Split SetActiveScriptPubKeyMan into Add/LoadActiveScriptPubKeyMan (Andrew Chow)
0122fbab4c Split SetHDChain into AddHDChain and LoadHDChain (Andrew Chow)
9c59f9c285 Fix ZapSelectTx to sync wallet spends (Anthony Fieroni)
97846d7f5b tests: Add fuzzing harness for BanMan (practicalswift)
deba199f1c tests: Add ConsumeSubNet(...). Move and increase coverage in ConsumeNetAddr(...). (practicalswift)
fab5586122 doc: Use precise permission flags where possible (MarcoFalke)
20d31bdd92 tests: Avoid fuzzer-specific nullptr dereference in libevent when handling PROXY requests (practicalswift)
f20b359bb9 cli: reduce DefaultRequestHandler memory allocations (Jon Atack)
57b0c0a93a Drop CADDR_TIME_VERSION checks now that MIN_PEER_PROTO_VERSION is greater (Ben Woosley)
fa3365430c net: Use mockable time for ping/pong, add tests (MarcoFalke)
faab4aaf2f util: Add count_microseconds helper (MarcoFalke)
41d55d3057 doc: getpeerinfo banscore deprecation release note (Jon Atack)
dd54e3796e test: getpeerinfo banscore deprecation test (Jon Atack)
8c7647b3fb rpc: deprecate banscore field in rpc getpeerinfo (Jon Atack)
fa6d5ab674 refactor: Remove unused BlockAssembler::pblock member var (MarcoFalke)
a4a3fc4cd2 doc: improve subtree check instructions (Sjors Provoost)
fa0540cd46 net: Extract download permission from noban (MarcoFalke)
1cabbddbca refactor: Use uint16_t instead of unsigned short (Aaron Hook)
fc6a637a01 qt: increase console command max length (10xcryptodev)
c858302280 Change format of log2_work for uniform output (zero-padded) (jmorgan)
2b78a11b48 doc: afl fuzzing comment about afl-gcc and afl-g++ (nsa)
2894e94d17 Updates msvc build to use ISO standard C++17. (Aaron Clauson)
4b5ac25881 Drop unused CDBWrapper methods (Hennadii Stepanov)
1e9bfd4926 qt: Reset toolbar after all wallets are closed (Hennadii Stepanov)
0b8ba84659 banlist: log post-swept banlist size at startup (fanquake)
b9253c7d20 tools: clang-format 6 compatibility (Jon Atack)
e846a2a1d9 refactor: clean up PeriodicFlush() (John Newbery)
fa8a341b88 wallet: Replace CDataStream& with CDataStream&& where appropriate (MarcoFalke)
fa021e9a5b wallet: Remove confusing double return value ret+success (MarcoFalke)
e8a2822119 [net] Don't try to take cs_inventory before deleting CNode (John Newbery)
3556227ddd [net] Make cs_inventory a non-recursive mutex (John Newbery)
344e831de5 [net processing] Remove PushBlockInventory and PushBlockHash (John Newbery)
2ad58381ff Clean up separated ban/discourage interface (Pieter Wuille)
b691f2df5f Replace automatic bans with discouragement filter (Pieter Wuille)
40506bf93f test: Test gettxouttsetinfo hash_type option (Fabian Jahr)
f17a4d1c4d rpc: Add hash_type NONE to gettxoutsetinfo (Fabian Jahr)
a712cf6f68 rpc: gettxoutsetinfo can specify hash_type (only legacy option for now) (Fabian Jahr)
605884ef21 refactor: Extract GetBogoSize function (Fabian Jahr)
a76dafa51d ci: Add tsan suppression for race in BerkeleyBatch (Hennadii Stepanov)
d8e9ca66d1 walletdb: Move Rewrite into BerkeleyDatabase (Andrew Chow)
91d109156d walletdb: Move PeriodicFlush into WalletDatabase (Andrew Chow)
8f1bcf8b7b walletdb: Combine VerifyDatabaseFile and VerifyEnvironment (Andrew Chow)
961e667600 Remove cached directories and associated script blocks from appveyor CI configuration. (Aaron Clauson)
fab80fef61 refactor: Remove unused EnsureChainman (MarcoFalke)
fa34587f1c scripted-diff: Replace EnsureChainman with Assert in unit tests (MarcoFalke)
fa6ef701ad util: Add Assert identity function (MarcoFalke)
fa457fbd33 move-only: Move NDEBUG compile time check to util/check (MarcoFalke)
fa8e6df282 ci: Run tsan ci config on cirrus (MarcoFalke)
fa0dfdf447 refactor: Remove confusing BlockIndex global (MarcoFalke)
a8d39b8840 doc: explain why passing -mlinker-version is required (fanquake)
92bc268e4a build: Detect missed pkg-config early (Hennadii Stepanov)
1739eb23d8 build: Drop unused use_pkgconfig variable (Hennadii Stepanov)
a661449a2e build: Drop use_pkgconfig check for libmultiprocess check (Hennadii Stepanov)
90b95e7929 build: Drop dead non-pkg-config code for libevent check (Hennadii Stepanov)
44a14afbb8 build: Drop dead non-pkg-config code for qrencode check (Hennadii Stepanov)
10cbae0c39 build: Drop dead non-pkg-config code for ZMQ check (Hennadii Stepanov)
06cfc9cadf build: Fix indentation in UNIVALUE check (Hennadii Stepanov)
6fd2118e77 build: Drop dead non-pkg-config code for UNIVALUE check (Hennadii Stepanov)
e9edbe4dbd build: Always use pkg-config (Hennadii Stepanov)
9e2e753b06 build: Always define ZMQ_STATIC for MinGW (Hennadii Stepanov)
54b5eb2b14 tests: Add std::locale::global to list of locale dependent functions in lint-locale-dependence.sh (practicalswift)
84d295e513 tests: Check that segwit inputs in psbt have both UTXO types (Andrew Chow)
4600479058 psbt: always put a non_witness_utxo and don't remove it (Andrew Chow)
5279d8bc07 psbt: Allow both non_witness_utxo and witness_utxo (Andrew Chow)
72f6bec1da rpc: show both UTXOs in decodepsbt (Andrew Chow)
870f0cd2a0 build: Add MemorySanitizer (MSan) in Travis to detect use of uninitialized memory (practicalswift)
fa12d8d3ed ci: Add tsan suppression for race in wallet (MarcoFalke)
fa927ff884 Enable Wswitch for OutputType (MarcoFalke)
faddad71f6 Remove confusing OutputType::CHANGE_AUTO (MarcoFalke)
fa2eb38352 interfaces: Remove unused getDefaultChangeType (MarcoFalke)
fa23fbb42f ci: Run all tests on native mac again (MarcoFalke)
faebb60b8d doc: Remove outdated comment in TransactionTablePriv (MarcoFalke)
fa575f3461 wallet: Replace boost::none with nullopt (MarcoFalke)
fac7bdb75e script: Fix boost/C++17 compile failure (MarcoFalke)
21a65756f5 Add Windows WSL build recommendation to temporarily disable Win32 PE support. (Aaron Clauson)
99993489da test: Set -logthreadnames in unit tests (MarcoFalke)
fa4ea997b4 init: Setup scheduler in tests and init in exactly the same way (MarcoFalke)
c4ffcf07af build: remove BIP70 configure option (fanquake)
f1a0314c53 gui: change combiner for signals to optional_last_value (Cory Fields)
ca24edfbc1 walletdb: Handle cursor internally (Andrew Chow)
faca73000f ci: Install fixed version of clang-format for linters (MarcoFalke)
fa4695da4c build: Sort Makefile.am after renaming file (MarcoFalke)
cccc2784a3 scripted-diff: Move ui_interface to the node lib (MarcoFalke)
fa72ca6a9d qt: Remove unused includes (MarcoFalke)
fac96e6450 wallet: Do not include server symbols (MarcoFalke)
fa0f6c58c1 Revert "Fix link error with --enable-debug" (MarcoFalke)
3a7e79478a test: retry when write to a socket fails on macOS (Ivan Metlushko)
8cf9d15b82 test: use pgrep for better compatibility (Ivan Metlushko)
eb6b73540d build: pass _WIN32_WINNT=0x0601 when building libevent for Windows (fanquake)
03e056edcd depends: Patch libevent build to fix IPv6 -rpcbind on Windows (Luke Dashjr)
6fdfeebcc7 refactor: Replace RecursiveMutex with Mutex in rpc/server.cpp (Hennadii Stepanov)
a92e48b02d test: move TEST_RUNNER_EXTRA into native tsan setup (fanquake)
9b009fae6e qa: Test concurrent wallet loading (João Barbosa)
b9971ae585 wallet: Handle concurrent wallet loading (João Barbosa)
fa3b35a189 ci: Add test for clang-3.8 C++11 support (MarcoFalke)
faa7431fee refactor: Fix clang compile failure (MarcoFalke)
9952242c03 build: improve builtin_clz* detection (fanquake)
fa525e4d1c net: Avoid wasting inv traffic during IBD (MarcoFalke)
fa06d7e934 refactor: block import implies IsInitialBlockDownload (MarcoFalke)
faba65e696 Add ChainstateManager::ActiveChainstate (MarcoFalke)
fabf3d64ff test: Add FeeFilterRounder test (MarcoFalke)
53361ddc75 [build] Remove unused RES_IMAGES (Bushstar)
fab57e2b9b doc: Mention Span in developer-notes.md (Pieter Wuille)
3502a60418 doc: Document Span pitfalls (Pieter Wuille)
fa74a54fad ci: Increase test timeout for sanitizer configs (MarcoFalke)
e12e970df6 docs: match usage text to script and location (Peter Bushnell)
fd9c213c6e doc/REST-interface: Remove stale info (Luke Dashjr)
8578c6fccd build: Fix search for brew-installed BDB 4 on OS X (Glenn Willen)
fa32adf9dc scripted-diff: TxoutType C++11 scoped enum class (MarcoFalke)
fa95a694c4 doc: Update outdated txnouttype documentation (MarcoFalke)
fa58469c77 rpc: Properly use underlying type in GetAllOutputTypes (MarcoFalke)
fa41c65702 rpc: Simplify GetAllOutputTypes with the Join helper (MarcoFalke)
6d35d0d18f doc: add release note for -getinfo displaying multiwallet balances (Jon Atack)
0ac09c9793 qt: Do not truncate node flag strings in debugwindow.ui peers details tab. (saibato)
d906aaa117 qt: Fix regression in TransactionTableModel (Hennadii Stepanov)
1087807b2b tests: Provide main(...) function in fuzzer (practicalswift)
25dac9fa65 doc: add release notes for explicit fee estimators and bumpfee change (Karl-Johan Alm)
05227a3554 tests for bumpfee / estimate_modes (Karl-Johan Alm)
3404c1b753 policy: optional FeeEstimateMode param to CFeeRate::ToString (Karl-Johan Alm)
6fcf448430 rpc/wallet: add two explicit modes to estimate_mode (Karl-Johan Alm)
b188d80c2d MOVEONLY: Make FeeEstimateMode available to CFeeRate (Karl-Johan Alm)
5d1a411eb1 fees: add FeeModes doc helper function (Karl-Johan Alm)
91f6d2bc8f rpc/wallet: add conf_target as alias to confTarget in bumpfee (Karl-Johan Alm)
69158b41fc added CURRENCY_ATOM to express minimum indivisible unit (Karl-Johan Alm)
39d526bde4 test: Bump linter versions (Duncan Dean)
1307686798 refactor: Use Mutex type for g_cs_recent_confirmed_transactions (Hennadii Stepanov)
67bb7be864 tests: Add fuzzing harness for CHash{160,256}, C{HMAC_,}SHA{1,256,512}, CRIPEMD160, CSipHasher, etc. (practicalswift)
fa8337fcdb clang-format scheduler (MarcoFalke)
fa3d41b5ab doc: Switch scheduler to doxygen comments (MarcoFalke)
fac43f9889 scheduler: Replace stop(true) with StopWhenDrained() (MarcoFalke)
fa9cca0550 doc: Remove unused documentation about unimplemented features (MarcoFalke)
fab2950d70 doc: Switch boost::thread to std::thread in scheduler (MarcoFalke)
fa9819695a test: Remove unused scheduler.h include from the common setup (MarcoFalke)
fa609c4f76 scheduler: Remove unused REVERSE_LOCK (MarcoFalke)
3f686d1a28 ci: Run fuzz testing test cases (bitcoin-core/qa-assets) under valgrind to catch memory errors (practicalswift)
37ae687f95 Add tests for CPubKey serialization/unserialization (Elichai Turkel)
9b8907fade Check size after Unserializing CPubKey (Elichai Turkel)
56010f9256 test: hoist p2p values to test framework constants (Jon Atack)
75447f0893 test: improve msg sends and p2p disconnections in p2p_invalid_messages (Jon Atack)
57960192a5 test: refactor test_large_inv() into 3 tests with common method (Jon Atack)
e2b21d8a59 test: add p2p_invalid_messages logging (Jon Atack)
9fa494dc09 net: update misbehavior logging for oversized messages (Jon Atack)
bd93e32292 refactor: Replace HexStr(o.begin(), o.end()) with HexStr(o) (Wladimir J. van der Laan)
9886c7d98d doc: add release note for bitcoin-cli -generate (Jon Atack)
4f9d9efb4e qt: Remove needless headers (Hennadii Stepanov)
adf543d714 darwin: pass mlinker-version so that clang enables new features (Cory Fields)
2418f739f7 macos: Bump to xcode 11.3.1 and 10.15 SDK (Cory Fields)
5c2c835433 depends: bump MacOS toolchain (Cory Fields)
85b5e42088 contrib: macdeploy: Remove historical extraction notes (Carl Dong)
351beb5c9a contrib: macdeploy: Use apple-sdk-tools instead of xar+pbzx (Carl Dong)
fbcfcf6954 native_cctools: Don't use libc++ from pinned clang (Carl Dong)
3381e4a189 Adapt rest of tooling to new SDK naming scheme (Carl Dong)
b3394ab235 contrib: macdeploy: Correctly generate macOS SDK (Carl Dong)
f1d21ef1c3 doc: add C++17 release note for 0.21.0 (fanquake)
20b6e95944 test: refactor functional tests to use restart_node (Christopher Coverdale)
ccef5d7bf0 test: add two edge case tests for CSubNet (Vasil Dimov)
fac63eb5ea doc: Remove -whitelistforcerelay from comment (MarcoFalke)
faabd1514f test: Check that peers with forcerelay permission do not get a feefilter message (MarcoFalke)
fad676b8d2 test: Add connect_nodes method (MarcoFalke)
fac6ef4fb2 test: Add test for no net permission (MarcoFalke)
ffff3fe50a test: Replace self.nodes[0].p2p with conn (MarcoFalke)
faccdc8a31 test: remove redundant generate (MarcoFalke)
fab83b934a test: pep-8 p2p_feefilter.py (MarcoFalke)
cc84460c16 test: move sync_blocks and sync_mempool functions to test_framework.py (Roy Shao)
931dd47608 Make lint-spelling.py happy (Glenn Willen)
11a0ffb29d [gui] Load PSBT from clipboard (Glenn Willen)
a6cb0b0c29 [gui] PSBT Operations Dialog (sign & broadcast) (Glenn Willen)
5dd0c03ffa FillPSBT: report number of inputs signed (or would sign) (Glenn Willen)
9e7b23b733 Improve TransactionErrorString messages. (Glenn Willen)
22cb303cf0 rpc: add missing space in JSON parsing error message, update test (Jon Atack)
bf53ebef06 test: add multiwallet tests for bitcoin-cli -generate (Jon Atack)
4b859cfff9 cli: add multiwallet capability to GetNewAddress and -generate (Jon Atack)
18f93545a1 test: add tests for bitcoin-cli -generate (Jon Atack)
4818124137 cli: create bitcoin-cli -generate command (Jon Atack)
ff41a36900 cli: extract ParseResult() and ParseError() (Jon Atack)
f4185b26d9 cli: create GenerateToAddressRequestHandler class (Harris)
f7c65a3350 cli: create GetNewAddress() (Jon Atack)
9be7fd35c5 rpc: make generatetoaddress locals const (Jon Atack)
cb00510dba rpc: create rpc/mining.h, hoist default max tries values to constant (Jon Atack)
cc29d1e2c4 [tools] Update clang-format config (John Newbery)
bc01f7ae05 doc: release note for rpc getaddressinfo removals (Jon Atack)
90e989390e rpc: getaddressinfo RPCResult fixup (Jon Atack)
a8507c99da rpc: remove deprecated getaddressinfo `labels: purpose` (Jon Atack)
645a8653c8 rpc: remove deprecated getaddressinfo `label` field (Jon Atack)
e5327f947c [rpc] fundrawtransaction: add_inputs option to control automatic input adding (Sjors Provoost)
79804fe24b [rpc] walletcreatefundedpsbt: don't automatically append inputs (Sjors Provoost)
4d7369125a Disallow automatic conversion between hash types (Ben Woosley)
fa9ef2cdbe Remove an apparently unnecessary conversion (Ben Woosley)
966a22d859 Explicitly support conversion between equivalent hash types (Ben Woosley)
f32c1e07fd Use explicit conversion from WitnessV0KeyHash -> CKeyID (Ben Woosley)
2c54217f91 Use explicit conversion from PKHash -> CKeyID (Ben Woosley)
a9e451f144 Convert CPubKey to WitnessV0KeyHash directly (Ben Woosley)
3fcc468123 Prefer explicit CScriptID construction (Ben Woosley)
0a5ea32ce6 Prefer explicit uint160 conversion (Ben Woosley)
d0a3feea73 Change docs for walletcreatefundedpsbt RPC method (Ivan Vershigora)
951bca61d7 tests: feature_backwards_compatibility.py test 0.16 up/downgrade (Andrew Chow)
3a03a11e8c Skip hdKeypath of 'm' (Andrew Chow)
b83cc0fc94 Fix link error with --enable-debug (Hennadii Stepanov)
fa05f44893 ci: Upgrade most ci configs to focal (MarcoFalke)
fad6720891 doc: move doc to ci readme (MarcoFalke)
fa880773b4 ci: Have one config run in xenial to test against python3.5 (MarcoFalke)
fa6ddb2fa1 travis: Always run multiprocess build (MarcoFalke)
fa2eb3d5d6 ci: Run asan ci config on cirrus (MarcoFalke)
fa93527738 cirrus: Clear dummy task (MarcoFalke)
3351c91ed4 refactor: Make CScriptVisitor stateless (João Barbosa)
51e9393c1f refactor: s/command/msg_type/ in CNetMsgMaker and CSerializedNetMsg (Sebastian Falbesoner)
fa1904e5f0 net: Remove dead logging code (MarcoFalke)
fac12ebf4f net: Avoid redundant and confusing FAILED log (MarcoFalke)
f52d403b81 [net] split PushInventory() (John Newbery)
83fd3a6d73 init: use std::thread for ThreadImport() (fanquake)
da7a83c5ee Remove WalletDatabase::Create, CreateMock, and CreateDummy (Andrew Chow)
d6045d0ac6 scripted-diff: Replace WalletDatabase::Create* with CreateWalletDatabase (Andrew Chow)
45c08f8a7b Add Create*WalletDatabase functions (Andrew Chow)
66666d55b1 doc: Mention repo split in the READMEs (MarcoFalke)
faceed753a doc: Add redirect for GUI issues and pull requests (MarcoFalke)
25f3554351 scripted-diff: Make SeparatorStyle a scoped enum (Hennadii Stepanov)
a389ed52e8 walletdb: refactor Read, Write, Erase, and Exists into non-template func (Andrew Chow)
26acc8dd9b Add sanity check asserts to span when -DDEBUG (Pieter Wuille)
2676aeadfa Simplify usage of Span in several places (Pieter Wuille)
ab303a16d1 Add Span constructors for arrays and vectors (Pieter Wuille)
bb3d38fc06 Make pointer-based Span construction safer (Pieter Wuille)
1f790a1147 Make Span size type unsigned (Pieter Wuille)
80d4423f99 Test buffered valid message (Troy Giorshev)
fa84edb93c build: don't warn when doxygen isn't found (fanquake)
fa195d4eba test: Add missing sync_blocks (MarcoFalke)
fa02b47313 refactor: Use AbortError in FatalError (MarcoFalke)
9a40cfc558 [refactor] use waiting inside disconnect_p2ps (gzhao408)
aeb9fb414e [test] wait for disconnect_p2ps to be reflected in getpeerinfo (gzhao408)
e81942d2e1 [test] logging and style followups for bloomfilter tests (gzhao408)
f8213c05f0 Add means to handle negative capabilities in thread safety annotations (Hennadii Stepanov)
61c16339da walletdb: Move BDB specific things into bdb.{cpp/h} (Andrew Chow)
8f033642a8 walletdb: moveonly: Move BerkeleyBatch Cursor and Txn funcs to cpp (Andrew Chow)
25a655794a walletdb: move IsWalletLoaded to walletdb.cpp (Andrew Chow)
f6fc5f3849 walletdb: Add IsBDBWalletLoaded to look for BDB wallets specifically (Andrew Chow)
c3538f435a walletdb: Make SpliWalletFilePath non-static (Andrew Chow)
47b49a05ea contrib: Fix SyntaxWarning in Python base58 implementation (Alex Willmer)
fa193c6b1b Add missing includes to fix compile errors (MarcoFalke)
fa09ec83f3 Remove unused variables (MarcoFalke)
fa41b0a6da pep-8 test/functional/test_framework/util.py (MarcoFalke)
faa841bc97 test: refactor: Inline adjust_bitcoin_conf_for_pre_17 (MarcoFalke)
44cc75f80e wallet: error if an explicit fee rate was given but the needed fee rate differed (Karl-Johan Alm)
313a081b90 [net] Add seed.bitcoin.wiz.biz to DNS seeds (wiz)
9fe71a57a6 test: use subprocess.run() in test-security-check.py (fanquake)
968aaae940 tests: run test-security-check.py in CI (fanquake)
5527be0627 refactor: Add AbortError alias (Hennadii Stepanov)
d924f2a596 Drop MSG_NOPREFIX flag (Hennadii Stepanov)
083daf7fba Pass bilingual_str argument to AbortNode() (Hennadii Stepanov)
d1cca129b4 refactor: Use bilingual_str::empty() (Hennadii Stepanov)
16d4b3fd6d test: mempool.dat compatibility between versions (Ivan Metlushko)
62068381a3 [tests] Make mininode_lock non-reentrant (John Newbery)
c67c1f2c03 [tests] Don't call super twice in P2PTxInvStore.on_inv() (John Newbery)
9d80762fa0 [tests] Don't acquire mininode_lock twice in wait_for_broadcast() (John Newbery)
edae6075aa [tests] Only acquire lock once in p2p_compactblocks.py (John Newbery)
3a10d935ac [p2p/refactor] move disconnect logic and remove misbehaving (gzhao408)
ff8c430c65 [test] test disconnect for filterclear (gzhao408)
1c6b787e03 [netprocessing] disconnect node that sends filterclear (gzhao408)
fa71667597 ci: Move travis workarounds to .travis.yml (MarcoFalke)
0f8f515445 RPC: Rephrase generatetoaddress help, and use PACKAGE_NAME (Luke Dashjr)
49236be099 [tests] Don't import asyncio to test magic bytes (John Newbery)
ccf1f6ea24 refactor: Drop ::HasWallets() (João Barbosa)
8a26848c46 build: Fix m4 escaping (Hennadii Stepanov)
9123ec15db build: Remove extra tokens warning (Hennadii Stepanov)
fded4f48c3 build: Remove duplicated QT_STATICPLUGIN define (Hennadii Stepanov)
05a93d5d96 build: Fix indentation in bitcoin_qt.m4 (Hennadii Stepanov)
ddbb419310 build: Use pkg-config in BITCOIN_QT_CONFIGURE for all hosts (Hennadii Stepanov)
492971de35 build: Fix mingw pkgconfig file and dependency naming (Hennadii Stepanov)
e10439ce5a scripted-diff: rename privkey with seckey in secp256k1 interface (Pieter Wuille)
ca8bc42330 Drop --disable-jni from libsecp256k1 configure options (Pieter Wuille)
ddc2419c09 Update MSVC build config for libsecp256k1 (Pieter Wuille)
67f232b5d8 Squashed 'src/secp256k1/' changes from b19c000063..2ed54da18a (Pieter Wuille)
af2a145e57 Refactor resource exhaustion test (Troy Giorshev)
5c4648d17b Fix "invalid message size" test (Troy Giorshev)
ff1e7b8844 Move size limits to module-global (Troy Giorshev)
57890abf2c Remove two unneeded tests (Troy Giorshev)
45eff751c6 Add functional test for P2P eviction logic of inbound peers (Martin Zumsande)
fadf6bd04f refactor: Remove unused request.fHelp (MarcoFalke)
fad889cbf0 wallet: Make RPC help compile-time static (MarcoFalke)
dca73941eb scripted-diff: rename node to peer for mininodes (gzhao408)
0474ea25af [test] fix race conditions and test in p2p_filter (gzhao408)
4ef80f0827 [test] sending invalid msgs to node with bloomfilters=0 causes disconnect (gzhao408)
497a619386 [test] add BIP 37 test for node with fRelay=false (gzhao408)
e8acc60156 [test] add mempool msg test for node with bloomfilter enabled (gzhao408)
cf5b8f64b3 tests: Add fuzzing harness for {Read,Write}{LE,BE}{16,32,64} (crypto/common.h) (practicalswift)
4a8181b303 tests: Add std::vector<uint8_t> ConsumeFixedLengthByteVector(FuzzedDataProvider& fuzzed_data_provider, const size_t length) (practicalswift)
3a83a01694 [tests] move generate_wif_key to wallet_util.py (John Newbery)
b216b0b71f [tests] sort imports in rpc_createmultisig.py (John Newbery)
e38081846d Revert "[TESTS] Move base58 to own module to break circular dependency" (John Newbery)
f42f5e58f5 refactor: Combine GetWalletForJSONRPCRequest and EnsureWalletIsAvailable functions (Russell Yanofsky)
fa98e10d5e test: Remove leftover comment in mining_basic (MarcoFalke)
faedb50d89 test: pep-8 mining_basic (MarcoFalke)
c75de5da5f [TESTS] Move base58 to own module to break circular dependency (Pieter Wuille)
d49612f98a Make SetMiscWarning() accept bilingual_str argument (Hennadii Stepanov)
d1ae7c0355 Make GetWarnings() return bilingual_str (Hennadii Stepanov)
38e33aa481 refactor: Make GetWarnings() bilingual_str aware internally (Hennadii Stepanov)
fa7b46cc91 test: Add BerkeleyDatabase tsan suppression (MarcoFalke)
948f1134bc gui: add missing translation.h include to fix build (fanquake)
6fe989054f refactor: Change Node::initError to take bilingual_str (Wladimir J. van der Laan)
425e7cb8cf refactor: Put`TryParsePermissionFlags` in anonymous namespace (Wladimir J. van der Laan)
77b79fa6ef refactor: Error message bilingual_str consistency (Wladimir J. van der Laan)
6fc641644f change blacklist to blocklist (TrentZ)
bacbfb61ee refactor: Replace RecursiveMutex with Mutex in warnings.cpp (Hennadii Stepanov)
b00266fe0c refactor: replace pointers by references within tx_verify.{h,cpp} (Sebastian Falbesoner)
34645c4dd0 Test txinwitness is accessible on coinbase vin (Rod Vagg)
3e4421070a Expose txinwitness for coinbase in JSON form (Rod Vagg)
a9d28afe23 qt: Display warnings as rich text (Hennadii Stepanov)
34e641a564 test: Remove unnecessary disconnect_nodes call in rpc_psbt.py (Danny Lee)
e6e7abd51a test: remove redundant two-way disconnect_nodes calls (Danny Lee)
a9bd1f9adf test: warn if nodes not connected before disconnect_nodes (Danny Lee)
cb38b069b0 util: Don't reference errno when pthread fails. (MIZUTA Takeshi)
fa2c2b50d8 doc: Extract net permissions doc (MarcoFalke)
cc5c0d2299 refactor: Fix formatting of timedata.cpp (Hennadii Stepanov)
c2410ceb84 refactor: Replace RecursiveMutex with Mutex in timedata.cpp (Hennadii Stepanov)
78c8f4fe11 refactor: Replace RecursiveMutex with Mutex in netbase.cpp (Hennadii Stepanov)
1a9ef1d398 refactor: Replace RecursiveMutex with Mutex in Shutdown() (Hennadii Stepanov)
fac6b9b938 test: Avoid overwriting the NodeContext member of the testing setup (MarcoFalke)
fa16e7816b build: Add -Wshadow-field (MarcoFalke)
c514a4f59a doc: release note for `db` log category removal (Jon Atack)
4c0c89307d log: remove deprecated `db` log category (Jon Atack)
fa4cd1fdae ci: Switch to bitcoincore.org download (MarcoFalke)
501e6ab4e7 doc: Add documentation for 'checklevel' argument in 'verifychain' RPC call (Calvin Kim)
fa9604c46f doc: noban precludes maxuploadtarget disconnects (MarcoFalke)
fa3999fe35 net: Reformat excessively long if condition into multiple lines (MarcoFalke)
5d77549d8b doc: Add mypy to test dependencies (Hennadii Stepanov)
7dda912e1c test: Do not swallow flake8 exit code (Hennadii Stepanov)
4a7253ab6c Remove g_rpc_chain global (Russell Yanofsky)
e783197bf0 refactor: replace RegisterWalletRPCCommands with GetWalletRPCCommands (Russell Yanofsky)
0012471391 build: turn on --enable-c++17 by --enable-fuzz (Vasil Dimov)
fa7e002d52 ci: tsan with wallet (MarcoFalke)
f46b678acf qt: lock cs_main, m_cached_tip_mutex in that order (Vasil Dimov)
c4b574899a gui: Add Close All Wallets action (João Barbosa)
f30960adc0 gui: Add closeAllWallets to WalletController (João Barbosa)
89f9fef1f7 refactor: Specify boost/thread/thread.hpp explicitly (Hennadii Stepanov)
fad8c890f5 txdb: Remove unused boost/thread (MarcoFalke)
faa958bc28 txindex: Remove unused boost/thread (MarcoFalke)
8b3136bd30 refactor: replace CNode pointers by references within net_processing.{h,cpp} (Sebastian Falbesoner)
7daffc6a90 [test] CScriptNum Decode Check as Unit Tests (Gillian Chu)
fa1433ac1b rpc: Remove special case for unknown service flags (MarcoFalke)
ac94141af0 validation: delay flushing undo files in syncing node case (Karl-Johan Alm)
eea8114657 build: Enable unreachable-code-loop-increment (Jonathan Schoeller)
d15db4b1fc refactor: Fix unreachable code in init arg checks (Jonathan Schoeller)
fa3b4f9b8e validation: Make VerifyDB level 4 interruptible (MarcoFalke)
fa1d5800d9 validation: Remove unused boost interruption_point (MarcoFalke)
fab7d954b2 test: Make valgrind.supp work on aarch64 (MarcoFalke)
0fef60c63d build: improved output of configure for build OS (sachinkm77)
789e9dd3aa validation: use std::chrono in IsCurrentForFeeEstimation() (fanquake)
47be28c8bc validation: use std::chrono in CChainState::FlushStateToDisk() (fanquake)
bd7e530f01 This PR adds initial support for type hints checking in python scripts. (Kiminuo)
faf62e6ed0 ci: Remove unused workaround (MarcoFalke)
fa7c850915 ci: Install llvm to get llvm symbolizer (MarcoFalke)
fa563cef61 test: Add more tsan suppressions (MarcoFalke)
fa0cc02c0a ci: Mute depends logs completely (MarcoFalke)
fa906bf298 test: Extend tsan suppressions for clang stdlib (MarcoFalke)
fa10d85079 ci: Use libc++ instead of libstdc++ for tsan (MarcoFalke)
fa0d5ee112 ci: Set halt_on_error=1 for tsan (MarcoFalke)
fa2ffe87f7 ci: Deduplicate DOCKER_EXEC (MarcoFalke)
fac2eeeb9d cirrus: Remove no longer needed install step (MarcoFalke)
facede18a4 test: Check that invalid witness destinations can not be imported (MarcoFalke)
fab860aed4 fuzz: Stop nodes in process_message* fuzzers (MarcoFalke)
6666c828e0 fuzz: Give CNode ownership to ConnmanTestMsg in process_message fuzz harness (MarcoFalke)
fa13c180c7 doc: Move 0.21 fragments into the main release notes (MarcoFalke)
fa1a91657f doc: Add release-notes-0.20.0.md (MarcoFalke)
faabc6e445 doc: Remove release notes of 0.20.1 release (MarcoFalke)
5cb7ee67a5 net: improve code documentation for dns seed behaviour (Anthony Towns)
7eaf86d3bf trivial: Suggested cleanups to surrounding code (Russell Yanofsky)
b604c5c8b5 wallet: Minimal fix to restore conflicted transaction notifications (Russell Yanofsky)
fa1c74fd03 wallet: Remove unused boost::thread_interrupted (MarcoFalke)
fa7b885f51 walletdb: Remove unsed boost/thread (MarcoFalke)
5555d978b0 wallet: Make PeriodicFlush uninterruptible (MarcoFalke)
152e8baf08 Use salted hasher instead of nonce in sigcache (Jeremy Rubin)
5495fa5850 Add Hash Padding Microbenchmarks (Jeremy Rubin)
fa7d3a8890 test: Add missing sync_blocks to wallet_hd (MarcoFalke)
eeeed51f58 test: pep-8 wallet_hd (MarcoFalke)
fa9c675591 Limit scope of all global std::once_flag (MarcoFalke)
4f49d5222e gui, refactor: Register Qt meta types in application constructor (João Barbosa)
fac0ed16ec doc: Sync "how to upgrade" with 0.20.0 release notes (MarcoFalke)
fa861794d3 doc: Add release notes for 17219 (MarcoFalke)
facef3d413 doc: Explain that anyone can work on good first issues, move text to CONTRIBUTING.md (MarcoFalke)
fae2fb2a19 doc: Expand section on Getting Started (MarcoFalke)
100000d1b2 doc: Add headings to CONTRIBUTING.md (MarcoFalke)
fab893e0ca doc: Fix unrelated typos reported by codespell (MarcoFalke)
f898ef65c9 tests: Add fuzzing harness for functions in script/sign.h (practicalswift)
c91d2f0615 tests: Add fuzzing harness for functions in script/sigcache.h (practicalswift)
d3d8adb79f tests: Add fuzzing harness for functions in script/interpreter.h (practicalswift)
fa80117cfd tests: Add fuzzing harness for functions in script/descriptor.h (practicalswift)
43fb8f0ca3 tests: Add fuzzing harness for functions in script/bitcoinconsensus.h (practicalswift)
8de72711c6 tests: Fill fuzzing coverage gaps for functions in script/script.h, script/script_error.h and script/standard.h (practicalswift)
c571ecb071 tests: Add fuzzing helper functions ConsumeDataStream, ConsumeTxDestination and ConsumeUInt160 (practicalswift)
9e36067d8c [test] Add test for cfilters. (Jim Posen)
11106a4722 [net processing] Message handling for getcfilters. (Jim Posen)
e535670726 [indexes] Fix default [de]serialization of BlockFilter. (Jim Posen)
bb911ae7f5 [refactor] Pass CNode and CConnman by reference (John Newbery)
9a19c9ada5 Always define the raii_event_tests test suite (Craig Andrews)
60ed33904c tests: implement base58_decode (10xcryptodev)
9e1cb1adf1 [trivial/doc] Fix comment type (Amiti Uttarwar)
8f30260a67 [doc] Update unbroadcast description in RPC results (Amiti Uttarwar)
750456d6f2 [trivial] Remove misleading 'const' (Amiti Uttarwar)
fa32e676e5 [test] Manage node connections better in mempool persist test (Amiti Uttarwar)
1f94bb0c74 [doc] Provide rationale for randomization in scheduling. (Amiti Uttarwar)
9c8a55d9cb [mempool] Don't throw expected error message when upgrading (Amiti Uttarwar)
ba54983182 [test] Test that wallet transactions aren't rebroadcast before 12 hours (Amiti Uttarwar)
00d44a534b [test] P2P connection behavior should meet expectations (Amiti Uttarwar)
bd093ca15d [test] updates to unbroadcast test (Amiti Uttarwar)
dab298d9ab [docs] add release notes (Amiti Uttarwar)
fad21a1a7a test: Explain that a bug should be filed when the test fail (MarcoFalke)
f0d7ed10b4 depends: Propagate only specific CLI variables to sub-makes (Carl Dong)
0a33803f1c depends: boost: Use clang toolset if clang in CXX (Carl Dong)
1ce74bcde3 depends: boost: Split target-os from toolset (Carl Dong)
2d4e480813 depends: boost: Specify toolset to bootstrap.sh (Carl Dong)
3d6603e340 depends: Propagate well-known vars into depends (Carl Dong)
f871f15c9d scripted-diff: replace gArgs with argsman (glowang)
357f02bf29 Create a local class inherited from BasicTestingSetup with a localized args manager and put it into the getarg_tests namespace (glowang)
189ae0c38b util: dedup code in callers of serviceFlagToStr() (Vasil Dimov)
fbacad1880 util: simplify the interface of serviceFlagToStr() (Vasil Dimov)
fa2ca0cbdd test: Fix intermittent failure in feature_dbcrash (MarcoFalke)
da73f1513a qt: Fix shutdown when waitfor* cmds are called from RPC console (Hennadii Stepanov)
9760293ce6 wallet: Fix for exported confirmation field in payment to self transactions (Ben Carman)
96954d1794 DNS seeds: don't query DNS while network is inactive (Anthony Towns)
fa5894f7f5 DNS seeds: wait for 5m instead of 11s if 1000+ peers are known (Anthony Towns)
8e08d00598 qt: Use parent-child relation to manage lifetime of OptionsModel object (Hennadii Stepanov)
c31bc5bcfd Consolidate service flag bit-to-name conversion to a shared serviceFlagToStr function (Luke Dashjr)
cea91a1e40 Bugfix: GUI: Use unsigned long long type to avoid implicit conversion of MSB check (Luke Dashjr)
a06e845e82 BlockTip struct created and connected to notifyHeaderTip and notifyBlockTip signals. (furszy)
2f867203b0 Added best block hash to the NotifyHeaderTip and NotifyBlockTip signals. (furszy)
4fc1df41d5 qt: Track QEvent::Resize during animation (Hennadii Stepanov)
2b18fd2242 Disable unavailable context menu items in transactions tab (Kristaps Kaupe)
c4ea501e96 qt: Hide non PKHash-Addresses in signing address book (Emil Engler)
1122817c19 qt: Remove QFont warnings with QPA=minimal (Hennadii Stepanov)
73529f0859 qt: Rename slot to updateDisplayUnit() (Hennadii Stepanov)
68288ef0c1 qt: Overhaul ReceiveRequestDialog (Hennadii Stepanov)
8d75115844 qt: Add privacy feature to Overview page (Hennadii Stepanov)
73d8ef7274 qt: Add BitcoinUnits::formatWithPrivacy() function (Hennadii Stepanov)
79b0a69e09 Add missing QPainterPath include (Andrew Chow)
399d84da37 build: Only allow ASCII identifiers (Wladimir J. van der Laan)
e8fa0a3d20 Fix WSL file locking by using flock instead of fcntl (Samuel Dobson)
87766b355c build: Replace -Wthread-safety-analysis with broader -Wthread-safety (Hennadii Stepanov)
9cc6eb3c9e Get rid of -Wthread-safety-precise warnings (Hennadii Stepanov)
971a468ccf Use template function instead of void* parameter (Hennadii Stepanov)
dfb75ae49d refactor: Rename LockGuard to StdLockGuard for consistency with StdMutex (Hennadii Stepanov)
79be487420 Add thread safety annotated wrapper for std::mutex (Hennadii Stepanov)
5478d6c099 logging: thread safety annotations (Anthony Towns)
e685ca1992 util/system.cpp: add thread safety annotations for dir_locks (Anthony Towns)
a788789948 test/checkqueue_tests: thread safety annotations (Anthony Towns)
479c5846f7 rpc/blockchain.cpp: thread safety annotations for latestblock (Anthony Towns)
8b5af3d4c1 net: fMsgProcWake use LOCK instead of lock_guard (Anthony Towns)
de7c5f41ab wallet/wallet.h: Remove mutexScanning which was only protecting a single atomic bool (Anthony Towns)
c3cf2f5501 rpc/blockchain.cpp: Remove g_utxosetscan mutex that is only protecting a single atomic variable (Anthony Towns)
c57f03ce17 refactor: Replace const char* to std::string (Calvin Kim)
4c825792dd Remove outdated comment about DER encoding (Elichai Turkel)
1c91ffefcf doc : add link to readme.md in the first section (pad)
84ae0578b6 Add release notes about salvage changes (Andrew Chow)
ea337f2d03 Move RecoverKeysOnlyFilter into RecoverDataBaseFile (Andrew Chow)
9ea2d258b4 Move RecoverDatabaseFile and RecoverKeysOnlyFilter into salvage.{cpp/h} (Andrew Chow)
b426c7764d Make BerkeleyBatch::Recover and WalletBatch::RecoverKeysOnlyFilter standalone (Andrew Chow)
2741774214 Expose a version of ReadKeyValue and use it in RecoverKeysOnlyFilter (Andrew Chow)
ced95d0e43 Move BerkeleyEnvironment::Salvage into BerkeleyBatch::Recover (Andrew Chow)
07250b8dce walletdb: remove fAggressive from Salvage (Andrew Chow)
8ebcbc85c6 walletdb: don't automatically salvage when corruption is detected (Andrew Chow)
d321046f4b wallet: remove -salvagewallet (Andrew Chow)
cdd955e580 Add basic test for bitcoin-wallet salvage (Andrew Chow)
c87770915b wallettool: Add a salvage command (Andrew Chow)
fa80b4788b test: Remove global wait_until from p2p_getdata (MarcoFalke)
999922baed test: Default mininode.wait_until timeout to 60s (MarcoFalke)
fab47375fe test: pep-8 p2p_getdata.py (MarcoFalke)
71f016c6eb Remove old serialization primitives (Pieter Wuille)
92beff15d3 Convert LimitedString to formatter (Pieter Wuille)
ef17c03e07 Convert wallet to new serialization (Pieter Wuille)
65c589e45e Convert Qt to new serialization (Pieter Wuille)
90eb027204 doc: Add and fix comments about never destroyed objects (Hennadii Stepanov)
26c093a995 Replace thread_local g_lockstack with a mutex-protected map (Hennadii Stepanov)
58e6881bc5 refactor: Refactor duplicated code into LockHeld() (Hennadii Stepanov)
f511f61dda refactor: Add LockPair type alias (Hennadii Stepanov)
8d8921abd3 refactor: Add LockStackItem type alias (Hennadii Stepanov)
458992b06d Prevent UB in DeleteLock() function (Hennadii Stepanov)
fa756928c3 rpc: Make gettxoutsetinfo/GetUTXOStats interruptible (MarcoFalke)
fa7fc5a8e0 rpc: factor out RpcInterruptionPoint from dumptxoutset (MarcoFalke)
f9b22e3bdb tests: Add fuzzing harness for CCoinsViewCache (practicalswift)
5308c97cca [test] Add test for cfheaders (Jim Posen)
f6b58c1506 [net processing] Message handling for getcfheaders. (Jim Posen)
3bdc7c2d39 [doc] Add comment for m_headers_cache (John Newbery)
69bfcac27a gui: update Qt base translations for macOS release (fanquake)
5edad5ce5d test: add -getinfo multiwallet functional tests (Jon Atack)
903b6c117f rpc: drop unused JSONRPCProcessBatchReply size arg, refactor (Jon Atack)
afce85eb99 cli: use GetWalletBalances() functionality for -getinfo (Jon Atack)
9f01849a49 cli: create GetWalletBalances() to fetch multiwallet balances (Jon Atack)
743077544b cli: lift -rpcwallet logic up to CommandLineRPC() (Jon Atack)
29f2cbdeb7 cli: extract connection exception handler, -rpcwait logic (Jon Atack)
fab6b9d18f validation: Mark g_chainman DEPRECATED (MarcoFalke)
fa1d97b256 validation: Make ProcessNewBlock*() members of ChainstateManager (MarcoFalke)
fa24d49098 validation: Make PruneOneBlockFile() a member of ChainstateManager (MarcoFalke)
fa84b1cd84 validation: Make LoadBlockIndex() a member of ChainstateManager (MarcoFalke)
fa05fdf0f1 net: Pass chainman into PeerLogicValidation (MarcoFalke)
fa7b626d7a node: Add chainman alias for g_chainman (MarcoFalke)
ea9fcfd130 doc: Drop protobuf stuff (Hennadii Stepanov)
6a239e72eb tests: Don't limit fuzzing inputs to 1 MB for afl-fuzz (now: ∞ ∀ fuzzers) (practicalswift)
fad798be76 test: Default --previous-releases to false if dir is empty (MarcoFalke)
faf1c3cc58 test: Replace TEST_PREVIOUS_RELEASES env var with test_framework option (MarcoFalke)
ca2a09640f Change SetType to SetInternal and remove m_address_type (Andrew Chow)
89b1ce1140 Remove unimplemented SetCrypted from DescriptorScriptPubKeyMan (Andrew Chow)
b9073c8f13 rpc: createwallet warning that descriptor wallets are experimental (Andrew Chow)
610030d95c docs: Add release notes for descriptor wallets (Andrew Chow)
1ed52fbb4d Remove IBD check in sethdseed (Andrew Chow)
b1810a145a Test that keys from inactive seeds are generated (Andrew Chow)
c93082ece4 Generate new keys for inactive seeds after marking used (Andrew Chow)
45f2f6a0e8 Determine inactive HD seeds from key metadata and track them in LegacyScriptPubKeyMan (Andrew Chow)
b59b4504ab have GenerateNewKey and DeriveNewChildKey take a CHDChain as an argument (Andrew Chow)
651f1d816f [test] wait for inital broadcast before comparing mempool entries (gzhao408)
9d3f7eb986 [mempool] sanity check that all unbroadcast txns are in mempool (gzhao408)
a7ebe48b94 [rpc] add unbroadcast info to mempool entries and getmempoolinfo (gzhao408)
d160069604 [wallet] remove nLastResend logic (gzhao408)
d67055e00d Upgrade or rewrite encrypted key checksums (Andrew Chow)
c9a9ddb414 Set fDecryptionThoroughlyChecked based on whether crypted key checksums are valid (Andrew Chow)
a8334f7ac3 Read and write a checksum for encrypted keys (Andrew Chow)
0187d4c118 [indexes] Add compact block filter headers cache (John Newbery)
fa8bbb1368 net: Use C++11 member initialization in protocol (MarcoFalke)
fab908f18a test: Fix intermittent ETIMEDOUT on FreeBSD (MarcoFalke)
4444dbf4d5 gui: Remove un-actionable TODO (MarcoFalke)
0ea5d70b47 Updated comment for the condition where a transaction relay is denied (glowang)
be01449cc8 Add test for param interaction b/w -blocksonly and -whitelistforcerelay (glowang)
b3f7f375ef refactor: Remove g_rpc_node global (Russell Yanofsky)
ccb5059ee8 scripted-diff: Remove g_rpc_node references (Russell Yanofsky)
6fca33b2ed refactor: Pass NodeContext to RPC and REST methods through util::Ref (Russell Yanofsky)
691c817b34 Add util::Ref class as temporary alternative for c++17 std::any (Russell Yanofsky)
e2bab2aa16 multiprocess: add multiprocess travis configuration (Russell Yanofsky)
603fd6a2e7 depends: add MULTIPROCESS depends option (Russell Yanofsky)
5d1377b52b build: multiprocess autotools changes (Russell Yanofsky)
f852761aec guix: Add clarifying documentation for V env var (Carl Dong)
85f4a4b082 guix: Make V=1 more powerful for debugging (Carl Dong)
4a614ff88a test: explicit imports from test_framework.messages in p2p_invalid_messages.py (Sebastian Falbesoner)
b35e1d2471 test: add inventory type constant MSG_CMPCT_BLOCK (Sebastian Falbesoner)
eeaaa58d2c test: replace inv type magic numbers by constants (Sebastian Falbesoner)
f9ee0f37c2 Add comments to CustomUintFormatter (Pieter Wuille)
4eb5643e35 Convert everything except wallet/qt to new serialization (Pieter Wuille)
2b1f85e8c5 Convert blockencodings_tests to new serialization (Pieter Wuille)
73747afbbe Convert merkleblock to new serialization (Pieter Wuille)
d06fedd1bc Add SER_READ and SER_WRITE for read/write-dependent statements (Russell Yanofsky)
6f9a1e5ad0 Extend CustomUintFormatter to support enums (Russell Yanofsky)
769ee5fa00 Merge BigEndian functionality into CustomUintFormatter (Pieter Wuille)
fabea6d404 net: Run clang-format on protocol.h (MarcoFalke)
facdeea2b2 net: Remove un-actionable TODO (MarcoFalke)
faf45d1f1f http: Avoid crash when g_thread_http was never started (MarcoFalke)
fa12a37b27 test: Replace inline-comments with logs, pep8 formatting (MarcoFalke)
fa83b39ff3 init: Remove confusing and redundant InitError (MarcoFalke)
d3a56be77a Revert "gui: Avoid Wallet::GetBalance in WalletModel::pollBalanceChanged" (Russell Yanofsky)
bf0a510981 gui: Avoid wallet tryGetBalances calls before TransactionChanged or BlockTip notifications (Russell Yanofsky)
2bc9b92ed8 Cancel wallet balance timer when shutdown requested (Russell Yanofsky)
83f69fab3a Switch transaction table to use wallet height not node height (Russell Yanofsky)
e8a8cff07c build: enforce minimum required Windows version (7) (fanquake)
412d5fe879 QA: feature_segwit: Check that template "rules" includes "!segwit" as appropriate (Luke Dashjr)
2abe8cc3b7 Bugfix: Include "csv","!segwit" in "rules" (Luke Dashjr)
a0d0f1c6c3 refactor: Remove Node:: queries from GUI (Hennadii Stepanov)
06d519f0b4 qt: Add SynchronizationState enum to signal parameter (Hennadii Stepanov)
3c709aa69d refactor: Remove Node::getReindex() call from GUI (Hennadii Stepanov)
1dab574edf refactor: Pass SynchronizationState enum to GUI (Hennadii Stepanov)
2bec309ad6 refactor: Remove unused bool parameter in RPCNotifyBlockChange() (Hennadii Stepanov)
1df77014d8 refactor: Remove unused bool parameter in BlockNotifyGenesisWait() (Hennadii Stepanov)
faf552117e ci: Set DEBIAN_FRONTEND=noninteractive (MarcoFalke)
fa006caa13 ci: tsan on clang-9 (MarcoFalke)
fa243be1dc log: Remove "No rpcpassword set" from logs (MarcoFalke)
2896c412fa Do not answer GETDATA for to-be-announced tx (Pieter Wuille)
f2f32a3dee Push down use of cs_main into FindTxForGetData (Pieter Wuille)
c6131bf407 Abstract logic to determine whether to answer tx GETDATA (Pieter Wuille)
38c3dd9c70 docs: Add notes on how to diasble rpc timeout in functional tests while attatching gdb. (codeShark149)
784ae09625 test: Add capability to disable RPC timeout in functional tests. (codeShark149)
cd34038cbd Switch from Optional<T> to std::optional<T> (C++17). Run clang-format. (practicalswift)
fb559c1170 tests: Fill fuzzing coverage gaps for functions in util/translation.h (practicalswift)
b74f3d6c45 tests: Fill fuzzing coverage gaps for functions in consensus/validation.h (practicalswift)
c0bbf8193d tests: Fill fuzzing coverage gaps for functions in primitives/block.h (practicalswift)
8a22fd0114 avoided os-dependant path (Ferdinando M. Ametrano)
8d306862ef ci: Add fuzzbuzz integration (practicalswift)
0000ea3265 test: Add test for GetRandMillis and GetRandMicros (MarcoFalke)
fa0e5b89cf Add templated GetRandomDuration<> (MarcoFalke)
050e2ee6f2 test: Remove const to work around compiler error on xenial (Wladimir J. van der Laan)
746736639e [net processing] Only send a getheaders for one block in an INV (John Newbery)
eacedfb023 scripts: add additional type annotations to security-check.py (fanquake)
83d063e954 scripts: add run_command to security-check.py (fanquake)
13f606b4f9 scripts: remove NONFATAL from security-check.py (fanquake)
061acf62a1 scripts: no-longer check for 32 bit windows in security-check.py (fanquake)
fa1f840596 rpcwallet: Replace pwallet-> with wallet. (MarcoFalke)
fa182a8794 rpcwallet: Replace boost::optional<T>::emplace with simple assignment of T{} (MarcoFalke)
7777f2a4bb miner: Avoid stack-use-after-return in validationinterface (MarcoFalke)
fa5ceb25fc test: Remove UninterruptibleSleep from test and replace it by SyncWithValidationInterfaceQueue (MarcoFalke)
fa770ce7fe validationinterface: Rework documentation, Rename pwalletIn to callbacks (MarcoFalke)
fab6d060ce test: Add unregister_validation_interface_race test (MarcoFalke)
a30b0a24e9 build: enable -Werror=gnu (Vasil Dimov)
faa26d3744 test: Remove RPCOverloadWrapper boilerplate (MarcoFalke)
78be8d97d3 util: Drop OpOriginal() and OpTranslated() (Hennadii Stepanov)
da16f95c3f gui: Do not translate InitWarning messages in debug.log (Hennadii Stepanov)
4c9b9a4882 util: Enhance Join() (Hennadii Stepanov)
fe05dd0611 util: Enhance bilingual_str (Hennadii Stepanov)
c269e618cf Drop unused GIT_COMMIT_DATE macro (Hennadii Stepanov)
8f9f4ba5e2 refactor: Remove duplicated code (Hennadii Stepanov)
35f1189ea7 build: Rename BUILD_* macros and the code self-descriptive (Hennadii Stepanov)
dc1fba9389 scripted-diff: Rename share/genbuild.sh macros to more meaningful ones (Hennadii Stepanov)
1e06bb68be Drop unused CLIENT_VERSION_SUFFIX macro (Hennadii Stepanov)
df6bde031b test: remove glibc fdelt sanity check (fanquake)
8bf1540cc2 build: remove fdelt_chk backwards compatibility code (fanquake)
f963a68051 test: Add test for conflicted wallet tx notifications (Russell Yanofsky)
0c63f80854 build: Suppress -Wdeprecated-copy warnings (Hennadii Stepanov)
9f59dde974 rpc: Relock wallet only if most recent callback (João Barbosa)
a2e6db5c4f rpc: Add mutex to guard deadlineTimers (João Barbosa)
a8b5f1b133 gui: Fix manual coin control with multiple wallets loaded (João Barbosa)
e8123eae40 gui: Fix itemWalletAddress leak when not tree mode (João Barbosa)
839add193b build: Enable -Wsuggest-override (Hennadii Stepanov)
de5e91c303 refactor: Add BerkeleyDatabaseVersion() function (Hennadii Stepanov)
e3047edfb6 test: use p2p constants in denial of service tests (fanquake)
25d8264c95 p2p: add MAX_FEELER_CONNECTIONS constant (tryphe)
23083856a5 [test] Add test for cfcheckpt (Jim Posen)
f9e00bb25a [net processing] Message handling for getcfcheckpt. (Jim Posen)
9ccaaba11e [init] Add -peerblockfilters option (Jim Posen)
cbd661122e Set LD_LIBRARY_PATH consistently in travis tests (Russell Yanofsky)
fa35c34df7 Remove unused ci configs that have been moved elsewhere (MarcoFalke)
3333cb9699 fuzz: Pass down MAKEJOBS to test_runner (MarcoFalke)
83da576f44 net: use CMessageHeader::HEADER_SIZE, add missing include (Jon Atack)
d97fac422e Add a link from ZMQ doc to ZMQ example in contrib/ (Damian Mee)
89fea68ffd build: don't pass -w when building for Windows (fanquake)
9847e205bf [docs] Improve commenting in ProcessGetData() (John Newbery)
2f032556e0 [test] test that an invalid GETDATA doesn't prevent processing of future messages (Amiti Uttarwar)
e257cf71c8 [net processing] ignore unknown INV types in GETDATA messages (Amiti Uttarwar)
047ceac142 [net processing] ignore tx GETDATA from blocks-only peers (Amiti Uttarwar)
d044e0ec7d refactor: Remove override for final overriders (Hennadii Stepanov)
1551cea2d5 refactor: Use override for non-final overriders (Hennadii Stepanov)
872aa25fa1 doc: add c++17-enable to fuzzing instructions (Martin Zumsande)
68537275bd build: Enable -Werror=sign-compare (Ben Woosley)
eac6a3080d refactor: Rework asmap Interpret to avoid ptrdiff_t (Ben Woosley)
df37377e30 test: Fix outstanding -Wsign-compare errors (Ben Woosley)
420fa0770f fuzz: use std::optional for sep_pos variable (Harris)
fae153b409 test: Fix verack race to avoid intermittent test failures (MarcoFalke)
095bc9a106 fuzz: fix vector size problem in system fuzzer (Harris)
18bd83b1fe util: Cleanup translation.h (Hennadii Stepanov)
e95e658b8e doc: Do not translate technical or extremely rare errors (Hennadii Stepanov)
7e923d47ba Make InitError bilingual (Hennadii Stepanov)
917ca93553 Make ThreadSafe{MessageBox|Question} bilingual (Hennadii Stepanov)
23b9fa2e5e gui: Add detailed text to BitcoinGUI::message (Hennadii Stepanov)
d135c29476 [ci] make list of previous releases to download a setting (Sjors Provoost)
9c246b873c [test] backwards compatibility: bump v0.19.0.1 to v0.19.1 (Sjors Provoost)
89a28e02fa [test] add v0.16.3 backwards compatibility test (Sjors Provoost)
8c705ff129 travis: Remove s390x (MarcoFalke)
1e94a2bcbc depends: Add --sysroot option to mac os native compile flags (Russell Yanofsky)
fa082d0a57 travis: Remove valgrind (MarcoFalke)
a029805f57 build: remove -Qunused-arguments workaround for clang + ccache (fanquake)
fa3f9a0566 test: Fix intermittent sync_blocks failures (MarcoFalke)
03da4c7781 build: make linker checks more robust (Cory Fields)
748977690e Add asmap_direct fuzzer that tests Interpreter directly (Pieter Wuille)
7cf97fda15 Make asmap Interpreter errors fatal and fuzz test it (Pieter Wuille)
c81aefc537 Add additional effiency checks to sanity checker (Pieter Wuille)
fffd8dca2d Add asmap sanity checker (Pieter Wuille)
5feefbe6e7 Improve asmap Interpret checks and document failures (Pieter Wuille)
2b3dbfa5a6 Deal with decoding failures explicitly in asmap Interpret (Pieter Wuille)
1479007a33 Introduce Instruction enum in asmap (Pieter Wuille)
fa47cf9d95 wallet: Fix typo in assert that is compile-time true (MarcoFalke)
71f183a49b build: warn on potentially uninitialized reads (Vasil Dimov)
fa09110ebb doc: Fix typo in Coin doxygen comment (MarcoFalke)
1ad8ea2b73 net: remove is{Empty,Full} flags from CBloomFilter, clarify CVE fix (Sebastian Falbesoner)
bfe1ba2f5b rel-builds: Specify core.abbrev for git-rev-parse (Carl Dong)
27e63e01cc build: Accomodate makensis v2.x (Carl Dong)
1f2c39a30e guix: Remove logical cores requirement (Carl Dong)
a4f6ffa71e lint: Also enable source statements for non-gitian (Carl Dong)
d256f91cb1 rel-builds: Directly deploy win installer to OUTDIR (Carl Dong)
fa791da02f nsis: Specify OutFile path only once (Carl Dong)
14701604d0 guix: Expose GIT_COMMON_DIR in container as readonly (Carl Dong)
f5a6ac4f48 guix: Make source tarball using git-archive (Carl Dong)
395c1137f6 gitian: Limit sourced script to just assignments (Carl Dong)
28b112e9bd Get rid of BindWallet (Russell Yanofsky)
d002f9d15d Disable CWalletTx copy constructor (Russell Yanofsky)
65b9d8f8dd Avoid copying CWalletTx in LoadToWallet (Russell Yanofsky)
bd2fbc7cdb Get rid of unneeded CWalletTx::Init parameter (Russell Yanofsky)
2b9cba2065 Remove CWalletTx merging logic from AddToWallet (Russell Yanofsky)
fa13090d20 contrib: Remove optimize-pngs.py script, which lives in the maintainer repo (MarcoFalke)
d7120f7f78 valgrind : remove duplicate BCLog::Logger suppression (fanquake)
708e3c7e85 valgrind: remove rest_blockhash_by_height suppression (fanquake)
2a78098098 wallet: Make sure no WalletDescriptor members are uninitialized after construction (practicalswift)
ff046aeeba wallet: Make sure no DescriptorScriptPubKeyMan members are uninitialized after construction (practicalswift)
0ae8f18dfe build: add -Wgnu to compile flags (fanquake)
3a0fd7726b Remove use of non-standard zero variadic macros (Ben Woosley)
49f6178c3e Drop unused LOG_TIME_MICROS helper (Ben Woosley)
5d4999951e prevector: Avoid unnamed struct, which is a GNU extension (DesWurstes)
f85203097f lockedpool: avoid sensitive data in core files (FreeBSD) (Vasil Dimov)
fa2cce4391 wallet: Remove trailing whitespace from potential translation strings (MarcoFalke)
fa59cc1c97 wallet: Report full error message in wallettool (MarcoFalke)
fae7776690 wallet: Avoid translating RPC errors when creating txs (MarcoFalke)
fae51a5c6f wallet: Avoid translating RPC errors when loading wallets (MarcoFalke)
faec3dc2ad init: Remove boost from ThreadImport (MarcoFalke)
38e49ded8b tests: Add fuzzing harness for MessageSign, MessageVerify and other functions in util/message.h (practicalswift)
b56607a89b Remove CCoinsViewCache::GetValueIn(...) (practicalswift)
f5a3a5b9ab gui: Add close window shortcut (Miguel Herranz)
489ebfd7a1 tests: feature_backwards_compatibility.py test downgrade after upgrade (Andrew Chow)
fab7ee3990 test: Fix p2p_leak intermittent issue (MarcoFalke)
fa8614aea9 test: Fix intermittent p2p_segwit issue (MarcoFalke)
2742c34286 test: add factor option to adjust test timeouts (Harris)
2748e87932 script: prevent UB when computing abs value for num opcode serialize (pierrenn)
fa359d14c0 test: Strip down previous releases boilerplate (MarcoFalke)
6a72f26968 [wallet] Remove locked_chain from CWallet, its RPCs and tests (Antoine Riard)
841178820d [wallet] Move methods from Chain::Lock interface to simple Chain (Antoine Riard)
0a76287387 [wallet] Move getBlockHash from Chain::Lock interface to simple Chain (Antoine Riard)
de13363a47 [wallet] Move getBlockHeight from Chain::Lock interface to simple Chain (Antoine Riard)
b855592d83 [wallet] Move getHeight from Chain::Lock interface to simple Chain (Antoine Riard)
aaaacff107 ci: Merge C++17 build with one of the existing ones (MarcoFalke)
2bcc2bd742 tests: Clarify how we avoid hitting the signed integer overflow in CFeeRate::GetFeePerK() when fuzzing (practicalswift)
13c1f6b24f tests: Add fuzzing harness for IsRBFOptIn(...) (practicalswift)
3439c88a5d tests: Add fuzzing harness for CBlockPolicyEstimator (practicalswift)
de8905adf2 test: use unittest and test_runner for test framework unit testing (Gloria Zhao)
fac0cf6e55 rpc: Do not advertise dumptxoutset as a way to flush the chainstate (MarcoFalke)
06e434d7d9 test: fix message for ECC_InitSanityCheck test (fanquake)
692f8307fc test: add test for witness commitment index (fanquake)
06442549f8 validation: Add minimum witness commitment size constant (fanquake)
ff6549c3c8 fix: update rest info on block size and json (Chris Abrams)
c31cbe7cfe Add C++17 test to Travis (Pieter Wuille)
7829685e27 Add configure option for c++17 (Pieter Wuille)
0fbde488b2 Support conversion between Spans of compatible types (Pieter Wuille)
7cbfebbf3d Update ax_cxx_compile_stdcxx.m4 (Pieter Wuille)
182dbdf0f4 util: Detect posix_fallocate() instead of assuming (Vasil Dimov)
cd543d9193 test: check misbehavior more independently in p2p_filter.py (Danny Lee)
32b6b386a5 tests: Sort fuzzing harnesses (practicalswift)
e1e181fad1 tests: Add fuzzing coverage for JSONRPCTransactionError(...) and RPCErrorFromTransactionError(...) (practicalswift)
103b6ecce0 tests: Add fuzzing coverage for TransactionErrorString(...) (practicalswift)
dde508b8b0 tests: Add fuzzing coverage for ParseFixedPoint(...) (practicalswift)
1532259fca tests: Add fuzzing coverage for FormatHDKeypath(...) and WriteHDKeypath(...) (practicalswift)
90b635e84e tests: Add fuzzing coverage for CHECK_NONFATAL(...) (practicalswift)
a4e3d13df6 tests: Add fuzzing coverage for StringForFeeReason(...) (practicalswift)
a19598cf98 tests: Add fuzzing harness for functions in system.h (ArgsManager) (practicalswift)
7918c1b019 test: Add CreateWalletFromFile test (Russell Yanofsky)
8098dea069 test: Add mempool_updatefromblock.py (Hennadii Stepanov)
45615de26c ci: Fix default retry script usage (Hennadii Stepanov)
66fe7b1a98 test: added test for upgradewallet RPC (Harris)
fabe44e815 bench: Start nodes with -nodebuglogfile (MarcoFalke)
fcb7261625 Prevent valgrind false positive in rest_blockhash_by_height (Russell Yanofsky)
50fc4df6c4 [mempool] Persist unbroadcast set to mempool.dat (Amiti Uttarwar)
297a178536 [test] Integration tests for unbroadcast functionality (Amiti Uttarwar)
6851502472 [refactor/test] Extract P2PTxInvStore into test framework (Amiti Uttarwar)
dc1da48dc5 [wallet] Update the rebroadcast frequency to be ~1/day. (Amiti Uttarwar)
e25e42f20a [p2p] Reattempt initial send of unbroadcast transactions (Amiti Uttarwar)
7e93eecce3 [util] Add method that returns random time in milliseconds (Amiti Uttarwar)
89eeb4a333 [mempool] Track "unbroadcast" transactions (Amiti Uttarwar)
7b2b06dfe3 tests: Add missing sync_all to wallet_importdescriptors.py (Andrew Chow)
fa301fec96 test: Fix wallet_bumpfee intermittent error (MarcoFalke)
fae49f6e42 ci: Add and document BASE_BUILD_DIR (MarcoFalke)
bda62e87e6 Adding build instructions to Bitcoin Core, fixes#18658 (Saahil Shangle)
fa72a75102 ci: Document why tests can not be run on mac (MarcoFalke)
cd24f37ea9 doc: Better explain GNU ld's dislike of ld64's options (fanquake)
e3ec4924a7 qt: remove todo bug fix for old versions of Qt (10xcryptodev)
2aa48edec0 refactor: Drop unused ${WRAP_DIR}/${HOST} directory (Hennadii Stepanov)
1362be0447 build: Drop make dist in gitian builds (Hennadii Stepanov)
3e38023af7 scripts: add PE .reloc section check to security-check.py (fanquake)
fac24dea00 ci: Run functional tests on mac again (MarcoFalke)
fa501700e9 wallet: Recommned absolute path for dumpwallet (MarcoFalke)
223588b1bb Add a --descriptors option to various tests (Andrew Chow)
869f7ab30a tests: Add RPCOverloadWrapper which overloads some disabled RPCs (Andrew Chow)
cf06062859 Correctly check for default wallet (Andrew Chow)
886e0d75f5 Implement CWallet::IsSpentKey for non-LegacySPKMans (Andrew Chow)
3c19fdd2a2 Return error when no ScriptPubKeyMan is available for specified type (Andrew Chow)
388ba94231 Change wallet_encryption.py to use signmessage instead of dumpprivkey (Andrew Chow)
1346e14831 Functional tests for descriptor wallets (Andrew Chow)
f193ea889d add importdescriptors RPC and tests for native descriptor wallets (Hugo Nguyen)
ce24a94494 Add IsLegacy to CWallet so that the GUI knows whether to show watchonly (Andrew Chow)
1cb42b22b1 Generate new descriptors when encrypting (Andrew Chow)
82ae02b165 Be able to create new wallets with DescriptorScriptPubKeyMans as backing (Andrew Chow)
b713baa75a Implement GetMetadata in DescriptorScriptPubKeyMan (Andrew Chow)
8b9603bd0b Change GetMetadata to use unique_ptr<CKeyMetadata> (Andrew Chow)
72a9540df9 Implement FillPSBT in DescriptorScriptPubKeyMan (Andrew Chow)
84b4978c02 Implement SignMessage for descriptor wallets (Andrew Chow)
bde7c9fa38 Implement SignTransaction in DescriptorScriptPubKeyMan (Andrew Chow)
d50c8ddd41 Implement GetSolvingProvider for DescriptorScriptPubKeyMan (Andrew Chow)
f1ca5feb4a Implement GetKeypoolOldestTime and only display it if greater than 0 (Andrew Chow)
586b57a9a6 Implement ReturnDestination in DescriptorScriptPubKeyMan (Andrew Chow)
f866957979 Implement GetReservedDestination in DescriptorScriptPubKeyMan (Andrew Chow)
a775f7c7fd Implement Unlock and Encrypt in DescriptorScriptPubKeyMan (Andrew Chow)
bfdd073486 Implement GetNewDestination for DescriptorScriptPubKeyMan (Andrew Chow)
58c7651821 Implement TopUp in DescriptorScriptPubKeyMan (Andrew Chow)
e014886a34 Implement SetupGeneration for DescriptorScriptPubKeyMan (Andrew Chow)
46dfb99768 Implement writing descriptorkeys, descriptorckeys, and descriptors to wallet file (Andrew Chow)
4cb9b69be0 Implement several simple functions in DescriptorScriptPubKeyMan (Andrew Chow)
d1ec3e4f19 Add IsSingleType to Descriptors (Andrew Chow)
953feb3d27 Implement loading of keys for DescriptorScriptPubKeyMan (Andrew Chow)
2363e9fcaa Load the descriptor cache from the wallet file (Andrew Chow)
46c46aebb7 Implement GetID for DescriptorScriptPubKeyMan (Andrew Chow)
ec2f9e1178 Implement IsHDEnabled in DescriptorScriptPubKeyMan (Andrew Chow)
741122d4c1 Implement MarkUnusedAddresses in DescriptorScriptPubKeyMan (Andrew Chow)
2db7ca765c Implement IsMine for DescriptorScriptPubKeyMan (Andrew Chow)
db7177af8c Add LoadDescriptorScriptPubKeyMan and SetActiveScriptPubKeyMan to CWallet (Andrew Chow)
78f8a92910 Implement SetType in DescriptorScriptPubKeyMan (Andrew Chow)
834de0300c Store WalletDescriptor in DescriptorScriptPubKeyMan (Andrew Chow)
d8132669e1 Add a lock cs_desc_man for DescriptorScriptPubKeyMan (Andrew Chow)
3194a7f88a Introduce WalletDescriptor class (Andrew Chow)
6b13cd3fa8 Create LegacyScriptPubKeyMan when not a descriptor wallet (Andrew Chow)
aeac157c9d Return nullptr from GetLegacyScriptPubKeyMan if descriptor wallet (Andrew Chow)
96accc73f0 Add WALLET_FLAG_DESCRIPTORS (Andrew Chow)
6b8119af53 Introduce DescriptorScriptPubKeyMan as a dummy class (Andrew Chow)
06620302c7 Introduce SetType function to tell ScriptPubKeyMans the type and internal-ness of it (Andrew Chow)
faec063887 log: Use Join() helper when listing log categories (MarcoFalke)
fa8b9b5d1f test: Fix intermittent failure in wallet_importmulti (MarcoFalke)
fa489011d9 test: Remove raw-tx byte juggling in mempool_reorg (MarcoFalke)
fd8e99da57 tests: Add fuzzing harness for functions in primitives/transaction.h (practicalswift)
d5a31b7cb4 tests: Add fuzzing harness for functions in primitives/block.h (practicalswift)
fa66280396 fuzz: Run in parallel (MarcoFalke)
bb1ec36fb1 doc: Document how to fuzz Bitcoin Core using honggfuzz (practicalswift)
0956e46bff test: use zero-argument super() shortcut (Python 3.0+) (Sebastian Falbesoner)
a9b957740e bench: add CAddrMan benchmarks (Vasil Dimov)
e9ea95a30d [net processing] Move all const declarations to top of net_processing.cpp (John Newbery)
507b36dd1b [validation] Move all const declarations to top of validation.h (John Newbery)
0109622b08 [validation] Move validation-only consts to validation.cpp (John Newbery)
b8580cacc7 [net processing] Move net processing consts to net_processing.cpp (John Newbery)
2495110012 test: add coverage for -rpcwallet cli option (Jon Atack)
c4027e7350 refactor: test: use wait_for_getdata() in p2p_compactblocks.py (Sebastian Falbesoner)
fa262712ca test: Check submitblock return values (MarcoFalke)
fdceb63283 fuzz: Remove enumeration of expected deserialization exceptions in ProcessMessage(...) fuzzer (practicalswift)
a2a03c3ca9 fixing documentation to not require rpcpassword (“jkcd”)
8f5dc8800a test: display command line options passed to send_cli() in debug log (Jon Atack)
fae98668d1 test: Fix intermittent error in mempool_reorg (MarcoFalke)
eb37275a6f Fix naming of macOS SDK and clarify version (Andrew Chow)
9f5608c289 test: check for matching object hashes in wait_for_getdata (Danny Lee)
fa60afc4fb wallet: Add BlockUntilSyncedToCurrentChain to dumpwallet (MarcoFalke)
764bfe4cba [psbt] add file size limit (Sjors Provoost)
1cd8dc2556 [gui] load PSBT (Sjors Provoost)
f6895301f7 [gui] save PSBT to file (Sjors Provoost)
1d05a9d80b Move DEFAULT_MAX_RAW_TX_FEE_RATE to node/transaction.h (Sjors Provoost)
86e22d23bb [util] GetFileSize (Sjors Provoost)
6ab3aad9a5 [gui] send dialog: split on_sendButton_clicked (Sjors Provoost)
faff9e4bb4 test: Remove unused, undocumented and misleading CScript.__add__ (MarcoFalke)
facaefadd3 doc: Add wallet release notes for 0.21.0 (MarcoFalke)
faa4243c11 Add release notes skeleton, so that notes can be filled easier (MarcoFalke)
fa1fdb02fc bench: Replace ::mempool globabl with test_setup.mempool (MarcoFalke)
fab1170964 bench: Remove requirement that all benches use RegTestingSetup (MarcoFalke)
315a4d36f7 build: fix ASLR for bitcoin-cli on Windows (fanquake)
8508473094 Avoid non-trivial global constants in SHA-NI code (Pieter Wuille)
21fa0a44ab [docs] use consistent naming for possible_overwrite (John Newbery)
2685c214cc [tests] small whitespace fixup (John Newbery)
e9936966c0 scripted-diff: Rename PRUNED to SPENT in coins tests (John Newbery)
c205979031 [docs] Improve commenting in coins.cpp|h (John Newbery)
b91e4ae0d8 Do not expose and consider -logthreadnames when it does not work (Hennadii Stepanov)
ccccd51908 script: Remove undocumented and unused operator+ (MarcoFalke)
8334ee31f8 scripts: add MACHO LAZY_BINDINGS test to test-security-check.py (fanquake)
7b99c7454c scripts: add MACHO Canary check to security-check.py (fanquake)
b155fcda51 doc: fix typo in configure.ac (fanquake)
20a30922fb doc: note why we can't use thread_local with glibc back compat (fanquake)
3c21db7b78 [test] add 8 error messages to feature_segwit and change version to type (Gloria Zhao)
fac2fc4dd8 test: Increase debugging to hunt down mempool_reorg intermittent failure (MarcoFalke)
60cdcf30a4 test: Fix linter issue (Hennadii Stepanov)
c743718558 test: add further BIP37 size limit checks to p2p_filter.py (Sebastian Falbesoner)
69749fbe6a tests: Add fuzzing harness for Golomb-Rice coding (GolombRiceEncode/GolombRiceDecode) (practicalswift)
b68e717967 build: Set libevent minimum version to 2.0.21 (Hennadii Stepanov)
faebcd4e8d ci: Remove xenial tsan workaround (MarcoFalke)
a1d5b12ec0 Merge getreceivedby tally into GetReceived function (Andrew Toth)
709998467e rpc: doc: Fix and extend getblockstats examples (Adam Soltys)
a9ecbdfcaa test: add more inactive filter tests to p2p_filter.py (Sebastian Falbesoner)
5eae034996 net: limit BIP37 filter lifespan (active between 'filterload' and 'filterclear') (Sebastian Falbesoner)
92fe537cf7 test: fix intermittent race condition in interface_bitcoin_cli.py (Jon Atack)
c648e636b2 test: add wait_for_cookie_credentials() to test framework (Jon Atack)
fc289b7898 wallet: Refactor WalletRescanReserver to use wallet reference (João Barbosa)
9df32e820d scripted-diff: test: replace command with msgtype (Sebastian Falbesoner)
0d32d66148 Remove -upgradewallet startup option (Andrew Chow)
92263cce5b Add upgradewallet RPC (Andrew Chow)
1e48796c99 Make UpgradeWallet a member function of CWallet (Andrew Chow)
c988f27937 Have UpgradeWallet take the version to upgrade to and an error message out parameter (Andrew Chow)
1833237123 Only run UpgradeWallet if the wallet needs to be upgraded (Andrew Chow)
9c16b1735f Move wallet upgrading to its own function (Andrew Chow)
3718ae2ef8 [tests] Don't initialize PrecomputedTransactionData in txvalidationcache tests (John Newbery)
fa03713e13 test: Properly raise FailedToStartError when rpc shutdown before warmup finished (take 2) (MarcoFalke)
27abd1a4f4 test: Replace boost::mutex with std::mutex (Hennadii Stepanov)
fabfcad876 test: Bump timeout in wallet_import_rescan (MarcoFalke)
92bcd70808 [wallet] allow transaction without change if keypool is empty (Sjors Provoost)
709f8685ac [wallet] CreateTransaction: simplify change address check (Sjors Provoost)
5efc25f963 [wallet] translate "Keypool ran out" message (Sjors Provoost)
6f8b498d18 fuzz: http_request workaround for libevent < 2.1.1 (Sebastian Falbesoner)
fa32097541 test: Create cached blocks not in the future (MarcoFalke)
faceeae49a ci: Disable valgrind functionl tests on forked repos to avoid timeouts (MarcoFalke)
fa168d7542 rpc: Document all aliases for first arg of listtransactions (MarcoFalke)
fa5b1f067f rpc: Document all aliases for second arg of getblock (MarcoFalke)
fa86a4bbfc rpc: Rename first arg of generateblock RPC to "output" (MarcoFalke)
fa4632c417 test: Move boost/stdlib includes last (MarcoFalke)
fa488f131f scripted-diff: Bump copyright headers (MarcoFalke)
fac5c37300 scripted-diff: Sort test includes (MarcoFalke)
eab7367e25 fuzz: fix unused variable compiler warning (Jon Atack)
38677274f9 rpc: settxfee respects -maxtxfee wallet setting (Fabian Jahr)
bda84a08a0 rpc: Add documentation for deactivating settxfee (Fabian Jahr)
a2324e4d3f test: Improve naming and logging of avoid_reuse tests (Fabian Jahr)
1abbdac677 wallet: Prefer full destination groups in coin selection (Fabian Jahr)
69ffddc83e refactor: Remove unused methods CBloomFilter::reset()/clear() (Sebastian Falbesoner)
9b5950db86 bnb: exit selection when best_waste is 0 (Andrew Chow)
faf989f936 util: Document why ArgsManager (con/de)structor is not inline (MarcoFalke)
fae00a77e2 bench: Remove unused argsman.ClearArgs (MarcoFalke)
fa46aebeb1 scripted-diff: Replace gArgs with local argsman in bench (MarcoFalke)
fa2bc4141d tools: Add unused argsman to bench_bitcoin (MarcoFalke)
e44aeefaae gitian: Add missing automake package to gitian-win-signer.yml (Andrew Chow)
0c6318788b ci: Limit cache size regardless of NO_DEPENDS (Hennadii Stepanov)
bee88b8c58 tests: have coins simulation test also use CCoinsViewDB (James O'Beirne)
9986608ba9 test: Verify findCommonAncestor always initializes outputs (Russell Yanofsky)
c28c7b882b test: add -getinfo "unlocked_until" and "headers" coverage (Jon Atack)
bb13f46fb1 test: verify cli.getwalletinfo in wallet section (Jon Atack)
becc8b9747 test: verify bitcoin-cli -version with node stopped (Jon Atack)
727b67e7b8 test: add coverage for bitcoin-cli -rpcwait (Jon Atack)
a95af77eb2 qt: Make bitcoin.ico non-executable (practicalswift)
f63dec189c [REFACTOR] Initialize PrecomputedTransactionData in CheckInputScripts (Pieter Wuille)
fa69f88486 fuzz: Disable debug log file (MarcoFalke)
fa0cbd48c4 test: Add optional extra_args to testing setup (MarcoFalke)
fad4fa7e2f node: Add args alias for gArgs global (MarcoFalke)
808ef36b89 [doc] Update thread information in developer docs (John Newbery)
fac0c8db9f appveyor: Remove clcache (MarcoFalke)
fa176e253f test: Avoid accessing free'd memory in validation_chainstatemanager_tests (MarcoFalke)
fa4c29bc1d test: Add various low-level p2p tests (MarcoFalke)
1b04302e43 gui: use PACKAGE_NAME in exception message (fanquake)
905e2e85ba gitian: add jonatack gpg key fingerprint (Jon Atack)
c47adf8df4 Added my fingerprint Stephan Oeste (Emzy) (Stephan Oeste)
f2b5b0a3b4 build: add linker optimization flags to guix (fanquake)
b8b050a8d6 build: add linker optimization flags to gitian descriptors (fanquake)
88884ee8d8 script: Disallow silent bool -> CScript conversion (MarcoFalke)
fa6cb00ce5 doc: Fix macos comments in release-notes (MarcoFalke)
fa50d11dd1 appveyor: Disable functional tests for now (MarcoFalke)
48973402d8 wallet: Avoid use of Chain::Lock in CWallet::GetKeyBirthTimes (Russell Yanofsky)
e958ff9ab5 wallet: Avoid use of Chain::Lock in CWallet::CreateTransaction (Russell Yanofsky)
c0d07dc4cb wallet: Avoid use of Chain::Lock in CWallet::ScanForWalletTransactions (Russell Yanofsky)
1be8ff280c wallet: Avoid use of Chain::Lock in rescanblockchain (Russell Yanofsky)
3cb85ac594 wallet refactor: Avoid use of Chain::Lock in CWallet::RescanFromTime (Russell Yanofsky)
f7ba881bc6 wallet: Avoid use of Chain::Lock in listsinceblock (Russell Yanofsky)
bc96a9bfc6 wallet: Avoid use of Chain::Lock in importmulti (Russell Yanofsky)
25a9fcf9e5 wallet: Avoid use of Chain::Lock in importwallet and dumpwallet (Russell Yanofsky)
c1694ce6bb wallet: Avoid use of Chain::Lock in importprunedfunds (Russell Yanofsky)
ade5f87971 wallet refactor: Avoid use of Chain::Lock in qt wallettests (Russell Yanofsky)
f6da44ccce wallet: Avoid use of Chain::Lock in tryGetTxStatus and tryGetBalances (Russell Yanofsky)
bf30cd4922 refactor: Add interfaces::FoundBlock class to selectively return block data (Russell Yanofsky)
0306d78cb4 Use getbalances in wallet_address_types tests (Jon Atack)
7eacdc5167 Shift coverage from getunconfirmedbalance to getbalances in wallet_abandonconflict tests (Jon Atack)
3e6f7377f6 Improve getbalances coverage in wallet_balance tests (Jon Atack)
73f8303629 ci: Add pip cache (Hennadii Stepanov)
6d480667b2 ci: Print ccache statistics summary (Hennadii Stepanov)
a6eea715ff ci: Drop unused WINEDEBUG variable (Hennadii Stepanov)
0753efd9dc rpc: Remove deprecated "size" from mempool txs (Vasil Dimov)
9cdddae3b4 test: add rpc_signrawtransaction logging (Jon Atack)
4d6cde38ce test: refactor rpc_signrawtransaction witness script tests (Jon Atack)
fab9899204 test: Try once more when RPC connection fails on Windows (MarcoFalke)
faa655731e test: Document why connection is re-constructed on windows (MarcoFalke)
fa9f4f663c test: Remove python 3.4 workaround (MarcoFalke)
fae760f2b2 cirrus: Bump freebsd to 12.1 (MarcoFalke)
c0af173da2 doc: default minconf for getbalance should be 0 (U-Zyn Chua)
555567ace9 test: Extend wallet_dump test to cover comments (MarcoFalke)
fa404f1e47 test: Check that the version message does not leak the local address of the node (MarcoFalke)
b1b0cfecb6 test: Remove REJECT message code (Hennadii Stepanov)
854382885f refactor: test: improve wait_for{header,merkleblock} interface (Sebastian Falbesoner)
1356a45ef0 test: complete impl. of msg_merkleblock and wait_for_merkleblock (Sebastian Falbesoner)
2599d13c94 rpc: Remove deprecated migration code (Vasil Dimov)
a35e323589 guix: Appease travis. (Carl Dong)
0b66d22da5 guix: Use gcc-9 for mingw-w64 instead of 8 (Carl Dong)
ba0b99bdd6 guix: Don't set MINGW_HAS_SECURE_API CFLAG in depends (Carl Dong)
93439a71ed guix: Bump to upstream commit with mingw-w64 changes (Carl Dong)
35a96792dd guix: Check mingw symbols, improve SSP fix docs (Carl Dong)
449d8fe25b guix: Expand on INT trap message (Carl Dong)
3f1f03c67a guix: Spelling fixes (Carl Dong)
ff821dd2a1 guix: Reinstate make-ssp-fixed-gcc (Carl Dong)
360a9e0ad5 guix: Bump time-machine for mingw-w64 patches (Carl Dong)
93e41b7e3b guix: Use gcc-8 for mingw-w64 instead of 7 (Carl Dong)
ef4f7e4c45 guix: Set the well-known timezone env var (Carl Dong)
acf4b3b3b5 guix: Make x86_64-w64-mingw32 builds reproducible (Carl Dong)
c4cce00eac guix: Remove dead links from README. (Carl Dong)
df953a4c9a guix: Appease shellcheck. (Carl Dong)
91897c95e1 guix: Improve guix-build.sh documentation (Carl Dong)
570d769c6c guix: Build support for Windows (Carl Dong)
f29bd546ec Revert "Merge #16367: Multiprocess build support" (MarcoFalke)
96cb597325 gui: Avoid redundant tx status updates (Russell Yanofsky)
dabe2bb11a build: Bump gitian descriptors to 0.21 (Wladimir J. van der Laan)
7524b6479c Add tests for generateblock (Andrew Toth)
dcc8332543 Add generateblock rpc (Andrew Toth)
c9017ce3bc protect g_chainman with cs_main (James O'Beirne)
2b081c4568 test: add basic tests for ChainstateManager (James O'Beirne)
4ae29f5f0c use ChainstateManager to initialize chainstate (James O'Beirne)
5b690f0aae refactor: move RewindBlockIndex to CChainState (James O'Beirne)
89cdf4d569 validation: introduce unused ChainstateManager (James O'Beirne)
8e2ecfe249 validation: add CChainState.m_from_snapshot_blockhash (James O'Beirne)
14e8cf974a [consensus] MOVEONLY: Move single-sig checking EvalScript code to EvalChecksig (Pieter Wuille)
3ce16ad2f9 refactor: Use psbt forward declaration (Russell Yanofsky)
1dde238f2c Add ChainClient setMockTime, getWallets methods (Russell Yanofsky)
b919efadff depends: Use default macos clang compiler (Russell Yanofsky)
d54f64c6c7 Add multiprocess travis configuration (Russell Yanofsky)
787f40668d Set LD_LIBRARY_PATH consistently in travis tests (Russell Yanofsky)
d630646662 libmultiprocess depends build (Russell Yanofsky)
e6e44eedd5 Multiprocess build changes (Russell Yanofsky)
01a3392b1b Drop bitcoin-wallet dependency on libevent (Russell Yanofsky)
0660119ac3 Drop unintended bitcoin-tx dependency on libevent (Russell Yanofsky)
5df0877f91 test: update and harden interface_bitcoin_cli tests (Jon Atack)
75019774c9 cli -getinfo: use getbalances instead of deprecated getwalletinfo balance (Jon Atack)
d84c9aa25d build: Bump version to 0.20.99 (Wladimir J. van der Laan)
fad691cafe rpc: Make verifychain default values static, not depend on global args (MarcoFalke)
7fcdec0f32 Remove PID file at the very end (Hennadii Stepanov)
fa1da3d4bf test: Add basic addr relay test (MarcoFalke)
fa1793c1c4 net: Pass connman const when relaying address (MarcoFalke)
fa47a0b003 net: Make addr relay mockable (MarcoFalke)
478c11dde3 Correct scripted-diff example link (Yahia Chiheb)
5ca90f8b59 scripts: add MACHO lazy bindings check to security-check.py (fanquake)
b1d24d1d03 Reorder the test instructions by number (Pieter Wuille)
c2ccadc26a Merge and generalize case 3 and case 6 (Pieter Wuille)
402ad5aaca Only run sanity check once at the end (Pieter Wuille)
eda8309bfc Assert immediately rather than caching failure (Pieter Wuille)
55608455cb Make a fuzzer-based copy of the prevector randomized test (Pieter Wuille)
faede1b293 test: Properly raise FailedToStartError when rpc shutdown before warmup finished (MarcoFalke)
6136a96cdf ci: Rename RUN_CI_ON_HOST to DANGER_RUN_CI_ON_HOST (Hennadii Stepanov)
97ba77aa8e ci: Add native s390x (Hennadii Stepanov)
fa5e973b44 test: Set -use_value_profile=1 when merging fuzz inputs (MarcoFalke)
fa7af33b4c ci: Run unit tests sequential once (MarcoFalke)
fa68a3e764 appveyor: Enable minimal unit test logging to aid debugging (MarcoFalke)
cdfb8e7afa tests: Add fuzzing harness for HTTPRequest, libevent's evhttp and related functions (practicalswift)
fa6a008434 fuzz: Add process_messages harness (MarcoFalke)
7777e3624f scripted-diff: Replace strCommand with msg_type (MarcoFalke)
283bd72156 tests: Add coverage of {,Incremental}DynamicUsage(const std::set<X, Y>& s) to existing fuzzer (practicalswift)
bf76000493 tests: Add fuzzing harness for classes/functions in cuckoocache.h (practicalswift)
57890b2555 tests: Add fuzzing harness for classes/functions in checkqueue.h (practicalswift)
2df5701e90 tests: Add coverage of GetVirtualTransactionSize(...) to existing fuzzer (practicalswift)
7b9a2dc864 tests: Add fuzzing harness for AdditionOverflow(...) (practicalswift)
44fb2a596b tests: Add fuzzing harness for FeeFilterRounder (practicalswift)
13d2a33537 Fix unregister_all_during_call cleanup (Russell Yanofsky)
da0842dcd4 build: Update ax_boost_mase.m4 to the latest serial (Hennadii Stepanov)
2276339a17 Add test for UnregisterAllValidationInterfaces bug (Russell Yanofsky)
3c61abbbc8 Do not clear validationinterface entries being executed (Pieter Wuille)
fa1a92224d rpc: Avoid initialization-order-fiasco on static CRPCCommand tables (MarcoFalke)
7a2ecf16df Wallet: Change IsMine check in CWallet::DelAddressBook from assert to failure (Luke Dashjr)
2952c46b92 Wallet: Replace CAddressBookData.name with GetLabel() method (Luke Dashjr)
d7092c392e QA: Test that change doesn't turn into non-change when spent in an avoid-reuse wallet (Luke Dashjr)
56fe839e4e qt: Fix Window -> Minimize menu item (Hennadii Stepanov)
fa2251df5e test: Use one node to avoid a race due to missing sync in rpc_signrawtransaction (MarcoFalke)
b5795a7886 Wallet: Add warning comments and assert to CWallet::DelAddressBook (Luke Dashjr)
6d2905f57a Wallet: Avoid unnecessary/redundant m_address_book lookups (Luke Dashjr)
c751d886f4 Wallet: Avoid treating change-in-the-addressbook as non-change everywhere (Luke Dashjr)
8e64b8c84b Wallet: New FindAddressBookEntry method to filter out change entries (and skip ->second everywhere) (Luke Dashjr)
65b6bdc2b1 Wallet: Add CAddressBookData::IsChange which returns true iff label has never been set (Luke Dashjr)
144b2f85da Wallet: Require usage of new CAddressBookData::setLabel to change label (Luke Dashjr)
b86cd155f6 scripted-diff: Wallet: Rename mapAddressBook to m_address_book (Luke Dashjr)
fa369651c5 net: Add missing cs_vNodes lock (MarcoFalke)
7b8e15728d rpc: Fix rpcRunLater race in walletpassphrase (João Barbosa)
b224b4e7bd test: wallet_bumpfee assertion fixup (Jon Atack)
cd3b1569d9 Correctly compute redeemScript from witnessScript for signrawtransaction (Andrew Chow)
25e03ba1ff test: relax bumpfee dust_to_fee txsize an extra vbyte (Jon Atack)
d6815a2313 refactor: drop boost::signals2 in validationinterface (Russell Yanofsky)
c0c43ae147 test: skip backwards compat tests if not compiled with wallet (fanquake)
0eeb0468e7 net: Hardcoded seeds update for 0.20 (Wladimir J. van der Laan)
9e071b0089 test: remove rapidcheck integration and tests (fanquake)
0ed2d8e07d test: add BIP37 remote crash bug [CVE-2013-5700] test to p2p_filter.py (Sebastian Falbesoner)
691e2a7af7 build: create test_fuzz library from src/test/fuzz/fuzz.cpp (Harris)
faa64af960 fuzz: Add CScriptNum::getint coverage (MarcoFalke)
4670006762 test: remove redundant sync_with_ping after add_p2p_connection (Jon Atack)
fa0189955a fuzz: Extend descriptor fuzz test (MarcoFalke)
fa86edf66d fuzz: Extend script fuzz test (MarcoFalke)
3dc8c012f0 test: remaining replacements of (send_message+sync_with_ping) with send_and_ping (Sebastian Falbesoner)
facc332dc5 fuzz: Avoid running over all inputs after merging them (MarcoFalke)
acf269e146 tests: Add proof-of-work fuzzing harness (practicalswift)
fab32557f2 rpc: Make rpc documentation not depend on rpc args (MarcoFalke)
f32ab443a9 Bugfix: RPC: JSON null is not "None" (Luke Dashjr)
26dcf39581 Bugfix: RPC: Don't use a continuation elipsis after an elision elipsis (Luke Dashjr)
eca65caadc Bugfix: RPC: Add missing commas and correct indentation of explicit ELISION (Luke Dashjr)
4928a995e9 [doc] fix git add argument (Michael Polzer)
fad2f68353 init: Replace URL_WEBSITE with PACKAGE_URL (MarcoFalke)
7b2975ae8f doc: Update webchat URLs in README.md (Suriyaa Sundararuban)
d695eb4c21 doc: note the costs of fetching all pull requests (Vasil Dimov)
332f373a9d [scripts] previous_release: improve failed download error message (Sebastian Falbesoner)
f65c9ad40f Check for overflow when calculating sum of outputs (Elichai Turkel)
fa6e01f2a1 doc: block-relay-only is not blocksonly (MarcoFalke)
6112a20982 test: replace (send_message + sync_with_ping) with send_and_ping (Jon Atack)
222253e37d chainparams: Bump assumed valid hash (MarcoFalke)
9eefc6e92f gui: Delete progress dialog instead of hidding it (João Barbosa)
ee9e88ba27 wallet: Handle duplicate fileid exception (João Barbosa)
a46484c8b3 build: Detect gmtime_* definitions via configure (Ben Woosley)
740614e3c3 qt: Translations update pre-branch (Wladimir J. van der Laan)
faa9491870 ci: Use Focal for fuzzers (MarcoFalke)
faf1d04731 test: Remove redundant sync_with_ping after add_p2p_connection (MarcoFalke)
fa90647045 test: Wait for both veracks in add_p2p_connection (MarcoFalke)
7777703958 doc: Explain new test logging (MarcoFalke)
fac3716b09 test: check that peer is connected when calling sync_* (MarcoFalke)
fa3cc0bfc4 test: Remove unsafe BOOST_TEST_MESSAGE (MarcoFalke)
0055922958 test: add BIP37 'filterclear' test to p2p_filter.py (Sebastian Falbesoner)
41b0baf43c gui: Handle WalletModel::unload asynchronous (João Barbosa)
ab31b9d6fe Fix wallet unload race condition (Russell Yanofsky)
0933a37078 gui: Avoid Wallet::GetBalance in WalletModel::pollBalanceChanged (João Barbosa)
83e1d92413 test: listsinceblock block height checks (Jon Atack)
fa15699969 test: Add basic test for BIP 37 (MarcoFalke)
e980214bc4 serialization: prevent int overflow for big Coin::nHeight (pierrenn)
11a520f679 tests: Add fuzzing harness for functions/classes in random.h (practicalswift)
64d277bbbc tests: Add fuzzing harness for LimitedString (serialize.h) (practicalswift)
f205cf7fef tests: Add fuzzing harness for functions/classes in span.h (practicalswift)
9718f38f54 tests: Add fuzzing harness for functions/classes in merkleblock.h (practicalswift)
a16ea051f9 tests: Add fuzzing harness for functions/classes in flatfile.h (practicalswift)
621e86ee8d Update -blocksonly documentation (glowang)
6e0d82c55b rpc: remove unused getbalances() code (Jon Atack)
c34164896c Bugfix: RPC: Remove final comma for last entry of fixed-size Arrays and Objects in RPCResult (Luke Dashjr)
faaf1cb5b9 util: Replace i64tostr with ToString (MarcoFalke)
fac96fff62 util: Remove unused itostr (MarcoFalke)
7142d50ac3 scripts: rename test_64bit_PE to test_PE (fanquake)
edaca2dd12 scripts: add MACHO NX check to security-check.py (fanquake)
1a4e9f32ef scripts: add MACHO tests to test-security-check.py (fanquake)
ff9c671b11 refactor: Work around GCC 9 `-Wredundant-move` warning (Russell Yanofsky)
b837b334db net: Fail instead of truncate command name in CMessageHeader (Wladimir J. van der Laan)
dcda81c471 test: add coverage for script parse error in ParseScript (pierrenn)
faf7d4fa86 build: Add cov_fuzz target (MarcoFalke)
fac71e364e build: link fuzz/test_runner.py for out-of-tree builds (MarcoFalke)
faf2c5aca0 build: Remove unused USE_COVERAGE (MarcoFalke)
ef35604c9c rpc: fix broken RPCExamples for waitforblock(height) (Sebastian Falbesoner)
9ab14e4d21 Limit decimal range of numbers ParseScript accepts (pierrenn)
2b0fcff7f2 Make VerifyWitnessProgram use a Span stack (Pieter Wuille)
7834c3b9ec tests: Add fuzzing harness for functions/classes in chain.h (practicalswift)
d7930c4326 tests: Add fuzzing harness for functions/classes in protocol.h (practicalswift)
100213c5c2 util: Fail to parse space-only strings in ParseMoney(...) (instead of parsing as zero) (practicalswift)
e41e46cee0 ci: Remove misplaced comments from folded block scalar (Hennadii Stepanov)
c3857c5fcb wallet: remove CreateTotalBumpTransaction() (Jon Atack)
4a0b27bb01 wallet: remove totalfee from createBumpTransaction() (Jon Atack)
e347cfa9a7 rpc: remove deprecated totalFee arg from RPC bumpfee (Jon Atack)
bd05f96d79 test: delete wallet_bumpfee_totalfee_deprecation.py (Jon Atack)
a6d1ab8caa test: update bumpfee testing from totalFee to fee_rate (Jon Atack)
41ff4992e5 script: fix SCRIPT_ERR_SIG_PUSHONLY error string (Sebastian Falbesoner)
d831831822 lockedpool: When possible, use madvise to avoid including sensitive information in core dumps (Luke Dashjr)
25c8b73656 ci: Use Homebrew addon on native macOS (Hennadii Stepanov)
596c627a1e ci: Fix brew in Travis (Hennadii Stepanov)
1f97b69ba2 build: remove double LIBBITCOIN_SERVER from bench-Makefile (Harris)
cd04286825 build: Fix typo in EVENT_CFLAGS variable (Hennadii Stepanov)
f709ad0c90 build: Fix libevent linking for bench_bitcoin binary (Hennadii Stepanov)
d056df033a Replace std::to_string with locale-independent alternative (Ben Woosley)
fae1e99289 ci: Only clone bitcoin-core/qa-assets when fuzzing (MarcoFalke)
3e0df92bf2 Update with new Windows code signing certificate (Andrew Chow)
1a0993ae35 scripts: add PE dylib checking to symbol-check.py (fanquake)
76db4b260e gui: avoid QT Designer/Form Editor re-formatting (Jon Atack)
aae26053f9 gui: display Mapped AS in peers info window (Jon Atack)
e4d366788b build: Drop needless EXTRA_DIST content (Hennadii Stepanov)
6c4da59f5b build: Drop SOURCEDIST reordering (Hennadii Stepanov)
5e6b8b3912 build: Use git archive as source tarball (Hennadii Stepanov)
102f3267e9 tests: Add fuzzing harness for classes/functions in blockfilter.h (practicalswift)
87d24e67bb tests: Add integer serialization/deserialization fuzzing harness (practicalswift)
33dd764984 doc: Add fuzzing quickstart guides for libFuzzer and afl-fuzz. Simplify instructions. (practicalswift)
4308aa67e3 tests: Add fuzzing harness for functions in net_permissions.h (practicalswift)
43ff0d91f8 tests: Add fuzzing harness for functions in timedata.h (practicalswift)
a8695db785 tests: Add fuzzing harness for functions in addrdb.h (practicalswift)
5aab011805 test: add unit test for non-standard "scriptsig-not-pushonly" txs (Sebastian Falbesoner)
3dc27a1524 doc: Add internal interface conventions to developer notes (Russell Yanofsky)
1dca9dc4c7 refactor: Change createWallet, fillPSBT argument order (Russell Yanofsky)
96dfe5ced6 refactor: Change Chain::broadcastTransaction param order (Russell Yanofsky)
6ceb21909c refactor: Rename Chain::Notifications methods to be consistent with other interfaces methods (Russell Yanofsky)
1c2ab1a6d2 refactor: Rename Node::disconnect methods (Russell Yanofsky)
77e4b06572 refactor: Get rid of Wallet::IsWalletFlagSet method (Russell Yanofsky)
7c1ac70c01 tests: Don't assume presence of __builtin_mul_overflow in MultiplicationOverflow(...) fuzzing harness (practicalswift)
fa92af5af3 ci: Run feature_block and feature_abortnode in valgrind (MarcoFalke)
fa01febeaf test: Remove ci timeout restriction in test_runner (MarcoFalke)
f0dfac7da3 test: add executable flag for rpc_estimatefee.py (Sebastian Falbesoner)
d18bf0c0b0 rpc: add missing HelpExampleRpc for getblockfilter (Sebastian Falbesoner)
b492684063 doc: Temporary note that release notes should be edited in wiki (Wladimir J. van der Laan)
e57980b473 [mempool] Remove NotifyEntryAdded and NotifyEntryRemoved callbacks (John Newbery)
2dd561f361 [validation] Remove pool member from ConnectTrace (John Newbery)
969b65f3f5 [validation] Remove NotifyEntryRemoved callback from ConnectTrace (John Newbery)
5613f9842b [validation] Remove conflictedTxs from PerBlockConnectTrace (John Newbery)
cdb893443c [validation interface] Remove vtxConflicted from BlockConnected (John Newbery)
1168394d75 [wallet] Notify conflicted transactions in TransactionRemovedFromMempool (John Newbery)
84a46a9b93 doc: mention MAKE=gmake workaround when building on a BSD (emu)
e90e3e684f build: fix sysctl() detection on macOS (fanquake)
a733ad514a Add bn2vch test to functional tests (Pieter Wuille)
a3ad6459b7 Simplify bn2vch using int.to_bytes (Pieter Wuille)
7d8e1dec3b net: fix use-after-free in tests (Vasil Dimov)
fa3fa27c45 fuzz: Remove option --export_coverage from test_runner (MarcoFalke)
aaaa055ff7 fuzz: Add option to merge input dir to test runner (MarcoFalke)
fa4fa88d76 doc: Remove --disable-ccache from docs (MarcoFalke)
5e47b19e50 tests: Add harness which fuzzes EvalScript and VerifyScript using a fuzzed signature checker (practicalswift)
5b59a19731 Update merkle.cpp (4d55397500)
6afaf2f680 test: use fs namespace in dbwrapper unicodepath test (fanquake)
fa36f3a295 refactor: move DUMP_BANS_INTERVAL to banman.h (MarcoFalke)
fadafb83cf scheduler: Make schedule* methods type safe (MarcoFalke)
fa70ccc6c4 scheduler: Use C++11 member initialization, add shutdown assert (MarcoFalke)
ec30a79f1c Fix UB with bench on genesis block (Gregory Sanders)
3ed772d221 [tests] remove bignum.py (John Newbery)
f950ec2520 [tests] remove bn2bin() (John Newbery)
3b9b38579c [tests] remove bn_bytes() function (John Newbery)
a760aa14a9 [tests] remove mpi2vch() function (John Newbery)
9a60bef50d [tests] don't encode the integer size in bignum (John Newbery)
1dc68aee66 [tests] add function comments to bignum (John Newbery)
f31fc0e92e [tests] fix flake8 warnings in script.py and bignum.py (John Newbery)
44abf417eb tests: Add fuzzing harness for various functions taking std::string as input (practicalswift)
d69145acb7 tests: Add fuzzing harness for MultiplicationOverflow(...) (practicalswift)
7726f3bc46 tests: Add fuzzing harness for CFeeRate (practicalswift)
0579a27630 tests: Add fuzzing harness for CBlockHeader (practicalswift)
cb4eec13c0 tests: Add fuzzing harness for count_seconds(...) (practicalswift)
f9f210d8de doc: fix GetTimeMicros() comment in random.cpp (fanquake)
a889711562 rand: remove getentropy() fallback for macOS < 10.12 (fanquake)
612a931d1a tests: simplify next_block() function in feature_block (John Newbery)
7a6627ae87 Fix mining to an invalid target + ensure that a new block has the correct hash internally in Python tests (Samer Afach)
fac52253f8 rpc: Document an RPCResult for all calls; Enforce at compile time (MarcoFalke)
fadd99f610 rpc: Add missing newline in RPCResult description (MarcoFalke)
fa7fea3654 refactor: Remove mempool global from net (MarcoFalke)
fb15bfd99e Fix nit in getblockchaininfo (Steven Roose)
7df0cf719f Replace remaining literals BTC with CURRENCY_UNIT (Daniel Kraft)
686c5456f2 Fix missing header in sync.h (João Barbosa)
2a1b85f3c5 tx: Bump transifex slug to 020x (Wladimir J. van der Laan)
82dd8860bb qt: Periodical translations update (Wladimir J. van der Laan)
fa19295250 test: Bump timeouts to avoid valgrind failures (MarcoFalke)
e6e622e5a0 Implement O(1) OP_IF/NOTIF/ELSE/ENDIF logic (Pieter Wuille)
d0e8f4d5d8 [refactor] interpreter: define interface for vfExec (Anthony Towns)
89fb241c54 Benchmark script verification with 100 nested IFs (Pieter Wuille)
09e25071f4 Cache parent xpub inside of BIP32PubkeyProvider (Andrew Chow)
deb791c7ba Only cache xpubs that have a hardened last step (Andrew Chow)
f76733eda5 Cache the immediate derivation parent xpub (Andrew Chow)
58f54b686f Add DescriptorCache* read_cache and DescriptorCache* write_cache to Expand and GetPubKey (Andrew Chow)
66c2cadc91 Rename BIP32PubkeyProvider.m_extkey to m_root_extkey (Andrew Chow)
df55d44d0d Track the index of the key expression in PubkeyProvider (Andrew Chow)
474ea3b927 Introduce DescriptorCache struct which caches xpubs (Andrew Chow)
c8e24ddce3 [REFACTOR] Abstract out script execution out of VerifyWitnessProgram() (Pieter Wuille)
a33cffbeab util: HelpExampleRpc formatting fixup (Jon Atack)
faf6f156ff test: Add missing syncwithvalidationinterfacequeue (MarcoFalke)
fa2cf85e6f test: Fix race in p2p_segwit (MarcoFalke)
0ae42a16c7 guix: Remove now-unnecessary gcc make flag (Carl Dong)
fa9b3040e7 test: Bump rpc timeout in feature_assumevalid to avoid valgrind timeouts (MarcoFalke)
fa72d270ad test: Bump walletpassphrase timeouts in wallet_createwallet to avoid valgrind timeouts (MarcoFalke)
bbbbb53dd1 fuzz: Add missing ECC_Start to key_io test (MarcoFalke)
111880aaf7 [test] Add coverage to estimaterawfee and estimatesmartfee (Ben Woosley)
8a2a652e6f Remove redundant type information from rpc docs (David O'Callaghan)
08eab0f599 tests: Add fuzzing of CSubNet, CNetAddr and CService related functions (practicalswift)
7a861a62c1 tests: Fuzz HasAllDesirableServiceFlags(...) and MayHaveUsefulAddressDB(...) (practicalswift)
47a263108b tests: Fuzz DecodeBase64PSBT(...) (practicalswift)
d3d4892ef4 tests: Simplify code by removing unwarranted use of unique_ptr:s (practicalswift)
e57e67057a tests: Fuzz DecodeHexBlk(...) (practicalswift)
117a706fab tests: Fuzz RecursiveDynamicUsage(const std::shared_ptr<X>& p) (practicalswift)
81b58a3161 tests: Fuzz operator!= of CService (practicalswift)
c2c58f6f59 tests: Increase fuzzing coverage of DecompressScript(...) (practicalswift)
9f8d74a8c7 tests: Fuzz currently uncovered code path in TxToUniv(...) (practicalswift)
46ef4cfe5f tests: Re-arrange test cases in parse_univalue to increase coverage (practicalswift)
516cc6fc78 tests: Remove unit test from fuzzing harness (practicalswift)
7b169cae20 tests: Add deserialization fuzzing of SnapshotMetadata (utxo_snapshot), uint160 and uint256 (practicalswift)
3e32499909 Change example addresses to bech32 (Yusuf Sahin HAMZA)
faae5a9a35 test: Add bad-txns-*-toolarge test cases to invalid_txs (MarcoFalke)
ddc7e42d60 build: Set minimum Automake version to 1.13 (Hennadii Stepanov)
fab7d14ea5 test: Check that wait_until returns if time point is in the past (MarcoFalke)
fa1244783c doc: Explain rebase/squash policy in CONTRIBUTING.md (MarcoFalke)
c1e0742308 doc: Warn about wallet.dat re-use and backups (Albert)
7ba962276e doc: Minor grammatical changes and flow improvements (Travin Keith)
155a11f897 doc: Added running functional tests in valgrind (Elichai Turkel)
2a6bce482c doc: Add a note about backporting (Carnhof Daki)
ac73afbcbf doc: asmap release note (Jon Atack)
9220a0fdd0 tests: Add one specialized ProcessMessage(...) fuzzing binary per message type for optimal results when using coverage-guided fuzzing (practicalswift)
fd1dae10b4 tests: Add fuzzing harness for ProcessMessage(...) (practicalswift)
4444edc2e6 ci: Enable all functional tests in valgrind (MarcoFalke)
f1b4503114 bumpfee test: exit loop at proper time with new fee value being compared (Gregory Sanders)
2e4edc68f9 Add some test logging to wallet_bumpfee.py (Gregory Sanders)
ffff9dcdc3 test: Explain why test logging should be used (MarcoFalke)
ad345909b2 doc: remove Boost Chrono from install docs (fanquake)
e21fa542b1 test: remove Boost Chrono installation from CI (fanquake)
bd37f2bc26 build: remove Boost Chrono detection from build system (fanquake)
1d0a87e712 build: remove chrono package from depends Boost (fanquake)
cbf2d75d8f qa: Add getdescriptorinfo functional test (João Barbosa)
e37f53648e Make lifetime correctness easier to see (avoid reference lifetime extension) (practicalswift)
e7ddbd9893 tests: Add fuzzing harness for CScriptNum operations (practicalswift)
65a52a0024 tests: Add fuzzing harness for CScript operations (practicalswift)
eb7c50ca1f tests: Add common Consume* fuzzing functions (practicalswift)
d484279a46 test: add logging to wallet_listsinceblock.py (Jon Atack)
d2774c09cf Clear any input_errors for an input after it is signed (Andrew Chow)
dc174881ad Replace GetSigningProvider with GetSolvingProvider (Andrew Chow)
6a9c429084 Move direct calls to MessageSign into new SignMessage functions in CWallet and ScriptPubKeyMan (Andrew Chow)
82a30fade7 Move key and script filling and signing from CWallet::FillPSBT to ScriptPubKeyMan::FillPSBT (Andrew Chow)
3d70dd99f9 Move FillPSBT to be a member of CWallet (Andrew Chow)
a4af324d15 Use CWallet::SignTransaction in CreateTransaction and signrawtransactionwithwallet (Andrew Chow)
f37de92744 Implement CWallet::SignTransaction using ScriptPubKeyMan::SignTransaction (Andrew Chow)
d999dd588c Add SignTransaction function to ScriptPubKeyMan and LegacyScriptPubKeyMan (Andrew Chow)
2c52b59d0a Refactor rawtransaction's SignTransaction into generic SignTransaction function (Andrew Chow)
46a1ee7732 doc: Add historical release notes for 0.19.1 (Wladimir J. van der Laan)
6590395f60 tests: Remove FUZZERS_MISSING_CORPORA (practicalswift)
815c7a6793 tests: Add basic fuzzing harness for CNetAddr/CService/CSubNet related functions (netaddress.h) (practicalswift)
fab0e5ba7f fuzz: Add assert(script == decompressed_script) (MarcoFalke)
bf06641819 tests: Reset FUZZERS_MISSING_CORPORA to enable regression fuzzing for more harnesses (practicalswift)
a652ba6293 rpc/wallet: initialize nFeeRequired to avoid using garbage value on failure (Karl-Johan Alm)
52fed696d2 tests: Fuzz additional functions in the script fuzzing harness (practicalswift)
5fc10f3cb5 tests: Fuzz additional functions in the transaction fuzzing harness (practicalswift)
1d324ce922 tests: Fuzz additional functions in the integer fuzzing harness (practicalswift)
4fe4de6364 tests: Fuzz additional functions in the hex fuzzing harness (practicalswift)
c7ea12d098 tests: Add key_io fuzzing harness (practicalswift)
0d0bc3b5c1 build: Add locale fuzzer to FUZZERS_MISSING_CORPORA (practicalswift)
79facb11e9 wallet: use constant CWallets in rpcwallet.cpp (Karl-Johan Alm)
d9b0ebc1da wallet: make ReserveDestination pwallet ivar const (Karl-Johan Alm)
57c569e4d9 wallet: make BackupWallet() const (Karl-Johan Alm)
df3a818d2a wallet: make getters const (Karl-Johan Alm)
227b9dd2d6 wallet/spkm: make GetOldestKeyPoolTime() const (Karl-Johan Alm)
22d329ad0e wallet: use constant CWallets in rpcdump.cpp (Karl-Johan Alm)
7b3587b29d wallet/db: make IsDummy() const (Karl-Johan Alm)
d366795d18 wallet/db: make Backup() const (Karl-Johan Alm)
8cd0b86340 wallet: make CanGetAddresses() const (Karl-Johan Alm)
037fa770eb wallet: make KeypoolCountExternalKeys() const (Karl-Johan Alm)
ddc93557ad wallet: make CanGenerateKeys() const (Karl-Johan Alm)
dc2d0650fd make BlockUntilSyncedToCurrentChain() const (Karl-Johan Alm)
70a6b529f3 lint-cppcheck: Remove -DHAVE_WORKING_BOOST_SLEEP_FOR (Anthony Towns)
294937b39d scheduler_tests: re-enable mockforward test (Anthony Towns)
cea19f6859 Drop unused reverselock.h (Anthony Towns)
d0ebd93270 scheduler: switch from boost to std (Anthony Towns)
b9c4260127 sync.h: add REVERSE_LOCK (Anthony Towns)
306f71b4eb scheduler: don't rely on boost interrupt on shutdown (Anthony Towns)
259e290db8 tests: Add fuzzing harness for locale independence testing (practicalswift)
fae86c38bc util: Remove unused MilliSleep (MarcoFalke)
fa9af06d91 scripted-diff: Replace MilliSleep with UninterruptibleSleep (MarcoFalke)
fa4620be78 util: Add UnintrruptibleSleep (MarcoFalke)
f4691b6c21 tests: Add fuzzing harness for CKey related functions (practicalswift)
9ff41f6419 tests: Add float to FUZZERS_MISSING_CORPORA (temporarily) (practicalswift)
8f6fb0a85a tests: Add serialization/deserialization fuzzing for integral types (practicalswift)
3c82b92d2e tests: Add fuzzing harness for functions taking floating-point types as input (practicalswift)
c2bd588860 Add missing includes (practicalswift)
7e9c7113af compressor: Make the domain of CompressAmount(...) explicit (practicalswift)
4a7fd7a712 tests: Add amount compression/decompression fuzzing to existing fuzzing harness: test compression round-trip (practicalswift)
470e2ac602 tests: Avoid hitting some known minor tinyformat issues when fuzzing strprintf(...) (practicalswift)
353f376277 Convert blockencodings.h to new serialization framework (Pieter Wuille)
e574fff53e Add CustomUintFormatter (Pieter Wuille)
10633398f2 Add DifferenceFormatter (Russell Yanofsky)
56dd9f04c7 Make VectorFormatter support stateful formatters (Russell Yanofsky)
3ca574cef0 Convert CCompactSize to proper formatter (Pieter Wuille)
1891245e73 refactor: Cast ping values to double before output (Ben Woosley)
7a810b1d7a refactor: Convert ping wait time from double to int64_t (Ben Woosley)
e6fc63ec7e refactor: Convert min ping time from double to int64_t (Ben Woosley)
b054c46977 refactor: Convert ping time from double to int64_t (Ben Woosley)
2455aa5d7f [rpc] changed MineBlocksOnDemand to IsMockableChain (Gloria Zhao)
2a95c7c956 ci: Check for submodules (Emil Engler)
1ba3e1cc21 init: move asmap code earlier in init process (Jon Atack)
5ba829e12e rpc: fix getpeerinfo RPCResult `mapped_as` type (Jon Atack)
c90b9a2399 net: extract conditional to bool CNetAddr::IsHeNet (Jon Atack)
819fb5549b logging: asmap logging and #include fixups (Jon Atack)
dcaf543ba0 test: add functional test for an empty, unparsable asmap (Jon Atack)
b8d0412b21 config: separate the asmap finding and parsing checks (Jon Atack)
81c38a2497 config: enable passing -asmap an absolute file path (Jon Atack)
fbe9b024f0 config: use default value in -asmap config (Jon Atack)
08b992675c test: add feature_asmap functional tests (Jon Atack)
fa6df0de53 test: Bump timeouts to accomodate really slow disks (MarcoFalke)
fa8b6020ec doc: Merge release notes for 0.20.0 release (MarcoFalke)
fa6b061fc1 rpc: Auto-format RPCResult (MarcoFalke)
fa7d0503d3 rpc: Move OuterType enum to header (MarcoFalke)
9b0e16226e doc: Correct spelling errors in comments (Ben Woosley)
aff2748f8a httpserver: use own HTTP status codes (Filip Gospodinov)
1ef28b4f7c Make AnalyzePSBT next role calculation simple, correct (Gregory Sanders)
10efc0487c Templatize ValidationState instead of subclassing (Jeffrey Czyz)
10e85d4adc Remove ValidationState's constructor (Jeffrey Czyz)
0aed17ef28 Refactor FormatStateMessage into ValidationState (Jeffrey Czyz)
d36146009f Drop unused mach time headers (Ben Woosley)
8888461f68 util: Fail to parse empty string in ParseMoney (MarcoFalke)
fab30b61eb util: Remove unused ParseMoney that takes a c_str (MarcoFalke)
16d6113f4f Refactor message transport packaging (Jonas Schnelli)
dc9305b616 random: don't special case clock usage on macOS (fanquake)
7bf4ce4f64 refactor: test/bench: dedup SetupDummyInputs() (Sebastian Falbesoner)
54be4e71d8 test: check specific reject reasons in feature_csv_activation.py (Sebastian Falbesoner)
3d9b41ecc0 build: add --enable-determinism configure flag (fanquake)
c72a11a1a0 test: Add cost_of_change parameter assertions to bnb_search_test (Yancy Ribbens)
5ffaf883b9 test: eliminiated magic numbers in feature_csv_activation.py (Sebastian Falbesoner)
09f706ab8e test: check for OP_CSV empty stack fail reject reason in feature_csv_activation.py (Sebastian Falbesoner)
cbd345a75c test: test OP_CSV empty stack fail in feature_csv_activation.py (Sebastian Falbesoner)
fa45d60646 test: Reduce unneeded whitelist permissions in tests (MarcoFalke)
7644567758 Add missing step in win deployment instructions (Dan Gershony)
b902bd66b0 test: check custom descendant limit in mempool_packages.py (Sebastian Falbesoner)
2f63ffd15c tests: Add fuzzing harness for V1TransportDeserializer (P2P transport) (practicalswift)
fab2527515 test: Disable mockforward scheduler unit test for now (MarcoFalke)
0653939ac1 Add static_asserts to ser_X_to_Y() methods (Samer Afach)
be94096dfb Fix a violation of C++ standard rules that unions cannot be switched. (Samer Afach)
facb71576c net: Remove forcerelay of rejected txs (MarcoFalke)
eabbbe409f tests: Add fuzzing harness for rolling bloom filter class CRollingBloomFilter (practicalswift)
2a6a6ea0f5 tests: Add fuzzing harness for bloom filter class CBloomFilter (practicalswift)
5bad7921d0 [test] PSBT RPC: check that bip32_derivs are present by default (Sjors Provoost)
29a21c9061 [rpc] set default bip32derivs to true for psbt methods (Sjors Provoost)
e193a84fb2 Refactor message hashing into a utility function (Jeffrey Czyz)
f8f0d9893d Deduplicate the message signing code (Vasil Dimov)
2ce3447eb1 Deduplicate the message verifying code (Vasil Dimov)
12a2f37718 util: Avoid potential uninitialized read in FormatISO8601DateTime(int64_t nTime) by checking gmtime_s/gmtime_r return value (practicalswift)
bca8665d08 scripted-diff: Wallet: Rename incorrectly named *UsedDestination (Luke Dashjr)
faca8eff39 test: Remove incorrect assumptions in validation_flush_tests (MarcoFalke)
fa31eebfe9 test: Tabs to spaces in all tests (MarcoFalke)
fac52dafa0 test: Set catch_system_errors=no on boost unit tests (MarcoFalke)
7e80f646b2 Get the OutputType for a descriptor (Andrew Chow)
d6d2602a32 add: test that transactions expire from mempool (0xb10c)
63ce882760 doc: link to homebrew's troubleshooting page (Gastón I. Silva)
7f1475c711 rpc: update validateaddress RPCExamples to bech32 (Sebastian Falbesoner)
f2472f6460 tests: Improve test runner output in case of target errors (practicalswift)
733bbec34f tests: Add --exclude integer,parse_iso8601 (temporarily) to make Travis pass until uninitialized read issue in FormatISO8601DateTime is fixed (practicalswift)
5ea81449f3 tests: Add support for excluding fuzz targets using -x/--exclude (practicalswift)
555236f769 tests: Remove -detect_leaks=0 from test/fuzz/test_runner.py - no longer needed (practicalswift)
a3b539a924 ci: Run fuzz testing test cases under valgrind (practicalswift)
a304a3632f Revert "Store p2sh scripts in AddAndGetDestinationForScript" (Russell Yanofsky)
eb7d8a5b07 [test] check for addmultisigaddress regression (Sjors Provoost)
005f8a92cc wallet: Improve LegacyScriptPubKeyMan::CanProvide script recognition (Russell Yanofsky)
8bca30ea17 [rpc] expose ability to mock scheduler via the rpc (Amiti Uttarwar)
7c8b6e5b52 [lib] add scheduler to node context (Amiti Uttarwar)
930d837542 [test] add chainparams property to indicate chain allows time mocking (Amiti Uttarwar)
1cd43e83c6 [test] unit test for new MockForward scheduler method (Amiti Uttarwar)
a6f63598ad [util] allow scheduler to be mocked (Amiti Uttarwar)
530d02addb build: pass -fno-ident in Windows gitian descriptor (fanquake)
4e9efac678 test: Check wallet name in -walletnotify script (João Barbosa)
9a5b5ee81f wallet: Replace %w by wallet name in -walletnotify script (João Barbosa)
fad027fb0c scripted-diff: Add missing spaces in RPCResult, Fix type names (MarcoFalke)
1b068c50dd tests: Add --valgrind option to test/fuzz/test_runner.py for running fuzzing test cases under valgrind (practicalswift)
c98c26ee99 ci: use --enable-werror on more hosts (Sjors Provoost)
6ba617dbe2 build: add Wreturn-type to Werror flags (Sjors Provoost)
dcb7af053d Ignore only auto-generated .vcxproj files (Hennadii Stepanov)
79c811ca2b Specify ignored bitcoin-qt file precisely (Hennadii Stepanov)
25bc17fceb refactor: rpc: Remove vector copy from listtransactions (João Barbosa)
c9fe61291e gui: Throttle GUI update pace when -reindex (Hennadii Stepanov)
bf36a3ccc2 gui: Fix race in WalletModel::pollBalanceChanged (Russell Yanofsky)
5f26855f10 test: Remove ubsan alignment suppressions (Wladimir J. van der Laan)
9d933ef919 prevector: avoid misaligned member accesses (Anthony Towns)
53234fd0c7 doc: remove PPA note from release-process.md (fanquake)
c456145b2c [test] add 0.19 backwards compatibility tests (Sjors Provoost)
b769cd142d [test] add v0.17.1 wallet upgrade test (Sjors Provoost)
9d9390dab7 [tests] add wallet backwards compatility tests (Sjors Provoost)
c7ca630896 [scripts] support release candidates of earlier releases (Sjors Provoost)
8b1460dbd1 [tests] check v0.17.1 and v0.18.1 backwards compatibility (Sjors Provoost)
ae379cf7d1 [scripts] build earlier releases (Sjors Provoost)
cb9e88e73a build: don't embed a build-id when building libdmg-hfsplus (fanquake)
fae9084ac5 build: Skip i686 build by default in guix and gitian (MarcoFalke)
fa55a2554c depends: Remove reference to win32 (MarcoFalke)
0e0fa27acb Get rid of VARINT default argument (Pieter Wuille)
0e519fe284 build: Fix behavior when ALLOW_HOST_PACKAGES unset (Hennadii Stepanov)
4537ba5f21 test: add unit test for non-standard txs with too large tx size (Sebastian Falbesoner)
3c94b0039d Convert undo.h to new serialization framework (Pieter Wuille)
3cd8ab9d11 Make std::vector and prevector reuse the VectorFormatter logic (Pieter Wuille)
abf8624356 Add custom vector-element formatter (Pieter Wuille)
37d800bea0 Add a constant for the maximum vector allocation (5 Mbyte) (Pieter Wuille)
9e111db088 test: set a name for CI Docker containers (fanquake)
b0a01299ed test: Disable s390 build on travis (Wladimir J. van der Laan)
97aa5740c0 Squashed 'src/univalue/' changes from 5a58a46671..98261b1e7b (MarcoFalke)
ac57859e53 qt: Fix deprecated QCharRef usage (Hennadii Stepanov)
2af3e16ca9 Qt: pass clientmodel changes from walletframe to walletviews (Jonas Schnelli)
d76894987d logging: enable thread_local usage on macOS (fanquake)
677fb8e923 test: Add ubsan surpression for crc32c (Wladimir J. van der Laan)
8e68bb1dde build: Disable msvc warning 4722 for leveldb build (Aaron Clauson)
be23949765 build: MSVC changes for leveldb update (Aaron Clauson)
9ebdf04757 build: CRC32C build system integration (Wladimir J. van der Laan)
402252a808 build: Add LCOV exception for crc32c (Wladimir J. van der Laan)
3a037d0067 test: Add crc32c exception to various linters and generation scripts (Wladimir J. van der Laan)
84ff1b2076 test: Add crc32c to subtree check linter (Wladimir J. van der Laan)
7cf13a5134 doc: Add crc32c subtree to developer notes (Wladimir J. van der Laan)
24d02a9ac0 build: Update build system for new leveldb (Wladimir J. van der Laan)
2e1819311a Squashed 'src/crc32c/' content from commit 224988680f7673cd7c769963d4035cb315aa3388 (Wladimir J. van der Laan)
66480821b3 Squashed 'src/leveldb/' changes from f545dfabff4c2e9836efed094dba99a34fbc6b88..f8ae182c1e5176d12e816fb2217ae33a5472fdd7 (Wladimir J. van der Laan)
19a354b11f Output a descriptor in createmultisig and addmultisigaddress (Andrew Chow)
acf8abc7f3 gui: Fix unintialized WalletView::progressDialog (João Barbosa)
acd644b83d build: remove --large-address-aware linker flag (fanquake)
900d8f6f70 util: Disallow network-qualified command line options (Russell Yanofsky)
fa5c6622c8 doc: Use proper RPC help syntax in importmulti (MarcoFalke)
fab63111be doc: Remove duplicate "comment" from listsinceblock RPC help (MarcoFalke)
fa04cd6cfc doc: Properly document proxy_randomize_credentials as bool in getnetworkinfo (MarcoFalke)
fa9dec7c39 doc: Fix syntax error (trailing square bracket) in finalizepsbt (MarcoFalke)
faff5a60ed doc: Fix syntax error (trailing square bracket) in walletprocesspsbt (MarcoFalke)
fa0545901d doc: Add missing "optional" to "long" estimaterawfee RPC help (MarcoFalke)
e9434ee03e Remove false positive GCC warning (Hennadii Stepanov)
7e2104433c build: use macOS 10.14 SDK (fanquake)
ca5055a5aa depends: native_cctools 921, ld64 409.12, libtapi 1000.10.8 (fanquake)
1de8c067c7 depends: clang 6.0.1 (fanquake)
c0bc453135 build: remove deprecated key from macOS Info.plist (fanquake)
c86bc14408 Make asmap Interpret tolerant of malicious map data (Pieter Wuille)
38c2395d7a Use ASNs for mapped IPv4 addresses correctly (Pieter Wuille)
6f8c937312 Mark asmap const in statistics code (Pieter Wuille)
d58bcdc4b5 Avoid asmap copies in initialization (Pieter Wuille)
eca56f8929 test: replace 'regtest' leftovers by self.chain (Sebastian Falbesoner)
4d2aceaad8 tests: Add fuzzer asmap to FUZZERS_MISSING_CORPORA (temporarily) (practicalswift)
8d07706985 tests: Add fuzzing harness for AS-mapping (asmap) (practicalswift)
6c22315223 build: add additional attributes to Win installer (fanquake)
317fb96de9 Add search for first blk file with pruned node (Rjected)
1abcecc40c Tests: Use self.chain instead of 'regtest' in almost all current tests (Jorge Timón)
ff59bcd321 gui: Drop PeerTableModel dependency to ClientModel (João Barbosa)
0a50019fde Walk pindexBestHeader back to ChainActive().Tip() if it is invalid (Matt Corallo)
bd5a026928 Make UpdateTransactionsFromBlock use Epochs (Jeremy Rubin)
2ccb7cca4a Add Epoch Guards to CTXMemPoolEntry and CTxMemPool (Jeremy Rubin)
9a299a59cc net: reference instead of copy in BlockConnected range loop (Jon Atack)
d3bc184081 doc: update release notes with getaddressinfo label deprecation (Jon Atack)
72af93f364 test: getaddressinfo label deprecation test (Jon Atack)
d48875fa20 rpc: deprecate getaddressinfo label field (Jon Atack)
dc0cabeda4 test: remove getaddressinfo label tests (Jon Atack)
c7654af6f8 doc: address pr17578 review feedback (Jon Atack)
cb8a86d9f9 gui: Remove WalletView and BitcoinGUI circular dependency (João Barbosa)
ac3d10777d gui: Add transactionClicked and coinsSent signals to WalletView (João Barbosa)
3aee10b80b gui: Drop ShutdownWindow dependency to BitcoinGUI (João Barbosa)
61eb058cc1 gui: Drop BanTableModel dependency to ClientModel (João Barbosa)
a029e18c2b Use rolling bloom filter of recent block tx's for AlreadyHave() check (Suhas Daftuar)
c7ec9a1888 Add missing supported rpcs to doc/descriptors.md (Andrew Toth)
085423b978 Remove GitHub Actions CI workflow. (Aaron Clauson)
b951b0973c on startup, write config options to debug.log (Larry Ruane)
aaaae4d0eb test: Add p2p test for forcerelay permission (MarcoFalke)
fa6b57bcaa test: Fix whitespace in p2p_permissions.py (MarcoFalke)
faf40810d7 test: Make msg_tx a witness tx (MarcoFalke)
cc668d06fb tests: Add fuzzing harness for strprintf(...) (practicalswift)
ccc3c76e2b tests: Add fuzzer strprintf to FUZZERS_MISSING_CORPORA (temporarily) (practicalswift)
6ef04912af tests: Update FuzzedDataProvider.h from upstream (LLVM) (practicalswift)
1b96a3cd1e tests: reset fIsBareMultisigStd after bare-multisig tests (fanquake)
1115ba693b psbt_wallet_tests: use unique_ptr for GetSigningProvider (Anthony Towns)
3f373659d7 Refactor: Replace SigningProvider pointers with unique_ptrs (Andrew Chow)
3afe53c403 Cleanup: Drop unused GUI learnRelatedScripts method (Andrew Chow)
e2f02aa59e Refactor: Copy CWallet signals and print function to LegacyScriptPubKeyMan (Andrew Chow)
c729afd0a3 Box the wallet: Add multiple keyman maps and loops (Andrew Chow)
4977c30d59 refactor: define a UINT256_ONE global constant (Andrew Chow)
415afcccd3 HD Split: Avoid redundant upgrades (Andrew Chow)
01b4511206 Make UpgradeKeyMetadata work only on LegacyScriptPubKeyMan (Andrew Chow)
4a7e43e846 Store p2sh scripts in AddAndGetDestinationForScript (Andrew Chow)
501acb5538 Always try to sign for all pubkeys in multisig (Andrew Chow)
81610eddbc List output types in an array in order to be iterated over (Andrew Chow)
eb81fc3ee5 Refactor: Allow LegacyScriptPubKeyMan to be null (Andrew Chow)
fadc08ad94 Locking: Lock cs_KeyStore instead of cs_wallet in legacy keyman (Andrew Chow)
f5be479694 wallet: Improve CWallet:MarkDestinationsDirty (João Barbosa)
fa1a46e7f4 build: Fix appveyor test_bitcoin build of *.raw (MarcoFalke)
f41d589669 Document better -keypool as a look-ahead safety mechanism (Antoine Riard)
4de934b9b5 Convert compression.h to new serialization framework (Pieter Wuille)
ca34c5cba5 Add FORMATTER_METHODS, similar to SERIALIZE_METHODS, but for formatters (Pieter Wuille)
b6c3e84e87 doc: Improve fuzzing docs for macOS users (Fabian Jahr)
3c1bc40205 Add extra logging of asmap use and bucketing (Gleb Naumenko)
e4658aa8ea Return mapped AS in RPC call getpeerinfo (Gleb Naumenko)
ec45646de9 Integrate ASN bucketing in Addrman and add tests (Gleb Naumenko)
8feb4e4b66 Add asmap utility which queries a mapping (Gleb Naumenko)
b35567fe0b test: only declare a main() when fuzzing with AFL (fanquake)
e80317be5f refactor: Remove redundant conditional (Bushstar)
deaa6dd144 psbt: check output index is within bounds before accessing (Andrew Chow)
f1ef7f0aa4 Don't calculate tx fees for PSBTs with invalid money values (Andrew Chow)
0dae5a5c34 Fix benchmarks filters (Elichai Turkel)
b3c4d9bac6 test: rename test suite name "tx_validationcache_tests" to match filename (Sebastian Falbesoner)
88c83636d5 guix: Update documentation for time-machine (Carl Dong)
e6050884fd guix: Pin Guix using `guix time-machine` (Carl Dong)
4f7127d1e3 gui: Make Intro consistent with prune checkbox (Hennadii Stepanov)
4824a7d36c gui: Add Intro::UpdateFreeSpaceLabel() (Hennadii Stepanov)
daa3f3fa90 refactor: Add Intro::UpdatePruneLabels() (Hennadii Stepanov)
e4caa82a03 refactor: Replace static variable with data member (Hennadii Stepanov)
2bede28cd9 util: Add PruneGBtoMiB() function (Hennadii Stepanov)
e35e4b2ba0 util: Add PruneMiBtoGB() function (Hennadii Stepanov)
4c524f0aad Bugfix: GUI: Hide the HD/encrypt icons earlier so they get re-shown if another wallet is open (Luke Dashjr)
44f15cfdcf gui: renamed 'debug window' to 'node window' (Zero)
1a638e1105 gui: Shortcut to close ModalOverlay (Emil Engler)
2bcc70531a Updated appveyor job to checkout a specific vcpkg commit ID. (Aaron Clauson)
2d23082cbe bump test timeouts so that functional tests run in valgrind (Micky Yun Chan)
2525c096b0 build: remove configure checks for win libraries we don't link against (fanquake)
2fa8dc5454 src/init: correct a typo (darosior)
f7453dcc03 build: remove linking librt for backwards compatibility (fanquake)
fa569e1a9c ci: Set LC_ALL=C when running in qemu-s390x (MarcoFalke)
fa3d77623e ci: Use debian to avoid apt install 404 errors (MarcoFalke)
fabb946090 ci: Install needed gcc and qemu-user iff cross-compiling (MarcoFalke)
faba4672b6 ci: Fix QEMU_USER_CMD parse issues (MarcoFalke)
fa5d709fb2 ci: Move wrap-qemu into separate script (MarcoFalke)
c491368d8c scripts: add MACHO dylib checking to symbol-check.py (fanquake)
76bf97213f scripts: fix check-symbols & check-security argument passing (fanquake)
7a046cdc14 tests: Avoid using C-style NUL-terminated strings as arguments (practicalswift)
fefb9165f2 tests: Add tests to make sure lookup methods fail on std::string parameters with embedded NUL characters (practicalswift)
9574de86ad net: Avoid using C-style NUL-terminated strings as arguments in the netbase interface (practicalswift)
75163f4729 bug-fix macos: give free bytes to F_PREALLOCATE (Karl-Johan Alm)
70e4706093 Revert "refactor: Remove never used default parameter" (Hennadii Stepanov)
219417b388 Revert "refactor: Simplify connection syntax" (Hennadii Stepanov)
fae75306ba scripted-diff: Set gitian arch back to amd64 (MarcoFalke)
9dd58ca611 init: Stop indexes on shutdown after ChainStateFlushed callback. (Jim Posen)
a5a2654bbc test: add missing #include to fix compiler errors (Karl-Johan Alm)
3c30d7118a QT: Change bumpFee asserts to simple error message (Gregory Sanders)
e3b19d8696 QT: bump fee returns PSBT on clipboard for watchonly-only wallets (Gregory Sanders)
3d5d7aad26 windows: remove call to SetProcessDEPPolicy (fanquake)
f2645c2601 windows: Enable heap terminate-on-corruption (fanquake)
3f95fb085e build: Sort fuzzing harnesses to avoid future merge conflicts (practicalswift)
bcad0144ef tests: Add fuzzing harness for DecodeHexTx(...) (practicalswift)
297e098557 Fix doxygen errors (Ben Woosley)
e1c582cbaa contrib: makeseeds: Read suspicious hosts from a file instead of hardcoding (Sanjay K)
9b66083788 Convert chain to new serialization (Pieter Wuille)
2f1b2f4ed0 Convert VARINT to the formatter/Using approach (Pieter Wuille)
ca62563df3 Add a generic approach for (de)serialization of objects using code in other classes (Pieter Wuille)
1a53b0da60 refactor: Simplify connection syntax (Hennadii Stepanov)
7d0a8f4f53 refactor: Remove never used default parameter (Hennadii Stepanov)
c279a81e9c gui: Remove warning "unused variable 'wallet_model'" (João Barbosa)
22c5a986e9 depends: Consistent use of package variable (Peter Bushnell)
2b1641492f wallet: Improve CWallet:MarkDestinationsDirty (João Barbosa)
fac86ac7b3 scripted-diff: Add missed copyright headers (Hennadii Stepanov)
6fde9d5e47 script: Update EXLUDE list in copyright_header.py (Hennadii Stepanov)
1998152f15 script: Add empty line after C++ copyright (Hennadii Stepanov)
071f2fc204 script: Add ability to insert copyright to *.sh (Hennadii Stepanov)
ef63f5fc11 ci: Combine 32-bit build with CentOS 7 build (Sebastian Falbesoner)
1be0b1fb2a test: add functional test for non-standard bare multisig txs (Sebastian Falbesoner)
42ec499489 doc: developer notes guideline on RPCExamples addresses (Jon Atack)
6dd59d2e49 Don't allow implementers to think ScriptHash(Witness*()) results in nesting computation (Gregory Sanders)
4b8f1e989f IsUsedDestination shouldn't use key id as script id for ScriptHash (Gregory Sanders)
486f51099f gui: hide HD & encryption icons when no wallet loaded (Harris)
f117fb00da Replace coroutine with async def in p2p_invalid_messages.py (Elichai Turkel)
6fc554f591 wallet: Reset reused transactions cache (Fabian Jahr)
5855cc564f bitcoin-wallet: Use PACKAGE_NAME in usage help (Luke Dashjr)
7f5db163a4 GUI: Use PACKAGE_NAME in modal overlay (Luke Dashjr)
e09c701e01 scripted-diff: Bump copyright of files changed in 2020 (MarcoFalke)
6cbe620964 scripted-diff: Replace CCriticalSection with RecursiveMutex (MarcoFalke)
c902c4c0c6 doc: Add to Doxygen documentation guidelines (Jon Layton)
8313fa8e81 gui: Set CConnman byte counters earlier to avoid uninitialized reads (Russell Yanofsky)
02b9511d6b tests: add tests for GetCoinsCacheSizeState (James O'Beirne)
b17e91d842 refactoring: introduce CChainState::GetCoinsCacheSizeState (James O'Beirne)
831e1220bc build: remove double LIBBITCOIN_SERVER linking (fanquake)
498cdbb426 Fix improper Doxygen inline comments (Ben Woosley)
8b2f471a1b qa: Fix double-negative arg test (Hennadii Stepanov)
0874a109da Ignore msvc linker warning and update to msvc build instructions. (Aaron Clauson)
f9abf4ab6d Add logging for CValidationInterface events (Jeffrey Czyz)
6edebacb21 Refactor FormatStateMessage for clarity (Jeffrey Czyz)
72f3227c83 Format CValidationState properly in all cases (Jeffrey Czyz)
428ac70095 Add VALIDATION to BCLog::LogFlags (Jeffrey Czyz)
6d6a7a8403 gui: Fix duplicate wallet showing up (João Barbosa)
81ea66c30e Drop signal CClientUIInterface::LoadWallet (Russell Yanofsky)
3e730bf90a zmq: Fix due to invalid argument and multiple notifiers (João Barbosa)
af112ab628 qt: Rename SetPrune() to InitializePruneSetting() (Hennadii Stepanov)
b0bfbe5028 refactor: Drop `bool force' parameter (Hennadii Stepanov)
68c9bbe9bc qt: Force set nPruneSize in QSettings after intro (Hennadii Stepanov)
a82bd8fa57 util: Replace magics with DEFAULT_PRUNE_TARGET_GB (Hennadii Stepanov)
fa37e0a68b test: Show debug log on unit test failure (MarcoFalke)
b0a254019c build: add Wdate-time to Werror flags (fanquake)
a004673c54 qt: Add LogQtInfo() function (Hennadii Stepanov)
63bf06afc3 Restore English translation option (Andrew Chow)
77ef48d532 gitignore: ignore fuzz binaries, remove test_bitcoin_fuzzy (Jon Atack)
e1e1442f3e Activate no-privkey -> ISMINE_WATCH_ONLY behavior for LegacySPKM only (Gregory Sanders)
8925df86c4 doc: update release notes (Jon Atack)
8bb405bbad test: getaddressinfo labels purpose deprecation test (Jon Atack)
60aba1f2f1 rpc: simplify getaddressinfo labels, deprecate previous behavior (Jon Atack)
7851f14ccf rpc: incorporate review feedback from PR 17283 (Jon Atack)
091a876664 Test watchonly wallet bumpfee with PSBT return (Gregory Sanders)
e9b4f9419c bumpfee: Return PSBT when wallet has privkeys disabled (Gregory Sanders)
75a5e478b6 Change bumpfee to use watch-only funds for legacy watchonly wallets (Gregory Sanders)
09502452bb IsUsedDestination should count any known single-key address (Gregory Sanders)
71af793512 scripts: fix check-symbols & check-security argument passing (fanquake)
582e66b6e7 doc: Added regtest config for linearize script (Gr0kchain)
7754d7ab1e refactor: Remove unused defines in bitcoinunits.h (Hennadii Stepanov)
9250a087d2 Convert addrdb/addrman to new serialization (Pieter Wuille)
ca33451535 Introduce new serialization macros without casts (Pieter Wuille)
0661a3c4a6 build: Add default configure cache to .gitignore (Hennadii Stepanov)
19267cbc82 doc: Add ci prefix to CONTRIBUTING.md (Hennadii Stepanov)
1f0adb3dac tests: Add std::to_string to list of locale dependent functions (practicalswift)
faa92a2297 rpc: Remove mempool global from miner (MarcoFalke)
6666ef13f1 test: Properly document blockinfo size in miner_tests (MarcoFalke)
4bdd68f301 Add missing typeinfo includes (Wladimir J. van der Laan)
4d88c3dcb6 net: Log to net category for exceptions in ProcessMessages (Wladimir J. van der Laan)
87744b16b0 ci: Fix brew python link (Hennadii Stepanov)
3bd8db80d8 [validation] fix comments in CheckInputScripts() (John Newbery)
6f6465cefc scripted-diff: [validation] Rename CheckInputs to CheckInputScripts (John Newbery)
7c9e821c4e scripts: add MACHO NOUNDEFS check to security-check.py (fanquake)
4ca92dc6d3 scripts: add MACHO PIE check to security-check.py (fanquake)
df97e59207 doc: Update dependencies.md (Hennadii Stepanov)
aaaaad6ac9 scripted-diff: Bump copyright of files changed in 2019 (MarcoFalke)
592af5ad3a Moved the include of the system projects to before the build depends on task. Otherwise it doesn't get run. (Aaron Clauson)
6e2215187e Included test_bitcoin-qt in msvc build. (Aaron Clauson)
8dc9aa90c3 doc: Update license year range to 2020 (Emil Engler)
90df92206c test: Change filemode of rpc_whitelist.py (Emil Engler)
0b5a366bd7 ci: Update vcpkg cache on MSBuild update (Hennadii Stepanov)
b6fa752bc7 ci: Update Qt binaries for GitHub Actions (Hennadii Stepanov)
6094222de7 use preferred shebang approach for documentation (hackerrdave)
e9fd366044 refactor: Remove null setting check in GetSetting() (Russell Yanofsky)
cba2710220 scripted-diff: Remove unused ArgsManager type flags in tests (Russell Yanofsky)
425bb30725 refactor: Add util_CheckValue test (Russell Yanofsky)
0fa54358b0 refactor: Add ArgsManager::GetSettingsList method (Russell Yanofsky)
3e185522ac refactor: Get rid of ArgsManagerHelper class (Russell Yanofsky)
dc0f148074 refactor: Replace FlagsOfKnownArg with GetArgFlags (Russell Yanofsky)
57e8b7a727 refactor: Clean up includeconf comments (Russell Yanofsky)
3f7dc9b808 refactor: Clean up long lines in settings code (Russell Yanofsky)
34d826ea5f doc: Mention PR Club in CONTRIBUTING.md (Emil Engler)
4f4ae6f97e build: set AC_PREREQ to 2.69 (fanquake)
faede70882 doc: Add formatting to the good first issue template (MarcoFalke)
c78b123982 build: add -bind_at_load to hardened LDFLAGS (fanquake)
abc147de95 build: remove WINDOWS_BITS from build system (fanquake)
6e77a7b65c keypool: Add comment about TopUp and when to use it (Andrew Chow)
ea50e34b28 keypool: Move opportunistic TopUps from LegacyScriptPubKeyMan to CWallet and ReserveDestination (Andrew Chow)
bb2c8ce23c keypool: Remove superfluous topup from CWallet::GetNewChangeDestination (Andrew Chow)
facb416ad5 ci: Add valgrind run (MarcoFalke)
e190000869 ci-s390x: Add qemu and depends support in the ci script (Elichai Turkel)
529d332fbf test: add IsRFC2544 tests (Mark Tyneway)
419ef3b7cc CNetAddr: fix IsRFC2544 comment (Mark Tyneway)
c18405732e tests: Add fuzzing harness for various hex related functions (practicalswift)
526dd78bed tests: Add fuzzing harness for various Base{32,58,64} related functions (practicalswift)
32e27129ff util: Move TrimString(...). Introduce default pattern (trims whitespace). Add NODISCARD. (practicalswift)
22d9bae36f tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus (practicalswift)
78e283e656 [test] move wallet helper functions into test library (Martin Zumsande)
f613e5dfda [test] move mining helper functions into test library (Martin Zumsande)
2cb4e8bdc7 [test] move string helper functions into test library (Martin Zumsande)
7aab8d1024 [style] Code style fixups in GetWarnings() (John Newbery)
492c6dc1e7 util: change GetWarnings parameter to bool (John Newbery)
869b6314fd [qt] remove unused parameter from getWarnings() (John Newbery)
fa8e650b52 rest: Use mempool from node context instead of global (MarcoFalke)
fa660d65d7 node: Use mempool from node context instead of global (MarcoFalke)
facbaf092f rpc: Use mempool from node context instead of global (MarcoFalke)
a5089f62bd fix directory path for secp256k1 subtree in developer-notes (hackerrdave)
893aa207e8 tests: Add fuzzing harness for CheckBlock(...) and other CBlock related functions (practicalswift)
ec8dcb0199 tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus (practicalswift)
137c80d579 tests: Add tests for decoding/parsing of base32, base64 and money strings containing NUL characters (practicalswift)
a6fc26da55 util: Don't allow DecodeBase32(...) of strings with embedded NUL characters (practicalswift)
93cc18b0f6 util: Don't allow DecodeBase64(...) of strings with embedded NUL characters (practicalswift)
ccc53e43c5 util: Don't allow ParseMoney(...) of strings with embedded NUL characters (practicalswift)
244501fc85 depends: disable unused qt networking features (fanquake)
29d56c62b7 depends: -optimized-qmake is now -optimized-tools (fanquake)
ccdda96804 depends: skip building qt proxies (fanquake)
7965e0b41a doc: Add release note for RPC Whitelist (Emil Engler)
7d263571be rpc: require second argument only for scantxoutset start action (Andrew Chow)
a64e97dd47 wallet: unbreak with boost 1.72 (Jan Beich)
2081442c42 test: Add test for rpc_whitelist (Emil Engler)
7414d3820c Add RPC Whitelist Feature from #12248 (Jeremy Rubin)
d945c6f5e6 util: Don't allow base58-decoding of std::string:s containing non-base58 characters (practicalswift)
ff7a999226 tests: Add tests for base58-decoding of std::string:s containing non-base58 characters (practicalswift)
d94d34f05f doc: update developer notes wrt unix epoch time (Jon Atack)
e2f32cb5c5 qa: unify unix epoch time descriptions (Jon Atack)
75d9317bc1 Update msvc build for Visual Studio 2019 v16.4 (Aaron Clauson)
5096baf26b build: fix typo (Harris)
034561f9cd cli: fix Fatal LevelDB error when specifying -blockfilterindex=basic twice (Harris)
fab2f351f2 doc: Update release process with latest changes (MarcoFalke)
fabd5b444e ci: Use python 3.7 on Windows Github Actions (MarcoFalke)
7cecf10ac3 Replace LegacyScriptPubKeyMan::IsCrypted with LegacyScriptPubKeyMan::HasEncryptionKeys (Andrew Chow)
bf6417142f Remove SetCrypted() and fUseCrypto; Change IsCrypted()'s implementation (Andrew Chow)
77a777118e Rename EncryptKeys to Encrypt and pass in the encrypted batch to use (Andrew Chow)
35f962fcf0 Clear mapKeys before encrypting (Andrew Chow)
14b5efd66f Move fDecryptionThoroughlyChecked from CWallet to LegacyScriptPubKeyMan (Andrew Chow)
97c0374a46 Move Unlock implementation to LegacyScriptPubKeyMan (Andrew Chow)
e576b135d6 Replace LegacyScriptPubKeyMan::vMasterKey with GetDecryptionKey() (Andrew Chow)
fd9d6eebc1 Add GetEncryptionKey() and HasEncryptionKeys() to WalletStorage (Andrew Chow)
5909bcd3bf Add bounds checks in key_io before DecodeBase58Check (Pieter Wuille)
2bcf1fc444 Pass a maximum output length to DecodeBase58 and DecodeBase58Check (Pieter Wuille)
b6f9e3576a test: re-enable CLI test support by using EncodeDecimal in json.dumps() (fanquake)
4341bffb6e GUI: Refactor formatServicesStr to warn when a ServicesFlag is missing (Luke Dashjr)
df77de8c21 Bugfix: GUI: Recognise NETWORK_LIMITED in formatServicesStr (Luke Dashjr)
a1308b7e12 tests: Add fuzzing harnesses for various JSON/univalue parsing functions (practicalswift)
e3d2bcf5cf tests: Add fuzzing harnesses for various number parsing functions (practicalswift)
fb8c12093a tests: Add ParseScript(...) (core_io) fuzzing harness (practicalswift)
074cb6451b tests: Add ParseHDKeypath(...) (bip32) fuzzing harness (practicalswift)
0dc5907d0f tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus (practicalswift)
fa4b656e97 doc: Add release notes for 17447 (MarcoFalke)
7e8b4de059 rpc: add missing newline in analyzepsbt rpcresult (Jon Atack)
b0b1531737 Adds GitHub Action workflow which duplicates AppVeyor job. (Aaron Clauson)
e97f5c1823 depends: don't configure xcb_proto (fanquake)
5db506ba59 tests: Add option --valgrind to run nodes under valgrind in the functional tests (practicalswift)
3ab1824625 build: Use dnl for all comments in configure.ac, rather than # (fanquake)
8ddcbb4e41 build: Remove backticks from configure.ac (fanquake)
5ad4dd1ea1 doc: Changed MiniUPnPc link to https in dependencies.md (Marius Kjærstad)
1bb5d517aa test: add unit test for non-standard bare multisig txs (Sebastian Falbesoner)
773d4572a4 Mark PSBTs spending unspendable outputs as invalid in analysis (Andrew Chow)
638e40cb60 Have a PSBTAnalysis state that indicates invalid PSBT (Andrew Chow)
597d10ceb9 tests: Add fuzzing harness for various functions consuming only integrals (practicalswift)
575383b3e1 tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus (practicalswift)
d5766f223f tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus (practicalswift)
e75ecb91c7 tests: Add fuzzing harness for various CTxOut related functions (practicalswift)
ce935292c0 tests: Add fuzzing harness for various CTxIn related functions (practicalswift)
709afb2a7d tests: Test serialisation as part of deserialisation fuzzing. Test round-trip equality where possible. Avoid code repetition. (practicalswift)
978b25528c util: Update tinyformat to upstream (Wladimir J. van der Laan)
5ac804a9eb tests: Use a default of supports_cli=True (instead of supports_cli=False) (practicalswift)
993e38a4e2 tests: Mark functional tests not supporting bitcoin-cli (--usecli) as such (practicalswift)
a652dc5521 qt: Normalize placeholder to avoid using "address book" in sendcoinsentry (Wladimir J. van der Laan)
67f36e0b2c gui: Move static placeholder texts to forms (Wladimir J. van der Laan)
11113247c3 depends: Support for S390X targets (MarcoFalke)
989fd539d5 depends: Support for 64-bit POWER targets (Luke Dashjr)
c966ff14c7 gitian: fixed SC2001 regex (willyk)
48a5c92f9e ui: disable 3rd-party tx-urls when wallet disabled (Harris)
d65fafc2f7 gui: disable File->CreateWallet during startup (fanquake)
f736f6920b lcov: filter /usr/lib64 from coverage report (nijynot)
a5a705b46d lcov: filter depends from coverage report (nijynot)
2359a4790d depends: don't use OpenGL in Qt on macOS (fanquake)
ba0cad2702 build: pass -dead_strip_dylibs to ld on macOS (fanquake)
0ccad08fb2 Make env data logging optional (Pieter Wuille)
6338c02034 tests: Fix fuzzing harness for descriptor parsing (descriptor_parse) (practicalswift)
b11d35b5e2 Fixed wget call in gitian-build.py (willyk)
c8becb8280 depends: add ability to skip building qrencode (fanquake)
711e0449cf ci: Remove trusty build (Hennadii Stepanov)
7f3ae22468 ci: Add CentOS 7 build (Hennadii Stepanov)
886f1731be Key pool: Fix omitted pre-split count in GetKeyPoolSize (Andrew Chow)
386a994b85 Key pool: Change ReturnDestination interface to take address instead of key (Andrew Chow)
ba41aa4969 Key pool: Move LearnRelated and GetDestination calls (Andrew Chow)
65833a7407 Add OutputType and CPubKey parameters to KeepDestination (Andrew Chow)
9fcf8ce7ae Rename Keep/ReturnKey to Keep/ReturnDestination and remove the wrapper (Andrew Chow)
596f6460f9 Key pool: Move CanGetAddresses call (Andrew Chow)
d8daa8f371 pubkey: Assert CPubKey's ECCVerifyHandle precondition (practicalswift)
897849d8c2 tests: Add deserialization fuzzing harnesses (practicalswift)
16f0a186dc tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus (practicalswift)
bd44711e1b build: pass -dead_strip_dylibs to ld on macOS (fanquake)
1f9d5af4f1 tests: Add initialization order fiasco detection in Travis (practicalswift)
8bda0960f9 Move events_hasher into RNGState() (Pieter Wuille)
dddd09eb33 test: Wait until mempool is loaded in wallet_abandonconflict (MarcoFalke)
55b2cb199c random: mark RandAddPeriodic and SeedPeriodic as noexcept (fanquake)
461e547877 doc: correct random.h docs after #17270 (fanquake)
01c8701559 util: remove unwanted fields from bitcoin-cli -getinfo (malevolent)
fa40e48c50 ci: Remove unparseable lines from supp file for old xenial clang tsan (MarcoFalke)
fa1bfc476c ci: ubsan report_error_type=1 and add suppressions (MarcoFalke)
fa69cef13e test: Print stderr when subprocess fails (MarcoFalke)
2222c30586 test: Use char instead of unsigned char (MarcoFalke)
faa8023ce9 ci: Bump to clang-8 for asan build to avoid segfaults on ppc64le (MarcoFalke)
02d8c56a18 Seed RNG with precision timestamps on receipt of net messages. (Matt Corallo)
e7ad4a2f8c doc: rename wallet-tool references to bitcoin-wallet (Wilson Ccasihue S)
651c636f9e build: Fix configure report about qr (Hennadii Stepanov)
bd6a243075 script: Add Keyserver to verify-commits README (Emil Engler)
76303f65f9 test: add unit test for non-standard txs with wrong nVersion (Dominik Spicher)
70ed2ab7ef Add unit test for DB creation with unicode path (Aaron Clauson)
fad88e6f86 ci: Remove use of cd (MarcoFalke)
fa2941bbf4 ci: Remove unmaintained extended_lint (MarcoFalke)
fa04187528 scripted-diff: Use ci DEPENDS_DIR, remove BASE_BUILD_DIR (MarcoFalke)
fa0656d1eb ci: Add DEPENDS_DIR variable, Add documentation for folders (MarcoFalke)
faeeca87b6 scripted-diff: Move various folders to ci scratch dir (MarcoFalke)
fabd71076c ci: Print free disk space (MarcoFalke)
fad9fdbea5 test: Properly deserialize integers in little-endian (MarcoFalke)
fa94fc10c8 ci: Run functional tests on s390x (MarcoFalke)
02afb0c550 Fix origfee return for bumpfee with feerate arg (Gregory Sanders)
98fbd1cdff Use correct C++11 header for std::swap() (Hennadii Stepanov)
b66861e2e5 Fix comparison function signature (Hennadii Stepanov)
eadd1304c8 tests: Add a test for funding with sufficient preset inputs and subtractFeeFromOutputs (Andrew Chow)
ff330badd4 Default to bnb_used = false as there are many cases where BnB is not used (Andrew Chow)
6fdf5dab26 depends: only use dbus with qt on linux (fanquake)
4a96e459d7 [gui] send: show watch-only balance in send screen (Sjors Provoost)
2689c8fd71 [test] qt: add send screen balance test (Sjors Provoost)
73b96c94cb net: Fix uninitialized read in ProcessMessage(...) (practicalswift)
d2a3a5cadb util: make ScheduleBatchPriority advisory only (fanquake)
17f81e9648 script: Enable SC2001 rule for Gitian scripts (Hennadii Stepanov)
61bb21b418 script: Enable SC2155 rule for Gitian scripts (Hennadii Stepanov)
577682d9e8 script: Enable SC2006 rule for Gitian scripts (Hennadii Stepanov)
14aded46df script: Lint Gitian descriptors with ShellCheck (Hennadii Stepanov)
33f5fc32e5 test: add rpc getaddressinfo labels test coverage (Jon Atack)
0f3539ac6d test: add listlabels test in wallet_labels.py (Jon Atack)
1388de8390 rpc: add getaddressinfo code documentation (Jon Atack)
2ee0cb3330 rpc: update getaddressinfo RPCExamples to bech32 (Jon Atack)
8d1ed0c263 rpc: clarify label vs labels in getaddressinfo RPCHelpman (Jon Atack)
5a0ed85070 rpc: improve getaddressinfo RPCHelpman content (Jon Atack)
70cda342cd rpc: improve getaddressinfo RPCHelpman formatting (Jon Atack)
27d82b63fb gui: remove macOS start on login code (fanquake)
93352d261f qt: Use proper class for Ui::ReceiveCoinsDialog (Hennadii Stepanov)
8781904643 qt: Fix class name of Ui::ModalOverlay (Hennadii Stepanov)
1a3a256d5e wallet: replace raw pointer with const reference in AddrToPubKey (Harris)
da1f153e5e Add s390x tests to travis (Elichai Turkel)
2fa65e0de9 Add ci script to install on s390x (Elichai Turkel)
41d7db0b60 doc: Change doxygen URL to doxygen.bitcoincore.org (Wladimir J. van der Laan)
f13e274b6f Appveyor install libevent[thread] vcpkg (Aaron Clauson)
eafd259367 build: Add NX workaround for RV64 (Wladimir J. van der Laan)
f6e42256fe build: Allow export of environ symbols (Wladimir J. van der Laan)
8f15a31760 doc: add glibc 2.17 requirement to release-notes (fanquake)
16a7be1663 build: Bump minimum versions in symbol checker (Wladimir J. van der Laan)
b77d5ad59f build: Disallow dynamic linking against c++ library (Wladimir J. van der Laan)
14feda0814 doc: Add historical release notes for 0.19.0.1 (Wladimir J. van der Laan)
f93fc61c65 Put bounds on the number of CPUID leaves explored (Pieter Wuille)
ba2c5fe147 Fix CPUID subleaf iteration (Pieter Wuille)
3ed5e6819a refactor: Nuke coincontrol circular dependency (Hennadii Stepanov)
b509554433 Added libtest_util library to msvc build configuration. (Aaron Clauson)
794fe91395 doc: Update and improve Developer Notes (Hennadii Stepanov)
3c2c439dcd wallet: Make -walletdir network only (João Barbosa)
b84e776fd1 wallet_importmulti: use addresses of the same type as being imported (Andrew Chow)
7d7bf2ff4a build: set minimum supported macOS to 10.12 (fanquake)
6a2e6b0600 Remove out of date comments for CalculateMaximumSignedTxSize (Gregory Sanders)
3958295bc8 wallet: LearnRelatedScripts only if KeepDestination (João Barbosa)
55295fba4c wallet: Lock address type in ReserveDestination (João Barbosa)
c6dd565c88 [gui] watch-only wallet: copy PSBT to clipboard (Sjors Provoost)
39465d545d [wallet] add fillPSBT to interface (Sjors Provoost)
848f889208 [gui] send: include watch-only (Sjors Provoost)
40537f0909 [wallet] ListCoins: include watch-only for wallets without private keys (Sjors Provoost)
d0dab897af Refactor: Require scriptPubKey to get wallet SigningProvider (Andrew Chow)
4b0c718f8f Accumulate result UniValue in SignTransaction (Andrew Chow)
b007efdf19 Allow BnB when subtract fee from outputs (Andrew Chow)
db15e71e79 Use BnB when preset inputs are selected (Andrew Chow)
e20c72f9f0 Fire TransactionRemovedFromMempool from mempool (251)
ec89d2882a build: remove libanl.so.1 from ALLOWED_LIBRARIES (fanquake)
a2e581de94 build: Create test utility library from src/test/util/ (Harris)
e9a27cf338 refactor: Remove unused COINBASE_FLAGS (Neha Narula)
5f50599ae7 refactor: Cleanup headers from walletmodel.h (Hennadii Stepanov)
a53e9895db refactor: Nuke walletmodel circular dependency (Hennadii Stepanov)
49c4211c04 refactor: Nuke walletmodeltransaction circular dep (Hennadii Stepanov)
567cb44eb9 refactor: Nuke guiutil circular dependency (Hennadii Stepanov)
73b5505cfe refactor: Move SendCoinsRecipient in own header (Hennadii Stepanov)
fa538813b1 scripted-diff: Replace ::mempool with m_node.mempool in tests (MarcoFalke)
8888ad02e2 test: Replace recursive lock with locking annotations (MarcoFalke)
fac07f2038 node: Add reference to mempool in NodeContext (MarcoFalke)
cb9d830a00 test: Use proper MAX_SCRIPT_ELEMENT_SIZE (Hennadii Stepanov)
402ee706d8 refactor: Use proper MAX_SCRIPT_ELEMENT_SIZE const (Hennadii Stepanov)
faffa7f0dc wallet: Avoid showing GUI popups on RPC errors (take 2) (MarcoFalke)
fa7523d3aa ci: Extend docs (MarcoFalke)
fa493ef088 ci: Make ci system read-only on the git work tree (MarcoFalke)
fab1333292 ci: Remove git from required packages on host (MarcoFalke)
fa00393bce ci: Make all filesystem operations inside docker (MarcoFalke)
9999a79074 travis: Rework CACHE_ERR_MSG (MarcoFalke)
8f2d7737cc test: add functional test for non-standard txs with too large scriptSig (Sebastian Falbesoner)
30fb598737 Fix segfault in allocator_tests/arena_tests (Jeffrey Czyz)
15c84f53f4 Define ARENA_DEBUG in Travis test runs (Jeffrey Czyz)
ad71548822 Fix compilation errors in support/lockedpool.cpp (Jeffrey Czyz)
8944c1d340 Changed tooltips of receive form to highlight difference between Label and Message (dannmat)
0580f86bb4 Fixup whitespace (Ben Woosley)
47101bbb27 scripted-diff: Rename CPubKey and CKey::*_KEY_SIZE and COMPRESSED_*_KEY_SIZE (Ben Woosley)
02ac445b2f bump libevent to 2.1.11 in depends (stefanwouldgo)
ea3c7e585c test: Remove libssl-dev packages from CI scripts (Wladimir J. van der Laan)
7ea55264b9 test: remove lsan suppression for libcrypto (Wladimir J. van der Laan)
2d7066527a build: remove libcrypto as internal dependency in libbitcoinconsensus.pc (Wladimir J. van der Laan)
278751ea11 doc: Remove ssl as a required dependency from build-unix (Wladimir J. van der Laan)
a67352161c test: skip tool_wallet test when bitcoin-wallet isn't compiled (fanquake)
e9277baed6 test: skip wallet_listreceivedby test when the cli isn't compiled (fanquake)
621d398750 test: skip bitcoin_cli test when the cli isn't compiled (fanquake)
adbe155047 doc: Add some better examples for scripted diff (Wladimir J. van der Laan)
e5a0bece6e doc: add OpenSSL removal to release-notes.md (fanquake)
397dbae070 ci: remove OpenSSL installation (fanquake)
a4eb839619 doc: remove OpenSSL from build instructions and licensing info (fanquake)
648b2e3c32 depends: remove OpenSSL package (fanquake)
8983ee3e6d build: remove OpenSSL detection and libs (fanquake)
b49b6b0f70 random: Remove remaining OpenSSL calls and locking infrastructure (fanquake)
4fcfcc294e random: stop retrieving random bytes from OpenSSL (fanquake)
5624ab0b4f random: stop feeding RNG output back into OpenSSL (fanquake)
49f4c7f069 tests: Add fuzzing harness for various PSBT related functions (practicalswift)
e161bc74d2 doc: Remove bitness from bitcoin-qt help message and manpage (Wladimir J. van der Laan)
feb5075777 build: use osslsigncode 2.0 in gitian (fanquake)
1c23ea5fe6 test: fix bitcoind already running warnings on macOS (fanquake)
2f5f7d6b13 GuessVerificationProgress: cap the ratio to 1 (darosior)
fa2ec9f451 fuzz: Bump timeout in test_runner to accomodate for slow arm64 CPUs (MarcoFalke)
fa6e01b2f3 ci: Use clang-8 for fuzzing to run on aarch64 ci systems (MarcoFalke)
d1c02775aa Report amount of data gathered from environment (Pieter Wuille)
64e1e022ce Use thread-safe atomic in perfmon seeder (Pieter Wuille)
d61f2bb076 Run background seeding periodically instead of unpredictably (Pieter Wuille)
483b94292e Add information gathered through getauxval() (Pieter Wuille)
11793ea22e Feed CPUID data into RNG (Pieter Wuille)
a81c494b4c Use sysctl for seeding on MacOS/BSD (Pieter Wuille)
2554c1b81b Gather additional entropy from the environment (Pieter Wuille)
c2a262a78c Seed randomness with process id / thread id / various clocks (Pieter Wuille)
723c796667 [MOVEONLY] Move cpuid code from random & sha256 to compat/cpuid (Pieter Wuille)
cea3902015 [MOVEONLY] Move perfmon data gathering to new randomenv module (Pieter Wuille)
b51bae1a5a doc: minor corrections in random.cpp (fanquake)
bc728d12a9 depends: qt: Fix C{,XX} pickup (Carl Dong)
0ec967164f Add TheCharlatan's pgp key (TheCharlatan)
5fa28e9903 refactor: Remove unused signal (Hennadii Stepanov)
18b18f8e81 [build] ./configure --enable-werror: add unused-variable (Sjors Provoost)
d604b4cc8c tests: Update valgrind suppressions (practicalswift)
5e8a56348b test: add unit test for non-standard txs with too large scriptSig (Sebastian Falbesoner)
38516f9078 Fix input size assertion in wallet_bumpfee.py (Gregory Sanders)
fac942ca57 test: Remove fragile assert_memory_usage_stable (MarcoFalke)
edb6b768a4 fix uninitialized variable nMinerConfirmationWindow (NullFunctor)
333362991c doc: Explain $LIB in LD_PRELOAD in gitian descriptors (MarcoFalke)
fab9850ef4 scripted-diff: Avoid hardcoded libfaketime dir in gitian (MarcoFalke)
49997813a4 test: check custom ancestor limit in mempool_packages.py (Sebastian Falbesoner)
a5e77959c8 rpc: Expose block height of wallet transactions (João Barbosa)
b131524137 util: Add missing headers to util/fees.cpp (Hennadii Stepanov)
eb880f092b fix Typo: "merkelRoot" -> "merkleRoot" (ianliu)
29eb039252 Moves vcpkg list to a text file and updates the appveyor job and readme to use it. (Aaron Clauson)
1828c6f05f refactor: Styling w/ clang-format, comment update (Hennadii Stepanov)
88a94f7bb8 qt: Fix missing qRegisterMetaType for size_t (Hennadii Stepanov)
3d133482b2 Remove unnecessary forward declaration (Mark Erhardt)
e2c03c1156 doc: Add relase note for db→walletdb rename (Wladimir J. van der Laan)
4c1d263d93 scripted-diff: Change `BCLog::DB` to `BCLog::WALLETDB` (Wladimir J. van der Laan)
6b42b3ba90 Rename `db` log category to `walletdb` (like `coindb`) (Wladimir J. van der Laan)
083c954b02 Add settings_tests (Russell Yanofsky)
7f40528cd5 Deduplicate settings merge code (Russell Yanofsky)
9dcb952fe5 Add util::Settings struct and helper functions. (Russell Yanofsky)
e2e37cfe8a Remove includeconf nested scope (Russell Yanofsky)
5a84aa880f Rename includeconf variables for clarity (Russell Yanofsky)
dc8e1e7548 Clarify emptyIncludeConf logic (Russell Yanofsky)
fec230edcc doc: add historical 0.19.0 release notes (fanquake)
faf757a125 ci: Guess the native host when not cross compiling (MarcoFalke)
fa8a60bce9 ci: Run non-cross-compile builds natively (MarcoFalke)
fa56bcbb01 ci: Run CI_WAIT only on travis (MarcoFalke)
fad1de66a2 wallet: Remove unused boost::this_thread::interruption_point (MarcoFalke)
0b75a7f068 wallet: Reuse existing batch in CWallet::SetUsedDestinationState (João Barbosa)
01f45dd00e wallet: Avoid recursive lock in CWallet::SetUsedDestinationState (João Barbosa)
36b68de5b2 Remove getBlockDepth method from Chain::interface (Antoine Riard)
b66c429c56 Remove locked_chain from GetDepthInMainChain and its callers (Antoine Riard)
0ff03871ad Use CWallet::m_last_block_processed_height in GetDepthInMainChain (Antoine Riard)
f77b1de16f Only return early from BlockUntilSyncedToCurrentChain if current tip is exact match (Antoine Riard)
769ff05e48 Refactor some importprunedfunds checks with guard clause (Antoine Riard)
5971d3848e Add block_height field in struct Confirmation (Antoine Riard)
9700fcb47f Replace CWalletTx::SetConf by Confirmation initialization list (Antoine Riard)
5aacc3eff1 Add m_last_block_processed_height field in CWallet (Antoine Riard)
10b4729e33 Pass block height in Chain::BlockConnected/Chain::BlockDisconnected (Antoine Riard)
b80f7db832 Remove redundant class file includes from test_bitcoin project. (Aaron Clauson)
0e7c90eb37 test: speed up wallet_avoidreuse.py (Jon Atack)
6d50b2606e test: add logging to wallet_avoidreuse.py (Jon Atack)
fae43a97ca test: Seed test RNG context for each test case, print seed (MarcoFalke)
5506ecfe7a [refactor] Replace global int nScriptCheckThreads with bool (John Newbery)
d9957623b4 [tests] Don't use TestingSetup in the checkqueue_tests (John Newbery)
3c84deebaa Updated appveyor config: - Update build image from Visual Studio 2017 to Visual Studio 2019. - Updated Qt static library from Qt5.9.7 to Qt5.9.8. - Added commands to update vcpkg port files (this does not update already installed packages). - Updated vcpkg package list as per #17309. - Removed commands setting common project file options. Now done via common.init.vcxproj include. - Changed msbuild verbosity from normal to quiet. Normal rights a LOT of logs and impacts appveyor job duration. Updated msvc project configs: - Updated platform toolset from v141 to v142. - Updated Qt static library from Qt5.9.7 to Qt5.9.8. - Added ignore for linker warning building bitcoin-qt program. - Added missing util/str.cpp class file to test_bitcoin project file. (Aaron Clauson)
fa4c6fa9b1 doc: Add documentation for new test/lib (MarcoFalke)
faec28252c scripted-diff: test: Move setup_common to test library (MarcoFalke)
af7bae7340 [tests] Don't stop-start unnecessarily in rpc_fundrawtransaction.py (John Newbery)
9a8505299b [tests] Use -whitelist in rpc_fundrawtransaction.py (John Newbery)
646b593bbd [tests] Speed up rpc_fundrawtransaction.py (John Newbery)
05b224a175 Add missing SetupGeneration error handling in EncryptWallet (Russell Yanofsky)
bfd826a675 Clean up nested scope in GetReservedDestination (Russell Yanofsky)
491a599b37 Get rid of confusing LegacyScriptPubKeyMan::TopUpKeyPool method (Russell Yanofsky)
4a0abf694e Pass CTxDestination to ScriptPubKeyMan::GetMetadata (Russell Yanofsky)
b07b07cd87 Add EnsureLegacyScriptPubKeyMan and use in rpcwallet.cpp (Russell Yanofsky)
286f197704 Add util_ArgParsing test (Russell Yanofsky)
7b78b8d3a6 doc: Add template for good first issues (Michael Folkson)
80c9e66ab8 build: Remove install command samples (Hennadii Stepanov)
2ad74b78c6 doc: Add ShellCheck to lint tests dependencies (Hennadii Stepanov)
3d05d33269 cli: fix -getinfo output when compiled with no wallet (fanquake)
3645e4ca00 Add missing newline in util_ChainMerge test (Russell Yanofsky)
fa7f5a4d2a doc: Update doc/bips.md with recent changes in master (MarcoFalke)
fa5facd3e7 rpc: Remove unused boost::this_thread::interruption_point (MarcoFalke)
dcef9a2922 logs: add timing information to FlushStateToDisk() (James O'Beirne)
41edaf227a logs: add BCLog::Timer and related macros (James O'Beirne)
1c26c16065 Improve "Hide" button tool-tip message (Danny-Scott)
fa2c44c3cc test: Add ASSERT_DEBUG_LOG to unit test framework (MarcoFalke)
fa1936f57b logging: Add member for arbitrary print callbacks (MarcoFalke)
92b2f5306b test: add dumptxoutset RPC test (James O'Beirne)
c1ccbc3dde devtools: add utxo_snapshot.sh (James O'Beirne)
57cf74c991 rpc: add dumptxoutset (James O'Beirne)
92fafb3a7d coinstats: add coins_count (James O'Beirne)
707fde7b9b add unused SnapshotMetadata class (James O'Beirne)
104f7de593 remove old bootstrap relevant code (tryphe)
b2ff500fb3 test: add "diamond" unit test to MempoolAncestryTests (Sebastian Falbesoner)
b7541705d0 tests: Add fuzzing harness for Bech32 encoding/decoding (practicalswift)
85a34b1683 tests: Move CaseInsensitiveEqual to test/util/str (practicalswift)
1a8f0d5a74 [tools] update nNextInvSend to use mockable time (Amiti Uttarwar)
4de630354f [tools] add PoissonNextSend method that returns mockable time (Amiti Uttarwar)
2493770e36 TestShell: Return self from setup() (James Chiang)
a8dea45524 TestShell: Simplify default setting of num_nodes (James Chiang)
9c7806e4bf Doc: Remove backticks in test-shell.md code block (James Chiang)
d3ed06e2cd TestShell: Fix typo in TestShell warning printout (James Chiang)
3fe1aba601 depends: move README.md Android instructions to a separate section (Igor Cota)
aa9b84acee depends: update README.md with working Android targets and API levels (Igor Cota)
4671fc3d9e Expand on wallet_balance.py comment from https://github.com/bitcoin/bitcoin/pull/16766\#issuecomment-527563982 (Jeremy Rubin)
91f3073f08 Update release notes to mention changes to IsTrusted and impact on wallet (Jeremy Rubin)
8f174ef112 Systematize style of IsTrusted single line if (Jeremy Rubin)
b49dcbedf7 update variable naming conventions for IsTrusted (Jeremy Rubin)
5ffe0d1449 Update comment in test/functional/wallet_balance.py (Jeremy Rubin)
a550c58267 Update wallet_balance.py test to reflect new behavior (Jeremy Rubin)
5dd7da4ccd Reuse trustedParents in looped calls to IsTrusted (Jeremy Rubin)
595f09d6de Cache tx Trust per-call to avoid DoS (Jeremy Rubin)
dce032ce29 Make IsTrusted scan parents recursively (Jeremy Rubin)
436ad43643 Fix issue with conflicted mempool tx in listsinceblock (Adam Jonas)
19139ee034 Add documentation for test_shell submodule (JamesC)
f5112369cf Add TestShell class (James Chiang)
5155602a63 Move argparse() to init() (JamesC)
2ab01462f4 Move assert num_nodes is set into main() (JamesC)
614c645643 Clear TestNode objects after shutdown (JamesC)
6f40820757 Add closing and flushing of logging handlers (JamesC)
6b71241291 Refactor TestFramework main() into setup/shutdown (JamesC)
ede8b7608e Remove network_event_loop instance in close() (JamesC)
fa07b8beb5 test: Reset global args between test suites (MarcoFalke)
c98bd13e67 replace asserts in RPC code with CHECK_NONFATAL and add linter (Adam Jonas)
8d8e5a79d0 test: use default address type (bech32) for wallet_bumpfee tests (Sebastian Falbesoner)
b6d2183858 Minor refactoring to remove implied m_addr_relay_peer. (User)
a552e8477c added asserts to check m_addr_known when it's used (User)
090b75c14b p2p: Avoid allocating memory for addrKnown where we don't need it (User)
152b0a00d8 Refactor: Move nTimeFirstKey accesses out of CWallet (Andrew Chow)
7ef47b88e6 Refactor: Move GetKeypoolSize code out of CWallet (Andrew Chow)
089e17d45c Refactor: Move RewriteDB code out of CWallet (Andrew Chow)
0eac7088ab Refactor: Move SetupGeneration code out of CWallet (Andrew Chow)
f45d12b36c Refactor: Move HavePrivateKeys code out of CWallet::CreateWalletFromFile (Andrew Chow)
8b0d82bb42 Refactor: Move Upgrade code out of CWallet::CreateWalletFromFile (Andrew Chow)
46865ec958 Refactor: Move MarkUnusedAddresses code out of CWallet::AddToWalletIfInvolvingMe (Andrew Chow)
a18edd7b38 Refactor: Move GetMetadata code out of getaddressinfo (Andrew Chow)
9716bbe0f8 Refactor: Move LoadKey LegacyScriptPubKeyMan method definition (Andrew Chow)
67be6b9e21 Refactor: Move SetAddressBookWithDB call out of LegacyScriptPubKeyMan::ImportScriptPubKeys (Andrew Chow)
fc2867fdf5 refactor: Replace UnsetWalletFlagWithDB with UnsetBlankWalletFlag in ScriptPubKeyMan (Andrew Chow)
78e7cbc7ba Refactor: Remove UnsetWalletFlag call from LegacyScriptPubKeyMan::SetHDSeed (Andrew Chow)
0391aba52d Remove SetWalletFlag from WalletStorage (Andrew Chow)
4c5491f99c Refactor: Move SetWalletFlag out of LegacyScriptPubKeyMan::UpgradeKeyMetadata (Andrew Chow)
769acef857 Refactor: Move SetAddressBook call out of LegacyScriptPubKeyMan::GetNewDestination (Andrew Chow)
acedc5b823 Refactor: Add new ScriptPubKeyMan virtual methods (Andrew Chow)
533d8b364f Refactor: Declare LegacyScriptPubKeyMan methods as virtual (Andrew Chow)
b4cb18bce3 MOVEONLY: Reorder LegacyScriptPubKeyMan methods (Andrew Chow)
fa8919889f bench: Remove redundant copy constructor in mempool_stress (MarcoFalke)
29f8434368 refactor: Remove redundant PSBT copy constructor (Hennadii Stepanov)
facc0da63a travis: Run unit and functional tests on native arm (MarcoFalke)
fafa064d2a ci: Remove ccache requirement on the host (MarcoFalke)
fa0a731d00 test: Add RegTestingSetup to setup_common (MarcoFalke)
fa54b3e248 test: move-only ComputeFilter to src/test/lib/blockfilter (MarcoFalke)
ac831339cb doc: Fix some misspellings (randymcmillan)
f9af3ced1c Android: add all arch support (Block Mechanic)
d419ca7e32 depends: export dynamic JNI symbols from static qtforandroid.a (Igor Cota)
ed30684d03 Qt: patch androidjnimain.cpp to make sure JNI is initialised when statically compiled (Igor Cota)
e4c319e8a1 builds: remove superfluous config_opts_aarch64_android (Igor Cota)
24ffef0c27 Patch libevent when building for Android (fix arc4random_addrandom) (Igor Cota)
f1e40b3e71 Update bitcoin_qt.m4 (BlockMechanic)
b4057d8261 Define TARGET_OS when host is android (Igor Cota)
80b475f159 Fix Android zlib cross compilation issue (https://stackoverflow.com/questions/21396988/zlib-build-not-configuring-properly-with-cross-compiler-ignores-ar) (Igor Cota)
45f8219015 Add full Android build example command and instructions on getting SDK/NDK (Igor Cota)
b68f2a68c2 Add config opts and patch for aarch64_android build of Qt (Igor Cota)
9c4cb0166e Add ranlib to android.mk hosts file (fix OSX Android NDK build) (Igor Cota)
c2a749c9c1 Add example Android host-platform-triplet and options (Igor Cota)
0b0cff3c61 Add support for building Android dependencies (Igor Cota)
f44abe4bed refactor: Remove addrdb.h dependency from node.h (Hennadii Stepanov)
3ed8e3d079 doc: Remove explicit network name references (Fabian Jahr)
d6e493f0c2 wallet: Remove left-over BIP70 comment (Fabian Jahr)
a35b6824f3 Add assertion to randrange that input is not 0 (Jeremy Rubin)
b0c774b48a Add new mempool benchmarks for a complex pool (Jeremy Rubin)
5710dadf9b test: fix script_p2sh_tests OP_PUSHBACK2/4 missing (kodslav)
162d0038e7 doc: compiling with Visual Studio is now supported on Windows (fanquake)
b1f1fb5f1d doc: update MSVC instructions to remove Qt configuration (fanquake)
59853c33f1 test: Do not instantiate CAddrDB for static call (Hennadii Stepanov)
a6f6f77a86 QA: Add wallet_implicitsegwit to test the ability to transform keys between address types (Luke Dashjr)
58d0393bec build: update retry to current version (randymcmillann)
ff22751417 test: rm ascii art in rpc_fundrawtransaction (Jon Atack)
94fcc08541 test: add rpc_fundrawtransaction logging (Jon Atack)
8734c856f8 Replace the LogPrint function with a macro (Jeffrey Czyz)
fa0b3da36c Squashed 'src/univalue/' changes from 7890db99d6..5a58a46671 (MarcoFalke)
a8b82867d5 Fix incorrect help-debug for -checkpoints (Antoine Riard)
8a0ca5e9de log: Fix log message for -par=1 (Hennadii Stepanov)
c5377ffbbb [qa] Add shrinkdebugfile=0 to regtest bitcoin.conf (Suhas Daftuar)
60582d6060 [linter] Strip trailing / in path for git-subtree-check (John Newbery)
53fe0b70ad Fix missing strFailReason in CreateTransaction (Russell Yanofsky)
4b28a05f08 Fix misplaced AssertLockHeld (Russell Yanofsky)
2632b1f124 doc: Clarify WalletStorage / Wallet relation (Russell Yanofsky)
628d11b2ba Add back mistakenly removed AssertLockHeld (Russell Yanofsky)
52cf68f7ff Refactor: Add GetLegacyScriptPubKeyMan helper (Russell Yanofsky)
9cae3d5e94 tests: Add fuzzer initialization (hold ECCVerifyHandle) (practicalswift)
3b3b93174a nsis: Write to correct filename in first place (Carl Dong)
d314e8a818 refactor: Replace all uses of boost::optional with our own Optional type (Wladimir J. van der Laan)
1cf9b35c0d doc: Add developer note on c_str() (Wladimir J. van der Laan)
3004d5a12d [validation] Remove fMissingInputs from AcceptToMemoryPool() (John Newbery)
c428622a5b [validation] Remove unused first_invalid parameter from ProcessNewBlockHeaders() (John Newbery)
7204c6434b [validation] Remove useless ret parameter from Invalid() (John Newbery)
1a37de4b31 [validation] Remove error() calls from Invalid() calls (John Newbery)
067981e492 [validation] Tidy Up ValidationResult class (John Newbery)
a27a2957ed [validation] Add CValidationState subclasses (John Newbery)
fa144e6fde rpc: Add generatetodescriptor (MarcoFalke)
595cc9bcaf docs: Add undefined to --with-sanitizers=fuzzer,address (practicalswift)
d5dbb4898c tests: Add fuzzing harness for ISO-8601 related functions (practicalswift)
31879345ee cli: Add "headers" and "verificationprogress" to -getinfo (Wladimir J. van der Laan)
362ded410b Avoid using g_rpc_node global in wallet code (Russell Yanofsky)
8922d7f6b7 scripted-diff: Remove g_connman, g_banman globals (Russell Yanofsky)
e6f4f895d5 Pass NodeContext, ConnMan, BanMan references more places (Russell Yanofsky)
4d5448c76b MOVEONLY: Move NodeContext struct to node/context.h (Russell Yanofsky)
301bd41a2e scripted-diff: Rename InitInterfaces to NodeContext (Russell Yanofsky)
37b8475dcf Chainparams: Use name constants in chainparams initialization (Jorge Timón)
dd94cc46e4 contrib: remove accounts from bash completion (fanquake)
f3b51eb935 Fix occurences of c_str() used with size() to data() (Wladimir J. van der Laan)
c1c6c410a6 test: add reason checks for non-standard txs in test_IsStandard (Sebastian Falbesoner)
f201ba59ff Refactor: Split up CWallet and LegacyScriptPubKeyMan and classes (Andrew Chow)
6702048f91 MOVEONLY: Move key handling code out of wallet to keyman file (Andrew Chow)
ab053ec6d1 Move wallet enums to walletutil.h (Andrew Chow)
c72906dcc1 refactor: Remove redundant c_str() calls in formatting (Wladimir J. van der Laan)
e7b02b54cc Add roundtrip and more tests to ParseISO8601DateTime and FormatISO8601DateTime (Elichai Turkel)
9e2c623be5 Rename DecodeDumpTime to ParseISO8601DateTime and move to time.cpp (Elichai Turkel)
7aad3b68e7 doc: Doxygen-friendly CuckooCache comments (Jon Layton)
ed2dc5e48a Add override/final modifiers to V1TransportDeserializer (Pieter Wuille)
f342a5e61a Make resetting implicit in TransportDeserializer::Read() (Pieter Wuille)
6a91499496 Remove oversized message detection from log and interface (Pieter Wuille)
b0e10ff4df Force CNetMessage::m_recv to use std::move (Jonas Schnelli)
efecb74677 Use adapter pattern for the network deserializer (Jonas Schnelli)
1a5c656c31 Remove transport protocol knowhow from CNetMessage / net processing (Jonas Schnelli)
6294ecdb8b Refactor: split network transport deserializing from message container (Jonas Schnelli)
3bb0a4674f bench: Fix negative values and zero for -evals flag (nijynot)
fa398091b7 Avoid unused call to GuessVerificationProgress in NotifyHeaderTip (MarcoFalke)
faeb666536 util: Add CHECK_NONFATAL and use it in src/rpc (MarcoFalke)
e156b9d8b9 gui: disable font antialiasing for QR image address (fanquake)
a8f5026d6d gui: Fix start timer from non QThread (João Barbosa)
a592913022 http: add missing header bootlegged by boost < 1.72 (Jan Beich)
6b6be41c36 gui: Make polling in ClientModel asynchronous (João Barbosa)
8c6081a884 compat: remove bswap_* check on macOS (fanquake)
2cba35ab38 build: skip building OpenSSL lib_ssl (fanquake)
45a2d3c552 build: remove OpenSSL from Qt build (fanquake)
befbc40eb5 build: remove EVP_MD_CTX_new detection (fanquake)
fcee10c2d0 build: remove SSL lib detection (fanquake)
c7f30dbca8 gui: Update BIP70 support message (fanquake)
a3e810326d build: remove BIP70 entries from macOS Info.plist (fanquake)
72fe13a58d gui: remove payment request file handling from OpenURI dialog (fanquake)
3548e4aac7 Remove BIP70 Support (fanquake)
1cb9a4e28c docs: remove protobuf from docs (fanquake)
67328bb7ca build: remove protobuf from depends (fanquake)
04dbdd613f [net] SocketHandler: log peer id for close and disconnect (Sjors Provoost)
dc2fdb9907 tests: Add fuzzing harness for various CScript related functions (practicalswift)
0a433fc876 [validation] Remove unused cacheSigStore from CheckInputsFromMempoolAndCache (John Newbery)
b05ec410f2 Add unit testing for the CompressScript functions (marcaiaf)
fa92813407 consensus: Explain why fCheckDuplicateInputs can not be skipped and remove it (MarcoFalke)
50037e97d1 depends: fix boost mac cross build with clang 9+ (Cory Fields)
168b781fe7 Continue relaying transactions after they expire from mapRelay (Anthony Towns)
5b44a75493 refactor: Remove unused CExt{Pub,}Key (de)serialization methods (Sebastian Falbesoner)
fa710066b9 ci: Disable functional tests on mac host (MarcoFalke)
6f6852335f doc: Changed miniupnp links to https (Marius Kjærstad)
c2f964a674 tests: Remove Cygwin WinMain workaround (practicalswift)
db4bd32cc3 tests: Skip unnecessary fuzzer initialisation. Hold ECCVerifyHandle only when needed. (practicalswift)
0fc81a1e87 gui: Fix payAmount tooltip in SendCoinsEntry (João Barbosa)
9075d13153 [docs] Add release notes for removal of REJECT reasons (John Newbery)
04a2f326ec [validation] Fix REJECT message comments (John Newbery)
e9d5a59e34 [validation] Remove REJECT code from CValidationState (John Newbery)
0053e16714 [logging] Don't log REJECT code when transaction is rejected (John Newbery)
a1a07cfe99 [validation] Fix peer punishment for bad blocks (John Newbery)
9e95931865 [wallet] Remove `state` argument from CWallet::CommitTransaction (John Newbery)
d1734f9a3b [wallet] Remove return value from CommitTransaction() (John Newbery)
b6f486a02b [wallet] Add doxygen comment to CWallet::CommitTransaction() (John Newbery)
8bba91b22d [wallet] Fix whitespace in CWallet::CommitTransaction() (John Newbery)
4896bacc00 Add testcase to simulate bitcoin schema in leveldb (MapleLaker)
b5ffa9f3db tests: Add Parse(...) (descriptor) fuzzing harness (practicalswift)
fdef8bbf2f tests: Allow for using non-default fuzzing initialization (practicalswift)
a0fc076476 refactor: test/bench: dedup Build{Crediting,Spending}Transaction() (Sebastian Falbesoner)
cd68594dcd Only check the hash of transactions loaded from disk (Andrew Chow)
088a730fe6 static tooltip (JeremyCrookshank)
89339d1460 tests: Add test for loadblock option (Fabian Jahr)
0616138a07 tests: Remove no longer needed UBSan suppressions (issues fixed). Add documentation. (practicalswift)
8d22ab0e50 ci: Enable address sanitizer (ASan) stack-use-after-return checking (practicalswift)
facec1c643 wallet: Avoid showing GUI popups on RPC errors (MarcoFalke)
57e2edea0b Send amount shows minimum amount placeholder (JeremyCrookshank)
fa677d1801 ci: Remove redundant check for TRAVIS_OS_NAME (MarcoFalke)
fadccb263b doc: Document that GNU tools are required for linters (MarcoFalke)
4444704ca9 ci: Cleanup macOS runs (MarcoFalke)
e892f9648a random: remove call to RAND_screen() (Windows only) (fanquake)
7ca68e1461 wallet: Remove unused GetLabelName (Sebastian Falbesoner)
f09ba060ca doc: Added instructions for how to add an upsteam to forked repo (dannmat)
b5f0be3879 util: Filter out macOS process serial number (Hennadii Stepanov)
1ba49bcdc2 build: pass --enable-option-checking to applicable packages (fanquake)
bcff8e21b1 build: only pass --disable-dependency-tracking to packages that understand it (fanquake)
cc3b5289ef gui: remove OpenSSL PRNG seeding (Windows, Qt only) (fanquake)
7d8d3e6a2a Add tests for util/vector.h's Cat and Vector (Pieter Wuille)
e65e61c812 Add some general std::vector utility functions (Pieter Wuille)
7005d6ab8f gui: Add placeholder text to the sign message field (Danny-Scott)
b3b6b6f62f gui: don't disable the sync overlay when wallet is disabled (Ben Carman)
fa0467326f chain: Set all CBlockIndex members to null, remove SetNull helper (MarcoFalke)
9576614d2d doc: Describe log files + consistent paths in test READMEs (Martin Erlandsson)
1f6c650c99 travis: run tests on macOS native (Sjors Provoost)
85016e52f6 [rpc] Fix broken bitcoin-cli examples (Andrew Toth)
5013171eaf doc: correct function name in ReportHardwareRand() (fanquake)
f59bbb61af test: Fix bug in blockfilter_index_tests. (Jim Posen)
084e17cebd Remove unused includes (practicalswift)
d7820a1250 util: Filter control characters out of log messages (Wladimir J. van der Laan)
b3b26e149c rpc: fix -rpcclienttimeout 0 option (Fabian Jahr)
58d67f1cc0 tests: Add fuzzing harness for descriptor Span-parsing helpers (practicalswift)
a0daea459c [build] depends macOS: point --sysroot to SDK (Sjors Provoost)
8019b6b150 gui: Make RPCConsole::TabTypes an enum class (João Barbosa)
b96ed03962 [wallet] Remove pruning check for -rescan option (John Newbery)
eea462de9c [wallet] Remove package limit config access from wallet (John Newbery)
66b29848c7 change wallet pointers to references in feebumper (Adam Jonas)
9be6666a4e typo and unneccessary parentheses (Adam Jonas)
610d9384de gui: Added label & tooltip for Verify Message labels (dannmat)
eebcdfa86a [test] rename SegwitVersion1SignatureHash() (John Newbery)
4441e58497 Update macdeploy README to include correctly named `.dmg` file produced from `make deploy` (Zakk)
5f40d2770a github: Add warning for bug reports (Wladimir J. van der Laan)
44f7a8d7a7 Disable _FORTIFY_SOURCE when enable-debug (Andrew Chow)
d48f664440 tests: Fix fs_tests for unknown locales (Daki Carnhof)
fa6ed82794 doc: update bips.md with buried BIP9 deployments (MarcoFalke)
c8961c7d9f doc: Add switch on enum example (Hennadii Stepanov)
11e3d5eb1d util: Add AllowShortCaseLabelsOnASingleLine option (Hennadii Stepanov)
fba4baa4fa test: speed up wallet_address_types by whitelisting peers (immediate tx relay) (Sebastian Falbesoner)
32d665c265 test: fix "tx-size-small" errors after default address change (Sebastian Falbesoner)
7e50abcc29 tests: Add EvalScript(...) fuzzing harness (practicalswift)
bebb637472 tests: Add FuzzedDataProvider fuzzing helper from the Chromium project (practicalswift)
bd3f5a90ec build: remove mingw linker workaround from win gitian descriptor (fanquake)
9192ce5d63 depends: pull upstream libdmg-hfsplus changes (fanquake)
9b54f3436b depends: latest config.guess & config.sub (fanquake)
581c9be0d8 test: speedup wallet_backup by whitelisting peers (immediate tx relay) (Sebastian Falbesoner)
15ac916642 doc: Doxygen-friendly descriptor.h comments (Jon Layton)
fa91590a74 build: Add README.md to DIST target (MarcoFalke)
fa191c058f doc: Add missing indexes/blockfilter/basic/ to doc/files.md (MarcoFalke)
86b9f92da2 doc: Add detailed info about Bitcoin Core files (Hennadii Stepanov)
d478a472eb test: Fix combine_logs.py for AppVeyor build (Martin Zumsande)
bb36372b8f test: add unit tests for Span-parsing helpers (Sebastian Falbesoner)
5e69aeec3f Add documenting comments to spanparsing.h (Pieter Wuille)
230d43fdbc Abstract out some of the descriptor Span-parsing helpers (Pieter Wuille)
a57a1d42d5 test: add unit test for wallet watch-only methods involving PubKeys (Sebastian Falbesoner)
f4c8953b00 Add missing fields in TransactionDescriptionString and others (Antoine Riard)
3530108491 MOVEONLY : move RPC wallets helpers to TransactionDescriptionString (Antoine Riard)
5c2987636f tests: Remove TRANSACTION_DESERIALIZE (replaced by transaction fuzzer) (practicalswift)
0a573682f2 tests: Add fuzzing harness for CheckTransaction(...), IsStandardTx(...) and other CTransaction related functions (practicalswift)
facb9a1315 init: Change fallback locale to C.UTF-8 (Wladimir J. van der Laan)
091747b46e gui: Add shortcuts for tab tools (João Barbosa)
f33efa8ec5 GUI: Restore RPC Console to non-wallet tray icon menu (Luke Dashjr)
181989f6c9 build: Add variable printing target to Makefiles (Carl Dong)
cd82f75a43 lint: Install grep and git via brew on mac for --perl-regexp (Ben Woosley)
eafa747ca5 lint: Fix shellcheck SC2155 (Ben Woosley)
615ff4e7db lint: Run the linters against Mac OS on Travis (Ben Woosley)
11fdfcf7f9 Show addresses for "SendToSelf" transactions (Hennadii Stepanov)
fa79dff624 ci: Run tests on arm (MarcoFalke)
a54ab2104c [doc] fix Makefile target in benchmarking.md (Sebastian Falbesoner)
9743432034 Fix bug where duplicate PSBT keys are accepted (John L. Jegutanis)
4de0bde7bc build: Fix #include sys/poll.h to just poll.h (without sys/) (Daki Carnhof)
fa25f43ac5 p2p: Remove BIP61 reject messages (MarcoFalke)
dd85166b6c Added double quotes (Ava Barron)
9d1f971c75 gitian: Put things in the right place to begin with (Carl Dong)
71949a97a7 gitian: Eliminate rename dependency (Carl Dong)
999a9a5f5b gitian: Smaller diff with gitian-linux.yml (Carl Dong)
c4a3c25ba1 gitian: Fix README inclusion in archives (Carl Dong)
93cb974980 gitian: Use split-debug.sh for Win builds (Carl Dong)
4bb660be90 Add release note (Andrew Chow)
ed96b295d7 Update descriptors.md to include sortedmulti (Andrew Chow)
80be78ea75 Test sortedmulti descriptor using BIP 67 tests (Andrew Chow)
6f588fd227 Add sortedmulti descriptor and unit tests (Andrew Chow)
c640ca24f9 Always generate `bitcoinstrings.cpp` on `make translate` (Franck Royer)
30fc1a3f54 build: Remove workaround for ancient libtool (Hennadii Stepanov)
6ca01b9a10 build: Ensure a minimal version of libtool (Hennadii Stepanov)
c2bb3919a8 util: Simplify path argument for CBlockTreeDB ctor (Hennadii Stepanov)
7fb7acfc20 Set init stop timeout to 10 min (setpill)
ddddd8961b ci: Use busybox utils for one build (MarcoFalke)
0d86f4d3da refactor: consolidate PASTE macros (James O'Beirne)
3284e6c09a scripts: search for next position of magic bytes rather than fail (Tim Akinbo)
8acd58927a Fix Python Docstring to include all Args. (John Bampton)
ffa2221256 tests: Pass fuzzing inputs as constant references (practicalswift)
fa1ad8f06e build: Bump gitian descriptor versions (MarcoFalke)
dffae5a5ad scripts: update copyright_header script to include additional files (gchuf)
eb7b781659 modify p2p_feefilter test to catch rounding error (Gregory Sanders)
6a51f79517 Disallow implicit conversion for CFeeRate constructor (Gregory Sanders)
8e59af55aa feefilter: Compute the absolute fee rather than stored rate to match mempool acceptance logic (Gregory Sanders)
fad1dbda98 doc: Fix amount typo in release notes (MarcoFalke)
fa8d052da5 doc: Update bips.md for default bech32 addresses in 0.20.0 (MarcoFalke)
fab68a0772 doc: move-only release notes fragments for 0.20.0 (MarcoFalke)
3f89e1eb23 Prevent processing duplicate payment requests (João Barbosa)
0b1dcd32bf contrib: fix minor typos in makeseeds.py (Brian Solon)
faca1c24f9 doc: move-only: Steps for "before major release branch-off" (MarcoFalke)
07e4bdba3b Don't rename main thread at process level (Wladimir J. van der Laan)
fa95503d64 ci: Make apt-get more verbose, to debug travis timeouts (MarcoFalke)
ea4cc3a7b3 Truly decouple wallet from chainparams for -fallbackfee (Jorge Timón)
50c4afa3c4 add newline after -stdin* (Karl-Johan Alm)
7f11fba2e3 cli: add -stdinwalletpassphrase for (slightly more) secure CLI (Karl-Johan Alm)
0da503e947 add stdin helpers for password input support (Karl-Johan Alm)
71d4eddf42 Add release note for bech32 by default in wallet (Gregory Sanders)
b34f0180e3 Revert "gui: Generate bech32 addresses by default (take 2, fixup)" (Gregory Sanders)
f50785ab56 Change default address type to bech32 (Gregory Sanders)
faec689bed txmempool: Make entry time type-safe (std::chrono) (MarcoFalke)
faaa1f01da util: Add count_seconds time helper (MarcoFalke)
1111170f2f test: mempool entry time is persisted (MarcoFalke)
a649cc6a17 Change sendcoins dialogue Yes to Send (Gregory Sanders)
434101875c doc: reset release notes after 0.19 split-off (Jon Atack)
c0859b7dac build: 0.19 release updates on master (Jon Atack)
c812aba394 test bumpfee fee_rate argument (ezegom)
9f25de3d9e rpc bumpfee check fee_rate argument (ezegom)
88e5f997df rpc bumpfee: add fee_rate argument (ezegom)
1a4c791cf4 rpc bumpfee: move feerate estimation logic into separate method (ezegom)
addaf8af82 make sure to update the UI when deleting a transaction (Jonas Schnelli)
aa81e2cc0e Enable UBSan for Travis fuzzer job (practicalswift)
2a4e60b482 Fix block index inconsistency in InvalidateBlock() (Suhas Daftuar)
0218171a24 contrib: Remove invalid nodes from seeds list (Wladimir J. van der Laan)
3b09f2b9d9 net: 0.19 hardcoded seeds update (Wladimir J. van der Laan)
801d341f3a contrib: makeseeds: More fancy output (Wladimir J. van der Laan)
ed76299bea contrib: makeseeds: Limit per network, instead of total (Wladimir J. van der Laan)
c254a9ef69 contrib: makeseeds: dedup by ip,port (Wladimir J. van der Laan)
3314d87966 contrib: makeseeds: Factor out ASN lookup (Wladimir J. van der Laan)
301c2b1ab5 contrib: makeseeds: Improve logging and filtering (Wladimir J. van der Laan)
73aaf4ecf8 Make SignatureExtractorChecker private to its own file (Ben Woosley)
fa3d98426b doc: Consolidate release notes before 0.19.0 (MarcoFalke)
fa02f2d607 doc: Add missing release notes for 16383 (MarcoFalke)
fa3a733116 chainparams: Bump assumed chain params (MarcoFalke)
fa06bb607d qa: Do not force overwrite of QT_QPA_PLATFORM on windows for gui tests (MarcoFalke)
faccf5f9c8 doc: Explain QT_QPA_PLATFORM for gui tests (MarcoFalke)
386ae0f691 util: Make thread names shorter (Hennadii Stepanov)
fadd6e0d2a doc: Remove mention of renamed mapBlocksUnlinked (MarcoFalke)
57b0cd4db9 build: Installed Qt version only appears if being built (Jon Layton)
85973bcc44 When BIP70 is disabled, get PaymentRequest merchant using string search (Andrew Chow)
60e855f5c5 doc: Bump version in bips.md, mention bumping in release process (Wladimir J. van der Laan)
82c11773dc doc: Add mention of BIP158 indexing since v0.19.0 (Wladimir J. van der Laan)
226700602b doc: Add mention of BIP125 used by wallet GUI by default since v0.18.1 (Wladimir J. van der Laan)
b11514d4e5 doc: Add mention of BIP70 disabling by default in bips.md (Wladimir J. van der Laan)
3eea6a8f26 refactor: Remove Qt function to disable menu icons on macOS (Emil Engler)
e28d8f8936 Correct docstring param name. (John Bampton)
9c23ebd6b1 qa: Fix service flag comparison check in rpc_net test (Luke Dashjr)
e2ce392aec test: Avoid whitespace linting in qt translations (Wladimir J. van der Laan)
977dd23e40 qt: Periodic translations update (Wladimir J. van der Laan)
eb4c43e49f doc: documents how to calculate m_assumed_blockchain_size and m_assumed_chain_state_size on the release process. (marcoagner)
80031045fc Clarify includeWatching for fundrawtransaction (Steven Roose)
0cc7dd74e0 test: add unittests for CheckProofOfWork (soroosh-sdi)
463a1d5244 Refresh ZeroMQ 4.3.1 patch (Nathan Marley)
568aa0cf83 Add OpenSSL termios fix for musl libc (Nathan Marley)
8cf9898b53 qt: Change default size of intro frame (Emil Engler)
203a67d21f doc: Put PR template in comments (Wladimir J. van der Laan)
67d99900b0 make SaltedOutpointHasher noexcept (Martin Ankerl)
4320bfc0c0 build: Factor out qt translations from build system (Wladimir J. van der Laan)
43e7d576f5 doc: Improve test READMEs (Fabian Jahr)
fdb3e8f8b2 Ignore old versionbit activations (Anthony Towns)
1a02edb3f2 [RPC] Fix casing in getblockchaininfo to be inline with the rest of the response (Dan Gershony)
8d841ad492 doc: Remove MSVC update step from translation process (Wladimir J. van der Laan)
efd2474d17 util: CBufferedFile fixes (Larry Ruane)
1b4030e264 depends: qt: Fix LDFLAGS pickup (Carl Dong)
6eb12ffcbd depends: qt: Fix C{,XX}FLAGS pickup (Carl Dong)
fa607c2292 validation: Make GetWitnessCommitmentIndex public (MarcoFalke)
f4beb4996d test: Remove python dead code linter (Wladimir J. van der Laan)
fa7847d99b gui: Rename address checkbox back to bech32 (MarcoFalke)
fadd76acc2 ci: Remove TRAVIS env vars (MarcoFalke)
fa449b89b5 ci: Set $HOST before setting fallback values (MarcoFalke)
6659810e2f test: use named args for sendrawtransaction calls (Jon Atack)
5c1cd78b7e doc: improve rawtransaction code/test docs (Jon Atack)
acc14c5093 test: fix incorrect value in rpc_rawtransaction.py (Jon Atack)
27fcb40fc0 doc: replace outdated OpenSSL comment in test README (fanquake)
dbdc758c27 doc: Improve doxygen readme navigation section (Jon Layton)
c15ac2c0aa doc: Move doxygen intro to file for USE_MDFILE_AS_MANPAGE (Jon Layton)
faa079db92 travis: Disable feature_block in tsan run (MarcoFalke)
6170ec5d3a Do not query all DNS seed at once (Pieter Wuille)
fa69588537 test: Make PORT_MIN in test runner configurable (MarcoFalke)
bb99c4e684 build: update boost macros to latest upstream (fanquake)
fa2e038691 test: Fix extra_args in wallet_import_rescan.py (MarcoFalke)
72a18a73af tests: Add information on how to add Vulture suppressions (practicalswift)
96299a9d6c Test: Move common function assert_approx() into util.py (fridokus)
14c6a2de1a [doc] update brew instruction for doxygen (Sjors Provoost)
fa8d65f071 doc: Fix doxygen comment for SignTransaction in rpc/rawtransaction_util (MarcoFalke)
3cf36736e5 refactoring: move ReplayBlocks under CChainState (James O'Beirne)
bcf73d3b84 refactoring: move LoadChainTip to CChainState method (James O'Beirne)
f5809d5b13 doc: fix CChainState::ActivateBestChain doc (James O'Beirne)
c4b0c08f7c Update tx-size-small comment with relevant CVE disclosure (Gregory Sanders)
fadfd844de test: Remove unused connect_nodes_bi (MarcoFalke)
fa3b9ee8b2 scripted-diff: test: Replace connect_nodes_bi with connect_nodes (MarcoFalke)
faaee1e39a test: Use connect_nodes when connecting nodes in the test_framework (MarcoFalke)
1111bb91f5 test: Reformat python imports to aid scripted diff (MarcoFalke)
fac35b21e2 test: lint: Add DisabledOpcodeTemplates to whitelist (MarcoFalke)
2dfd6834ef test: Add test for default maxfeerate in sendrawtransaction (Joonmo Yang)
261843e4be wallet/rpc: Use the default maxfeerate value as BTC/kB (Joonmo Yang)
b4fd0ca9be Include cstring for sanity_test_fdelt if required (Ben Woosley)
7fb886b1b1 [moveonly] Split glibc sanity_test_fdelt out (Ben Woosley)
c0b5d97103 Test that joinpsbts randomly shuffles the inputs (Andrew Chow)
6f405a1d3b Shuffle inputs and outputs after joining psbts (Andrew Chow)
4a87c5cfdf [refactor] Rewrite AcceptToMemoryPoolWorker() using smaller parts (Suhas Daftuar)
0c62e3aa73 New regression testing for CVE-2018-17144, CVE-2012-2459, and CVE-2010-5137. (lucash-dev)
38bfca6bb2 Added comments referencing multiple CVEs in tests and production code. (lucash-dev)
f0636d3418 depends: zlib: Move toolchain options to configure (Carl Dong)
93995c2751 build: remove unnecessary qt xcb patching (fanquake)
4d45577c43 build: remove unnecessary macOS qt patching (fanquake)
8573429d46 test: add some unit tests for merkle.cpp (soroosh-sdi)
ae0add8dfe Add python bech32 impl round-trip test (Gregory Sanders)
fa502cb6f0 test: Bump timeouts in slow running tests (MarcoFalke)
6aab7649d3 doc: Fix whitespace errs in .md files, bitcoin.conf, Info.plist.in, and find_bdb48.m4 (Jon Layton)
fa27eded3a qt: Run "make translate" in ./src (MarcoFalke)
2222c96dee test: Add notes on how to generate data/wallets/high_minversion (MarcoFalke)
fae961de6b test: Establish only one connection between nodes in rpc_invalidateblock (MarcoFalke)
82e53f37e1 doc: add comments clarifying how local services are advertised (James O'Beirne)
fa912a8ad5 doc: move-only ActivateBestChain doxygen comment to header (MarcoFalke)
fa99efd054 doc: ActivateBestChainStep return value (MarcoFalke)
107e030723 build: make protobuf optional in depends (fanquake)
ff6122f32b doc: clarify protobuf build requirements (fanquake)
cad3ab5db8 gui: fix autofocus in CreateWalletActivity::askPassphrase() (Jon Atack)
539d9403af gui: fix passphrase labels/tooltip in createwalletdialog/askpassphrasedialog (Jon Atack)
43aa9b0d79 gui: rename encrypt(), blank(), and askPasshprase() (Jon Atack)
b6233a4985 bitcoin-wallet: Add a missing closing parenthesis in the help (darosior)
1b41c2c8a1 test: improve gettransaction test coverage (Jon Atack)
0f34f54888 rpc: fix regression in gettransaction (Jon Atack)
1153caf78e Qt: advise users not to switch wallets when opening a BIP70 URI. (James Hilliard)
7dee8f4808 [wallet] Rename 'decode' argument in gettransaction method to 'verbose' (John Newbery)
f390d8556b Prevent UpdateTip log message from being broken up (Steven Roose)
e09913f1c4 doc: specify protobuf as optional in build docs (fanquake)
376f4929f8 build: disable BIP70 support by default (fanquake)
706340150f Elaborate on the need to re-login on Debian-based systems to use tor following usermod (clashicly)
9924bce317 [gui] intro: enable pruning by default unless disk is big (Sjors Provoost)
c8de347a9d [gui] intro: add prune preference (Sjors Provoost)
1bbc49d207 [gui] intro: inform caller if intro was shown (Sjors Provoost)
1957103786 [gui] add explicit prune setter (Sjors Provoost)
1bccf6a52d [node] add forceSetArg to interface (Sjors Provoost)
333317ce6b test: Test that low difficulty chain fork is rejected (MarcoFalke)
fa31dc1bf4 test: Pass down correct chain name in tests (MarcoFalke)
1d524c62ea tests: rename 'test_getnetworkinginfo' in 'test_getnetworkinfo' (darosior)
07a8f65031 tests: add a test for the 'servicesnames' RPC field (darosior)
1619684322 Added libbitcoin_qt and bitcoin-qt to the msbuild configuration. (Aaron Clauson)
ec4c79326b signrawtransaction*: improve error for partial signing (Anthony Towns)
3c481f8921 signrawtransactionwithkey: better error messages for bad redeemScript/witnessScript (Anthony Towns)
0c6054fc9f depends: Bump QT to LTS release 5.9.8 (THETCR)
3bf9d8cac0 Testchains: Qt: Simplify network/chain styles (Jorge Timón)
052c54ecb0 Testchains: Generic selection with -chain=<str> in addition of -testnet and -regtest (Jorge Timón)
66740f460a doc: add a release note for the new field in 'getpeerinfo' and 'getnetworkinfo' (darosior)
6564f58c87 rpc/net: decode the services flags in a new entry (darosior)
1ac7b7f66b scripts: filter more qt plugins we don't use in macdeployqtplus (fanquake)
57cdd0697d scripts: misc cleanups in macdeployqtplus (fanquake)
51729a4dfa scripts: use format() in macdeployqtplus (fanquake)
1c37e81694 scripts: add type annotations to macdeployqtplus (fanquake)
e90478f43e log: harmonize bitcoind server logging (Jon Atack)
6d803494b5 Don't show addresses or P2PK in decoderawtransaction (nicolas.dorier)
fa734603b7 wallet: Fix segmentation fault in CreateWalletFromFile (MarcoFalke)
fab3c34412 test: Print both messages on failure in assert_raises_message (MarcoFalke)
faa13539d5 wallet: Fix documentation around WalletParameterInteraction (MarcoFalke)
fabca7756d doc: Add issue templates for bug and feature request (MarcoFalke)
ad52f054f6 Escape ampersands (&) in wallet names in Open Wallet menu (Andrew Chow)
2c530ea2ad HTML escape address labels in more dialogs and notifications (Andrew Chow)
1770a972d4 HTML escape the wallet name in more dialogs and notifications (Andrew Chow)
bdd6a4fd5d qa: Check scantxoutset result against gettxoutsetinfo (João Barbosa)
fc0c410d6e rpc: Improve scantxoutset response and help message (João Barbosa)
4be3b7680e refactor: Cleanup walletinitinterface.h (Hennadii Stepanov)
f091dc8180 GUI: Remove unused menu items for Windows and Linux (GChuf)
0ba08020c9 Disconnect peers violating blocks-only mode (Suhas Daftuar)
937eba91e1 doc: improve comments relating to block-relay-only peers (Suhas Daftuar)
430f489027 Don't relay addr messages to block-relay-only peers (Suhas Daftuar)
3a5e885306 Add 2 outbound block-relay-only connections (Suhas Daftuar)
b83f51a4bb Add comment explaining intended use of m_tx_relay (Suhas Daftuar)
e75c39cd42 Check that tx_relay is initialized before access (Suhas Daftuar)
c4aa2ba822 [refactor] Change tx_relay structure to be unique_ptr (Suhas Daftuar)
4de0dbac9b [refactor] Move tx relay state to separate structure (Suhas Daftuar)
26a93bce29 Remove unused variable (Suhas Daftuar)
613de61a04 Add Create Wallet menu action (Andrew Chow)
9b41cbb28f Expose wallet creation to the GUI via WalletController (Andrew Chow)
78863e2900 Add CreateWalletDialog to create wallets from the GUI (Andrew Chow)
60adb21c7a Optionally allow AskPassphraseDialog to output the passphrase (Andrew Chow)
bc6d8a3662 gui: Refactor OpenWalletActivity (João Barbosa)
0065ead5eb contrib: guix: Remove ssp spec file hack (Carl Dong)
0093a5869a contrib: guix: More robust search paths, add checks (Carl Dong)
5ce822efbe Conservatively accept RBF bumps bumping one tx at the package limits (Matt Corallo)
39034f1ee6 Refactor rawtransaction_util's SignTransaction to have previous tx parsing be separate (Andrew Chow)
3109a1f948 refactor: Avoid locking cs_main in ProcessNewBlockHeaders (João Barbosa)
442a87cc0a Add a test wallet_reorgsrestore (Antoine Riard)
40ede992d9 Modify wallet tx status if has been reorged out (Antoine Riard)
7e89994133 Remove SyncTransaction for conflicted txn in CWallet::BlockConnected (Antoine Riard)
a31be09bfd Encapsulate tx status in a Confirmation struct (Antoine Riard)
2457aea83c Assert that the HRP is lowercase in Bech32::Encode (Samuel Dobson)
fae91a09c4 test: Remove incorrect and unused try-block in assert_debug_log (MarcoFalke)
3d0a82cff8 devtools: Accomodate block-style copyright blocks (Ben Woosley)
0ef0e51fe4 lint: Bump flake8 to 3.7.8 (Ben Woosley)
838920704a lint: Disable flake8 W504 warning (Ben Woosley)
b21680baf5 test/contrib: Fix invalid escapes in regex strings (Ben Woosley)
490da639cb Make lint-includes.sh work from any directory (Kristaps Kaupe)
dcc448e3d2 Avoid unnecessary "Synchronizing blockheaders" log messages (Jonas Schnelli)
fa61365a13 wallet: Translate all initErrors in CreateWalletFromFile (MarcoFalke)
fa70d199d0 util: Make util/error bilingual_str (refactor) (MarcoFalke)
057fac3453 gui: Update English source translation (Wladimir J. van der Laan)
072f37a7ed gui: Update transifex slug for 0.19 (Wladimir J. van der Laan)
9965940e35 doc: Add release note for the new gettransaction argument (darosior)
b8b3f0435a tests: Add a new functional test for gettransaction (darosior)
7f3bb247a8 gettransaction: add an argument to decode the transaction (darosior)
9b92538ade Remove unused fScriptChecks parameter from CheckInputs (Matt Corallo)
0bb33b5348 qt: Replace objc_msgSend with native syntax (Hennadii Stepanov)
8340763dc3 Check for codespell in lint-spelling.sh (Kristaps Kaupe)
d9d8984270 wallet: Use wallet name instead of pointer on unload/release (João Barbosa)
635e9154da [qt] Change uninstall icon on Windows (GChuf)
8b6f5aabb9 qt: Replace QFontMetrics::width() with TextWidth() (Hennadii Stepanov)
798a589aff wallet: extract PubKey from P2PK script with Solver (Sebastian Falbesoner)
fa0b910486 [doc] chain: Declare BLOCK_VALID_HEADER reserved (MarcoFalke)
c53667764e qt: Remove obsolete QModelIndex::child() (Hennadii Stepanov)
d48c1e837a Add window final block height to getchaintxstats (Jonathan "Duke" Leto)
0912134039 qt: Remove QSignalMapper from TransactionView (Hennadii Stepanov)
9e0c1d676c qt: Remove QSignalMapper from RPCConsole (Hennadii Stepanov)
d75e704ac0 Add log output during initial header sync (Jonas Schnelli)
c6dd32da69 qt: Replace obsolete functions of QDesktopWidget (Hennadii Stepanov)
1260ecd812 qt: Add TextWidth() wrapper (Hennadii Stepanov)
d53d591230 Added the bench_bitcoin project to the list automatically produced by the msvc-autogen python script. (Aaron Clauson)
41d484d5c8 doc: Delete stale URL in test README (Michael Folkson)
2e1455c4a1 Replace obsolete functions of QSslSocket (Hennadii Stepanov)
fa27372e65 ci: Move CCACHE_DIR and test_runner tmp dir into ./ci/scratch/ (MarcoFalke)
fa60583d23 ci: Pass down $MAKEJOBS to test_runner.py (MarcoFalke)
f3b57f4a1c Unrecommend making config file owned by bitcoin (setpill)
870d4152df Set ProtectHome in systemd service file (setpill)
639a416e37 Chgrp config dir to bitcoin in systemd service (setpill)
aded0528f0 Improve clarity of systemd service file comments (setpill)
1373fa7e3d doc: add default bitcoin.conf locations (Chuf)
9452802480 doc: Tidy up shadowing section (João Barbosa)
aff1c9c884 Adds an option to msbuild common configuration to ignore linker warning 4221. This warning is for object files that do not include any symbols. The warning is harmless and occurs due to some classes that are *nix only having no source to compile for an msvc build. (Aaron Clauson)
593ba696fb Add warning messages to the debug window (Hennadii Stepanov)
e4f4ea47eb lint: Catch use of [] or {} as default parameter values in Python functions (practicalswift)
25dd867150 Avoid using mutable default parameter values (practicalswift)
403e372407 qa: Relax so that the subscriber is ready before publishing zmq messages (João Barbosa)
71e08ab22d test: add executable flag for wallet_watchonly.py (Sebastian Falbesoner)
8a3b2eb175 move-only: move coins statistics utils out of RPC (James O'Beirne)
eb2d64b9e0 doc: Add spacing to command in translation_process.md (Chuf)
a64dbeffe4 doc: Update labels in CONTRIBUTING.md (Hennadii Stepanov)
92528c260e Support serialization of std::vector<bool> (Pieter Wuille)
66ad75472f [Doc] Add documentation for the new whitelist permissions (nicolas.dorier)
abdfc5e89b qa: Test ZMQ notification after chain reorg (João Barbosa)
aa2622a726 qa: Refactor ZMQ test (João Barbosa)
6bc1ff915d doc: Add note regarding ZMQ block notification (João Barbosa)
3d50fe2c1f scripts: move update-translations.py to maintainer-tools repo (fanquake)
c295cba5a2 depends: zeromq: disable draft classes and methods (fanquake)
0072237b9e depends: xproto: configure flags cleanup (fanquake)
6a8ada3a4f depends: qrencode: configure flags cleanup (fanquake)
86beb8cdc4 depends: fontconfig: configure flags cleanup (fanquake)
e656d95ec7 depends: libxcb: configure flags cleanup (fanquake)
e439388b35 depends: libXau: configure flags cleanup (fanquake)
74e3876989 Release notes: add previously undocumented changes (David A. Harding)
7e1634a927 Release notes: edit previously-detached notes (David A. Harding)
e7415a5a95 Doc: move detached release notes into release-notes.md (David A. Harding)
a4765bd77f gui: Ensure tx send error highlight is visible (bpay)
2483266c59 packages.md: document depends build targets (Russell Yanofsky)
be27161ee4 Clarify need to specify --prefix with depends (Russell Yanofsky)
bca388db0d gui: remove unused PlatformStyle::TextColorIcon (fanquake)
f7220e85fd build: update RapidCheck Makefile (Jon Atack)
b9ee63c71b Make descriptor test deterministic (David Reikher)
faebf62714 rpc: Use Join helper in rpc/util (MarcoFalke)
fa8cd6f9c1 util: Add Join helper to join a list of strings (MarcoFalke)
153d9dd9ac refactor: replace qLowerBound & qUpperBound with std:: upper_bound & lower_bound (fanquake)
59373e3e94 refactor: replace qSort with std::sort (fanquake)
fea33cbbdf refactor: replace qStableSort with std::stable_sort (fanquake)
6011c9d72d QA: fix rpc_setban.py race (Jonas Schnelli)
2dbfb37b40 Fix Char as Bool in interfaces (Jeremy Rubin)
c84ff23c6d build: ignore macOS make deploy artefacts & add them to clean-local (fanquake)
17d178fb94 doc: add release-notes for getmempoolentry weight field addition (fanquake)
9c9cc2bd20 qa: Add RPC tests for weight in mempool entry (Daniel Edgecumbe)
54aaa7883c RPC: add weight to mempool entry output (Daniel Edgecumbe)
b6e9ff8996 build: Remove src/obj directory from repository (Wladimir J. van der Laan)
8616c81f08 doc: initial RapidCheck property-based testing documentation (Jon Atack)
ffea41f530 Enable all tests in feature_config_args.py (Hennadii Stepanov)
66f5c17f8a Use CheckDataDirOption() for code uniformity (Hennadii Stepanov)
7e33a18a34 Fix datadir handling in bitcoin-cli (Hennadii Stepanov)
b28dada374 Fix datadir handling in bitcoin-qt (Hennadii Stepanov)
50824093bb Fix datadir handling in bitcoind (Hennadii Stepanov)
740d41ce9f Add CheckDataDirOption() function (Hennadii Stepanov)
c1f325126c Return absolute path early in AbsPathForConfigVal (Hennadii Stepanov)
fa21737ba7 ci: Add environment files for all settings (MarcoFalke)
20ea9ef6ce [doc] mention whitelist is inbound, and applies to blocksonly (Sjors Provoost)
6c27fa0f09 scripts: remove github-merge.py (fanquake)
b168dd30cf Bugfix: QA: Run tests with UPnP disabled (Luke Dashjr)
3b05f0f70f Reformat p2p_permissions.py (nicolas.dorier)
ce7eac3cb0 [Fix] The default whitelistrelay should be true (nicolas.dorier)
fa0119af22 doc: Refer in rpcbind doc to the manpage (MarcoFalke)
dc1bc1c503 doc: Add ZMQ dependencies to Fedora build (Hennadii Stepanov)
787c9ec0c3 Additional tests for other failure cases (Andrew Chow)
6e1ae58298 Check error messages in descriptor tests (Andrew Chow)
625534d7b1 Give more errors for specific failure conditions (Andrew Chow)
c325f619dd Return an error from descriptor Parse that gives more information about what failed (Andrew Chow)
a6c1fc3cd9 build: echo prop tests status during build (Jon Atack)
26d3fad109 Add unmodified-but-with-checksum to getdescriptorinfo (Pieter Wuille)
104b3a5069 Factor out checksum checking from descriptor parsing (Pieter Wuille)
d117f4541d Add test for setban (nicolas.dorier)
dc7529abf0 [Fix] Allow connection of a noban banned peer (nicolas.dorier)
faba46da07 ci: Set --ansi in test_runner (MarcoFalke)
fa27c55b05 util: Move ResolveErrMsg to util/error (MarcoFalke)
390874c722 qt: Remove menu icons (Wladimir J. van der Laan)
72eaab073b tests: functional watch-only wallet tests (William Casarin)
72ffbdc579 doc: add release note for include_watchonly default changes (William Casarin)
003a3c73c0 rpcwallet: document include_watchonly default for watchonly wallets (William Casarin)
a50d9e6c0b rpcwallet: default include_watchonly to true for watchonly wallets (William Casarin)
6576a8765f doc: Improve versionbits.h documentation (Antoine Riard)
f9d40ce7eb Fix spelling error chache -> cache. (Nils Loewen)
e78aaf41f4 [docs] Add release notes for burying bip 9 soft fork deployments (John Newbery)
8319e738f9 [tests] Add coverage for the content of getblockchaininfo.softforks (James O'Beirne)
0328dcdcfc [Consensus] Bury segwit deployment (John Newbery)
1c93b9b31c [Consensus] Bury CSV deployment height (John Newbery)
3862e473f0 [rpc] Tidy up reporting of buried and ongoing softforks (John Newbery)
faeacf3269 ci: Add note that this assumes a fresh git clone (MarcoFalke)
fa6cbdc3c9 ci: Use ./ci/ on non-travis host (MarcoFalke)
fa31bc35eb ci: Remove dependence on travis, use it as fallback env (MarcoFalke)
fa0aac0f43 ci: Add retry (MarcoFalke)
fafe78f6ae ci: Rename .travis/ to ./ci/ (MarcoFalke)
582d2cd747 Cover UTXO set access with lock annotations (James O'Beirne)
5693530685 refactor: have CCoins* data managed under CChainState (James O'Beirne)
fae6ab6aed refactor: pcoinsTip -> CChainState::CoinsTip() (James O'Beirne)
fa3c6575ca lint: Add false positive to python dead code linter (MarcoFalke)
fa25668e1c test: Test p2sh-witness and bech32 in wallet_import_rescan (MarcoFalke)
fa79af2989 test: Replace fragile "rng" with call to random() (MarcoFalke)
fac3dcf7d0 test: Generate one block for each send in wallet_import_rescan (MarcoFalke)
37f2784952 tests: Use colors and dots in test_runner.py output only if standard output is a terminal -- allows for using the test runner output as input to other programs (practicalswift)
a2714a5c69 Give QApplication dummy arguments (Andrew Chow)
36f7697cf6 doc: Fix typos in COPYRIGHT (Chuf)
d6ac25bdd9 autoconf: Sane --enable-debug defaults. (Carl Dong)
c5b404e8f1 Add functional tests for flexible whitebind/list (nicolas.dorier)
d541fa3918 Replace the use of fWhitelisted by permission checks (nicolas.dorier)
ecd5cf7ea4 Do not disconnect peer for asking mempool if it has NO_BAN permission (nicolas.dorier)
e5b26deaaa Make whitebind/whitelist permissions more flexible (nicolas.dorier)
7cd069d8ef Add test for AddTimeData (Martin Zumsande)
fa4ee0ddf1 build: Remove unused src/obj-test folder (MarcoFalke)
14f7eec3bd rpc: Fix getblocktemplate CLI example (#16594) (Emil Engler)
396385657c descriptor: fix missed m_script_arg arg renaming in #14934 (fanquake)
2e68ffaf20 [doc] descriptor: explain GetPubKey() usage with cached public key (Sjors Provoost)
2290269759 scripted-diff: rename DescriptorImpl m_script_arg to m_subdescriptor_arg (Sjors Provoost)
862cbf3966 Add missing contributor to release notes (MeshCollider)
3303124960 build: disable libxcb extensions (fanquake)
fa1e9c68a7 travis: Bump timeout from 50 minutes to 90 (MarcoFalke)
afc0966d72 Moved and renamed hash256 from util.py to zmq_interface.py (Elichai Turkel)
fa7789f731 doc: Mention other ways to conserve memory on compilation (MarcoFalke)
0481fa2584 util: refactor upper/lowercase functions (Karl-Johan Alm)
c8b53c3bea [wallet] Restore confirmed/conflicted tx check in SubmitMemoryPoolAndRelay() (John Newbery)
214c4ecb9a [wallet] restore coinbase check in SubmitMemoryPoolAndRelay() (John Newbery)
9063911017 sipsorcery gitian key. (Aaron Clauson)
6285a318d7 Remove redundant WalletController::addWallet slot (Hennadii Stepanov)
1f26328c1b doc: Update Markdown syntax for bdb packages (Emil Engler)
bf72b8a555 build: disable libsecp256k1 benchmarks (fanquake)
b7b9f6e4ce Remove p2pEnabled from Chain interface (Antoine Riard)
61c5c64b31 doc: Add historical release notes for 0.18.1 (Wladimir J. van der Laan)
2f37163caf test: only include and init openSSL where it's actually used (fanquake)
fa76285fdd test: Explain why -whitelist is used in feature_fee_estimation (MarcoFalke)
faff85a69a test: Format feature_fee_estimation with pep8 (MarcoFalke)
b2ea20d330 doc: Fix grammar and punctuation in developer notes (Kristian Kramer)
fa5a4cd813 gui: Generate bech32 addresses by default (take 2, fixup) (MarcoFalke)
fa8489a155 test: Add test for BIP30 duplicate tx (MarcoFalke)
77770d95e2 test: Properly serialize BIP34 coinbase height (MarcoFalke)
faf36838bd test: Avoid hardcoding the chain name in combine_logs (MarcoFalke)
fa8a1d7ba3 test: Adapt test framework for chains other than "regtest" (MarcoFalke)
68f546635d test: Fix “local variable 'e' is assigned to but never used” (Ben Woosley)
fab3658356 [qa] Test that getdata requests work as expected (Suhas Daftuar)
fa883ab35a net: Use mockable time for tx download (MarcoFalke)
05fdb97df4 [doc] Update and extend benchmarking.md (Antoine Riard)
fa566b2601 test: Add missing sync_blocks to feature_pruning (MarcoFalke)
0a4e4a05ea [build] .gitignore add Qt Creator Makefile.am.user (Peter Bushnell)
e6f649cb2c test: Make tests arg type specific (Hennadii Stepanov)
b70cc5d733 Revamp option negating policy (Hennadii Stepanov)
db08edb303 Replace IsArgKnown() with FlagsOfKnownArg() (Hennadii Stepanov)
dde80c272a Use ArgsManager::NETWORK_ONLY flag (Hennadii Stepanov)
9a12733508 Remove unused m_debug_only member from Arg struct (Hennadii Stepanov)
fb4b9f9e3b scripted-diff: Use ArgsManager::DEBUG_ONLY flag (Hennadii Stepanov)
1b4b9422ca scripted-diff: Use Flags enum in AddArg() (Hennadii Stepanov)
265c1b58d8 Add Flags enum to ArgsManager (Hennadii Stepanov)
e0d187dfeb Refactor InterpretNegatedOption() function (Hennadii Stepanov)
e0e18a1017 refactoring: Check IsArgKnown() early (Hennadii Stepanov)
fb62f128bb Tidy up BroadcastTransaction() (John Newbery)
b8eecf8e79 Remove unused submitToMemoryPool and relayTransactions Chain interfaces (Antoine Riard)
8753f5652b Remove duplicate checks in SubmitMemoryPoolAndRelay (Antoine Riard)
611291c198 Introduce CWalletTx::SubmitMemoryPoolAndRelay (Antoine Riard)
8c8aa19b4b Add BroadcastTransaction utility usage in Chain interface (Antoine Riard)
d6b3640ac7 [test] walletcreatefundedpsbt: check RBF is disabled when -walletrbf=0 (Sjors Provoost)
9ed062b568 [doc] rpc: remove "fallback to" from RBF default help (Sjors Provoost)
4fcb698bc2 [rpc] walletcreatefundedpsbt: use wallet default RBF (Sjors Provoost)
fa36aa4922 Test: Set -acceptnonstdtxn in feature_fee_estimation (MarcoFalke)
fa1bb53b0d test: Add -acceptnonstdtxn to self.extra_args[3] (MarcoFalke)
fa8a823169 test: Bump rpc_timeout in feature_dbcrash (MarcoFalke)
7a0c224289 Suppress output in test_bitcoin for expected errors (Gert-Jaap Glasbergen)
fac2e6a604 test: Fail early on disconnect in mininode.wait_for_* (MarcoFalke)
b078067b9c gui: Remove unused RPCConsole::tabFocus (João Barbosa)
c5d3787367 Allow createwallet to take empty passwords to make unencrypted wallets (Andrew Chow)
0b1f4b3c66 wallet: Drop unused OldKey (João Barbosa)
fa2f991fa2 doc: add note on precedence of options in bitcoin.conf (Torkel Rogstad)
faf8318c55 test: Split fundrawtx test into subtests (MarcoFalke)
fa6fba3bc8 test: Make local symbols in run_test members (MarcoFalke)
9bc8b28c1d refactor : use RelayTransaction in BroadcastTransaction utility (Antoine Riard)
73b692b531 doc: Add release note for the deprecated totalFee option of bumpfee (João Barbosa)
0646ca5ea2 Changes the verbosity of msbuild from quiet to normal in the appveyor script. Increasing the verbosity helps to identify the cause of build errors which is the main purpose of the appveyor script. (Aaron Clauson)
80ba4241a6 extract min & max depth onto coin control (Amiti Uttarwar)
05b56d1c93 [wallet] Remove CMerkleTx serialization logic (John Newbery)
783a76f23b [wallet] Flatten CWalletTx class hierarchy (John Newbery)
b3a9d179f2 [wallet] Move CMerkleTx functions into CWalletTx (John Newbery)
0000ff0aa7 txmempool: Remove unused default value MemPoolRemovalReason::UNKNOWN (MarcoFalke)
0c78e49be3 tests: Switch one of the Travis jobs to an unsigned char environment (-funsigned-char) (practicalswift)
29ee4c417d Specify AM_CPPFLAGS for ZMQ. (Daniel Kraft)
e0324c3768 Updated python command in readme so it will work on systems that have both python2 and 3 installed. (Aaron Clauson)
914923d125 Add setting as known type (Peter Bushnell)
faa88d0b5c doc: update labels in CONTRIBUTING.md (MarcoFalke)
fa6f22bf44 wallet: Rename CWalletKey to OldKey (MarcoFalke)
fa6dc7fa5f wallet: Enumerate walletdb keys (MarcoFalke)
62d3f5057f qa: fix deprecated log.warn in feature_dbcrash test (Jon Atack)
42a5e912ee [mempool] log correct messages when CPFP fails (John Newbery)
4057b7acb7 wallet: Recognize -disablewallet option early (Hennadii Stepanov)
59cb722fd0 Update configure to reject unsafe miniUPnPc API ver (Hennadii Stepanov)
ab2190557e doc: Add release notes for 15993 (Hennadii Stepanov)
02709e9560 Align formatting with clang-format (Hennadii Stepanov)
91a1b85083 Use PACKAGE_NAME in UPnP description (Hennadii Stepanov)
9f76e45b9d Drop support of insecure miniUPnPc versions (Hennadii Stepanov)
e967cae8fa Use switch on status in RpcWallet (Fabian Jahr)
ba1f128d6c Return error for ignored passphrase through disable private keys option (Fabian Jahr)
d6649d16b5 Use strong enum for WalletCreationStatus (Fabian Jahr)
3199610ad3 Place out args at the end for CreateWallet (Fabian Jahr)
f509e3b8ce doc: remove line numbers from qt package links (fanquake)
1bb1661a40 doc: fix typo in bitcoin_qt.m4 comment (fanquake)
0aeb98ac1f build: remove jpeg lib check from bitcoin_qt.m4 (fanquake)
98a64bd296 build: disable libjpeg in qt (fanquake)
07e01d6258 rpc: sendrawtransaction unconditionality/privacy note (Jon Atack)
fabfcb5d8e build: Treat -Wswitch as error when --enable-werror (MarcoFalke)
16b3748189 Trivial: add missing space (David A. Harding)
bf3be5297a [qa] Ensure we don't generate a too-big block in p2sh sigops test (Suhas Daftuar)
a33936737f Exclude depends/Makefile in .gitignore (João Barbosa)
35e60e790f Remove ReadVersion and WriteVersion (Andrew Chow)
b3d4f6c961 Log the actual wallet file version (Andrew Chow)
c88e87c3b2 Remove nFileVersion from CWalletScanState (Andrew Chow)
4d94916f0d Get rid of PendingWalletTx class. (Russell Yanofsky)
fa4a605a4c Remove wallet settings from chainparams (MarcoFalke)
2f7eb772f6 Add RPC bumpfee totalFee deprecation test (Jon Atack)
a92d9ce8cf deprecate totalFee argument in bumpfee RPC call (Gregory Sanders)
40ad2f6a58 Have importwallet use ImportPrivKeys and ImportScripts (Andrew Chow)
78941da5ba Optionally allow ImportScripts to set script creation timestamp (Andrew Chow)
94bf156f39 Have importaddress use ImportScripts and ImportScriptPubKeys (Andrew Chow)
a00d1e5ec5 Have importpubkey use CWallet's ImportScriptPubKeys and ImportPubKeys functions (Andrew Chow)
c6a8274247 Have importprivkey use CWallet's ImportPrivKeys, ImportScripts, and ImportScriptPubKeys (Andrew Chow)
fae7a5befd Log when an import is being skipped because we already have it (Andrew Chow)
ab28e31c95 Change ImportScriptPubKeys' internal to apply_label (Andrew Chow)
248e22bbc0 depends: disable unused Qt features (fanquake)
d9ab0ffa38 [qa] Fix race condition in example_test.py (Suhas Daftuar)
77773edf21 doc: Remove downgrading warning in release notes, per 0.18 branch (MarcoFalke)
a47df13471 [qa] Test disconnect block failure -> shutdown (Suhas Daftuar)
4433ed0f73 [validation] Crash if disconnecting a block fails (Suhas Daftuar)
753f7cccce scripted-diff: Make translation bilingual (Hennadii Stepanov)
7c45e14f2f Add bilingual message type (Hennadii Stepanov)
0b86e517ad Refactor out translation.h (Hennadii Stepanov)
c3dfc91032 test: Skip flaky p2p_invalid_messages test on macOS (Fabian Jahr)
fa6f402bde Call node->initError instead of InitError from GUI code (Russell Yanofsky)
fad2502240 init: Use InitError for all errors in bitcoind/qt (MarcoFalke)
0c55d8b581 depends: qt: Patch to remove dep on libX11 (Carl Dong)
222e6cc520 gitignore: Actually pay attention to depends patches (Carl Dong)
65f8da08df symbol-check: Disallow libX11-*.so.* shared libraries (Carl Dong)
924569914e depends: libXext isn't needed by anyone (Carl Dong)
689d3b4a03 build-aux: Remove check for x11-xcb (Carl Dong)
aa53cb7a2f depends: libX11: Make package headers-only (Carl Dong)
9a01ab04e1 depends: qt: Explicitly stop using Xlib/libX11 (Carl Dong)
1ec30b8fbe depends: xproto is only directly needed by libXau (Carl Dong)
4f050b91c7 move-onlyish: move CCoinsViewErrorCatcher out of init.cpp (James O'Beirne)
fa56b21c74 doc: Update bips 35, 37 and 111 status (MarcoFalke)
fa4010e112 travis: Print memory and number of cpus (MarcoFalke)
50cede3f5a [mempool] Allow one extra single-ancestor transaction per package (Matt Corallo)
a52818cc56 net: Make poll in InterruptibleRecv only filter for POLLIN events. poll should block until there is data to be read or the timeout expires. (tecnovert)
5c3c24cf9e test: remove redundant setup in addrman_tests (zenosage)
bead32e31e Add release notes for DEFAULT_BLOOM change (Matt Corallo)
f27309f55c Move DEFAULT_PEERBLOOMFILTERS from validation.h to net_processing.h (Matt Corallo)
5efcb77283 Disable bloom filtering by default. (Matt Corallo)
024ecd7e01 QA: Fix race condition in wallet_encryption test (Jonas Schnelli)
ae311bc036 Fix autostart filenames on Linux (Hennadii Stepanov)
a981e749e6 fix: tor: Call event_base_loopbreak from the event's callback (João Barbosa)
e142ee03e7 doc: describe how to pass wildcard names to test runner (Jon Atack)
6a7a70b8cf test: enable passing wildcards with path to test runner (Jon Atack)
e10e1e8db0 Restrict lifetime of ReserveDestination to CWallet::CreateTransaction (Gregory Sanders)
d9ff862f2d CreateTransaction calls KeepDestination on ReserveDestination before success (Gregory Sanders)
fa89badf88 test: Require standard txs in regtest (MarcoFalke)
fa9b419160 test: Add test that mainnet requires standard txs (MarcoFalke)
fa613ca0a8 chainparams: Remove unused fMineBlocksOnDemand (MarcoFalke)
682a1d0f20 refactoring: remove mapBlockIndex global (James O'Beirne)
55d525ab90 refactoring: make pindexBestInvalid internal to validation.cpp (James O'Beirne)
4ed55dfcd7 refactoring: add block_index_candidates arg to LoadBlockIndex (James O'Beirne)
613c46fe9e refactoring: move block metadata structures into BlockManager (James O'Beirne)
1a62425260 qa: Add --filter option to test_runner.py (João Barbosa)
fa0d0ff6e1 Remove unused bits from the service flags enum (MarcoFalke)
c7f6ce74d3 docs: Improve netbase comments (Carl Dong)
8f250ab788 TEST: Replace hard-coded hex tx with classes (Steven Roose)
e263a343d4 test: rpc_users: Make variable names more clear. (Carl Dong)
830dc2dd0f test: rpc_users: Also test rpcauth.py with specified password. (Carl Dong)
c73d871799 test: rpc_users: Add function for testing auth params. (Carl Dong)
604e2a997f test: rpc_users: Add function for auth'd requests. (Carl Dong)
751549b52a contrib: guix: Additional clarifications re: substitutes (Carl Dong)
cd3e947f50 contrib: guix: Various improvements. (Carl Dong)
8dff3e48a9 contrib: guix: Clarify SOURCE_DATE_EPOCH. (Carl Dong)
3e80ec3ea9 contrib: Add deterministic Guix builds. (Carl Dong)
93ce4a0b6f Move WatchOnly stuff from SigningProvider to CWallet (Andrew Chow)
8f5b81e6ed Remove CCryptoKeyStore and move all of it's functionality into CWallet (Andrew Chow)
37a79a4fcc Move various SigningProviders to signingprovider.{cpp,h} (Andrew Chow)
16f8096e91 Move KeyOriginInfo to its own header file (Andrew Chow)
d9becff4e1 scripted-diff: rename CBasicKeyStore to FillableSigningProvider (Andrew Chow)
a913e3f2fb Move HaveKey static function from keystore to rpcwallet where it is used (Andrew Chow)
c7797ec655 Remove CKeyStore and squash into CBasicKeyStore (Andrew Chow)
1b699a5083 Add HaveKey and HaveCScript to SigningProvider (Andrew Chow)
bb326add9f Add ChaCha20Poly1305@Bitcoin AEAD benchmark (Jonas Schnelli)
99aea045d6 Add ChaCha20Poly1305@Bitcoin tests (Jonas Schnelli)
af5d1b5f4a Add ChaCha20Poly1305@Bitcoin AEAD implementation (Jonas Schnelli)
1aecdf2063 Move wallet creation out of the createwallet rpc into its own function (Andrew Chow)
96b6dd468a Remove redundant pre-TopUpKeypool checks (Gregory Sanders)
0d101a340c test: Add test for maxtxfee option (MarcoFalke)
177550101b wallet: Remove unreachable code in CreateTransaction (MarcoFalke)
5c1b9714cb wallet: Fix -maxtxfee check by moving it to CWallet::CreateTransaction (João Barbosa)
0512f0521a depends: expat 2.2.7 (fanquake)
84edfc72e5 Update doc and CI config (qmma)
48bcb2ac24 Disable other targets when enable-fuzz is set (qmma)
8e7f930828 Add GetNewChangeDestination for getting new change Destinations (Andrew Chow)
33d13edd2b Replace CReserveKey with ReserveDestinatoin (Andrew Chow)
172213be5b Add GetNewDestination to CWallet to fetch new destinations (Andrew Chow)
b6fb617aaa rpc: switch to using RPCHelpMan.Check() (Karl-Johan Alm)
c7a9fc234f Make the RPCHelpMan aware of JSONRPCRequest and add Check() helper (Karl-Johan Alm)
5c5e32bbe3 rpc: migrate JSONRPCRequest functionality into request.cpp (Karl-Johan Alm)
0ab8ba1ac6 rpc: fix RPC help requirements for getblocktemplate (Karl-Johan Alm)
64fee48944 qt: Assert QMetaObject::invokeMethod result (João Barbosa)
f27bd96b5f gui: Fix missing qRegisterMetaType(WalletModel*) (João Barbosa)
e1a55690e6 Delete error-prone CScript constructor (Gregory Sanders)
c4606b8432 Add Travis check for single parameter constructors not marked "explicit" (practicalswift)
91509ffe24 bench: Benchmark blockToJSON (Kirill Fomichev)
fa64b947bb util: No translation of `Bitcoin Core` in the copyright (MarcoFalke)
fab85208f6 qt: Run «make translate» in ./src/ (MarcoFalke)
fabe87d2c9 scripted-diff: Avoid passing PACKAGE_NAME for translation (MarcoFalke)
fa5e9f157e build: Stop translating PACKAGE_NAME (MarcoFalke)
fa90fe6440 refactor: Rename getWallets to getOpenWallets in WalletController (João Barbosa)
224eb9534a gui: Sort wallets in open wallet menu (João Barbosa)
7195fa792f test: Tool wallet test coverage for unexpected writes to wallet (Jon Atack)
3bf2b3a37b test: Split tool_wallet.py test into subtests (Jon Atack)
1eb13f09a9 test: Add log messages to test/functional/tool_wallet.py (Jon Atack)
e8fabd9253 build: prune dbus from depends (fanquake)
a30bd09454 Add logpath description for getrpcinfo (Gregory Sanders)
84ad4d2b9d doc: Include static members in Doxygen (Carl Dong)
64b27c46e4 docs: add reduce-memory.md (fanquake)
d003110351 Remove unused guard (Hennadii Stepanov)
976b034b13 [build]: use #if HAVE_SYSTEM instead of defined(HAVE_SYSTEM) (Sjors Provoost)
91cc18f602 [docs] Add release notes for PR 15427 (John Newbery)
3b11420b3c [RPC] add new utxoupdatepsbt arguments to the CRPCCommand and CPRCConvertParam tables (John Newbery)
f874e14cd3 [build]: check std::system for -[alert|block|wallet]notify (Sjors Provoost)
cc3ad56ff2 [build] MSVC: set HAVE_SYSTEM for desktop apps (Sjors Provoost)
c1c91bb78d [build] detect std::system or ::wsystem (Sjors Provoost)
08c721dab2 [MSVC] Copy build output to src/ automatically after build (nicolas.dorier)
1ac454a384 Enable ShellCheck rules (Hennadii Stepanov)
88fd556a96 Use placeholder instead of key expiration date (Hennadii Stepanov)
faf6caf4da test: Add tests for getblockchaininfo.softforks (MarcoFalke)
3d60a03a7c bench: Move generated data to a dedicated translation unit (João Barbosa)
fab0c820fa rpc: Clarify that block count means height excl genesis (MarcoFalke)
8a6810d0d2 Add a 'logpath' field to getrpcinfo (darosior)
0f459d868d fix an undefined behavior in uint::SetHex (Kaz Wesley)
faa1e0fb17 qt: test: Create at most one testing setup (MarcoFalke)
f53a70ce95 Improve documentation of memory_cleanse() (Tim Ruffing)
cac30a436c Clean up logic in memory_cleanse() for MSVC (Tim Ruffing)
3b9bf0eb0e rpc: Allow shutdown while in generateblocks (Patrick Strateman)
01174596e6 signrawtransactionwithkey: report error when missing redeemScript/witnessScript param (Anthony Towns)
db26e8e228 Add antialiasing to traffic graph widget (Josu Goñi)
ca11606858 Fix: "Bitcoin Core" -> "The Bitcoin Core" (Hennadii Stepanov)
621463d7df Drop no-longer-relevant copyright holder name (Hennadii Stepanov)
01fafe55a1 Include Objective-C source files (Hennadii Stepanov)
26fe9b9909 Add support for descriptors to utxoupdatepsbt (Pieter Wuille)
3135c1a2d2 Abstract out UpdatePSBTOutput from FillPSBT (Pieter Wuille)
fb90ec3c33 Abstract out EvalDescriptorStringOrObject from scantxoutset (Pieter Wuille)
eaf4f88734 Abstract out IsSegWitOutput from utxoupdatepsbt (Pieter Wuille)
fa2b083c3f [test] Add test to check mempool consistency in case of reorgs (MarcoFalke)
fabeb1f613 validation: Add missing mempool locks (MarcoFalke)
fa0c9dbf91 txpool: Make nTransactionsUpdated atomic (MarcoFalke)
276972cb95 wallet_bumpfee.py: Make sure coin selection produces change (Gregory Sanders)
d9753383b9 addrdb: Remove temporary files created in SerializeFileDB. Fixes non-determinism in unit tests. (practicalswift)
806b0052c3 [wallet] abort when attempting to fund a transaction above maxtxfee (Sjors Provoost)
c83f0ac9b2 [MSVC] allow user level project customization (nicolas.dorier)
63d0a079e0 build: dont compile rapidcheck with -Wall (fanquake)
fa815255c7 test: Add missing sync_all to wallet_balance test (MarcoFalke)
90b5c4eefb doc: Fix broken link in doc/build-osx.md (Jon Atack)
dbd137a4ea Improve build-osx formatting (Giulio Lombardo)
819c5ddad3 [MSVC] Enable Fuzz for functional tests (nicolas.dorier)
e47e79377f [MSVC]: Create the config.ini as part of bitcoind build (nicolas.dorier)
fa69c3e6ca util: Explain why the path is cached (MarcoFalke)
9a841696c1 tests: Reduce compilation time and unneccessary recompiles by removing unused includes in tests (practicalswift)
f466c4ce84 Add missing ECC_Stop(); in GUI rpcnestedtests.cpp (Jonas Schnelli)
9824a0d6e9 Remove extra CBlockIndex declaration (RJ Rybarczyk)
d8bd97d5ee Fix GCC 7.4.0 warning (Hennadii Stepanov)
f724f31401 Make AbortNode() aware of MSG_NOPREFIX flag (Hennadii Stepanov)
96fd4ee02f Add MSG_NOPREFIX flag for user messages (Hennadii Stepanov)
f0641f274f Prepend the error/warning prefix for GUI messages (Hennadii Stepanov)
fabc57e07d test: Log to debug.log in all tests (MarcoFalke)
fa4a04a5a9 test: use common setup in gui tests (MarcoFalke)
fad3d2a624 test: Create data dir in BasicTestingSetup (MarcoFalke)
30ea931dee depends: xtrans: Configure flags cleanup. (Carl Dong)
dddd9270f8 net: Document what happens to getdata of unknonw type (MarcoFalke)
0e01e4522e devtools: Fetch and display ACKs at sign-off time in github-merge (Wladimir J. van der Laan)
099e4b9ad3 Set AA_EnableHighDpiScaling attribute early (Hennadii Stepanov)
a2aabfb749 Use qInfo() if no error occurs (Hennadii Stepanov)
5224be5a33 gui: Fix open wallet menu initialization order (João Barbosa)
71d0344cf2 docs: release note wording (Karl-Johan Alm)
3d2ff37913 wallet/rpc: use static help text (Karl-Johan Alm)
53c3c1ea9e wallet/rpc/getbalances: add entry for 'mine.used' balance in results (Karl-Johan Alm)
5a88ea7c67 doc: remove orphaned header in developer notes (Jon Atack)
e61de6306f Change ismine to take a CWallet instead of CKeyStore (Andrew Chow)
7c611e2000 Move ismine to wallet module (Andrew Chow)
a49503402b Make and get the multisig redeemscript and destination in one function instead of two (Andrew Chow)
eb832cd3b4 MSVC: Fix error in debug mode (Fix#16245) (nicolas.dorier)
9218ce8d48 Failing functional tests stop lcov (Aseem Sood)
fa7dd88b71 test: Add test for unknown args (MarcoFalke)
fa00326158 ci: Run extended tests (MarcoFalke)
e91f0a7af2 doc: Remove travis badge from readme (MarcoFalke)
4971be76a7 docs: add rapidcheck to vcpkg install list (fanquake)
750d1bc7df Cleaned up and consolidated msvc build files to allow faster builds and easier migration to vs2019. (Aaron Clauson)
5ebc6b0eb2 bitcoind: update -avoidpartialspends description to account for auto-enable for avoid_reuse wallets (Karl-Johan Alm)
ada258f8c8 doc: release notes for avoid_reuse (Karl-Johan Alm)
27669551da wallet: enable avoid_partial_spends by default if avoid_reuse is set (Karl-Johan Alm)
8f2e208f7c test: add test for avoidreuse feature (Karl-Johan Alm)
0bdfbd34cf wallet/rpc: add 'avoid_reuse' option to RPC commands (Karl-Johan Alm)
f904723e0d wallet/rpc: add setwalletflag RPC and MUTABLE_WALLET_FLAGS (Karl-Johan Alm)
8247a0da3a wallet: enable avoid_reuse feature (Karl-Johan Alm)
eec15662fa wallet: avoid reuse flags (Karl-Johan Alm)
58928098c2 wallet: make IsWalletFlagSet() const (Karl-Johan Alm)
129a5bafd9 wallet: rename g_known_wallet_flags constant to KNOWN_WALLET_FLAGS (Karl-Johan Alm)
fa410f67aa test: Suppress false positive leak in secure_allocator<RNGState> (MarcoFalke)
fa35c4239f test: Log output even if fuzzer failed (MarcoFalke)
0959d37e3e Don't use global (external) symbols for symbols that are used in only one translation unit (practicalswift)
faa2a47cd7 logging: Add threadsafety comments (MarcoFalke)
0b282f9b00 Log early messages with -printtoconsole (Anthony Towns)
412987430c Replace OpenDebugLog() with StartLogging() (Anthony Towns)
8a2656702b torcontrol: Use the default/standard network port for Tor hidden services, even if the internal port is set differently (Luke Dashjr)
86b47fa741 speed up Unserialize_impl for prevector (Akio Nakamura)
8053e5cdad Remove -mempoolreplacement to prevent needless block prop slowness. (Matt Corallo)
fa499b5f02 rpc: bugfix: Properly use iswitness in converttopsbt (MarcoFalke)
fa5c5cd141 rpc: Switch touched RPCs to IsValidNumArgs (MarcoFalke)
f8995807e4 tests: Make coins_tests/updatecoins_simulation_test deterministic (practicalswift)
71fd628ada Add example 2nd arg to signrawtransactionwithkey (Chris Moore)
fa1d766717 tests: Make msg_block a witness block (MarcoFalke)
fa52eb55c9 test: Remove True argument to CBlock::serialize (MarcoFalke)
c59e3a3261 getrawtransaction: inform about blockhash argument when lookup fails (darosior)
fa8f195195 Replace remaining fprintf with tfm::format manually (MarcoFalke)
fac03ec43a scripted-diff: Replace fprintf with tfm::format (MarcoFalke)
fa72a64b90 tinyformat: Add doc to Bitcoin Core specific strprintf (MarcoFalke)
fa55dd89cb doc: Add release notes for 14897 & 15834 (MarcoFalke)
fac5ddfc57 doc: Rework section on ACK (MarcoFalke)
b748bf6f50 Fix spelling errors identified by codespell 1.15.0 (Ben Woosley)
fa4bc4ebf9 doc: Remove explicit mention of version from SECURITY.md (MarcoFalke)
88884c6f75 travis: Use absolute paths for cache dirs (MarcoFalke)
fae9d54abc travis: Fix caching issues (MarcoFalke)
067fba5631 devtools: Always use unabbreviated commit IDs in github-merge.py (Wladimir J. van der Laan)
f402012ccf fixup: Fix prunning test (João Barbosa)
97f517dd85 Fix RPC/pruneblockchain returned prune height (Jonas Schnelli)
75485ef096 gui: Enable open wallet menu on setWalletController (João Barbosa)
308b76732f Fix bug around transaction requests (Suhas Daftuar)
f635a3ba11 Expire old entries from the in-flight tx map (Suhas Daftuar)
e32e08407e Remove NOTFOUND transactions from in-flight data structures (Suhas Daftuar)
23163b7593 Add an explicit memory bound to m_tx_process_time (Suhas Daftuar)
218697b645 Improve NOTFOUND comment (Suhas Daftuar)
993aa414d3 scripted-diff: gitian: Use REFERENCE_DATETIME directly. (Carl Dong)
c061be1e2f tests: Mark unit test blockfilter_index_initial_sync as non-deterministic (practicalswift)
d7c0542777 doc: update release process with SECURITY.md (Jon Atack)
e4e2b28cf1 doc: clarify support in SECURITY.md (Jon Atack)
8081927c33 scripts: add key for fanquake to trusted keys list (fanquake)
53b7de629d Add test for dumping the private key imported from descriptor (MeshCollider)
2857bc4a64 Extend importmulti descriptor tests (MeshCollider)
81a884bbd0 Import private keys from descriptor with importmulti if provided (MeshCollider)
a4d1bd1a29 Add private key derivation functions to descriptors (MeshCollider)
bc8863b819 depends: remove usage of TAR_OPTIONS (fanquake)
3ff1f2a319 build: remove export GZIP from gitian descriptors (fanquake)
67f4e9c522 Include core_io.h from core_read.cpp (practicalswift)
eca9767673 Make reasoning about dependencies easier by not including unused dependencies (practicalswift)
2620e24b83 [depends] boost: update to 1.70 (Sjors Provoost)
78f9b5160f Do not show list for the only recipient. (Hennadii Stepanov)
2ee756f041 Show recipient list as detailedText of QMessageBox (Hennadii Stepanov)
654e419549 Make SendConfirmationDialog fully fledged (Hennadii Stepanov)
a352d2ae5f Don't GPG sign intermediate commits with github-merge tool (Steven Roose)
8be3f30633 netaddress: Update CNetAddr for ORCHIDv2 (Carl Dong)
8541cbea29 depends: libX*: --disable-malloc0returnsnull in conf (Carl Dong)
0e752637a2 depends: libXext: Bump to 1.3.3 to fix _XEatDataWords (Carl Dong)
683b7d7a3f depends: Purge libtool archives (Carl Dong)
14209286df depends: Build secondary deps statically. (Carl Dong)
fdd7fa19a9 docs: create security policy (Neha Narula)
58e291cfad Add test for GCC bug 90348 (Pieter Wuille)
7860c98bd5 wallet: do not encrypt wallets with disabled private keys (whythat)
403e677c9e refactoring: IsInitialBlockDownload -> CChainState (James O'Beirne)
3ccbc376dd refactoring: FlushStateToDisk -> CChainState (James O'Beirne)
4d6688603b refactoring: introduce ChainstateActive() (James O'Beirne)
d7c97edeea move-only: make the CChainState interface public (James O'Beirne)
6f7f141f77 Add riscv64 to outputs list in release-process.md (JeremyRand)
3c5254a820 Limit Python linting to files in the repo (practicalswift)
6e6494b3fb qt: fix opening bitcoin.conf via Preferences on macOS; see #15409 (shannon1916)
36b0a2f2a6 Add vertical spacer (Josu Goñi)
2d8ad2f997 gui: Enable console line edit on setClientModel (João Barbosa)
d2ae6be80f gui: Set progressDialog to nullptr (João Barbosa)
00fade007c contrib: use newer config.guess & config.sub in install_db4.sh (fanquake)
0830d40456 docs: add release note for 14954 (fanquake)
54245985fb Squashed 'src/secp256k1/' changes from 0b70241850..b19c000063 (Pieter Wuille)
5fbc67e108 Squashed 'src/secp256k1/' changes from 43dd1f4fe7..0129b77767 (Andrew Poelstra)
fa013664ae util: Add type safe GetTime (MarcoFalke)
c995c870aa depends: add ability to skip building zeromq (fanquake)
fadbc5d895 mempool: remove unused magic number from consistency check (Gregory Sanders)
d5dc66e280 doc: fix/improve analyzepsbt in doc/psbt.md (Jon Atack)
d595b4aae9 gui: move coin control OK to the right (fanquake)
0db94e55dc wallet: Pass WalletBatch to CWallet::UnsetWalletFlag (João Barbosa)
6cb888b37d Apply the batch treatment to CWallet::SetAddressBook via ImportScriptPubKeys (Ben Woosley)
6154a09e01 Move some of ProcessImport into CWallet::Import* (Ben Woosley)
ccb26cf347 Batch writes for importmulti (Andrew Chow)
d6576e349e Have WalletBatch automatically flush every 1000 updates (Andrew Chow)
366fe0be0b Add AddWatchOnlyWithDB, AddKeyOriginWithDB, AddCScriptWithDB functions (Andrew Chow)
97dce72261 contrib: add curl as a required program in gitian-build.py (fanquake)
ae7faf20d5 Exceptions should be caught by reference, not by value. (Kristaps Kaupe)
fb434159d1 Remove global symbols: Avoid using the global namespace if possible (practicalswift)
480e3415d7 configure: Add flag for enabling thread_local. (Carl Dong)
fa47330397 test: Speed up cache creation (MarcoFalke)
fa6ad7a5ec test: Bump MAX_NODES to 12 (MarcoFalke)
0784af16ef remove parameters -addresstype=legacy in rpc_rawtransaction test (LongShao007)
a65dafa8f1 replace tx hash with txid in test rawtransaction (LongShao007)
8afca323e3 doc: add bitcoin_config.h PACKAGE updates to release process (Jon Atack)
3ee28c506d build: bump bitcoin_config.h packages to v0.18 (Jon Atack)
9f85e9cb3d scripted-diff: Rename LockAnnotation to LockAssertion (practicalswift)
de9b5dbca3 Make sure the compile-time locking promises given via LockAnnotation:s hold also in practice at runtime (ifdef DEBUG_LOCKORDER) (practicalswift)
3a809446b3 Move LockAnnotation to make it reflect the truth (practicalswift)
cc2588579c Move LockAnnotation from threadsafety.h (imported code) to sync.h (our code) (practicalswift)
e23809a05b [rpc] deriveaddresses: Correct descriptor checksum in RPCExamples (Chris Capobianco)
bb41e632ca wallet_balance.py: Prevent edge cases (Steven Roose)
be4efb165a rpc: Mention getwalletinfo where a rescan is triggered (João Barbosa)
df9e15f092 refactor: Improve CRollingBloomFilter::reset by using std::fill (João Barbosa)
d2dbc7da26 bench: Add benchmark for CRollingBloomFilter::reset (João Barbosa)
1609809fb2 validation: Hold cs_main when reading chainActive in RewindBlockIndex (practicalswift)
d8bc47fde4 depends: switch to secure download of all dependencies (Ulrich Kempken)
df0e97ccb1 RPC: Hint for importmulti in help output of importpubkey and importaddress (Kristaps Kaupe)
2c448d6bc7 parameterize hard coded numbers referring to miner conf window (Jordan Baczuk)
e0eae1b4a4 Make --setup command independent (Hennadii Stepanov)
0f22a0cf2f Fix gitian-build.py --verify option (Hennadii Stepanov)
4c56a798c0 Set/unset USE_LXC, USE_VBOX, USE_DOCKER explicitly (Hennadii Stepanov)
cbbd98863b Fix Docker related issues for gitian-build.py (Hennadii Stepanov)
316b8b2339 Filter IPv6 by ASN (Emil)
fa2b52af32 Disallow extended encoding for non-witness transactions (take 3) (MarcoFalke)
4de3c15671 depends: add patch to common dependencies (fanquake)
0b09a57aec Give WalletModel::UnlockContext move semantics (Pieter Wuille)
af5fa82b67 Allow quicker shutdowns during LoadBlockIndex() (Jonas Schnelli)
c3ef63a52f Show loaded wallets as disabled in open menu instead of nothing (MeshCollider)
3cb9ce85d0 Document strenghtening (Pieter Wuille)
1d207bc46f Add hash strengthening to the RNG (Pieter Wuille)
feed98e189 Ensure repos are up-to-date (Hennadii Stepanov)
faede747b3 doc: Explain how to pass in non-fundamental types into functions (MarcoFalke)
fa86c8aec6 init: Remove dead code in LoadChainTip (MarcoFalke)
9402ef0739 Remove temporary method assumeLocked(). Remove LockingStateImpl. Remove redundant cs_main locks. (practicalswift)
593a8e8a2c wallet: Use chain.lock() instead of temporary chain.assumeLocked() (practicalswift)
41ab2a8924 fix static_assert for macro HAVE_THREAD_LOCAL (orient)
01971da9bd docs: Add productivity notes for "dummy rebases" (Carl Dong)
8794a4b3ae QA: add test for HKDF HMAC_SHA256 L32 (Jonas Schnelli)
551d489416 Add HKDF HMAC_SHA256 L=32 implementations (Jonas Schnelli)
3b64f852e4 QA: add test for CKey::Negate() (Jonas Schnelli)
463921bb64 CKey: add method to negate the key (Jonas Schnelli)
fa8ced32a6 doc: Mention blocksonly in reduce-traffic.md, unhide option (MarcoFalke)
fa320de79f test: Add test for p2p_blocksonly (MarcoFalke)
fa3872e7b4 test: Format predicate source as multiline on error (MarcoFalke)
fa1dce7329 net: Rename ::fRelayTxes to ::g_relay_txes (MarcoFalke)
662d1171d9 Add option to create an encrypted wallet (Andrew Chow)
fa7e311e16 [doc] rpcwallet: Only fail rescan when blocks have been pruned (MarcoFalke)
aaaa57c2aa scripted-diff: Bump copyright headers in wallet (MarcoFalke)
faf3729242 wallet: Only fail rescan when blocks have actually been pruned (MarcoFalke)
f3b90f2e05 Run all lint scripts (Julian Fleischer)
c01c065b9d Do not construct out-of-bound pointers in SHA512/SHA1/RIPEMD160 code (Pieter Wuille)
1b05dff080 Fix portability issue with pthreads (grim-trigger)
faf38bc056 build with -fstack-reuse=none (MarcoFalke)
fad0ce59e9 tests: Fail if RPC has been added without tests (MarcoFalke)
2d5cf4c41d rpc: Speedup getrawmempool when verbose=true (João Barbosa)
f1a77b0c51 [docs] Add doxygen comment for CReserveKey (John Newbery)
37796b2dd4 [docs] Add doxygen comment for CKeyPool (John Newbery)
ef2d515af3 [wallet] move-only: move CReserveKey to be next to CKeyPool (John Newbery)
a407b6fdf3 [tests] Make random seed logged and settable (John Newbery)
f6bb11fd37 Add test for ArgsManager::GetChainName (Russell Yanofsky)
4b331159df Add unit test NextString, ForEachNoDup functions (Russell Yanofsky)
05bfee3451 util_SettingsMerge test cleanup (Russell Yanofsky)
fa3c651143 [refactor] interfaces: Add missing LockAnnotation for cs_main (MarcoFalke)
ccc27bdcd2 doc: Clarify -blocksdir usage (Daniel McNally)
bd63c1ed12 [docs] Update release-notes.md (Jon Atack)
96d32a7bc0 [docs] Update release-process.md (Jon Atack)
d20d756752 rpc: faster getblockstats using BlockUndo data (Felix Weis)
510c6532ba Extract ParseDescriptorRange (Ben Woosley)
5c04814b2d Move non-linux source tarball to bitcoin-binaries (Hennadii Stepanov)
2dfe275171 Add ChaCha20 bench (Jonas Schnelli)
2bc2b8b49a Add ChaCha20 encryption option (XOR) (Jonas Schnelli)
fa193dc8e6 doc: Remove win32 from the release process (MarcoFalke)
faf666f814 Remove Windows 32 bit build (MarcoFalke)
78e407ad0c GetKeyBirthTimes should return key ids, not destinations (Gregory Sanders)
70946e7fee Replace CScriptID and CKeyID in CTxDestination with dedicated types (Gregory Sanders)
f4a230b627 docs: Clarify PR guidelines w/re documentation (Carl Dong)
beda0dae95 Upgrade gitian image before signing (Hennadii Stepanov)
e0bb279999 Doc: remove text about txes always relayed from -whitelist (David A. Harding)
124ea38e39 change default Python block serialization to witness (Gregory Sanders)
62d50ef308 Add LOCKS_EXCLUDED(cs_main) to LimitValidationInterfaceQueue(...) which does AssertLockNotHeld(cs_main) (practicalswift)
a3592c91a2 .gitignore: Don't ignore depends patches (Carl Dong)
a0a222eec0 Replace deprecated Boost Filesystem function (Hennadii Stepanov)
4f65af97b4 Remove dead code for walletFile check (Hennadii Stepanov)
486c1eea86 refactoring: remove unused chainActive (James O'Beirne)
631940aab2 scripted-diff: replace chainActive -> ::ChainActive() (James O'Beirne)
a3a609079c refactoring: introduce unused ChainActive() (James O'Beirne)
1b6e6fcfd2 rename: CChainState.chainActive -> m_chain (James O'Beirne)
d2eee87928 Lift prevector default vals to the member declaration (Ben Woosley)
7b29ec277b [tests] Comment for why logging config is set as command-line args. (John Newbery)
ba534ccd56 [tests] log thread names by default in functional tests (John Newbery)
b6c748f849 doc: Add release notes for 15730 (João Barbosa)
d3e8458365 rpc: Show scanning details in getwalletinfo (João Barbosa)
90e27abe37 wallet: Track current scanning progress (João Barbosa)
2ee811e693 wallet: Track scanning duration (João Barbosa)
facfb4111d rpc: Deprecate getunconfirmedbalance and getwalletinfo balances (MarcoFalke)
999931cf8f rpc: Add getbalances RPC (MarcoFalke)
fad13e925e rpcwallet: Make helper methods const on CWallet (MarcoFalke)
fad40ec915 wallet: Use IsValidNumArgs in getwalletinfo rpc (MarcoFalke)
bfaa7270c4 rename bitcoin-wallet manpage to elements-wallet (Andrew Poelstra)
62a26bebac Introduce bitcoin-wallet.1 from bitcoin upstream f5bd46a4cc (Andrew Poelstra)
00d110463a Install bitcoin-wallet manpage. (Daniel Kraft)
fc929842c2 GUI: Move QRImageWidget to its own file-pair (Luke Dashjr)
77851ab682 GUI: Refactor actual QR code rendering into new QRImageWidget::setQR (Luke Dashjr)
0ff1c2a838 Separate reason for premature spends (coinbase/locktime) (Suhas Daftuar)
54470e767b Assert validation reasons are contextually correct (Suhas Daftuar)
2120c31521 [refactor] Update some comments in validation.cpp as we arent doing DoS there (Matt Corallo)
12dbdd7a41 [refactor] Drop unused state.DoS(), state.GetDoS(), state.CorruptionPossible() (Matt Corallo)
aa502b88d1 scripted-diff: Remove DoS calls to CValidationState (Matt Corallo)
7721ad64f4 [refactor] Prep for scripted-diff by removing some \ns which annoy sed. (Matt Corallo)
5e78c5734b Allow use of state.Invalid() for all reasons (Matt Corallo)
6b34bc6b6f Fix handling of invalid headers (Suhas Daftuar)
ef54b486d5 [refactor] Use Reasons directly instead of DoS codes (Matt Corallo)
9ab2a0412e CorruptionPossible -> BLOCK_MUTATED (Matt Corallo)
6e55b292b0 CorruptionPossible -> TX_WITNESS_MUTATED (Matt Corallo)
7df16e70e6 LookupBlockIndex -> CACHED_INVALID (Matt Corallo)
c8b0d22698 [refactor] Drop redundant nDoS, corruptionPossible, SetCorruptionPossible (Matt Corallo)
34477ccd39 [refactor] Add useful-for-dos "reason" field to CValidationState (Matt Corallo)
6a7f8777a0 Ban all peers for all block script failures (Suhas Daftuar)
7b999103e2 Clean up banning levels (Matt Corallo)
b8b4c80146 [refactor] drop IsInvalid(nDoSOut) (Matt Corallo)
8818729013 [refactor] Refactor misbehavior ban decisions to MaybePunishNode() (Matt Corallo)
00e11e61c0 [refactor] rename stateDummy -> orphan_state (Matt Corallo)
f34fa719cf Drop obsolete sigops comment (Matt Corallo)
fa08c5cb99 test_runner: Move pruning back to extended (MarcoFalke)
faea56400d rpc: Add lock annotations to block{,header}ToJSON (MarcoFalke)
fab00a5cb9 rpc: Serialize in getblock without cs_main (MarcoFalke)
fa1c3591ad rpc: Use IsValidNumArgs in getblock (MarcoFalke)
da9f1ace5d doc: Add historical release notes for 0.18.0 (Wladimir J. van der Laan)
beb42d71a0 Silence GCC 7 warning "control reaches end of non-void function" (-Wreturn-type) in psbt.cpp (practicalswift)
5d35ae3326 Handle the result of posix_fallocate system call (Luca Venturini)
422677963a refactor: replace isPotentialtip/waitForNotifications by higher method (Antoine Riard)
edfe9438ca Add WITH_LOCK macro: run code while locking a mutex (Antoine Riard)
effe81f750 Move g_is_mempool_loaded into CTxMemPool::m_is_loaded (Ben Woosley)
bb8ae2c419 rpc: Expose g_is_mempool_loaded via getmempoolinfo and /rest/mempool/info.json (Ben Woosley)
fa90a89eee [test] combine_logs: append node stderr and stdout if it exists (MarcoFalke)
fa79a783d6 test: Add reorg test to wallet_balance (MarcoFalke)
fad03cd046 test: Check that wallet txs not in the mempool are untrusted (MarcoFalke)
fa195315e6 test: Add getunconfirmedbalance test with conflicts (MarcoFalke)
fa464e8211 test: Add wallet_balance test for watchonly (MarcoFalke)
8722e54e56 threads: add thread names to deadlock debugging message (James O'Beirne)
383b186c28 threads: prefix log messages with thread names (James O'Beirne)
ddd95ccb80 tests: add threadutil tests (James O'Beirne)
ae5f2b6a6c threads: introduce util/threadnames, refactor thread naming (James O'Beirne)
188ca75e5f disable HAVE_THREAD_LOCAL on unreliable platforms (James O'Beirne)
151f3e9cf1 Add settings merge test to prevent regresssions (Russell Yanofsky)
fafb55e2c2 [qa] test_runner: Move feature_pruning to base tests (MarcoFalke)
8728a66782 [tests] fix block time in feature_pruning.py (John Newbery)
9f9db39041 QA/mininode: Send all headers upfront in send_blocks_and_test to avoid sending an unconnected one (Luke Dashjr)
e47dc4f68b Include bitcoin_config.h in release process (Hennadii Stepanov)
48ed65bcdd Align MSVC build options with Linux build ones (Hennadii Stepanov)
fac174e2d1 lint: Check that all wallet args are hidden (MarcoFalke)
64491cb376 doc: Fix -dustrelayfee= argument docs grammar (keepkeyjon)
a34081b7c3 Remove unused OpenSSL includes to make it more clear where OpenSSL is used (practicalswift)
5d7ce74ab3 add missing debian contrib files to tarball (Peter Wagner)
765d5890be Bugfix: dummywallet: Add -ignorepartialspends to list of ignored wallet options (Luke Dashjr)
0f09eb779d dummywallet: Reformat ignored wallet options list (Luke Dashjr)
70c1cf8c1c wallet: Avoid logging no_such_file_or_directory error (João Barbosa)
3407b446cc gui: Uppercase bech32 addresses in qr codes (Ben Carman)
1b602f6fed remove extraneous scope (andrewtoth)
6ad372a973 wallet: log on rescan completion (andrewtoth)
5c759c73b2 [wallet] Move maxTxFee to wallet (John Newbery)
c634b1e207 [POLICY] Make sending to future native witness outputs standard (Pieter Wuille)
99e88a3726 rpc: Remove dependency on interfaces::Chain in SignTransaction (Antoine Riard)
201393f932 Align code example with clang-format (Hennadii Stepanov)
faebd8ca11 appveyor: Write @PACKAGE_NAME@ to config (MarcoFalke)
5d26205272 doc: explain AcceptToMemoryPoolWorker's coins_to_uncache (James O'Beirne)
4207c1b35c configure: Initialise assembly enable_* variables (Luke Dashjr)
afe0875577 configure: Skip assembly support checks, when assembly is disabled (Luke Dashjr)
d8ab8dc12d configure: Invert --enable-asm help string since default is now enabled (Luke Dashjr)
fcc443b636 QA: feature_filelock, interface_bitcoin_cli: Use PACKAGE_NAME in messages rather than hardcoding Bitcoin Core (Luke Dashjr)
a014373d81 QA: Avoid re-reading config.ini unnecessarily (Luke Dashjr)
cc556e4a30 Add test for superfluous witness record in deserialization (Gregory Sanders)
25b0786581 Fix missing input template by making minimal tx (Gregory Sanders)
bb530efa18 Disallow extended encoding for non-witness transactions (Pieter Wuille)
c87fc71f7e Bugfix: test/functional/rpc_psbt: Correct test description comment (Luke Dashjr)
097c4aa379 Bugfix: test/functional/rpc_psbt: Remove check for specific error message that depends on uncertain assumptions (Luke Dashjr)
faca95effd qa: Make swap_magic_bytes in p2p_invalid_messages atomic (MarcoFalke)
6dd469a3be Disconnect BlockNotifyGenesisWait and RPCNotifyBlockChange properly. Remove no-op CClientUIInterface::[signal_name]_disconnect. (practicalswift)
fa1c8e2978 Resolve the qt/guiutil <-> qt/optionsmodal CD (251)
710a7136f9 rpc: Speedup getaddressesbylabel (João Barbosa)
c9e6e7ed79 wallet: add cachable amounts for caching credit/debit values (Karl-Johan Alm)
fa465e4da4 test: Add missing syncwithvalidationinterfacequeue to wallet_import_rescan (MarcoFalke)
b67978529a Add comments to Python ECDSA implementation (John Newbery)
8c7b9324ca Pure python EC (Pieter Wuille)
765c0b364d refactor: combine Chain::findFirstBlockWithTime/findFirstBlockWithTimeAndHeight (Antoine Riard)
fadf7d1390 wallet: Remove unused import checkpoints.h (MarcoFalke)
418d3230f8 Resolve the checkpoints <-> validation CD. (251)
fa346fe883 doc: Remove upgrade note in release notes from EOL versions (MarcoFalke)
942ff2054b contrib: gh-merge: Use pagination to fetch all review comments (nkostoulas)
81b2830b15 qt: update request payment button text and tab description (Tobias Kaderle)
2d8ba4f867 remove out-of-date comment on pay-to-witness support (r8921039)
8a33f4d63f GUI: Options: Remove the upper-bound limit from pruning size setting (Luke Dashjr)
4ddeb2f860 GUI: Options: Set the range of pruning size before loading its value (Luke Dashjr)
89e8df1674 tests: fix outdate include in blockfilter_index_tests (James O'Beirne)
c7efb652f3 blockfilter: Update BIP 158 test vectors. (Jim Posen)
19308c9e21 rpc: Add getblockfilter RPC method. (Jim Posen)
ff35105096 init: Add CLI option to enable block filter index. (Jim Posen)
accc8b8b18 index: Access functions for global block filter indexes. (Jim Posen)
2bc90e4e7b test: Unit test for block filter index reorg handling. (Jim Posen)
6bcf0998c0 test: Unit tests for block index filter. (Jim Posen)
b5e8200db7 index: Implement lookup methods on block filter index. (Jim Posen)
75a76e3619 index: Implement block filter index with write operations. (Jim Posen)
2ad2338ef9 serialize: Serialization support for big-endian 32-bit ints. (Jim Posen)
ba6ff9a6f7 blockfilter: Functions to translate filter types to/from names. (Jim Posen)
62b7a4f094 index: Ensure block locator is not stale after chain reorg. (Jim Posen)
4368384f1d index: Allow atomic commits of index state to be extended. (Jim Posen)
fad7c33342 refactor: Add handleNotifications method to wallet (MarcoFalke)
fa46ac3127 bench: Add wallet_balance benchmarks (MarcoFalke)
fab6a0a659 test: Add test that addmultisigaddress fails for watchonly addresses (MarcoFalke)
fad81d870a test: Fixup creatmultisig documentation and whitespace (MarcoFalke)
e377846ff1 rest/rpc: Make mempoolinfo atomic (João Barbosa)
0aef39d067 Silence "Test case [...] did not check any assertions" warnings when running "test_bitcoin --log_level=test_suite" (practicalswift)
5fd73c8694 Avoid repeated log messages in tests by connecting to signal handlers (ThreadSafeMessageBox, etc.) only once (practicalswift)
e502c3c515 tests: Reduce noise level in test_bitcoin output (practicalswift)
aa410c2b17 rpc: Validate maxfeerate with AmountFromValue (João Barbosa)
faf400077d scripted-diff: Bump copyright headers in test, bench (MarcoFalke)
fa821904bf scripted-diff: Rename test_bitcoin to test/setup_common (MarcoFalke)
fa8685d49e test: Use test_bitcoin setup in bench, Add test utils (MarcoFalke)
666696b673 test: Have segwit always active in (Basic)TestingSetup (MarcoFalke)
fa747498f7 doc: Clarify RPC versioning (MarcoFalke)
b4338c151d [rpc] Remove the addresses field from the getaddressinfo return object (John Newbery)
8dfbb5cf23 doc: mention creating application support bitcoin folder on OSX (Jack Mallers)
140bbeec45 doc: describe onlynet option in doc/tor.md (Jon Atack)
41a46cbb31 Speed up deriveaddresses for large ranges (Pieter Wuille)
17be9e0e30 gitignore: add *.plist (clang-check) (James O'Beirne)
e7acf44bbf gitignore: add *.dat (James O'Beirne)
184f8785f7 wallet_bumpfee.py: add test for change key preservation (Gregory Sanders)
d08becff85 add functional tests for feerate bumpfee with adding inputs (Gregory Sanders)
0ea47ba7b3 generalize bumpfee to add inputs when needed (Gregory Sanders)
1b46a4889f [cleanup] Remove unused CReserveKey (John Newbery)
9819ad6d07 [rpc] simplify generate RPC (John Newbery)
fa2dfbf30a travis: Bump second timeout to 33 minutes, Add rationale (MarcoFalke)
fafe5f0d09 test: Remove unused imports (MarcoFalke)
fa16a09215 scripted-diff: use self.sync_* methods (MarcoFalke)
faf77f9b90 test: Pass self to test_simple_bumpfee_succeeds (MarcoFalke)
fa6dc7c5c3 test: Add BitcoinTestFramework::sync_* methods (MarcoFalke)
fafe008cb4 test: Pass at most one node group to sync_all (MarcoFalke)
fa4680ed09 scripted-diff: Rename sync_blocks to send_blocks to avoid name collisions and confusion (MarcoFalke)
303372c41a docs: Improve netaddress comments (Carl Dong)
0b3a65455a Avoid redefine warning (Peter Bushnell)
78a2fb55c9 bitcoin-wallet tool: Drop libbitcoin_server.a dependency (Russell Yanofsky)
b874747b51 Remove access to node globals from wallet-linked code (Russell Yanofsky)
fbc6bb8e83 bitcoin-wallet tool: Drop MakeChain calls (Russell Yanofsky)
7a9046e48d [wallet] Refactor CWalletTx::RelayWalletTransaction() (John Newbery)
4d074e84a2 [build] Move AnalyzePSBT from psbt.cpp to node/psbt.cpp (Russell Yanofsky)
fd509bd1f7 [docs] Document src subdirectories and different libraries (John Newbery)
9eaeb7fb8d [build] Move wallet load functions to wallet/load unit (John Newbery)
91a25d1e71 [build] Add several util units (John Newbery)
99517866b6 [build] Move several units into common libraries (John Newbery)
0509465542 [build] Move rpc rawtransaction util functions to rpc/rawtransaction_util.cpp (John Newbery)
1acc61f874 [build] Move rpc utility methods to rpc/util (John Newbery)
4a75c9d651 [build] Move policy settings to new src/policy/settings unit (John Newbery)
fdf8888b6f [build] Move CheckTransaction from lib_server to lib_consensus (John Newbery)
c968780785 [docs] fix comment: the return value of findFork is _not_ an ancestor when the specified block is on the active chain (r8921039)
f4b7a2f205 rpc: getrpcinfo docs (Ben Carman)
fa26eb5e8f rpc: RPCHelpMan: Always push_name when outer type is an object (MarcoFalke)
fa652b229e rpc: Add some doxygen comments to utils (MarcoFalke)
fae38c3dc6 doc: Fix all typos reported by codespell (MarcoFalke)
fa9058f0ed doc: Add release notes for 15629 (MarcoFalke)
fa4a922d78 qa: Add test for missing testnet section in conf file (MarcoFalke)
dddd6f0f58 init: Throw error when network specific config is ignored (MarcoFalke)
833d98ae07 [wallet] Remove unnecessary Chain::Lock parameter from ResendWalletTransactions (John Newbery)
52b760fc6a [wallet] Schedule tx rebroadcasts in wallet (John Newbery)
f463cd1073 [wallet] Keep track of the best block time in the wallet (John Newbery)
fa2056af1c travis: Properly cache and error on timeout (MarcoFalke)
fa36a333ee travis: Switch to ubuntu keyserver to avoid timeouts (MarcoFalke)
90bce24576 qa: Prevent concurrency issues reading .cookie file (João Barbosa)
fa078984c9 test: Properly log named args in authproxy (MarcoFalke)
b5d3987724 Take non-importing keys into account for spendability warning in descriptor import (Pieter Wuille)
6e597001a4 Import all origin info in importmulti; even for non-importing pubkeys (Pieter Wuille)
9a93c91c88 Keep full pubkeys in FlatSigningProvider::origins (Pieter Wuille)
fa57411fcb wallet: Get all balances in one call (MarcoFalke)
8ae6d020b8 doc: correct bitcoinconsensus_version in shared-libraries (fanquake)
9b085f4863 Mention new descriptor RPCs in descriptors.md (Pieter Wuille)
28d78de00b Mention new PSBT RPCs in psbt.md (Pieter Wuille)
65d2f5d2de Update bips.md for 0.18.0 (Pieter Wuille)
fa49db7eac doc: Clarify sendrawtransaction::maxfeerate==0 help (MarcoFalke)
faf62d9415 gui: Generate bech32 addresses by default (MarcoFalke)
6d44c5ebf9 depends: Add commands for each package for each stage (Carl Dong)
80f0e05b70 depends: Preprocessing doesn't care about deps (Carl Dong)
8f5d9431a3 Add regtests for HTTP status codes. (Daniel Kraft)
7813eb1db1 [qa] Overhaul p2p_compactblocks.py (Suhas Daftuar)
892eff05f1 Add documentation of struct PSBTAnalysis et al (Glenn Willen)
ef22fe8c1f Refactor analyzepsbt for use outside RPC code (Glenn Willen)
afd20a25f2 Move PSBT decoding functions from core_io to psbt.cpp (Glenn Willen)
4831aec5b1 Remove unused var (Peter Bushnell)
fa8548c5d1 net: Remove unused unsanitized user agent string CNode::strSubVer (MarcoFalke)
fabfb79673 doc: Add release notes for 15596 (MarcoFalke)
fac1a0fe54 wallet: Remove unused GetLegacyBalance (MarcoFalke)
faa3a246e8 scripted-diff: wallet: Rename pcoin to wtx (MarcoFalke)
fae5f874d5 rpc: Document that minconf is an ignored dummy value (MarcoFalke)
fa292adce9 doc: rpc-mining: Clarify error messages (MarcoFalke)
ac67582ff7 depends: latest rapidcheck, use INSTALL_ALL_EXTRAS (fanquake)
ea1a2d8794 [wallet] Remove ResendWalletTransactionsBefore (John Newbery)
f5162458cd [rpc] remove resendwallettransactions RPC (John Newbery)
4bf1b1cefa qa: Check unconfirmed balance after loadwallet (João Barbosa)
2ebf650b2e wallet: Update transactions with current mempool after load (João Barbosa)
57908a739c interfaces: Add Chain::requestMempoolTransactions (João Barbosa)
0440481c6b wallet: Move CWallet::ReacceptWalletTransactions locks to callers (João Barbosa)
866c8058a7 Interrupt orphan processing after every transaction (Pieter Wuille)
6e051f3d32 [MOVEONLY] Move processing of orphan queue to ProcessOrphanTx (Pieter Wuille)
9453018fdc Simplify orphan processing in preparation for interruptibility (Pieter Wuille)
afc06fc868 rpc: Fix help text for signtransactionwithXXX (Torkel Rogstad)
1111f0718a test: .style.yapf: Set column_limit=160 (MarcoFalke)
2a1408c3ec Comment for seemingly duplicate LIBBITCOIN_SERVER (Peter Bushnell)
03d6d23810 [tests] make pruning test faster (John Newbery)
1c29ac40fb [tests] style fixes in feature_pruning.py (John Newbery)
8b8d8eeae9 Remove travis_wait from lint script (Graham Krizek)
f6ee177f7d Remove unused AES-128 code (practicalswift)
fa926ec24f rpc: Mention all output types in decodescript doc (MarcoFalke)
fa3caa1666 rpc: decodescript use IsValidNumArgs over hardcoded check (MarcoFalke)
faad33ff15 rpc: Clarify decodescript RPCResult doc (MarcoFalke)
7d01b5cf2c doc/dependencies: Fix typo libsrvg->librsvg (Luke Dashjr)
43ae1e96ed release: Update the Windows Codesigning certificate (Cory Fields)
529c1ae4a0 [tests] Add test for wallet rebroadcasts (John Newbery)
fa1ad200d3 doc: Add release notes for 15620 (MarcoFalke)
fa96d76421 rpc: Uncouple rpcs from maxTxFee global (MarcoFalke)
fa965e03c7 rpc: Use IsValidNumArgs over hardcoded size checks (MarcoFalke)
fa1c073154 contrib: gh-merge: Include review comments in merge commit (MarcoFalke)
e9d5e97561 Poly1305: tolerate the intentional unsigned wraparound in poly1305.cpp (Jonas Schnelli)
b34bf302f2 Add Poly1305 bench (Jonas Schnelli)
03be7f48fa Add Poly1305 implementation (Jonas Schnelli)
e16b6a7188 rpc: Rename size to vsize in mempool related calls (Miguel Herranz)
5801dd628d docs: Add more tips to productivity.md (gwillen)
947f73ceba [docs] remove reference to signrawtransaction in the developer docs. (John Newbery)
7b6616b78b [rpc] Remove deprecated functionality message from validateaddress help (John Newbery)
839c3f7c49 [rpc] Remove signrawtransaction warning (John Newbery)
fab0a68aa2 qa: mininode: Clearer error message on invalid magic bytes (MarcoFalke)
a10972bc03 gui: Defer removeAndDeleteWallet when no modal widget is active (João Barbosa)
bb6195e34d refactor: Remove unused function (practicalswift)
d358466de1 Remove remaining wallet accesses to node globals (Russell Yanofsky)
b1b2b23892 Remove use of CCoinsViewMemPool::GetCoin in wallet code (Russell Yanofsky)
4e4d9e9f85 Remove use of CRPCTable::appendCommand in wallet code (Russell Yanofsky)
91868e6288 Remove use CValidationInterface in wallet code (Russell Yanofsky)
ef0019e054 Generate log entry when blocks messages are received unexpectedly. (Patrick Strateman)
0d9d2b385b Doc: update ACK description in CONTRIBUTING.md (Jon Atack)
fa11c036e9 refactor: Expose UndoReadFromDisk in header (MarcoFalke)
054d01d0a8 Do not relay banned IP addresses (Pieter Wuille)
fa5c511a83 refactor: Remove unused function (MarcoFalke)
7abd2e697c wallet/rpc: add maxfeerate parameter to testmempoolaccept (Karl-Johan Alm)
6c0a6f73e3 wallet/rpc: add maxfeerate parameter to sendrawtransaction (Karl-Johan Alm)
e5efacb941 test: Refactor vout fetches in rpc_rawtransaction (Karl-Johan Alm)
f7696e6183 depends: qt: Don't hardcode pwd path (Carl Dong)
89bee1bdbf depends: tar: Always extract as yourself (Carl Dong)
340ef50772 depends: Defer to Python detected by autoconf (Carl Dong)
2e5d482659 tests: Print remaining jobs in test_runner.py (Steven Roose)
faf3698808 wallet: Improve log output for errors during load (Glenn Willen)
fa0f92af9a build: depends: Switch to python3 (MarcoFalke)
204c729457 Add Gitian key for droark (Douglas Roark)
c7a7250302 Document assumptions about C++ compiler (practicalswift)
c7ea8d3236 Add sizeof(size_t) assumptions (practicalswift)
92f3e808f6 [docs] release note for disabling reject messages by default (John Newbery)
b8705a0915 Set 'distro' explicitly (Hennadii Stepanov)
19a0c4af0f depends: native_protobuf: avoid system zlib (Carl Dong)
228e80608d Enable TLS in link to chris.beams.io (JeremyRand)
ff7f31e07d [doc] productivity: more advanced git range-diff (Sjors Provoost)
3a21905a4e [doc] devtools: mention clang-format dependency (Sjors Provoost)
bf12093191 [doc] productivity: fix broken link (Sjors Provoost)
15c69b158d wallet: Log and ignore errors in ListWalletDir and IsBerkeleyBtree (João Barbosa)
335931df4a rpc: return a number for estimated_feerate in analyzepsbt (fanquake)
a4d0fd026b doc: correct analysepsbt rpc doc (fanquake)
56f1d28d9b dead code: Remove dead option in HexStr conversion (Lenny Maiorani)
c9963ae8b1 Fix overflow bug in analyzepsbt fee: CAmount instead of int (Pieter Wuille)
fa55104cb8 build: use full version string in setup.exe (MarcoFalke)
3f6568d66b cli: remove duplicate wallet fields from -getinfo (fanquake)
890396cbd5 cli: replace testnet with chain and return network name as per BIP70. (fanquake)
6e1aaffa98 doc: remove release note fragments (fanquake)
5bd078876a doc: correct path in build-windows.md (Ferdinando M. Ametrano)
20e6ea259b [addrman] Improve collision logging and address nits (Suhas Daftuar)
f71fdda3bc [addrman] Ensure collisions eventually get resolved (Suhas Daftuar)
4991e3c813 [net] feeler connections can be made to outbound peers in same netgroup (Suhas Daftuar)
4d834018e3 [addrman] Improve tried table collision logging (Suhas Daftuar)
32da92bdf6 gitian: Improve error handling (Wladimir J. van der Laan)
82c3b3f8e0 Remove sharp edge (uninitialized m_filter_type) when using the compiler-generated constructor for BlockFilter (practicalswift)
fa58a2e335 contrib: Bump gitian descriptors for 0.19 (MarcoFalke)
28c86de3b1 gui: Drop unused return values in WalletFrame (João Barbosa)
faebd2ef40 doc: Move wallet lock annotations to header (MarcoFalke)
fa38535130 bench: Benchmark MempoolToJSON (MarcoFalke)
fa5dc3534b rpc: Pass mempool into MempoolToJSON (MarcoFalke)
faa9b88199 fuzz: Link BasicTestingSetup (shared with unit tests) (MarcoFalke)
fa85468cd2 test: Move main_tests to validation_tests (MarcoFalke)
fa02b22245 test: Remove useless test_bitcoin_main.cpp (MarcoFalke)
fab2daa026 test: Add missing LIBBITCOIN_ZMQ to test_test_bitcoin_LDADD (MarcoFalke)
21be609b49 In lint-format-strings, open files sequentially (Glenn Willen)
4d4e4c6448 Suggested interfaces::Chain cleanups from #15288 (Russell Yanofsky)
fa2797808e test: Remove python3.4 workaround in feature_dbcrash (MarcoFalke)
dddd1d05d3 .python-version: Specify full version 3.5.6 (MarcoFalke)
faa7cdf764 scripted-diff: Update copyright in ./test (MarcoFalke)
fa0e65b772 scripted-diff: test: Remove brackets after assert (MarcoFalke)
fab5a1e0f4 build: Require python 3.5 (MarcoFalke)
fa6bf21f5e scripted-diff: test: Use py3.5 bytes::hex() method (MarcoFalke)
3eac2d57b1 docs: add "sections" info to example bitcoin.conf (Alistair Mann)
fad76e7a49 doc: Remove pr release notes file in wrong dir (MarcoFalke)
fa45123f66 test: Add .style.yapf (MarcoFalke)
f7efd87c8f Change brace formatting (Russell Yanofsky)
a1df1b48a8 Remove use of IsInitialBlockDownload in wallet code (Russell Yanofsky)
1106a6fde4 Remove use of uiInterface.LoadWallet in wallet code (Russell Yanofsky)
318f41fb2c circular-dependencies: Avoid treating some .h/.cpp files as a unit (Russell Yanofsky)
d02b34c8a8 Remove use of AcceptToMemoryPool in wallet code (Russell Yanofsky)
e2c8ba9f6e Remove uses of InitMessage/Warning/Error in wallet code (Russell Yanofsky)
c5e59a96a8 Remove uses of GetAdjustedTime in wallet code (Russell Yanofsky)
6d6bcc77c0 Remove use of g_connman / PushInventory in wallet code (Russell Yanofsky)
00dfb2a440 Remove uses of g_connman in wallet code (Russell Yanofsky)
cc3836e8f9 Remove uses of fPruneMode in wallet code (Russell Yanofsky)
cc02c796d3 Remove uses of fee globals in wallet code (Russell Yanofsky)
1fb0a4a04e Remove use of CalculateMemPoolAncestors in wallet code (Russell Yanofsky)
cd32160af0 Remove use of GetTransactionAncestry in wallet code (Russell Yanofsky)
291276f7f4 Remove use of GetCountWithDescendants in wallet code (Russell Yanofsky)
bdc6628683 Remove use of IsRBFOptIn in wallet code (Russell Yanofsky)
80f52a2267 Remove uses of CheckFinalTx in wallet code (Russell Yanofsky)
fa3148aacb doc: Remove ppa from linux build instructions (MarcoFalke)
04cca33094 Style cleanup. (Jim Posen)
4c01e4e159 flatfile: Unit tests for FlatFileSeq methods. (Jim Posen)
65a489e93d scripted-diff: Rename CBlockDiskPos to FlatFilePos. (Jim Posen)
d6d8a78f26 Move CDiskBlockPos from chain to flatfile. (Jim Posen)
e0380933e3 validation: Refactor file flush logic into FlatFileSeq. (Jim Posen)
992404b31e validation: Refactor block file pre-allocation into FlatFileSeq. (Jim Posen)
e2d2abb99f validation: Refactor OpenDiskFile into method on FlatFileSeq. (Jim Posen)
9183d6ef65 validation: Extract basic block file logic into FlatFileSeq class. (Jim Posen)
62e7addb63 util: Move CheckDiskSpace to util. (Jim Posen)
1a7ba84e11 Fix lack of warning of unrecognized section names (Akio Nakamura)
fa1d400003 cirrus ci: Inital config (MarcoFalke)
43206239a8 tests: Add script checking for deterministic line coverage (practicalswift)
07cae5287c [wallet] remove unused GetScriptForMining (Sjors Provoost)
8bb3e4c487 [rpc] remove deprecated generate method (Sjors Provoost)
10c7642a57 docs: Update Transifex links (marcuswin)
c9985c84f9 build: Bump version to 0.18.99 (Wladimir J. van der Laan)
9586157c0f [rpc] deriveaddresses: add range to CRPCConvertParam (Sjors Provoost)
f13ad1cae0 modify test for memory locked in case locking pages failed at some point (Adam Jonas)
2fa85ebd1c add rpc_misc.py, mv test getmemoryinfo, add test mallocinfo (Adam Jonas)
aeb7fbfd69 appveyor: Don't build debug libraries instead of "build and delete" (Chun Kuan Lee)
ca253f6ebf Make deriveaddresses use stop/[start,stop] notation for ranges (Pieter Wuille)
1675b7ce55 Use stop/[start,stop] notation in importmulti desc range (Pieter Wuille)
4566011631 Add support for stop/[start,stop] ranges to scantxoutset (Pieter Wuille)
6b9f45e81b Support ranges arguments in RPC help (Pieter Wuille)
7aa6a8aefb Add ParseRange function to parse args of the form int/[int,int] (Pieter Wuille)
fa852f0e8d test: Bump timeout on tests that timeout on windows (MarcoFalke)
4a5e52cb51 msvc: Use a single file to specify the include path (Chun Kuan Lee)
fa466cbc50 doc: Update release process for snap package (MarcoFalke)
9999879f56 refactor: Use RPCHelpMan::IsValidNumArgs in getrawtransaction (MarcoFalke)
fa9ff8fe21 doc: Remove misleading hint in getrawtransaction (MarcoFalke)
6ad79cbd56 wallet: Use fsbridge::ifstream to fix Windows path issue (Chun Kuan Lee)
a720a98301 gui: Fix async open wallet call order (João Barbosa)
ef362f2773 rpc/gui: Remove 'Unknown block versions being mined' warning (Wladimir J. van der Laan)
fa2cdc9ac2 test: Simplify create_cache (MarcoFalke)
fa25210d62 qa: Fix wallet_txn_doublespend issue (MarcoFalke)
1111aecbb5 qa: Always refresh stale cache to be out of ibd (MarcoFalke)
fab0d85802 qa: Remove mocktime unless required (MarcoFalke)
3f5ad622e5 Enable PID file creation on Windows - Add available WIN PID function - Consider WIN32 in each relevant case - Add new preprocessor definitions to suppress warning - Update error message for generic OS (riordant)
fa4ce7038d rpc: Actually throw help when passed invalid number of params (MarcoFalke)
fa05626ca7 rpc: Add RPCHelpMan::IsValidNumArgs() (MarcoFalke)
4489ede527 fix missing includes (Andrew Poelstra)
Pull request description:
Requires a bunch of followup work which I will open other issues for. See also #743 which was our checklist for 0.19.
Then in followup PRs:
* ~Fix the fuzz tests; I did not test these at any point throughout the rebase https://github.com/ElementsProject/elements/issues/936~
* Update and publish the `merge-prs` script to run the fuzzer, linter etc., as well as do a full clean `make check` https://github.com/ElementsProject/elements/pull/923/
* Audit translations; at a couple points I took Core's translations wholesale and we will need to re-edit them to change Bitcoin to Elements https://github.com/ElementsProject/elements/issues/937
* Audit the GUI. I have not opened the bitcoin GUI since 0.12 and not opened Elements ever, so probably I broke this. https://github.com/ElementsProject/elements/issues/938
* Assess wallet/node coupling; Core did some separation in the build system which I undid, to support the `signblock` RPC which involves both wallet and node logic. Core's solution to this for Signet may be to introduce a separate signblock tool which we may want to also do; see #bitcoin-core-dev IRC logs for the meeting on 2020-12-03. https://github.com/ElementsProject/elements/issues/939
* Assess functional tests: chase down a couple intermittent failures, assess the new broken `loadblocks` test, assess the "extended tests" which are broken on master https://github.com/ElementsProject/elements/issues/940
* Assess bitcoin functional tests and `g_con_elementsmode` #929
* Strengthen the functional tests; add more thorough PAK checks (see #926), move `computefastmerkleroot` into Python rather than using the RPC; https://github.com/ElementsProject/elements/issues/941
* Fix the `bumpfee` RPC to support CT. There is an existing issue for this #527
* Fix the PAK standardness bug #925 which was discovered through the rebase.
* Followup on conversion to `bilingual_str` from `std::string` for many Core RPCs; we should follow suit for our own RPCs https://github.com/ElementsProject/elements/issues/942
* The new `avoid_reuse` param to `sendtoaddress` and a couple other RPCs moves some Elements fields out of the way. For backward compatibility we should put `avoid_reuse` after these Elements fields. (I think this is the only time I did this; after talking to Glenn I tried to make future RPC extensions backward compatible)
* Rebase #900 on this and un-disable the large number of lines in the PSET functional tests which are disabled (in particular around the missing `fee` field of the RPC output)
Then a couple large followups. Tracking issues:
* Taproot: https://github.com/ElementsProject/elements/issues/943
* Descriptors: https://github.com/ElementsProject/elements/issues/944
* Simplicity: https://github.com/ElementsProject/elements/issues/945
Tree-SHA512: 4902e0878dc405380cd753627b13e6d2dbf01e328948f5321d9ee445ca8aceddbf23287e4459f27308b1450913b5f8eaa822560ce461db3ea4129490a12bdd94
Should revisit; I am not sure whether we have a long-term stable
URL for prebuilt past Elements releases, but we should be able
to just point test/get-previous-releases.py at that, and change
the set of versions (since we do not have 0.15, 0.19, etc), and
we're good to go.
This was causing build failures on win64, and since we (currently) do
not expose any dynafed or PAK stuff in libelementsconsensus, there is
no reason to be trying to link these.