Changelog for
peercoin-utils-0.14.10-2.5.x86_64.rpm :
* Tue Sep 03 2024 marecAATTdetebe.org- Update to version 0.14.10:
* version bump to 0.14.10
* temporary increase of max minting utxos to ease the fork
* fix compilation of client when wallet is disabled during configuration
* don\'t request decryption for minting when wallet is not locked
* don\'t request decryption for minting when wallet is not locked
* Wed Aug 14 2024 marecAATTdetebe.org- Update to version 0.14.9:
* don\'t request decryption for minting when wallet is not locked
* version bump to 0.14.9
* auto abandon coinstake transactions when orphaned, resolving #778
* allow user to decrypt wallet completely, resolving #635
* phase out P2SH_SEGWIT addresses, resolving #699
* version bump to 0.14.8
* check github only if selected in options
* version bump to 0.14.8
* check github only if selected in options
* Wed Jul 03 2024 marecAATTdetebe.org- Update to version 0.14.7:
* warn user when blocks with new version are minted
* version bump to 0.14.7
* check github for new version once a day
* Update build-windows.md (#772)
* Fri Jun 21 2024 marecAATTdetebe.org- Update to version 0.14.6:
* stop and start minter thread when wallets close and open
* rework legacy key generation for descriptor wallet
* update version information to bitcoin 25.2
* version bump to 0.14.6
* remove bitcoin residue
* p2p: Don\'t consider blocks mutated if they don\'t connect to known prev block
* [test] IsBlockMutated unit tests
* [validation] Cache merkle root and witness commitment checks
* [test] Add regression test for #27608
* [net processing] Don\'t process mutated blocks
* [validation] Merkle root malleation should be caught by IsBlockMutated
* [validation] Introduce IsBlockMutated
* [validation] Isolate merkle root checks
* test: make sure keypool sizes do not change on `getrawchangeaddress`/`getnewaddress` failures
* wallet: Avoid updating `ReserveDestination::nIndex` when `GetReservedDestination` fails
* wallet: Fix use-after-free in WalletBatch::EraseRecords
* Use only Span{} constructor for byte-like types where possible
* util: Allow std::byte and char Span serialization
* test: add regression test for the getrawtransaction segfault
* rpc: fix getrawtransaction segfault
* gui: fix crash on selecting \"Mask values\" in transaction view
* http: bugfix: track closed connection
* http: log connection instead of request count
* http: refactor: use encapsulated HTTPRequestTracker
* gui: macOS, make appMenuBar part of the main app window
* gui: macOS, do not process dock icon actions during shutdown
* depends: fix unusable memory_resource in macos qt build
* build, macos: Fix `qt` package build with new Xcode 15 linker
* test: Test loading wallets with conflicts without a chain
* wallet: Check last block and conflict height are valid in MarkConflicted
* ci: Nuke Android APK task, Use credits for tsan
* test: ensure old fee_estimate.dat not read on restart and flushed
* tx fees, policy: read stale fee estimates with a regtest-only option
* tx fees, policy: do not read estimates of old fee_estimates.dat
* tx fees, policy: periodically flush fee estimates to fee_estimates.dat
* test: wallet, verify migration doesn\'t crash for an invalid script
* wallet: disallow migration of invalid or not-watched scripts
* Do not use std::vector = {} to release memory
* qt: 25.1rc1 translations update
* depends: xcb-proto 1.15.2
* test: wallet, add coverage for watch-only raw sh script migration
* descriptor: InferScript, do not return top-level only func as sub descriptor
* test: wallet, add coverage for addressbook migration
* wallet: migration bugfix, persist empty labels
* wallet: migration bugfix, clone \'send\' record label to all wallets
* Unconditionally return when compact block status == READ_STATUS_FAILED
* Add tests for parallel compact block downloads
* Support up to 3 parallel compact block txn fetchings
* Only request full blocks from the peer we thought had the block in-flight
* Convert mapBlocksInFlight to a multimap
* Remove nBlocksInFlight
* alias BlockDownloadMap for mapBlocksInFlight
* ci: Switch to `amd64` container in \"ARM\" task
* test: add coverage for `/deploymentinfo` passing a blockhash
* rest: bugfix, fix crash error when calling `/deploymentinfo`
* ci: Use podman stop over podman kill
* ci: Use podman for persistent workers
* ci: Prune dangling images on RESTART_CI_DOCKER_BEFORE_RUN
* build: disable boost multi index safe mode
* rpc: Fix invalid bech32 handling
* p2p: Avoid prematurely clearing download state for other peers
* Update nMinimumChainWork and defaultAssumeValid to block 750000
* rpc: Remove non-existing arguments from sendtoaddress help string
* migrate peercoin settings to new bitcoin way
* version bump to 0.14.5
* allow configuration of coin combination during minting
* version bump to 0.14.4
* allow ratio to be double
* version bump to 0.14.3
* remove redundant whitespace
* Use log-distance optimisation when max utxos do not apply
* don\'t create outputs that are less than target amount
* fix coinstake size fee allowance
* Sun Jun 02 2024 marecAATTdetebe.org- Update to version 0.14.5:
* migrate peercoin settings to new bitcoin way
* rpc: Remove non-existing arguments from sendtoaddress help string
* version bump to 0.14.5
* allow configuration of coin combination during minting
* Wed May 22 2024 marecAATTdetebe.org- Update to version 0.14.4:
* version bump to 0.14.4
* allow ratio to be double
* Tue May 14 2024 marecAATTdetebe.org- Update to version 0.14.3:
* version bump to 0.14.3
* remove redundant whitespace
* Use log-distance optimisation when max utxos do not apply
* don\'t create outputs that are less than target amount
* Wed May 08 2024 marecAATTdetebe.org- Update to version 0.14.2:
* fix coinstake size fee allowance
* fix some compilation warnings
* little refactoring of rfc28 implementation
* version bump to 0.14.2
* rfc28 implementation with configurable max minting utxos (default 1000 utxos)
* allow to see split coins and check github settings
* allow 0 outputs
* version bump to 0.14.2
* rfc28 implementation with configurable max minting utxos (default 1000 utxos)
* allow to see split coins and check github settings
* allow 0 outputs
* version bump
* Hardened checkpoint update for v0.14.0 testnet
* Avoid comparison between signed and unsigned ints in CreateCoinStake()
* remove redundant declarations
* allow specifying redeemscript and timestamp
* version bump
* Hardened checkpoint update for v0.14.0 testnet
* Avoid comparison between signed and unsigned ints in CreateCoinStake()
* remove redundant declarations
* allow specifying redeemscript and timestamp
* Fri Apr 26 2024 marecAATTdetebe.org- Update to version 0.14.1:
* version bump
* Hardened checkpoint update for v0.14.0 testnet
* Avoid comparison between signed and unsigned ints in CreateCoinStake()
* remove redundant declarations
* allow specifying redeemscript and timestamp
* Wed Apr 17 2024 marecAATTdetebe.org- Update to version 0.14.0:
* pass last pow block not second last
* remove mining of a min-difficulty block
* calculate time difference from current tip
* set nHeightStake for headers
* use correct previous block for asert work calculation
* use pow target spacing as defined in v9
* anchor should be POW block
* allow fewer zero bits so our testnet passes assert
* enable hardened runtime signatures for macos
* set tau to 24 hours
* restore NODE_NETWORK services
* count confirmations based on PoS blocks only
* initial ASERT implementation
* add nHeightStake to block index
* update protocol version
* add v14 handling
* Tue Mar 19 2024 marecAATTdetebe.org- Update to version 0.13.1:
* bump version
* hardcode v12 switch times
* restore NODE_NETWORK services
* enable hardened runtime signatures for macos
* Wed Mar 06 2024 marecAATTdetebe.org- Update to version 0.13.0:
* fix translation merge
* don\'t enable DERSIG verification for regtest
* fix txpackage tests
* fix txvalidationcache tests
* fix m_total_fee calculation
* fix regtest parameters
* fix sighash tests
* script tests fixes
* fix script standard test
* rpc amount fixes
* fix PoW miner tests
* fix key_test signature
* fix key io test vectors
* fix bip341 test vectors
* fix exponential value parsing of amounts
* don\'t verify locktime sequence for regtest
* check TestBlockValidity for PoW blocks
* allow regtest to have some undeployed forks
* remove rbf tests
* fix regtest v08 detection
* fix header sync test
* add permission check. defer if unable to push
* add guix prebuild
* fix descriptor tests
* Revert \"remove overwriting of txs\"
* fix bloom test
* block filters update
* enable cache for guix
* replace gitian with guix in gh actions
* fix order of serialisation in blockencoding tests
* fix qt settings
* allow unit tests to start
* missing dust and minfee fixes
* some fixes to functional tests
* unlocked_minting_only is optional
* remove bip30
* remove overwriting of txs
* fix secp256k1 rebase
* regtest fixes
* Hardened checkpoint update for v0.13.0 testnet
* Construct a new SignatureData object for each pcoin
* remove some duplicate definitions
* fix chainparams in kernel
* rename test binary
* reduce difficulty for regtest
* removing bitcoin residue
* don\'t try to create coinstake without coins
* glibc 2.27 is required for version 0.13
* fix optimizeutxoset returns
* One more 2024
* Update copyright year to 2024
* fix updateDisplayUnit
* don\'t show watch address transactions in minting view
* support new minting scheme
* don\'t cache 0 outputs in mintingtable
* apply signature to correct app
* attempting fix to minter thread
* guix updates
* Remove unused nPruneAfterHeight variable
* Set correct start year for Bitcoin
* Hardened checkpoint update for v0.13.0 mainnet
* switch to guix builds
* add dragonfly splash
* upgrade openssl to 1.1.1t
* qt: Remove redundant information from a welcome screen
* Added anisoptera/dragonfly splash art
* allow minting from taproot outputs
* missing stdexcept
* taproot is standard in v13
* fix decoderawtransaction rpc
* fix exe and dmg hopefully
* Revert \"rollback darwin and gitian-builder\"
* add all of examples files
* missing examples_util.h
* remove missing files from makefile
* add test_runner.py to extra dist
* rollback darwin and gitian-builder
* fix openssl.mk
* roll back macosx sdk
* add patches from old packages
* rollback everything gitian to release-0.11 state
* add bison
* try older linux
* try without torrent
* add it to native packages as well
* add native libdmg
* add dmg to ac path progs
* add detached-sig files
* remove test from windows installer
* Peercoin-Qt in deploydir
* we need GSS and SystemConfiguration for macosx
* add man for peercoin-util
* peercoin needs glibc 2.29
* fixup symbol check
* remove pixie
* update lief to 0.12.3
* cleanup init
* missing file
* build fixes
* remove duplicate operator
* windows attempt fix 1
* fs::u8path peercoin files
* remove extra printexceptioncontinue
* use modern clock
* remove extra traces
* missing gettimemicros
* fixup natpmp
* fix depends
* allow spending from pubkeys
* allow spending from pubkeys
* optimizeutxoset fixes
* allow spending from pubkeys
* add optimizeutxoset method
* add filtering to optimizeutxoset
* sign block hash using descriptor wallet
* c99
* cflags attempt
* remove patch
* Revert \"openssl 1.1.1t\"
* Revert \"openssl changes\"
* openssl changes
* openssl 1.1.1t
* build fixes for qt, tests and fuzz
* fix test and bench compilation
* fix more rpc commands
* fix external signer message
* fix block filter init
* fix rpc methods part 1
* add coinstake handling during result selection
* fix coinselection
* fix listminting
* fix missing ancestors from mempool prechecks
* fix spend rpc
* build fixes, missing files pt1
* build fixes
* doc: update manual pages for v25.0rc2
* net_processing: Boost inv trickle rate
* txmempool: have CompareDepthAndScore sort missing txs first
* p2p: Avoid prematurely clearing download state for other peers
* qt: 25.0rc2 translations update
* doc: generate example bitcoin.conf for v25.0rc1
* doc: generate manual pages for v25.0rc1
* doc: point release-notes.md to the dev wiki
* doc: update version number in bips.md to v25.0
* doc: Remove 25.0 release note fragments
* contrib: make-seeds updates for 25.x
* p2p: update manual tor/i2p/cjdns mainnet seeds for 25.x
* kernel: update m_assumed_
* chain params for 25.x
* kernel: update chainTxData for 25.x
* kernel: update nMinimumChainWork & defaultAssumeValid for 25.x
* doc: update references to kernel/chainparams.cpp
* Fix checking bad dns seeds without casting
* ci: build libc++ with assertions in MSAN jobs
* ci: build libc++ in DEBUG mode in MSAN jobs
* depends: add _LIBCPP_ENABLE_ASSERTIONS to DEBUG mode
* depends: Remove _LIBCPP_DEBUG from depends DEBUG mode
* doc: remove outdated version number usage from release-process
* ci: Bump nowallet_libbitcoinkernel task to ubuntu:focal
* ci: Use credits in more tasks
* ci: Use Cirrus CI dockerfile env
* test: add regression tests for #27468 (invalid URI segfaults)
* test: fix bumpfee \'spend_one_input\' occasional failure
* depends: fix compiling bdb with clang-16 on aarch64
* Don\'t return OutputType::UNKNOWN in ParseOutputType
* bugfix: rest: avoid segfault for invalid URI
* Update developer-notes.md
* tests: Make sure that bumpfee feerate checks work when replacing outputs
* bumpfee: Check the correct feerate when replacing outputs
* Respect and update FILES_ARGS in test/lint/lint-python.py
* Disable Python lint in src/secp256k1
* Squashed \'src/secp256k1/\' changes from bdf39000b9..4258c54f4e
* verify-commits: error and exit cleanly when git is too old.
* p2p: skip netgroup diversity of new connections for tor/i2p/cjdns networks
* qt: Register `wallet::AddressPurpose` type
* ci: explicitly install libclang-rt-dev in valgrind jobs
* valgrind: update supps for Debian Bookworm.
* ci: use Debian Bookworm and Valgrind 3.19 in Valgrind jobs
* test: fix importmulti/importdescriptors assertion
* rpc: move WALLET_FLAG_CAVEATS to the compilation unit of its caller
* doc: release note for wallet RPCs \"warning\" field deprecation
* test: createwallet \"warning\" field deprecation test
* rpc: deprecate \"warning\" field in {create,load,unload,restore}wallet
* test: add test coverage for \"warnings\" field in createwallet
* rpc: add \"warnings\" field to RPCs {create,load,unload,restore}wallet
* rpc: extract wallet \"warnings\" fields to a util helper
* doc: fix/improve warning helps in {create,load,unload,restore}wallet
* doc: update OpenBSD build docs for 7.3 (external signer support available)
* doc: Release note for purpose string restriction
* wallet: Replace use of purpose strings with an enum
* wallet: add AddressPurpose enum to replace string values
* wallet: Add wallet/types.h for simple public enum and struct types
* test,gui: add coverage for PSBT creation on legacy watch-only wallets
* test,gui: decouple widgets and model into a MiniGui struct
* test,gui: decouple chain and wallet initialization from test case
* test: add coverage for \'useAvailableBalance\' functionality
* gui: bugfix, getAvailableBalance skips selected coins
* [fuzz] Add HeadersSyncState target
* [headerssync] Make m_commit_offset protected
* [net processing] Use TxRelay::m_relay_txs over CNode::m_relays_txs
* test: LLVM/Clang 16 for MSAN jobs
* doc: correct sqlite & qrencode versions used in depenendencies.md
* contrib: minor doc improvements in verify-binaries
* contrib: fixup verifybinaries example docs
* contrib: move verify scripts to verify-binaries
* doc: update DataDirectoryGroupReadable 1 in tor.md
* verifybinaries: fix argument type error pointed out by mypy
* verifybinaries: catch the correct exception
* verifybinaries: fix OS download filter
* verifybinaries: use recommended keyserver by default
* verifybinaries: remove unreachable code
* verifybinaries: Don\'t delete shasums file
* verifybinaries: README cleanups
* verifybinaries: remove awkward bitcoin-core prefix handling
* verifybinaries: move all current examples to the pub subcommand
* contrib: Use machine parseable GPG output in verifybinaries
* contrib: Add verifybinaries command for specifying files to verify
* contrib: Specify to GPG the SHA256SUMS file that is detached signed
* contrib: Refactor verifbinaries to support subcommands
* contrib: verifybinaries: allow multisig verification
* ci: Run base install at most once
* ci: fix git dubious permissions error
* Fixes compile errors in MSVC build #27332
* ci: use clang-16 in tidy task
* depends: add NO_HARDEN option
* test: Remove windows workaround in authproxy
* Check that the Timestamp String is valid
* build: remove ancient unused define
* refactor: don\'t avoid sys/types.h on when building for Windows
* test: refactor: replace unnecessary `BytesIO` uses
* refactor: Move fs.
* to util/fs.
*
* Add missing fs.h includes
* Add missing cstddef include in assumptions.h
* refactor: Extract util/fs_helpers from util/system
* miniscript: explicit cast instead of comparing integers of different signs
* depends, doc: Document `NO_USDT` option
* test: Remove python3.5 workaround in authproxy
* [net processing] Pass TxRelay to FindTxForGetData instead of Peer
* [net processin] Don\'t take cs_main in FindTxForGetData
* qt: Update translation source file
* GUI: Send: Make feerates translatable
* Bugfix: GUI: Send/PSBT: Correct virtual size unit and make translatable
* Bugfix: GUI: transactiondesc: Translate outlier \"own address\" and \"watch-only\"
* GUI: Use translated external signer errors for messagebox text
* GUI: Make messages for copying unsigned PSBTs translatable
* Bugfix: GUI: Debug info: Use correct \"kB\" case for small mempool sizes, and make translation-friendly
* GUI: PSBTOperationsDialog: Support translating window title
* GUI: Intro: Support translating caption of data directory chooser
* GUI: Support translating peer network names
* GUI: Support translating address type dropdown entries
* refactor: remove unused param from legacy pubkey
* ci: Remove second user account
* sanitizers: remove GetRNGState lsan suppression
* guix: use python-minimal (3.9)
* ci: cleanup of CI_EXEC & CI_EXEC_ROOT (refs #27321)
* test: dedup package limit checks via decorator in mempool_package_limits.py
* test: refactor: use Satoshis for fees in mempool_package_limits.py
* scripted-diff: Rename nUnconnectingHeaders and fPreferHeaders
* [net processing] Move m_recently_announced_invs from CNodeState to Peer
* [net processing] Annotate m_recently_announced_invs as guarded by g_msgproc_mutex
* [net processing] Move fPreferHeaders from CNodeState to Peer
* [net processing] Annotate fPreferHeaders as guarded by g_msgproc_mutex
* [net processing] Move m_headers_sync_timeout from CNodeState to Peer
* [net processing] Annotate m_headers_sync_timeout as guarded by g_msgproc_mutex
* [net processing] Move nUnconnectingHeaders from CNodeState to Peer
* [net processing] Annotate nUnconnectingHeaders as guarded by g_msgproc_mutex
* [validation] Annotate ChainstateManager::m_best_header as guarded by cs_main
* ci: use LLVM/clang-16 in native_fuzz (ASAN) job
* refactor: Drop no longer used `CNetMsgMaker` instances
* guix: use gcc tool wrappers
* refactor: use address_to_scriptpubkey to retrieve addresses scriptpubkey
* refactor: move address_to_scriptpubkey to address.py
* test: wallet_create_tx.py fix race
* ci: Use TSan new runtime (llvm-16, take 3)
* fuzz: Remove legacy int parse fuzz tests
* [net] Pass nRecvFloodSize to CNode
* [net] Remove trivial GetConnectionType() getter
* [net] Delete CNetMessage copy constructor/assignment op
* test: Fix intermittent failure in ChainStateManager tests
* depends: make fontconfig build under clang-16
* Fix segfault when shutdown during wallet open
* build, qt: Fix handling of `CXX=clang++` when building `qt` package
* guix: combine and document enable_werror
* guix: use cmake-minimal for python-lief
* guix: import LIEF from upstream (0.12.3)
* clang-tidy: Exclude `performance-
*` checks rather including them
* clang-tidy: Add `performance-type-promotion-in-math-fn` check
* clang-tidy: Add `performance-inefficient-vector-operation` check
* clang-tidy: Add `performance-faster-string-find` check
* depends: fix osx build with clang 16
* depends: qrencode 4.1.1
* ci: Cache more stuff in the ci images: msan, iwyu, pip, sdks
* test: add bech32 decoding support to address_to_scriptpubkey()
* test: test_bech32_decode in address.py
* doc: improve -debuglogfile help to be a bit clearer
* bench: document expected results in logging benchmarks
* bench: add LogPrintfCategory and LogPrintLevel benchmarks
* bench: order the logging benchmark code by output
* bench: update logging benchmark naming for clarity
* bench: allow logging benchmarks to be order-independent
* [net] Remove CNode friends
* [net] Add CNode helper for send byte accounting
* scripted-diff: [net] Rename CNode process queue members
* [net] Make cs_vProcessMsg a non-recursive mutex
* [net] Make CNode msg process queue members private
* [net] Encapsulate CNode message polling
* [net] Deduplicate marking received message for processing
* [net] Add connection type getter to CNode
* test: add wallet too-long-mempool-chain error coverage
* wallet: return error msg for too-long-mempool-chain failure
* test: Replace threading with concurrent.futures
* rpc: Add submit option to generateblock
* refactor: Replace block_hash with block_out
* ci: Use clang-15 in \"tidy\" task
* refactor: Replace GetTimeMicros by SystemClock
* test: Remove unused Check
* default constructors
* Fix fund transaction case at 0-value, 0-fee
* test: Default initialize `should_freeze` to `true`
* refactor: Drop no longer used `swap` member functions
* clang-tidy: Fix modernize-use-default-member-init in `CScriptCheck`
* refactor: Drop no longer used `CScriptCheck()` default constructor
* refactor: Use move semantics in `CCheckQueue::Loop`
* clang-tidy, test: Fix bugprone-use-after-move in `Correct_Queue_range()`
* refactor: Make move semantics explicit for callers
* refactor: Use move semantics in `CCheckQueue::Add`
* test, refactor: Avoid `CScriptCheck::swap` in `transaction_tests`
* consensus, refactor: Avoid `CScriptCheck::swap` in `CheckInputScripts`
* test: Fix TypeError in wait_for_debug_log
* Refactor: Remove unused FlatFilePos::SetNull
* log: on new valid header
* log: net: new header over cmpctblock
* guix: use osslsigncode 2.5
* doc: add release note for 26899
* p2p: set `-dnsseed` and `-listen` false if `maxconnections=0`
* Add mempool tracepoints
* test: check that sigop limit also affects ancestor/descendant size
* p2p: Account for MANUAL conns when diversifying persistent outbound conns
* p2p: Diversify connections only w.r.t
*persistent
* outbound peers
* test: Make the unlikely race in p2p_invalid_messages impossible
* test: fix race condition in encrypted wallet rescan tests
* test: psbt: check non-witness UTXO removal for segwit v1 input
* test: speedup rpc_psbt.py by whitelisting peers (immediate tx relay)
* test: PSBT: eliminate magic numbers for global unsigned tx key (0)
* refactor: Don\'t use global chainparams in chainstatemanager method
* Split non/kernel chainparams
* Add factory functions for Main/Test/Sig/Reg chainparams
* Decouple RegTestChainParams from ArgsManager
* Decouple SigNetChainParams from ArgsManager
* doc: add mempool/contents rest verbose and mempool_sequence args
* tests: mempool/contents verbose and mempool_sequence query params tests
* rest: add verbose and mempool_sequence query params for mempool/contents
* wallet: remove coin control arg from AutomaticCoinSelection
* wallet: remove unused methods
* wallet: GroupOutput, remove unneeded \"spendable\" check
* wallet: APS, don\'t create empty groups
* wallet: do not make two COutputs, use shared_ptr
* refactor: Add and use PRUNE_TARGET_MANUAL constexpr
* Move ::fImporting to BlockManager
* Pass fImporting to ImportingNow helper class
* Move ::fPruneMode into BlockManager
* Move ::nPruneTarget into BlockManager
* guix: pass --enable-initfini-array to release GCC
* qt: mask values on transactions view
* refactor: Move error() from util/system.h to logging.h
* refactor: Extract util/exception from util/system
* [test] Add manual prune startup test case
* [util] Avoid integer overflow in CheckDiskSpace
* Improve address decoding errors
* test: Default timeout factor to 4 under --valgrind
* Squashed \'src/secp256k1/\' changes from 21ffe4b22a9..bdf39000b9c
* refactor: Consistently use args over gArgs in init.cpp
* refactor: Consistently use context args over gArgs in node/interfaces
* util: fix argsman dupe key error
* doc: update broken links
* doc: Show how less noisy clang-tidy output can be achieved
* Use string interpolation for default value of -listen
* test: add coverage for sigop limit policy (`-bytespersigop` setting)
* test: Use self.wait_until over wait_until_helper
* test: Add test for getblockfrompeer on pruned nodes
* rpc: Add note on guarantees to getblockfrompeer
* github: Switch to yaml issue templates
* gui: fix comments for BanTableModel and BanTablePriv::refreshBanlist()
* gui: use the stored CSubNet entry when unbanning
* build: Re-enable external signer on Windows
* configure: Detect compatibility of Boost.Process rather than hardcode non-Windows
* test: Flatten miniwallet array and remove random fee in longpoll
* rpc, wallet: use the same `next_index` in listdescriptors and importdescriptors
* doc: remove \'omitted...\' doc for rpc getrawtransaction when verbose is 2
* doc: DummySignInput mention external signer
* Use steady clock in FlushStateToDisk
* Use steady clock in SeedStrengthen and FindBestImplementation
* docs: update assumeutxo.md
* test: add snapshot completion unittests
* refactor: make MempoolMutex() public
* log: add LoadBlockIndex() message for assumedvalid blocks
* validation: add ChainMan logic for completing UTXO snapshot validation
* move-only-ish: init: factor out chainstate initialization
* add Chainstate::HasCoinsViews()
* validation: add CChainState::m_disabled and ChainMan::isUsable
* add ChainstateManager.GetSnapshot{BaseHeight,BaseBlock}()
* Deduplicate bitcoind and bitcoin-qt init code
* Add InitError(error, details) overload
* Extend bilingual_str support for tinyformat
* scripted-diff: Remove double newlines after some init errors
* util: Work around ParseHex gcc cross compiler bug
* test: Reduce extended timeout on abortnode test
* http: Release server before waiting for event base loop exit
* http: Track active requests and wait for last to finish
* wallet: single output groups filtering and grouping process
* wallet: unify outputs grouping process
* test: coinselector_tests refactor, use CoinsResult instead of plain std::vector
* wallet: decouple outputs grouping process from each ChooseSelectionResult
* refactor: make OutputGroup::m_outputs field a vector of shared_ptr
* test: wallet, add coverage for outputs grouping process
* wallet: make OutputGroup \"positive_only\" filter explicit
* Expand scantxoutset help text to cover tr() and miniscript
* wallet: use Mutex for g_sqlite_mutex instead of GlobalMutex
* ci: Remove unused EXPECTED_TESTS_DURATION_IN_SECONDS env var
* util: add missing include and fix function signature
* Fixed a couple of typos in comments to make linter happy
* refactor: use string_view for RPC named argument values
* refactor: reduce unnecessary complexity in ParseNonRFCJSONValue
* test: add cases to JSON parsing
* doc: Update Transifex links and slug format in Release Process
* guix: use cmake-minimal over cmake
* guix: use coreutils-minimal over coreutils
* guix: use bash-minimal over bash
* qt: Update translation source file
* qt: Periodic translation updates from Transifex
* Make miniscript fuzzers avoid script size limit
* Make miniscript fuzzers avoid ops limit
* Enforce type consistency in miniscript_stable fuzz test
* Simplify miniscript fuzzer NodeInfo struct
* Do base type propagation in miniscript_stable fuzzer
* valgrind: remove libsecp256k1 suppression
* refactor: Move calculation logic out from `CheckSequenceLocksAtTip()`
* refactor: Add `CalculateLockPointsAtTip()` function
* refactor: Stop using gArgs global in system.cpp
* refactor: Use new GetConfigFilePath function
* [ci] change lint to bookworm for git v2.38
* docs: GetDataDirNet and GetDataDirBase don\'t create datadir
* test: add functional test for ScanAndUnlinkAlreadyPrunedFiles
* test: add unit test for ScanAndUnlinkAlreadyPrunedFiles
* prune: scan and unlink already pruned block files on startup
* doc: add explanation for fail_on_insufficient_dbcache
* init: Return more fitting ChainStateLoadStatus if verification was interrupted
* depends: use FORTIFY_SOURCE=3 with libevent
* wallet: skip R-value grinding for external signers
* wallet: annotate bools in descriptor SPKM FillPSBT()
* build: don\'t define DLL_EXPORT for windows
* util: Return empty vector on invalid hex encoding
* test: Add hex parse unit tests
* verify-commits: Mention git v2.38.0 requirement
* verify-commits: Skip checks for commits older than trusted roots
* verify-commits: Use merge-tree in clean merge check
* verify-commits: Remove all allowed commit exceptions
* verify-commits: Move trusted-keys valid sig check into verify-commits itself
* doc: mention sanitizer suppressions in developer docs
* Revert \"[contrib] verify-commits: Add MarcoFalke fingerprint\"
* util: Remove duplicate include
* util: make GetDataDir read-only & create datadir..
* util: add ArgsManager datadir helper functions
* Use void
* throughout support/lockedpool.h
* Add release note for PR#25943
* Add test for unspendable transactions and parameter \'maxburnamount\' to sendrawtransaction.
* docs: add ramdisk guide for running tests on OSX
* doc: add release note for #25574
* validation: report if pruning prevents completion of verification
* init, validation: Improve handling if VerifyDB() fails due to insufficient dbcache
* validation: return VerifyDBResult::INTERRUPTED if verification was interrupted
* validation: Change return value of VerifyDB to enum type
* test: Replace 0xC0 constant
* Detailed error message for passphrases with null chars
* doc: Release notes for 27068
* Test case for passphrases with null characters
* Pass all characters to SecureString including nulls
* kernel: add missing include
* i2p: use consistent number of tunnels with i2pd and Java I2P
* i2p: lower the number of tunnels for transient sessions
* i2p: reuse created I2P sessions if not used
* Raise PRNG seed log to INFO.
* wallet, rpc: Update migratewallet help text for encrypted wallets
* tests: Tests for migrating wallets by name, and providing passphrase
* wallet: Be able to unlock the wallet for migration
* rpc: Allow users to specify wallet name for migratewallet
* wallet: Allow MigrateLegacyToDescriptor to take a wallet name
* fuzz: avoid redundant dup key checks when creating Miniscript nodes
* lint: enable E722 do not use bare except
* test: test rescanning encrypted wallets
* wallet: ensure that the passphrase is not deleted from memory when being used to rescan
* wallet: keep track of when the passphrase is needed when rescanning
* BIP341 txdata cannot be precomputed without spent outputs
* wallet: reuse change dest when recreating TX with avoidpartialspends
* rpc: fix successful broadcast count in `submitpackage` error msg
* tests: decodescript can infer descriptors for scripts >520 bytes
* rpc: Use FlatSigningProvider in decodescript
* build: use _FORTIFY_SOURCE=3
* test: fix intermittent issue in `p2p_disconnect_ban`
* test: fix test abort for high timeout values (and `--timeout-factor 0`)
* refactor: avoid duplicating BlockAssembler::Options members
* refactor: rename local gArgs to args
* random: consolidate WIN32 #ifdefs
* random: remove compat.h include
* random: use int for MAX_TRIES
* De-duplicate add_coin methods to a test util helper
* Create InsecureRandMoneyAmount() test util helper
* Move random test util code from setup_common to random
* refactor, validation: Add ChainstateManagerOpts db options
* refactor, txdb: Use DBParams struct in CBlockTreeDB
* refactor, txdb: Add CoinsViewOptions struct
* refactor, dbwrapper: Add DBParams and DBOptions structs
* p2p: ProcessAddrFetch(-seednode) is unnecessary if -connect is specified
* net: remove CService::ToStringPort()
* gui: simplify OptionsDialog::updateDefaultProxyNets()
* net: remove CService::ToString() use ToStringAddrPort() instead
* net: remove CNetAddr::ToString() and use ToStringAddr() instead
* scripted-diff: rename ToStringIP[Port]() to ToStringAddr[Port]()
* refactor: remove
include from wallet.h
* refactor: wallet, remove global \'ArgsManager\' access
* wallet: set \'-walletnotify\' script instead of access global args manager
* wallet: set keypool_size instead of access global args manager
* guix: combine glibc hardening options into hardened-glibc
* guix: remove no-longer needed powerpc workaround
* guix: use glibc 2.27 for all Linux builds
* script: remove out-of-date snprintf TODO
* net: remove orphaned CSubNet::SanityCheck()
* test: add tests for `outputs` argument to `bumpfee`/`psbtbumpfee`
* wallet: add `outputs` arguments to `bumpfee` and `psbtbumpfee`
* update the freebsd build doc to reflect recent changes to DB4 install process
* test: add coverage for unparsable `-maxuploadtarget`
* doc: remove mention of \"proper signing key\"
* test: previous releases: add v24.0.1
* fs: drop old WSL1 hack.
* psbt: support externally provided preimages for Miniscript satisfaction
* qa: add a \"smart\" Miniscript fuzz target
* qa: add a fuzz target generating random nodes from a binary encoding
* qa: functional test Miniscript signing with key and timelocks
* refactor: make descriptors in Miniscript functional test more readable
* wallet: check solvability using descriptor in AvailableCoins
* script/sign: signing support for Miniscripts with hash preimage challenges
* script/sign: signing support for Miniscript with timelocks
* script/sign: basic signing support for Miniscript descriptors
* Align \'e\' property of or_d and andor with website spec
* Various additional explanations of the satisfaction logic from Pieter
* miniscript: satisfaction support
* Remove laanwj from trusted-keys
* s/transcation/transaction/
* refactor: Disable unused special members functions in `UnlockContext`
* Pass MSG_MORE flag when sending non-final network messages
* test: simplify and speedup mempool_updatefromblock.py by using MiniWallet
* Add unit test for ChaCha20\'s new caching
* Improve test vectors for ChaCha20
* Inline ChaCha20 32-byte specific constants
* Only support 32-byte keys in ChaCha20{,Aligned}
* Use ChaCha20Aligned in MuHash3072 code
* Use ChaCha20 caching in FastRandomContext
* Add fuzz test for testing that ChaCha20 works as a stream
* Add xoroshiro128++ PRNG
* Make unrestricted ChaCha20 cipher not waste keystream bytes
* Rename ChaCha20::Seek -> Seek64 to clarify multiple of 64
* Split ChaCha20 into aligned/unaligned variants
* verify-commits: Bump trusted git root to after most recent laanwj merge
* Add settings.json prune-prev, proxy-prev, onion-prev settings
* cli: include local (\"unreachable\") peers in -netinfo table
* test: p2p: check that headers message with invalid proof-of-work disconnects peer
* descriptors: fix docstring (param [in] vs [out])
* test: Fix intermittent sync issue in wallet_pruning
* Modernize rpcauth.py and its tests
* Zero out wallet master key upon lock
* mapport: require miniupnpc API version 17 or later
* Exercise non-DIRTY spent coins in caches in fuzz test
* Add deterministic mode to CCoinsViewCache
* Add CCoinsViewCache::SanityCheck() and use it in fuzz test
* Add simulation-based CCoinsViewCache fuzzer
* doc: Update ci docs
* ci: Cache stuff in volumes, not host folders
* test: fix immediate tx relay in wallet_groups.py
* doc: Remove unused REVIEWERS file
* net: add `Ensure{any}Banman`
* ci: Fix `fingerprint_script` for `depends` subdir caches
* test: Fix intermittent sync issue in wallet_pruning
* qt: Persist Mask Values option
* ci: Inline `MACOS_NATIVE_TASK_TEMPLATE`
* ci: Re-introduce `depends_built` cache back in macOS and Android tasks
* ci: Use the latest Ubuntu LTS for \"ARM64 Android APK\" task
* build: set boost cppflags with --enable-fuzz
* depends: define `__BSD_VISIBLE` for FreeBSD bdb build
* doc: Document affected gcc versions for -fstack-reuse=none workaround
* doc: use arch agnostic clang path in fuzzing doc (macOS)
* test: remove unused vars in `feature_block`
* docs: document c-style cast prohibition
* Remove reindex special case from the progress bar label
* build: copy config.{guess,sub} post autogen in zmq package
* build: Make dependency package archive timestamps deterministic
* test: Add test for file system permissions
* Apply default umask in `SetupEnvironment()`
* Remove `-sysperms` option
* contrib: make DNS seeds file an argument in CLI
* refactor: modernize the implementation of uint256.
*
* Remove use of snprintf and simplify
* Update nanobench to version v4.3.10
* log: Log VerifyDB Progress over multiple lines
* validation: Skip VerifyDB checks of level >=3 if dbcache is too small
* test: Remove redundant test
* doc: release notes for #27037
* rpc: decode Miniscript descriptor when possible in decodescript
* gui: Show watchonly balance only for Legacy wallets
* Fix comment about how wallet txs are sorted
* Fill out dust limit unit test for known types except bare multisig
* test: Use std::unique_ptr over manual delete in coins_tests
* ci: Print iwyu patch in git diff format
* ci: Cache package manager install step
* Fix misleading RPC console wallet message
* Correctly limit overview transaction list
* refactor: Remove unused CDataStream SerializeMany constructor
* Use steady clock for logging timer
* ci: avoid using -Werror for older compilers
* wallet: migrate wallet, exit early if no legacy data exist
* addrman: Use std::nullopt instead of {}
* test: Remove AddrMan unit test that fails consistency checks
* Fix clang-tidy readability-const-return-type violations
* refactor: use `Hash` helper for double-SHA256 calculations
* doc: NetPermissionFlags for tx relay in blocksonly
* doc: Fix comment syntax error
* test, build: Separate `read_json` function into its own module
* clang-tidy: Force to check all headers
* clang-tidy: Fix `modernize-use-default-member-init` in headers
* net: simplify the call to vProcessMsg.splice()
* addrman, refactor: combine two size functions
* addrman, refactor: move count increment into Create()
* net: Load fixed seeds from reachable networks for which we don\'t have addresses
* addrman: add function to return size by network and table
* build: Build minisketch test in `make check`, not in `make`
* refactor: rpc: set TxToJSON default verbosity to SHOW_DETAILS
* build: Avoid `BOOST_NO_CXX98_FUNCTION_BASE` macro redefinition
* test: refactor: introduce `replace_in_config` helper
* depends: ensure we are appending to sqlite cflags
* Add assertions that BatchWrite(erase=true) erases
* Avoid unclear {it = ++it;}
* Follow coding style for named arguments
* Make test/fuzz/coins_view exercise CCoinsViewCache::Sync()
* refactor: Remove stray cs_main redundant declaration
* doc: Export threadsafety.h from sync.h
* test: add test for coins view flush behavior using Sync()
* test: add use of Sync() to coins tests
* test: refactor: clarify the coins simulation
* coins: add Sync() method to allow flush without cacheCoins drop
* Use AutoFile and HashVerifier where possible
* Add HashVerifier
* ci: Drop no longer needed package-specific flags
* build: Propagate user-defined flags to host packages
* doc: add release notes for 26896
* build: remove --enable-upnp-default from configure
* build: remove --enable-natpmp-default from configure
* Remove configure-time setting of DEFAULT_UPNP
* Remove configure-time setting of DEFAULT_NATPMP
* test: Check that orphaned coinbase unconf spend is still abandoned
* wallet: Automatically abandon orphaned coinbases and their children
* net_processing: simplify logging statement
* test: fix intermittent errors in p2p_ibd_stalling.py
* refactor: Extract RIPEMD160
* build: remove unneeded var exporting
* build: remove Boost lib detection from ax_boost_base
* build: Fix depends build system when working with subtargets
* ci: Fetch no git history, unless lint
* contrib: remove install_db4.sh
* doc: add new NO_
* options from #26833
* Add BlockManager::IsPruneMode()
* Add BlockManager::GetPruneTarget()
* Add BlockManager::LoadingBlocks()
* test: add functional test for IBD stalling logic
* p2p: Make block stalling timeout adaptive
* test: refactor: simplify p2p_eviction.py by using MiniWallet
* test: refactor: simplify p2p_tx_download.py by using MiniWallet
* depends: systemtap: remove variadic params that trigger compiler warnings
* depends: systemtap 4.8
* Remove unused CDataStream::SetType
* Use DataStream where possible
* streams: Add DataStream without ser-type and ser-version
* net_processing: indicate more work to do when orphans are ready to reconsider
* net_processing: Don\'t process tx after processing orphans
* net_processing: only process orphans before messages
* txorphange: Drop redundant originator arg from GetTxToReconsider
* txorphanage: index workset by originating peer
* refactor: Remove c_str from util/check
* rpc: Throw more user friendly arg type check error
* init: Remove sensitive flag from rpcbind
* ci: Fix APPEND_APT_SOURCES_LIST trying to modify the host system
* build: pass --enable-debug to sqlite when DEBUG=1
* build: use more recommended sqlite3 compile options
* clang-tidy: Fix `performance-no-automatic-move` in headers
* clang-tidy: Fix `performance-move-const-arg` in headers
* [fuzz] Actually use mocked mempool in tx_pool target
* [fuzz] Assert that omitting missing transactions always fails block reconstruction
* [fuzz] Add PartiallyDownloadedBlock target
* [block encodings] Avoid fuzz blocking asserts in PartiallyDownloadedBlock
* [block encodings] Make CheckBlock mockable for PartiallyDownloadedBlock
* test: Avoid rpc timeout in p2p_headers_sync_with_minchainwork
* build: fix usage of -Wloop-analysis
* db: Change DatabaseCursor::Next to return status enum
* wallet: Have cursor users use DatabaseCursor directly
* wallet: Introduce DatabaseCursor RAII class for managing cursor
* Move SafeDbt out of BerkeleyBatch
* randomenv: consolidate WIN32 #ifdefs
* random: remove windows-only compat.h include in randomenv
* doc: improve doc for RPCArg::Optional::OMITTED
* scripted-diff: use RPCArg::Optional::OMITTED over OMITTED_NAMED_ARG
* depends: fix systemtap download URL
* doc: release note on mempool size in -blocksonly
* doc: Update blocksonly behaviour in reduce-memory
* mempool: Don\'t share mempool with dbcache in blocksonly
* test: Fix intermittent feature_rbf issue
* Add unit test for ComputeTapleafHash
* Add missing includes to fix gcc-13 compile error
* RPC: make RPCResult::MatchesType return useful errors
* Abstract out ComputeTapbranchHash
* Do not use CScript for tapleaf scripts until the tapleaf version is known
* lint: specify the right commit range when running locally
* test: add an easy way to run linters locally
* addrdb: Only call Serialize() once
* hash: add HashedSourceWriter
* [fuzz] Enable erlay in process_message(s) targets
* doc: add release note for #25957 (fast wallet rescan)
* doc: Add release note for shutdownnotify.
* util: Add -shutdownnotify option.
* wallet: unify FindNonChangeParentOutput functions
* wallet: simplify ListCoins implementation
* scripted-diff: Use new python 3.7 keywords
* Revert \"contrib: Fix capture_output in getcoins.py\"
* Bump minimum python version to 3.7
* doc: Properly report optional RPC args
* refactor: Introduce is_top_level_arg
* refactor: Remove const to fix performance-move-const-arg clang-tidy errors
* doc: add databases/py-sqlite3 to FreeBSD test suite deps
* refactor: use convenience fn to auto parse non-string parameters
* rpc: remove optional from fStateStats fields
* ci: Add missing lint dependency
* ci: Bump --combinedlogslen to debug intermittent issues
* build: move rpc/request from util lib to common
* debian: remove nonexistent files from copyright
* ci: Bump lint task image to Ubuntu Jammy
* ci: Use pyenv\'s `python-build` to install Python in lint task
* test: Run mempool_packages.py with MiniWallet
* test: Return fee from MiniWallet
* test: Return chain of MiniWallet txs from MiniWallet chain method
* test: Refactor MiniWallet sign_tx
* test: Return wtxid from create_self_transfer_multi
* refactor: Remove duplication of clang-tidy\'s check names
* doc: Fix incorrect sendmany RPC doc
* test: Add test for missing and omitted required arg
* test: wallet: add coverage for `-spendzeroconfchange` setting
* test: remove `-spendzeroconfchange` setting from mempool_limit.py
* clang-tidy, qt: Force checks for headers in `src/qt`
* clang-tidy, qt: Fix `modernize-use-default-member-init` in headers
* build: allow NO_LIBEVENT=1 in depends
* build: allow NO_BOOST=1 in depends
* rpc: Run type check against RPCArgs
* test: Fix wrong types passed to RPCs
* test: simplify tests by using the pre-mined chain
* test: remove redundant blocks generation logic
* test: add `rescan_utxos` in MiniWallet\'s initialization
* rpc: Return accurate results for scanblocks
* rpc: add minconf and maxconf options to sendall
* Wallet/RPC: Allow specifying min & max chain depth for inputs used by fund calls
* test: Run feature_bip68_sequence.py with MiniWallet
* test: Add \"include mempool\" flag to MiniWallet rescan_utxos
* test: Add \"include immature coinbase\" flag to MiniWallet get_utxos
* test: Add signs P2TR and RAWSCRIPT to MiniWallet sign_tx
* refactor: add kernel/cs_main.
*
* test: add coverage for dust mempool policy (`-dustrelayfee` setting)
* test: add `CScript` method for checking for witness program
* ci: Bump `ccache` version to the latest 4.7.4 in \"Win64 native\" task
* ci: Bump vcpkg to the latest version 2023.01.09
* test: refactor: simplify p2p_permissions.py by using MiniWallet
* test: Remove redundant function call
* gui: bugfix, catch invalid networks combination crash
* scripts: add PE Canary check to security-check
* build: fix configuring with only bitcoin-util
* test: skip sqlite3 tests if it isn\'t available
* Add secp256k1_selftest call
* Remove explicit enabling of default modules
* Adapt to libsecp256k1 API changes
* Squashed \'src/secp256k1/\' changes from 44c2452fd3..21ffe4b22a
* Change dots to an ellipsis and fix capitalization
* Update to mention restoring wallet via GUI
* ci: Stop and remove CI container
* scripted-diff: ci: Rework docker naming
* doc: remove usages of C++11
* test: Fix intermittent timeout in p2p_permissions.py
* doc: move errant release note to doc/
* build: remove already tested headers from AC_CHECK_HEADERS
* For feebump, ignore abandoned descendant spends
* [bench] BlockAssembler with mempool packages
* [test util] lock cs_main before pool.cs in PopulateMempool
* [test util] randomize fee in PopulateMempool
* [miner] allow bypassing TestBlockValidity
* [refactor] parameterize BlockAssembler::Options in PrepareBlock
* [refactor] add helper to apply ArgsManager to BlockAssembler::Options
* refactor: Make `ThreadHTTP` return void
* doc: fix up -netinfo relaytxes help
* clang-tidy: Add `performance-no-automatic-move` check
* test: add coverage for `purpose` arg in `listlabels`
* [validation] return MempoolAcceptResult for every tx on PCKG_TX failure
* [refactor] rename variables in AcceptPackage for clarity
* [doc] release note effective-feerate and effective-includes RPC results
* [validation] remove PackageMempoolAcceptResult::m_package_feerate
* [rpc] return effective-includes in testmempoolaccept and submitpackage
* [rpc] return effective-feerate in testmempoolaccept and submitpackage
* [validation] return wtxids of other transactions whose fees were used
* [validation] return effective feerate from mempool validation
* [test] package validation quits early due to non-policy, non-missing-inputs failure
* [validation] when quitting early in AcceptPackage, set package_state and tx result
* doc: remove recommended I2P router versions
* doc: update/clarify/de-emphasize I2P transient address section
* doc: update bandwidth section of I2P documentation
* doc: clarify -i2pacceptincoming help documentation
* wallet: Skip rescanning if wallet is more recent than tip
* test: Invalid label name coverage
* refactor: Add sanity checks in LabelFromValue
* rpc: Sanitize label name in various RPCs
* doc: net: fix link to onion address encoding scheme [ONIONADDRESS]
* ci: Run one task with all tests on credits
* ci: Remove unused busybox workaround
* ci: Create named symbol for BINS_SCRATCH_DIR
* doc: Add release notes for #26618
* rpc: Prevent unloading a wallet when rescanning
* test: add coverage for absolute timestamp in `setban`
* p2p, rpc: don\'t allow past absolute timestamp in `setban`
* ci: Fix ci_native_fuzz_msan CONTAINER_NAME
* tests: Use unique port for ZMQ tests
* doc: Update Boost version in doc/dependencies.md
* build: Update Boost to 1.81.0 in depends
* refactor: Work around Werror=free-nonheap-object in AssumeCalculateMemPoolAncestors
* test: wallet: check that labels are migrated to watchonly wallet
* wallet: fully migrate address book entries for watchonly/solvable wallets
* refactor: use braced init for integer constants instead of c style casts
* test: Fix feature_startupnotify intermittent issue
* contrib: remove builder keys
* test: add coverage for cross-chain wallet restore
* wallet: fix GUI crash on cross-chain legacy wallet restore
* compat: use STDIN_FILENO over 0
* doc: fix: prevHeights entries are set to 0, not removed
* wallet: remove `mempool_sequence` from `transactionRemovedFromMempool`
* wallet: remove `mempool_sequence` from `transactionAddedToMempool`
* test: Change coinselection parameter location to make tests independent
* bench: add benchmark for wallet \'AvailableCoins\' function.
* ci: Properly set COMMIT_RANGE in lint task
* Use same Python executable for subprocesses as for all-lint.py
* doc: Correct linked Microsoft URLs
* use sha256 command instead of sha256sum on FreeBSD
* rpc: Correct RPCHelpMan for fundrawtransaction\'s input_weights field
* txmempool: Remove unused clear() member function
* gui: create tx, launch error dialog if backend throws runtime_error
* wallet: coin selection, add duplicated inputs checks
* wallet: return accurate error messages from Coin Selection
* wallet: make SelectCoins flow return util::Result
* wallet: refactor eight consecutive \'AttemptSelection\' calls into a loop
* mempool: log/halt when CalculateMemPoolAncestors fails unexpectedly
* mempool: add AssumeCalculateMemPoolAncestors helper function
* mempool: use util::Result for CalculateMemPoolAncestors
* mempool: use util::Result for CalculateAncestorsAndCheckLimits
* script: update python linter dependencies
* script, test: fix python linter E275 errors with flake8 5.0.4
* rpc: Improve error when wallet is already loaded
* test: move coins result test to wallet_tests.cpp
* test: extend and simplify availablecoins_tests
* wallet: AvailableCoins, add arg to include/skip locked coins
* refactor: Move feerate comparison invariant outside of the loop
* walletdb: refactor: drop unused `FindWalletTx` parameter and rename
* ci: Remove duplicate CC and CXX from tsan task
* Revert \"ci: Use clang-15 in tsan task\"
* Revert \"test: Drop no longer needed `race:epoll_ctl` TSan suppression\"
* ci: Move `--enable-c++20` from \"tidy\" task back to \"ASan...\" one
* ci: Use clang-15 in tsan task
* test: add coverage for unknown wallet flag in `setwalletflag`
* test: Drop no longer required bench output redirection
* bench: Suppress output when running with `-sanity-check` option
* test: Drop no longer needed `race:epoll_ctl` TSan suppression
* scripted-diff: Insert missed copyright header
* scripted-diff: Bump copyright headers
* Add release note for MIN_STANDARD_TX_NONWITNESS_SIZE relaxation
* Relax MIN_STANDARD_TX_NONWITNESS_SIZE to 65 non-witness bytes
* test: improve error msg on previous release tarball extraction failure
* test: self-sign previous release binaries for arm64 macOS
* ci: remove --prefix from msan job
* ci: Use `CONFIG_SITE` variable and `--prefix` option properly
* doc: Refactor/Format getrawtransaction RPC docs and add ScriptPubKeyDoc function
* qt: Load PSBTs using istreambuf_iterator rather than istream_iterator
* test: speed up wallet_fundrawtransaction.py and wallet_sendall.py
* test: prefer sqlite for wallet tests
* test: make wallet_migration.py pass with both wallet flags
* rpc: bumpfee signer support
* rpc: document bools in FillPSBT() calls
* qt: Drop no longer used `SplashScreen::finish()` slot
* qt: Drop no longer used `BitcoinApplication::splashFinished()` signal
* qt: Delete splash screen widget explicitly
* test, lint: add `crypted` to `ignore-words`
* test: call `keypoolrefill` with private keys disabled should throw an error
* rpc: Require NodeStateStats object in getpeerinfo
* remove CBlockIndex copy construction
* tests: Reorder longer running tests in test_runner
* tests: Whitelist test p2p connection in rpc_packages
* tests: Use waitfornewblock for work queue test in interface_rpc
* tests: Initialize sigops draining script with bytes in feature_taproot
* tests: Use batched RPC in feature_fee_estimation
* tests: reduce number of generated blocks for wallet_import_rescan
* test: Improve `check-doc.py` pattern
* clang-tidy: Fix `performance-for-range-copy` in headers
* clang-tidy: Fix `modernize-use-nullptr` in headers
* Make bitcoin-util grind_task tsan friendly
* test: Introduce MIN_BLOCKS_TO_KEEP constant
* test: Wallet imports on pruned nodes
* rpc: Enable wallet import on pruned nodes
* doc: add 23.1 release notes
* clang-tidy: Fix `readability-redundant-string-init` in headers
* doc: add 22.1 release notes
* test: Avoid intermittent timeout in feature_assumevalid.py
* wallet: if only have one output type, don\'t perform \"mixed\" coin selection
* test: add add_wallet_options to TestShell
* rpc: Return fee and prevout(s) to getrawtransaction
* Minor fix: Don\'t directly delete abandoned txes
* wallet: Sanity check fee paid cannot be negative
* wallet: Move fee underpayment check to after fee setting
* wallet: Rename nFeeRet in CreateTransactionInternal to current_fee
* test: Suggested cleanups for rpc_namedparams test
* bitcoin-cli: Make it an error to specify the \"args\" parameter two different ways
* rpc: Make it an error server-side to specify same named parameter multiple times
* test: Add RPC tests for same named parameter specified more than once
* test: add -maxtipage test for the maximum allowable value
* fix: validation: cast now() to seconds for maxtipage comparison
* refactor, doc: Improve SetupAddressRelay call in version processing
* p2p: Don\'t self-advertise during VERSION processing
* refactor: Refactored RequestMethodString function to follow developer notes
* refactor: Deleted unreachable code in httpserver.cpp
* build: Update `libmultiprocess` library
* univalue: Remove confusing getBool method
* bugfix: Strict type checking for RPC boolean parameters
* test: Move rpc_fundrawtransaction.py to wallet_fundrawtransaction.py
* test: Move feature_backwards_compatibility.py to wallet_backwards_compatibility.py
* test: Use last release in compatibility tests
* test: Fix backwards compatibility intermittent failure
* build: Move environment variables into `$(package)_config_env`
* build: Make $(package)_
*_env available to all $(package)_
*_cmds
* refactor: Pass reference to last header, not pointer
* Make static nLastFlush and nLastWrite Chainstate members
* rpc: reduce LOCK(cs_main) scope in gettxoutproof
* rpc: reduce LOCK(cs_main) scope in GetUndoChecked and getblockstats
* rpc: reduce LOCK(cs_main) scope in GetBlockChecked and getblock
* zmq: remove LOCK(cs_main) from NotifyBlock
* rest: reduce LOCK(cs_main) scope in rest_block
* doc: add release note for 25934
* test: add coverage for `label` in `listsinceblock`
* wallet, rpc: add `label` to `listsinceblock`
* refactor, wallet: use optional for `label` in `ListTransactions`
* doc: Add completion subdir to contrib/README.md
* script: Add fish completions
* refactor: Sub-folder bash completions
* test: Changed small_txpuzzle_randfee to return the virtual size instead of the transaction hex for feerate calculation.
* refactor: Rename ambiguous interfaces::MakeHandler functions
* build: remove BOOST_CPPFLAGS from libbitcoin_util
* refactor: Move src/interfaces/
*.cpp files to libbitcoin_common.a
* util: Include full version id in bug reports
* doc: Drop no longer relevant comment
* doc: move release notes to 24.0.1 and add notice
* refactor: Move `txmempool_entry.h` --> `kernel/mempool_entry.h`
* test: Check max transaction weight in CoinSelection
* wallet: Check max tx weight in coin selector
* Fixup clang-tidy named argument comments
* wallet: Change coin selection fee assert to error
* util: Add StrFormatInternalBug and STR_INTERNAL_BUG
* test: Test exclusion of OP_RETURN from getblockstats
* test: Fix getblockstats test data generator
* rpc: Improve getblockstats
* validation, index: Add unspendable coinbase helper functions
* test: check that loading descriptor wallet with legacy entries throws error
* wallet: throw error if legacy entries are present on loading descriptor wallets
* test: Run mempool_compatibility.py with MiniWallet
* refactor: make CoinsResult total amounts members private
* wallet: add assert to SelectionResult::Merge for safety
* wallet: SelectCoins, return early if wallet\'s UTXOs cannot cover the target
* test: bugfix, coinselector_test, use \'CoinsResult::Erase/Add\' instead of direct member access
* test: Coin Selection, duplicated preset inputs selection
* test: wallet, coverage for CoinsResult::Erase function
* wallet: bugfix, \'CoinsResult::Erase\' is erasing only one output of the set
* test: Move tx creation to create_self_transfer_multi
* rpc: warn that nodes ignore requests for old stale blocks
* doc: Add I2P bandwidth guidance to i2p.md
* refactor: Rename local variable to distinguish it from type alias
* test: Fix intermittent issue in rpc_net.py
* test: Add sendall test for min-fee setting
* [test] Add p2p_tx_privacy.py
* [net processing] Assume that TxRelay::m_tx_inventory_to_send is empty pre-verack
* [net processing] Ensure transaction announcements are only queued for fully connected peers
* ci: only run USDT interface tests on CirrusCI
* test: Remove unused blocktools imports from wallet_bumpfee
* test: refactor: eliminate genesis block timestamp magic numbers
* test: remove unneeded extra_args code
* test: add extra_args to BTF class
* wallet: Explicitly say migratewallet on encrypted wallets is unsupported
* tests: Test for migrating encrypted wallets
* wallet: Avoid null pointer deref when cleaning up migratewallet
* test: add `ismine` test for descriptor scriptpubkeyman
* test, refactor: Reorder sendtxrcncl tests for better readability
* p2p, refactor: Extend logs for unexpected sendtxrcncl
* p2p, test, refactor: Minor code improvements
* p2p: Clarify sendtxrcncl policies
* test: Expand unit and functional tests for txreconciliation
* p2p, refactor: Switch to enum class for ReconciliationRegisterResult
* p2p: Drop roles from sendtxrcncl
* tests: stabilize sendtxrcncl test
* test: Set wallet type in test_runner when only one type is allowed
* test: load wallet, coverage for crypted keys
* refactor: move DuplicateMockDatabase to wallet/test/util.h
* refactor: unify test/util/wallet.h with wallet/test/util.h
* wallet: bugfix, invalid crypted key \"checksum_valid\" set
* rpc: Allow named and positional arguments to be used together
* contrib/builder-keys/keys.txt: remove unavailable key
* lint: Skip COMMIT_RANGE if no CIRRUS_PR
* test: Set default in add_wallet_options if only one type can be chosen
* test: Remove wallet option from non-wallet tests
* test: Set -disablewallet when no wallet has been compiled
* test: Make requires_wallet private
* build: fix depends bdb compilation for BSDs
* script: small fixups/improvements for get_previous_releases.py
* test: refactor `RPCPackagesTest` to use `MiniWallet`
* scripted-diff: rename and de-globalise g_cs_orphans
* Move all g_cs_orphans locking to txorphanage
* txorphanage: make m_peer_work_set private
* txorphange: move orphan workset to txorphanage
* net_processing: Localise orphan_work_set handling to ProcessOrphanTx
* net_processing: move ProcessOrphanTx docs to declaration
* net_processing: Pass a Peer& to ProcessOrphanTx
* net_processing: move extra transactions to msgproc mutex
* Remove unnecessary includes of txorphange.h
* doc: install binutils, not binutils-gold in depends
* ci: use ci_exec_root for clang install
* doc: Mention required workload when building with MSVC
* build: Drop unneeded linking of `contrib/devtools/` scripts
* script: Improve `test-{security,symbol}-check.py` robustness
* guix: Drop non-existent directories
* guix: Drop no longer used `prepend_to_search_env_var()`
* doc: move Guix uninstall instructions to INSTALL.md
* guix: OpenSSL test failure workaround
* guix: reminder to migrate guix-daemon-original customization
* guix: add guile-gnutls and guile-json to install list
* guix: recommend mounting a tmpfs on /tmp
* guix: bump recommended hash for manual installation
* fuzz: Move-only net utils
* doc: add tr() descriptor example to deriveaddresses
* Add feature_taproot case involved invalid internal pubkey
* ci: create and use non-root user for docker image
* doc: test: update/fix TestShell example instructions
* doc: clarify that NetPermissionFlags::Implicit is only about whitelists
* test: Fix intermittent failure in rpc_net.py
* util: move threadinterrupt into util
* test: Use type-safe NodeSeconds for TestMemPoolEntryHelper
* test: Remove unused sanitizer suppressions
* test: remove unused class `NodePongAdd1`
* [fuzz] Move ConsumeNetAddr to fuzz/util/net.h
* [fuzz] Make ConsumeNetAddr produce valid onion addresses
* [netaddress] Make OnionToString public
* RPC/blockchain: scan{blocks,txoutset>: Further doc improvements
* RPC/Blockchain: Clarify invalid-action error in scanblocks & scantxoutset
* src/bitcoin-cli.cpp: -getinfo help - grammar correction
* refactor: Inline `CTxMemPoolEntry` class\'s functions
* refactor: Move `CTxMemPoolEntry` class to its own module
* Add warning on first startup if free disk space is less than necessary
* test: Add getpeerinfo test for missing version message
* doc: Mac -> macOS in release notes template
* doc: Add 24.0 release notes
* log: improve some validation log messages to include hashPrevBlock
* Fixes bitcoin#26490 by preventing notifications
* Fix Transaction Relay tooltip text in Peers details window
* util: Move error message formatting of NonFatalCheckError to cpp
* scripted-diff: wallet: rename AvailableCoinsParams members to snake_case
* wallet: group AvailableCoins filtering parameters in a single struct
* RPC: listunspent, add \"include immature coinbase\" flag
* Faster -reindex by initially deserializing only headers
* util: add CBufferedFile::SkipTo() to move ahead in the stream
* Add LoadExternalBlockFile() benchmark
* test: Split overly large util_tests.cpp file
* Adjust RPCTypeCheckObj error string
* univalue: string_view test
* univalue: Avoid std::string copies
* test: Don\'t pass add_to_wallet option to walletcreatefundedpsbt
* test: add missing bech32m / BIP86 test-cases to wallet_descriptor.py
* test: Avoid collision with valid path names in `getarg_tests/logargs`
* log: mempool: log removal reason in validation interface
* rpc: doc: add missing option \"bech32m\" for `change_type` parameters
* tests: Test Taproot PSBT signing with keys in other descriptor
* tests: Use new wallets for each test in wallet_taproot.py
* psbt: Include output pubkey in additional pubkeys to sign
* sign: Fill in taproot pubkey info for all script path sigs
* test: fix intermittent failure in p2p_sendtxrcncl.py
* doc: mention BIP86 in doc/bips.md
* .python-version: bump patch version to 3.6.15
* refactor: Add LIFETIMEBOUND / -Wdangling-gsl to Assert()
* test: fix intermittent failure in feature_index_prune.py
* net: Avoid SetTxRelay for feeler connections
* test: remove unused `CHANGE_{XPRV,XPUB}` constants
* Bugfix: Check for readlink buffer overflow and handle gracefully
* refactor: move url.h/cpp from lib util to lib common
* build: add missing event cflags to libbitcoin_util
* Squashed \'src/minisketch/\' changes from 47f0a2d26f..a571ba20f9
* [net processing] Simplify use of IsContinuationOfLowWorkHeadersSync in TryLowWorkHeaderSync
* [net processing] Fixup TryLowWorkHeadersSync comment
* Bugfix: configure: bitcoin-{cli,tx,util} don\'t need UPnP, NAT-PMP, or ZMQ
* Fix: typos
* doc: correct deriveaddresses RPC name
* test: fix intermittent failure in rpc_getblockfrompeer.py
* Exclude rand from debug log
* refactor: Silence GCC Wmissing-field-initializers in ChainstateManagerOpts
* test: Make `system_tests/run_command` locale agnostic
* bench: benchmark transaction creation process
* wallet: SelectCoins, return early if target is covered by preset-inputs
* wallet: simplify preset inputs selection target check
* wallet: remove fetch pre-selected-inputs responsibility from SelectCoins
* wallet: encapsulate pre-selected-inputs lookup into its own function
* wallet: skip manually selected coins from \'AvailableCoins\' result
* wallet: skip available coins fetch if \"other inputs\" are disallowed
* rpc: make `address` field optional
* ci: Use `macos-ventura-xcode:14.1` image for \"macOS native\" task
* ci: Make `getopt` path architecture agnostic
* gui: update the screen after loading wallet
* Fix typo in comment SHA256->SHA512
* rpc: add missing lock around chainman.ActiveTip()
* test: check for false-positives in rpc_scanblocks.py
* test: add compact block filter (BIP158) helper routines
* test: add SipHash implementation for generic data in Python
* test: Add test for getblockfrompeer on syncing pruned nodes
* rpc: Pruned nodes can not fetch unsynced blocks
* test: add test for fast rescan using block filters (top-up detection)
* rpc: doc: mention rescan speedup using `blockfilterindex=1` in affected wallet RPCs
* wallet: fast rescan: show log message for every non-skipped block
* wallet: take use of `FastWalletRescanFilter`
* wallet: add `FastWalletRescanFilter` class for speeding up rescans
* wallet: add method for retrieving the end range for a ScriptPubKeyMan
* wallet: support fetching scriptPubKeys with minimum descriptor range index
* add chain interface methods for using BIP 157 block filters
* test: Check debug log as well in p2p_sendtxrcncl.py
* test: Check correct disconnect reason in p2p_sendtxrcncl.py
* test: Fix intermittent issue in p2p_sendtxrcncl.py
* iwyu: Add missing includes
* Remove g_parallel_script_checks
* Move ::fCheckBlockIndex into ChainstateManager
* Move ::fCheckpointsEnabled into ChainstateManager
* Move ::nMinimumChainWork into ChainstateManager
* Move ::hashAssumeValid into ChainstateManager
* Move ::nMaxTipAge into ChainstateManager
* rpc: add non-regression test about deriveaddresses crash when index is 2147483647
* rpc: fix crash in deriveaddresses when derivation index is 2147483647
* wallet: add taproot support to external signer
* build, msvc: Drop no longer required macro definitions for leveldb
* Revert \"test: check importing wallets when blocks are pruned throw an error\"
* [net processing] Handle IsContinuationOfLowWorkHeadersSync return value correctly when new headers sync is started
* gui: update peers window \"Transaction Relay\" label and tooltip
* gui: use fallback value for Version and User Agent during peer connection
* doc: Rearrange some lines in the dependency graph of libraries
* refactor: Use type-safe time point for CWallet::m_next_resend
* doc: add `scanblocks` to list of descriptor RPCs
* net: Set relay in version msg to peers with relay permission
* test: update feature_config_args.py
* util: warn if reindex is used in conf
* util: disallow setting conf in bitcoin.conf
* test: Test year 2106 block timestamps
* test: Test for out of bounds vout in sendall
* wallet: Check utxo prevout index out of bounds in sendall
* test: Test that sendall works with watchonly spending specific utxos
* wallet: Correctly check ismine for sendall
* build: only run high priority benchmarks in \'make check\'
* bench: surround main() execution with try/catch
* bench: explicitly make all current benchmarks \"high\" priority
* bench: add \"priority level\" to the benchmark framework
* bench: place benchmark implementation inside benchmark namespace
* Add test for PSBT input verification
* Verify PSBT inputs rather than check for fields being empty
* refactor: Replace m_params with chainman.GetParams()
* test: Use C++11 member initializers for TestMemPoolEntryHelper
* test: Remove unused txmempool include from tests
* Use `PACKAGE_NAME` in messages rather than hardcoding \"Bitcoin Core\"
* bench: Add missed `ECCVerifyHandle` instance
* test: check importing wallets when blocks are pruned throw an error
* doc: fix typo in doc/libraries.md
* doc: remove library commentary from src/Makefile.am
* test: Add functional tests for sendtxrcncl message from outbound
* test: Add functional tests for sendtxrcncl from inbound
* test: Add unit tests for reconciliation negotiation
* p2p: clear txreconciliation state for non-wtxid peers
* p2p: Finish negotiating reconciliation support
* Add helper to see if a peer is registered for reconciliations
* p2p: Forget peer\'s reconciliation state on disconnect
* p2p: Announce reconciliation support
* log: Add tx reconciliation log category
* Revert \"build: Use Homebrew\'s sqlite package if it is available\"
* add 0xb10c builder key
* test: use MiniWallet for rpc_scanblocks.py
* ci: Use all available CPUs for functional tests in \"Win64 native\" task
* add lock annotation for FeeFilterRounder::round()
* Ignore problematic blocks in DisconnectBlock
* doc: add release note about `/rest/deploymentinfo`
* doc: add `/deploymentinfo` in REST-interface
* test: add coverage for `/rest/deploymentinfo`
* rest: add `/deploymentinfo`
* style: rename variables to match coding style
* fees: make FeeFilterRounder::feeset const
* fees: make the class FeeFilterRounder thread-safe
* test: add functional test for -discover
* wallet: remove duplicate descriptor type check in GetNewDestination
* wallet: remove unused `nAccountingEntryNumber` field
* wallet: avoid double TopUp() calls on descriptor wallets
* Improve getpeerinfo pingtime, minping, and pingwait help docs
* Update getpeerinfo/-netinfo/TxRelay#m_relay_txs relaytxes docs (for v24 backport)
* Always return getpeerinfo \"minfeefilter\" field (for v24 backport)
* Make getpeerinfo field order consistent with its help (for v24 backport)
* fuzz: add scanblocks as safe for fuzzing
* test: rpc: add scanblocks functional test
* rpc: add scanblocks - scan for relevant blocks with descriptors
* rpc: move-only: consolidate blockchain scan args
* doc: add note about snapshot chainstate init
* test: add testcases for snapshot initialization
* test: move-only-ish: factor out LoadVerifyActivateChainstate()
* test: allow on-disk coins and block tree dbs in tests
* test: add reset_chainstate parameter for snapshot unittests
* validation: add ResetChainstates()
* move-only: test: make snapshot chainstate setup reusable
* blockmanager: avoid undefined behavior during FlushBlockFile
* validation: remove snapshot datadirs upon validation failure
* add utilities for deleting on-disk leveldb data
* init: add utxo snapshot detection
* validation: rename snapshot chainstate dir
* db: add StoragePath to CDBWrapper/CCoinsViewDB
* tests: Test that PSBT_OUT_TAP_TREE is included correctly
* psbt: Only include m_tap_tree if it has scripts
* psbt: Change m_tap_tree to store just the tuples
* tests: Test that PSBT_OUT_TAP_TREE is combined correctly
* psbt: Fix merging of m_tap_tree
* [BugFix]: Do not allow deserializing PSBT with empty PSBT_OUT_TAP_TREE
* ci: Use Multi-ToolTask in \"Win64 native\" task
* build: set D_WIN32_WINNT=0x0601 for mingw miniupnpc
* build: fix cflags passing for mingw miniupnpc
* refactor: revert m_next_resend to not be std::atomic
* wallet: only update m_next_resend when actually resending
* refactor: carve out tx resend timer logic into ShouldResend
* refactor: remove unused locks for ResubmitWalletTransactions
* wallet: fix capitalization in docstring
* doc: minor improvements in getutxos REST endpoint synopsis
* test: move SyncWithValidationInterfaceQueue() before Stop() in txindex_tests
* test: silence TSAN false positive in coinstatsindex_initial_sync
* net: convert standalone SetSocketNonBlocking() to Sock::SetNonBlocking()
* moveonly: move SetSocketNonBlocking() from netbase to util/sock
* net: convert standalone IsSelectableSocket() to Sock::IsSelectable()
* moveonly: move IsSelectableSocket() from compat.h to sock.{h,cpp}
* reindex, log, test: fixes #21379
* rpc: Return coinbase flag in scantxoutset
* Validate `port` options
* Validate port value in `SplitHostPort`
* sync: rename AnnotatedMixin::UniqueLock to AnnotatedMixin::unique_lock
* sync: remove DebugLock alias template
* sync: avoid confusing name overlap (Mutex)
* sync: remove unused template parameter from ::UniqueLock
* sync: simplify MaybeCheckNotHeld() definitions by using a template
* iwyu: Add zmq source files
* build: Specify native binaries explicitly when building `capnp` package
* build: Fix `capnp` package build for Android
* Use steady clock for bench logging
* scripted-diff: Rename time symbols
* refactor: move run_command from util to common
* kernel: move RunCommandParseJSON to its own file
* test: Use dedicated mempool in TestBasicMining
* test: Use dedicated mempool in TestPackageSelection
* test: Use dedicated mempool in TestPrioritisedMining
* test: Pass mempool reference to AssemblerForTest
* Fix comment typos in scriptpubkeyman.cpp, wallet.cpp, wallet.h
* build: split ARM crc & crypto extension checks
* test: Remove confusing DUMMY_P2WPKH_SCRIPT
* index: Improve BaseIndex::BlockUntilSyncedToCurrentChain reliability
* Remove unused CDataStream::rdbuf method
* docs: improve docs where MemPoolLimits is used
* test: use NoLimits() in MempoolIndexingTest
* refactor: mempool: use CTxMempool::Limits
* refactor: mempool: add MemPoolLimits::NoLimits()
* docs: fix m_children to be a member of CTxMemPoolEntry
* test: Prevent UB in `minisketch_tests.cpp`
* refactor: remove duplicate code from BlockAssembler
* refactor: Make 64-bit shift explicit
* Remove clang-format from lint task
* fuzz: pass max fee into ConsumeTxMemPoolEntry
* fuzz: add util/mempool/h.cpp
* ci: Allow PIP_PACKAGES on centos
* ci: Remove unused package
* test: Remove unused fCheckpointsEnabled from miner_tests
* build, msvc: Enable C4834 warning
* ci: Workaround Windows filesystem executable bit loss
* ci: Use same `merge_script` implementation for Windows as for all
* ci: Move `git config` commands into script where they are used
* doc: add historical 0.21.2 release notes
* doc: add historical 0.20.2 release notes
* refactor: move DEFAULT_BLOCKFILTERINDEX from val to blockfilterindex
* refactor: move DEFAULT_COINSTATSINDEX from validation to coinstatsindex
* refactor: move DEFAULT_TXINDEX from validation to txindex
* Squashed \'src/leveldb/\' changes from 22f1e4a02f..e2f10b4e47
* test: Check external coin effective value is used in CoinSelection
* wallet: Use correct effective value when checking target
* refactor: Drop `owns_lock()` call
* refactor: Do not discard `try_lock()` return value
* net: remove useless call to IsReachable() from CConnman::Bind()
* ci: Run `bench_bitcoin.exe --sanity-check` in \"Win64 native\" task
* refactor: move Boost datetime usage to wallet
* test: Use proper Boost macros instead of assertions
* signet/miner: reduce default interblock interval limit to 30min
* doc: bump bips.md up-to-date version to v24.0
* fuzz: Limit outpoints.size in txorphan target to avoid OOM
* doc: add info about status code 404 for some rest endpoints
* contrib: Fix capture_output in getcoins.py
* ci: Bump vcpkg to the latest version `2022.09.27`
* log: log RPC port on startup
* rpc: Set RPCArg options with designated initializers
* ci: Use remote pull/merge ref instead of local git merge
* ci: Use git2.34 for lint task
* test: Avoid race in disconnect_nodes helper
* p2p: ProcessHeadersMessage(): fix received_new_header
* doc, rpc: mention that `listdescriptors` result is sorted by string representation
* test: check that `listdescriptors` descriptor strings are sorted
* build: remove unused MSVC defines
* build: remove stdlib.h from header checks
* refactor: use over stdlib.h
* Bugfix: Wallet: Lock cs_wallet for SignMessage
* fuzz: Remove no-op call to get()
* fuzz: Avoid timeout in bitdeque fuzz target
* build: remove stdio.h from header checks
* refactor: use over stdio.h
* Correct sanity-checking script_size calculation
* depends: libnatpmp 07004b97cf691774efebe70404cf22201e4d330d
* build: remove strings.h from header checks
* wallet: AvailableCoins, simplify output script type acquisition
* build: remove duplicate / unneeded libs from bench_bitcoin
* rpc: remove unneeded RPCTypeCheckArgument checks
* rpc: treat univalue type check error as RPC_TYPE_ERROR, not RPC_MISC_ERROR
* depends: Boost 1.80.0
* rpc: make addpeeraddress work with cjdns addresses
* init: Abort if i2p/cjdns are chosen via -onlynet but unreachable
* test: wait for the expected basic block filter index in `interface_rest`
* Fix nNextResend data race in ResubmitWalletTransactions
* test: check that bumping tx with already spent coin fails
* test: Test watchonly imports with passphrase-locked wallet
* rpc: Allow importmulti watchonly imports with locked wallet
* net_processing: add thread safety annotation for m_highest_fast_announce
* net_processing: add thread safety annotations for PeerManagerImpl members accessed only via the msgproc thread
* net_processing: add thread safety annotations for Peer members accessed only via the msgproc thread
* net: drop cs_sendProcessing
* net: add NetEventsInterface::g_msgproc_mutex
* Fix issues identified by codespell 2.2.1 and update ignored words
* Bump codespell version to 2.2.1
* util: improve bitcoin-wallet exit codes
* docs: Add 371 to bips.md
* doc: Move -permitbaremultisig to the relay help category
* Bugfix: Wallet: Return util::Error rather than non-error nullptr when CreateWallet/LoadWallet/RestoreWallet fail
* Bugfix: Wallet: Wrap RestoreWallet content in a try block to ensure exceptions become returned errors and incomplete wallet directory is removed
* Make miniscript string parsing account for exact script size as bound
* Permit delaying duplicate key check in miniscript::Node construction
* contrib: remove outdated comment from symbol-check script
* contrib: remove 32bit linux code from release scripts
* build: prune BOOST_CPPFLAGS from libbitcoin_zmq
* build: prune compat event headers
* scripted-diff: rename pszThread to thread_name
* refactor: use std::string for index names
* refactor: use std::string for thread names
* Use steady clock for all millis bench logging
* guix: Drop perl package
* Use ReadLE64 in uint256::GetUint64() instead of duplicating logic
* i2p: use the same destination type for transient and persistent addresses
* doc: consolidate & remove release-note fragments
* wallet: fix sendall creates tx that fails tx-size check
* test: Add missing syncwithvalidationinterfacequeue
* test/doc: Remove unused syncwithvalidationinterfacequeue
* fs: fully initialize _OVERLAPPED for win32
* build: remove unused libevent cppflags
* build: remove unused natpmp / upnp cppflags
* sendall: check if the maxtxfee has been exceeded
* test: add coverage for \'add_inputs\' dynamic default value
* RPC: bugfix, \'add_inputs\' default value is true unless \'inputs\' are provided
* qt: Update translation source file for string freeze (round 2)
* qt: Prevent wrong handling of `%2` token by Transifex
* qt: Cleanup translation comment
* Revert \"doc: note that brew installed qt is not supported\"
* refactor: Remove trailing semicolon from LOCK2
* build: extract $(BOOST_CPPFLAGS) from $(BITCOIN_INCLUDES)
* wallet: coverage for loading an unknown descriptor
* wallet: bugfix, load wallet with an unknown descriptor cause fatal error
* scripted-diff: rename CChainState -> Chainstate
* refactor: Pass reference to LookUpStats
* init: allow startup with -onlynet=onion -listenonion=1
* guix: use git-minimal over git
* RPC: unify arg type error message
* Revert \"guix: Build depends/qt with our platform definition\"
* [mempool] replace update_descendant_state with lambda
* build: fix configuring with --without-experimental-kernel-lib
* test: verify best blockhash after invalidating an unknown block
* test: remove Boost Test from libtest util
* doc: comment \"add only reachable addresses to addrman\"
* message-capture-parser: fix AssertionError on parsing `headers` message
* test: apply fixed feerate to avoid variable dynamic fees
* test: Display skipped tests reason
* build: sync ax_boost_base from upstream
* guix: consistently use -ffile-prefix-map
* test: invalidating an unknown block throws an error
* test: Fix `wallet_listsinceblock.py` for BDB-only wallets
* test: Fix `wallet_basic.py` for BDB-only wallets
* p2p: Don\'t query DNS seeds when both IPv4 and IPv6 are unreachable
* p2p: add only reachable addresses to addrman
* Prevent data race for `pathHandlers`
* RPC: fix sendall docs
* Update chainparams for 24.0 release
* test: Test that an unconfirmed not-in-mempool chain is rebroadcast
* wallet: Deduplicate Resend and ReacceptWalletTransactions
* QA: rpc_blockchain: Test output of getblock verbosity 0, False, and True
* test: fix non-determinism in p2p_headers_sync_with_minchainwork.py
* guix: use --build={arch}-guix-linux-gnu in cross toolchain
* test: Fix intermittent issue in p2p_leak.py
* scripted-diff: net: rename permissionFlags to permission_flags
* net: make CNode::m_prefer_evict const
* net: make CNode::m_permissionFlags const
* net: add CNodeOptions for optional CNode constructor params
* Update debug logging section in the developer notes
* Update -debug and -debugexclude help docs for severity level logging
* Create BCLog::Level::Trace log severity level
* Unit test coverage for -loglevel configuration option
* Create -loglevel configuration option
* Unit test coverage for log severity levels
* Create BCLog::Logger::LogLevelsString() helper function
* Update LogAcceptCategory() and unit tests with log severity levels
* Add BCLog::Logger::SetLogLevel()/SetCategoryLogLevel() for string inputs
* Add BCLog::Logger::m_category_log_levels data member and getter/setter
* Add BCLog::Logger::m_log_level data member and getter/setter
* Simplify BCLog::Level enum class and LogLevelToStr() function
* doc: Release notes and other docs for migration
* Test migratewallet
* descriptors: addr() and raw() should return false for ToPrivateString
* Add migratewallet RPC
* Implement MigrateLegacyToDescriptor
* Implement MigrateToSQLite
* wallet: Refactor SetupDescSPKMs to take CExtKey
* Implement LegacyScriptPubKeyMan::DeleteRecords
* Implement LegacyScriptPubKeyMan::MigrateToDescriptor
* scriptpubkeyman: Implement GetScriptPubKeys in Legacy
* Apply label to all scriptPubKeys of imported combo()
* Move blockstorage option logging to LoadChainstate()
* Move validation option logging to LoadChainstate()
* rpc: sort listdescriptors result
* qt: Update translation source file for string freeze
* init: avoid unsetting service bits from `nLocalServices`
* Fix link to MurmurHash3.cpp from Austin Appleby
* refactor: add LIFETIMEBOUND to blockfilter where needed
* Fix typo from PR25717
* Bypass headers anti-DoS checks for NoBan peers
* Move headerssync logging to BCLog::NET
* test: Fix wallet_balance intermittent issue
* CBlockLocator: performance-move-const-arg Clang tidy fixups
* Fix iwyu
* Fix issues when calling std::move(const&)
* test: simplify splitment with `sendall` in wallet_basic
* test: use `sendall` when emptying wallet
* tidy: enable bugprone-use-after-move
* test: work around bugprone-use-after-move warnings in util tests
* ui: show header pre-synchronization progress
* Emit NotifyHeaderTip signals for pre-synchronization progress
* Make validation interface capable of signalling header presync
* Test large reorgs with headerssync logic
* Track headers presync progress and log it
* Expose HeadersSyncState::m_current_height in getpeerinfo()
* Test headers sync using minchainwork threshold
* Add unit test for HeadersSyncState
* Reduce spurious messages during headers sync
* Require callers of AcceptBlockHeader() to perform anti-dos checks
* Utilize anti-DoS headers download strategy
* Add functions to construct locators without CChain
* Add bitdeque, an std::deque analogue that does bit packing.
* Add function to validate difficulty changes
* net: note CNode members that are treated as const
* net: mark CNode unique_ptr members as const
* net: mark TransportSerializer/m_serializer as const
* net/net_processing: add missing thread safety annotations
* test: fix typo for MaybeResendWalletTxs
* wallet: trigger MaybeResendWalletTxs() every minute
* Wallet::SetMinVersion - Log the new minversion
* i2p: log \"SAM session\" instead of \"session\"
* doc: add release notes about the I2P transient addresses
* doc: document I2P transient addresses usage in doc/i2p.md
* test: add a test that -i2pacceptincoming=0 creates a transient session
* net: use transient I2P session for outbound if -i2pacceptincoming=0
* net: store an optional I2P session in CNode
* i2p: add support for creating transient sessions
* doc: Add my key to SECURITY.md
* scripted-diff: rpc: fix rescan RPC name (s/rescanwallet/rescanblockchain/)
* doc: add `{import,list}descriptors` to list of descriptor RPCs
* ci: Increase `windows_container` resources
* ci: Force `ccache` package version for MSVC build
* refactor: Move ChainstateManager options into m_options struct
* contrib: make-seeds updates for 24.x
* net: update manual hardcoded mainnet seeds for 24.x
* test: remove unused `norm_prv` parameter
* Use new Join() helper for ListBlockFilterTypes()
* Make Join() util work with any container type
* Remove Join() helper only used in tests
* test: speedup wallet tests by whitelisting peers (immediate tx relay)
* test: add coverage for invalid parameters for `rescanblockchain`
* wallet: use GetChange() when computing waste
* wallet: use GetChange() in tx building
* wallet: add SelectionResult::GetChange
* wallet: calculate and store min_viable_change
* wallet: account for preselected inputs in target
* wallet: add SelectionResult::Merge
* wallet: accurate SelectionResult::m_target
* wallet: ensure m_min_change_target always covers change fee
* fixups for BIP125 doc cleanup
* [doc] remove non-signaling mentions of BIP125
* scripted-diff: remove mention of BIP125 from non-signaling var names
* wallet, tests: Test bumpfee\'s max input weight calculation
* Make DUMMY_CHECKER availble outside of script/sign.cpp
* test, bumpfee: Check that psbtbumpfee can bump txs with external inputs
* bumpfee: be able to bump fee of a tx with external inputs
* bumpfee: Clear scriptSigs and scriptWitnesses before calculated max size
* bumpfee: extract weights of external inputs when bumping fee
* bumpfee: Calculate fee by looking up UTXOs
* Security config warning
* Make adjusted time type safe
* Add time helpers
* refactor: use `strprintf` for creating unknown-service-flag string
* tests: Use mocktime for wallet encryption timeout
* Bugfix: Wallet: Document expectations for AddWalletFlags (now InitWalletFlags) correctly
* wallet: remove UNKNOWN type from OUTPUT_TYPES array
* tidy: Enable two clang-tidy checks
* refactor: Make const refs vars where applicable
* fs: work around u8path deprecated-declaration warnings with libc++
* build: reorder cxxflags in intrinsic checks
* tests: Test that external inputs of txs in wallet is handled correctly
* wallet: Try estimating input size with external data if wallet fails
* wallet: SelectExternal actually external inputs
* wallet: Add CWallet::IsMine(COutPoint)
* descriptor: check if `rawtr` has only one key.
* refactor: Avoid copies in FlatSigningProvider Merge
* refactor: Add lock annotations to Active
* methods
* Fix logical race in rest_getutxos
* Fix UB/data-race in RPCNotifyBlockChange
* Add ChainstateManager::GetMutex(), an alias for ::cs_main
* build: add example bitcoin conf to win installer
* build: include share/rpcauth in tarball & installer
* wallet: Prevent wallet unload on GetWalletForJSONRPCRequest
* RPC/Mining: Clean out pre-Segwit miner compatibility code
* refactor: improve readability for AttemptSelection
* test: only run test for descriptor wallets
* test: add missing BOOST_ASSERT
* wallet: switch to new shuffle, erase, push_back
* scripted-diff: Uppercase function names
* refactor: add new helper methods
* refactor: add UNKNOWN OutputType
* doc: add releases notes for 25504 (listsinceblock updates)
* rpc: add an include_change parameter to listsinceblock
* rpc: output parent wallet descriptors for coins in listunspent
* rpc: output wallet descriptors for received entries in listsinceblock
* wallet: allow to fetch the wallet descriptors for a given Script
* refactor: Drop `boost/algorithm/string/replace.hpp` dependency
* test: Add test case for `ReplaceAll()` function
* build: package test_bitcoin in Windows installer
* build: remove entire docs dir from Windows installer
* doc: minor updates to guix README
* Add functional test for block announcements during initial headers sync
* Reduce bandwidth during initial headers sync when a block is found
* GUI: remove now unneeded \'m_balances\' field from overviewpage
* GUI: \'getAvailableBalance\', use cached balance if the user did not select UTXO manually
* GUI: use cached balance in overviewpage and sendcoinsdialog
* GUI: add getter for WalletModel::m_cached_balances field
* GUI: sendCoinsDialog, remove duplicate wallet().getBalances() call
* qt: Update source translations for string freeze
* refactor: Remove not needed empty RPC doc std::string
* Squashed \'src/crc32c/\' changes from 0d624261ef..0bac72c455
* build: Add objcopy host tool
* GetExternalSigner(): fail if multiple signers are found
* bench: Add a benchmark for descriptor expansion
* net: simplify GetLocalAddress()
* refactor: make active_chain_tip a reference
* [coin selection] consolidate m_change_target and m_min_change_target
* validation tests: Use existing {Chainstate,Block}Man
* script/sign: remove needless IsSolvable() utility
* outputtype: remove redundant check for uncompressed keys in AddAndGetDestinationForScript
* test: add tests for `datacarrier` and `datacarriersize` options
* build: fix cleanup of test logs
* [test] make tx6 child of tx5, not tx3, in rbf_tests
* psbt: Avoid unsigned int overflow in PSBT_IN_TAP_BIP32_DERIVATION
* msvc: Drop `_SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING`
* extended keys: fail to derive too large depth instead of wrapping around
* descriptor: don\'t assert success of extended key derivation
* (pubk)key: mark Derive() as nodiscard
* descriptor: never ignore the return value when deriving an extended key
* spkman: don\'t ignore the return value when deriving an extended key
* test: refactor: deduplicate `DEFAULT_{ANCESTOR,DESCENDANT}_LIMIT` constants
* scripted-diff: test: rename `MAX_{ANCESTORS,DESCENDANTS}` to `DEFAULT_{ANCESTOR,DESCENDANT}_LIMIT`
* doc: test: suggest multi-line imports in functional test style guide
* build: move raw rule into Makefile.am
* wallet: Return `util::Result` from WalletLoader methods
* refactor: wallet: return util::Result from `GetReservedDestination` methods
* test: don\'t rely on usdt block_conn event order
* test: negative/unknown `rpcserialversion` should throw an init error
* Add wallet tests for spending rawtr()
* If P2TR tweaked key is available, sign with it
* Add rawtr() descriptor for P2TR with unknown tweak
* test: check that `verifymessage` RPC fails for non-P2PKH addresses
* qt: Update translation source file
* wallet: improve `{LoadActive,Deactivate}ScriptPubKeyMan` log
* guix: patch NSIS to remove .reloc sections from install stubs
* Change mapWallet to be a std::unordered_map
* Change getWalletTxs to return a set instead of a vector
* Change mapTxSpends to be a std::unordered_multimap
* wallet: Cache SigningProviders
* wallet: Use CalculateMaximumSignedInputSize to indicate solvability
* rpc/wallet: add simulaterawtransaction RPC
* test: add support for Decimal to assert_approx
* rest: clean-up for `mempool` endpoints
* refactor: Replace BResult with util::Result
* ci: remove hardcoded tag list from ci scripts
* doc: update test/README.md
* script: default to necessary tags in get_previous_releases.py
* addrman: Use system time instead of adjusted network time
* test: Target exact weight in MiniWallet _bulk_tx
* util, refactor: Drop explicit conversion to fs::path
* util, refactor: Use GetPathArg to read \"-rpccookiefile\" value
* util, refactor: Use GetPathArg to read \"-conf\" value
* Remove unused SetTip(nullptr) code
* validationcaches: Use size_t for sizes
* validationcaches: Add and use ValidationCacheSizes
* cuckoocache: Check for uint32 overflow in setup_bytes
* validationcaches: Abolish arbitrary limit
* cuckoocache: Return approximate memory size
* tests: Reduce calls to InitS
*Cache()
* build: Fix help string for `--enable-external-signer` configure option
* depends: don\'t restrict --enable-lto to non-guix cctools
* cctools: fixup building with LTO
* test: Add missing static to IsStandardTx helper
* test: MiniWallet: add `send_self_transfer_chain` to create chain of txns
* test: use MiniWallet to simplify mempool_package_limits.py tests
* sort after scripted-diff
* scripted-diff: Move mempool_args to src/node
* Remove ::g_max_datacarrier_bytes global
* Pass datacarrier setting into IsStandard
* Combine datacarrier globals into one
* Remove ::GetVirtualTransactionSize() alias
* Remove ::fIsBareMultisigStd global
* Remove ::dustRelayFee
* Remove ::IsStandardTx(tx, reason) alias
* test: Remove unused cs_main
* Remove ::incrementalRelayFee and ::minRelayTxFee globals
* Remove ::fRequireStandard global
* Return optional error from ApplyArgsManOptions
* test: add coverage for wallet inconsistent state during sync
* wallet: guard and alert about a wallet invalid state during chain sync
* build: Do not export `PKG_CONFIG_{PATH|LIBDIR}` variables
* bdb: disable Werror for format-security
* univalue: Remove unused and confusing set
*() return value
* doc: empty REVIEWERS file
* Add test case mimicking issue 24765
* ci: run USDT interface test in a VM
* test: adopt USDT utxocache interface tests
* test: hook into PID in tracing tests
* refactor: remove unneeded temporaries in node/interfaces, simplify code
* refactor: make all NodeImpl/ChainImpl/ExternalSignerImpl members public
* tracing: do not use `coin` after move in `CCoinsViewCache::AddCoin`
* doc: Release notes for default RBF
* rpc: Default rbf enabled
* wallet: Enable -walletrbf by default
* build: Bump Qt to 5.15.5 in depends
* Squashed \'src/leveldb/\' changes from 330dd6235f..22f1e4a02f
* script: actually trigger the optimization in BuildScript
* guix: enable hardening options in GCC Build
* guix: pass enable-bind-now to glibc
* guix: enable SSP for RISC-V glibc (2.27)
* libxcb: use a patch instead of sed
* tidy: run clang-tidy in quiet mode
* refactor: Make mapBlocksUnknownParent local, and rename it
* refactor: log `nEvicted` message in `LimitOrphans` then return void
* test: add unit test for AvailableCoins
* test: functional test for new coin selection logic
* wallet: run coin selection by `OutputType`
* refactor: use CoinsResult struct in SelectCoins
* refactor: store by OutputType in CoinsResult
* test: check that combining PSBTs with different txs fails
* test: support passing PSBTMaps directly to PSBT ctor
* [unit tests] individual RBF Rules in isolation
* test: Drop unused boost workaround
* depends: re-enable using -flto when building expat
* depends: expat 2.4.8
* refactor: Use type-safe std::chrono for addrman time
* Add type-safe AdjustedTime() getter to timedata
* Add ChronoFormatter to serialize
* util: Add HoursDouble
* scripted-diff: Rename addrman time symbols
* refactor: Remove not needed std::max
* tidy: enable readability-redundant-string-init
* refactor: remove unnecessary string initializations
* refactor: Make FEELER_SLEEP_WINDOW type safe (std::chrono)
* Expose underlying clock in CThreadInterrupt
* refactor: Make CTransaction constructor explicit
* fuzz: Remove no-op SetMempoolConstraints
* scripted-diff: Replace NullUniValue with UniValue::VNULL
* fuzz: refactor: Replace NullUniValue with UniValue{}
* fix comment spellings from the codespell lint
* psbt: Fix unsigned integer overflow
* refactor: move CBlockIndex#ToString() from header to implementation
* CDiskBlockIndex: rename GetBlockHash() to ConstructBlockHash()
* CDiskBlockIndex: remove unused ToString() class member
* CBlockIndex: ensure phashBlock is not nullptr before dereferencing
* univalue: Avoid narrowing and verbose int constructors
* rpc: Select int-UniValue constructor for enum value in upgradewallet RPC
* test: remove unused if statements
* RPC: Document \"asm\" and \"hex\" fields for scripts
* Bugfix: RPC/blockchain: Correct type of \"value\" in getblock docs; add missing \"desc\"
* gui: Fix translator comment for Restore Wallet QInputDialog
* refactor: Fix iwyu on node/chainstate
* Use HashWriter where possible
* Add HashWriter without ser-type and ser-version
* contrib: remove unneeded valgrind suppressions
* ci: better pin to dwarf4 in valgrind job
* doc: BaseIndex sync behavior with empty datadir
* wallet: clean AllInputsMine code, use InputIsMine internally
* wallet: clean InputIsMine code, use GetWalletTx
* wallet: unify CachedTxGetImmatureCredit and CachedTxGetImmatureWatchOnlyCredit
* wallet: remove always true \'fUseCache\' arg from CachedTxGetAvailableCredit
* wallet: remove always false \'recalculate\' arg from GetCachableAmount
* wallet: remove always true \'fUseCache\' from CachedTxGetImmatureWatchOnlyCredit
* wallet: remove always true \'fUseCache\' from CachedTxGetImmatureCredit
* test: add test for decoding PSBT with per-input preimage types
* refactor: move helper `random_bytes` to util library
* test: add constants for PSBT key types (BIP 174)
* refactor: move PSBT(Map) helpers from signet miner to test framework
* refactor: move `from_binary` helper from signet miner to test framework
* scripted-diff: rename `FromBinary` helper to `from_binary` (signet miner)
* compat: document redefining ssize_t when using MSVC
* compat: document error-code mapping
* compat: document sockopt_arg_type definition
* compat: document S_I
* defines when building for Windows
* compat: extract and document MAX_PATH
* compat: remove unused WSA
* definitions
* compat: document FD_SETSIZE redefinition for WIN32
* refactor: move compat.h into compat/
* refactor: Use chainman() helper consistently in ChainImpl
* Use AutoFile where possible
* streams: Add AutoFile without ser-type and ser-version
* ci: Enable IWYU in src/kernel directory
* refactor: Reduce number of SanityChecks return values
* refactor: Reduce number of LoadChainstate return values
* refactor: Reduce number of LoadChainstate parameters
* Remove unused includes in rpc/fees.cpp
* Remove unused includes from dbwrapper.h
* Add missing includes
* Add missing includes to node/chainstate
* indexes, refactor: Remove CChainState use in index CommitInternal method
* indexes, refactor: Remove CBlockIndex
* uses in index Rewind methods
* indexes, refactor: Remove CBlockIndex
* uses in index WriteBlock methods
* indexes, refactor: Remove CBlockIndex
* uses in index Init methods
* indexes, refactor: Remove CBlockIndex
* uses in coinstatsindex LookUpOne function
* indexes, refactor: Pass Chain interface instead of CChainState class to indexes
* interfaces, refactor: Add more block information to block connected notifications
* psbt: Check Taproot tree depth and leaf versions
* guix: Drop repetition of option\'s default value
* Add symlinks for hardcoded Makefiles in out of tree builds
* Fix `-Wparentheses` gcc warning
* univalue: Return more detailed type check error messages
* move-only: Move UniValue::getInt definition to keep class with definitions only
* Disallow encryption of watchonly wallets
* wallet: Precompute Txdata after setting PSBT inputs\' UTXOs
* depends: default to using GCC tool wrappers (with GCC)
* build: Fix autoconf variable names for tools found by `AC_PATH_TOOL`
* tidy: use misc-unused-using-decls
* refactor: remove unused using directives
* validation: remove unused using directives
* [net processing] Remove CNode::nLocalServices
* [net] Return CService from GetLocalAddrForPeer and GetLocalAddress
* [net processing] Remove CNode::nServices
* [net processing] Replace fHaveWitness with CanServeWitnesses()
* [net processing] Remove fClient and m_limited_node
* [tests] Connect peer in outbound_slow_chain_eviction by sending p2p messages
* [net processing] Add m_our_services and m_their_services to Peer
* wallet: avoid rescans if under the snapshot
* test, wallet: Add mempool rescan test for import RPCs
* rpc, wallet: Document mempool rescan after importdescriptor, importwallet
* rpc, wallet: Document mempool scan after importmulti
* rpc, wallet: Document mempool scan after importpubkey
* rpc, wallet: Document and test mempool scan after importprivkey
* rpc, wallet: Document and test mempool scan after importaddress
* wallet: Rescan mempool for transactions as well
* build: Check for std::atomic::exchange rather than std::atomic_exchange
* Move {Load,Dump}Mempool to kernel namespace
* Move DEFAULT_PERSIST_MEMPOOL out of libbitcoinkernel
* LoadMempool: Pass in load_path, stop using gArgs
* test/fuzz: Invoke LoadMempool via CChainState
* Move FopenFn to fsbridge namespace
* mempool: Use NodeClock+friends for LoadMempool
* mempool: Improve comments for [GS]etLoadTried
* scripted-diff: Rename m_is_loaded -> m_load_tried
* DumpMempool: Pass in dump_path, stop using gArgs
* DumpMempool: Use std::chrono instead of weird int64_t arthmetics
* test/mempool_persist: Test manual savemempool when -persistmempool=0
* fuzz: Fix assert bug in txorphan target
* build: pass -fno-lto when building expat
* wallet: don\'t iter twice when getting the cached debit/credit amount
* refactor: remove BOOST_
*_TEST_ macros
* refactor: integrate no_nul into univalue unitester
* doc: remove references to downstream
* depends: update urls for dmg tools
* fix gettxout help text
* Release notes for Miniscript support in P2WSH descriptors
* gui: Load Base64 PSBT string from file
* univalue: Throw exception on invalid pushes over silent ignore
* refactor: Default options in walletcreatefundedpsbt to VOBJ instead of VNULL
* qa: functional test Miniscript watchonly support
* Miniscript support in output descriptors
* qa: better error reporting on descriptor parsing error
* miniscript: add a helper to find the first insane sub with no child
* miniscript: don\'t check for top level validity at parsing time
* Use designated initializers for ChainstateManager::Options
* Move ChainstateManagerOpts into kernel:: namespace
* refactor: Return BResult from restoreWallet
* Prepare BResult for non-copyable types
* test: remove unnecessary parens
* Remove atomic for m_last_getheaders_timestamp
* test: Remove duplicate MAX_BIP125_RBF_SEQUENCE constant
* scripted-diff: [test] Rename BIP125_SEQUENCE_NUMBER to MAX_BIP125_RBF_SEQUENCE
* refactor: Drop no longer needed `util/designator.h`
* build: Increase MS Visual Studio minimum version
* rpc, refactor: Add `decodepsbt_outputs`
* rpc, refactor: Add `getblock_prevout`
* rpc: Fix Univalue push_backV OOM in listtransactions
* refactor: add most of src/util to iwyu
* rpc: add RPCTypeCheck for getblockfrompeer inputs
* test: add getblockfrompeer coverage of invalid inputs
* wallet: change `ScanForWalletTransactions` to use `Ticks()`
* [test] persist prioritisation of transactions not in mempool
* move-only: InitializeNode to handshake helper
* move-only: Version handshake to libtest_util
* Address comments remaining from #25353
* wallet: refactor GetNewDestination, use BResult
* send: refactor CreateTransaction flow to return a BResult
* wallet: refactor, include \'FeeCalculation\' inside \'CreatedTransactionResult\'
* Introduce generic \'Result\' class
* qt: apply translator comments to reset options confirmation dialog
* doc: update the URLs to thread functions in developer-notes
* doc: list the I2P accept thread in developer-notes
* test: speedup wallet_coinbase_category.py
* wallet test: Add unit test for wallet scan save_progress option
* wallet: Save wallet scan progress
* test: add tests for negative waste during coin selection
* test: refactor rpc_signrawtransaction.py
* test: refactor: pass absolute fee in `create_lots_of_big_transactions` helper
* doc: Add a release note about the \"restore wallet\" menu item
* gui: Add Wallet Restore in the GUI
* wallet: use CCoinControl to estimate signature size
* wallet: replace GetTxSpendSize with CalculateMaximumSignedInputSize
* test: add coverage for \'listreceivedbyaddress\' no change addrs return
* refactor: \'ListReceived\' use optional for filtered address
* refactor: RPC \'ListReceived\', encapsulate m_address_book access
* refactor: RPC \'listlabels\', encapsulate \'CWallet::ListAddrBookLabels\' functionality
* refactor: use \'ForEachAddrBookEntry\' in RPC \'getaddressesbylabel\'
* refactor: use ForEachAddrBookEntry in interfaces::getAddresses
* wallet: implement ForEachAddrBookEntry method
* refactor: implement general \'ListAddrBookAddresses\' for addressbook destinations lookup
* refactor: getAddress don\'t access m_address_book, use FindAddressEntry function
* doc: update for NetBSD 9.2, add GUI Build Instructions
* Mention `mempoolfullrbf` in policy/mempool-replacements.md
* Update getmempoolinfo RPC with `mempoolfullrbf`
* Introduce `mempoolfullrbf` node setting.
* Remove my key from trusted-keys
* Update GCSFilter benchmarks
* Add GCSFilterDecodeSkipCheck benchmark
* Add GCSFilterDecode and GCSBlockFilterGetHash benchmarks.
* Make sanity check in GCSFilter constructor optional
* [net] Move eviction logic to its own file
* [net] Move ConnectionType to its own file
* [net] Add connection type to NodeEvictionCandidate
* [net] Add NoBan status to NodeEvictionCandidate
* add glozow to trusted-keys
* guix: patch gcc 10 with pthreads to remap guix store paths
* test: Remove -acceptnonstdtxn=1 from feature_rbf.py
* test: Make the scriptPubKey of MiniWallet created txs mutable
* test: Allow setting sequence per input in MiniWallet create_self_transfer_multi
* test: Allow amount_per_output in MiniWallet create_self_transfer_multi
* test: Allow absolute fee in MiniWallet create_self_transfer
* add glozow builder key
* fuzz: add low-level target for txorphanage
* test: remove wallet dependency from mempool_updatefromblock.py
* wallet: don\'t add change fee to target if subtracting fees from output
* test: Add test for erase orphan tx conflicted by block
* test: Add test for erase orphan tx included by block
* test: Add test for erase orphan tx from peer
* contrib: dedup `get_witness_script` helper in signet miner
* Replace GetTime() with NodeClock in MaybeSendGetHeaders()
* Don\'t send getheaders message when another request is outstanding
* Cleanup received_new_header calculation to use WITH_LOCK
* Move peer state updates from headers message into separate function
* Move headers direct fetch to end of ProcessHeadersMessage
* Move headers-direct-fetch logic into own function
* Move additional headers fetching to own function
* Add helper function for checking header continuity
* Move handling of unconnecting headers into own function
* [ci] apply cache size limit and print ccache statistics in \"ARM64 Android APK\"
* test: pass `dustrelayfee=0` option for tests using dust (instead of `acceptnonstdtxn=1`)
* rpc: Disallow gettxoutsetinfo queries for a specific block with use_index=false
* guix: use elfesteem 2eb1e5384ff7a220fd1afacd4a0170acff54fe56
* guix: Remove guix store paths from glibc
* guix: Map all guix store prefixes to /usr
* walletdb: fix last client version update
* wallet: don\'t read db every time that a new WalletBatch is created
* remove unused functions
* test: remove wallet dependency from feature_nulldummy.py
* [functional test] submitrawpackage RPC
* [rpc] add new submitpackage RPC
* test: pass `datacarriersize` option for tests using large outputs (instead of `acceptnonstdtxn`)
* test: let `gen_return_txouts` create a single large OP_RETURN output
* test: assert serialized txouts size of `gen_return_txouts` helper
* test: passing a non-positive integer value to `-peertimeout` should throw an error
* rephrase error for invalid timeout
* Squashed \'src/minisketch/\' changes from 7eeb778fef..47f0a2d26f
* wallet: more accurate tx_noinputs_size
* Revert \"bnb: exit selection when best_waste is 0\"
* util: remove MSVC warning pragmas
* guix: remove explicit glibc stack protector disabling
* fees: Pass in a filepath instead of referencing gArgs
* init: Remove redundant -
*mempool
*, -limit
* queries
* mempool: Use m_limit for UpdateTransactionsFromBlock
* node/ifaces: Use existing MemPoolLimits
* mempoolaccept: Use limits from mempool in constructor
* mempool: Introduce (still-unused) MemPoolLimits
* scripted-diff: Rename anc/desc size limit vars to indicate SI unit
* scripted-diff: Rename DEFAULT_MEMPOOL_EXPIRY to indicate time unit
* mempool: Pass in -mempoolexpiry instead of referencing gArgs
* init: Only determine maxmempool once
* mempool: Make GetMinFee() with custom size protected
* mempool: Pass in -maxmempool instead of referencing gArgs
* pool: Add and use MemPoolOptions, ApplyArgsManOptions
* fuzz/rbf: Add missing TestingSetup
* scripted-diff: Rename DEFAULT_MAX_MEMPOOL_SIZE to indicate SI unit
* ArgsMan: Add Get
*Arg functions returning optional
* gui: reset options, notify user about the backup creation
* bench: Enable loading benchmarks depending on what\'s compiled
* bench: Use mock wallet database for wallet loading benchmark
* sqlite: Use in-memory db instead of temp for mockdb
* walletdb: Create a mock database of specific type
* bench: reduce the number of txs in wallet for wallet loading bench
* bench: Add transactions directly instead of mining blocks
* bench: reduce number of epochs for wallet loading benchmark
* bench: use unsafesqlitesync in wallet loading benchmark
* bench: Remove minEpochIterations from wallet loading benchmark
* Replace CountSecondsDouble with Ticks
* Remove LOCKTIME_MEDIAN_TIME_PAST constant
* test: Test signing psbts without explicitly having scripts
* wallet: also search taproot pubkeys in FillPSBT
* sign: Use sigdata taproot spenddata when signing
* psbt: Implement merge for Taproot fields
* psbt, test: Check for taproot fields in taproot psbt test
* taproot: Use pre-existing signatures if available
* tests: Test taproot fields for PSBT
* psbt: Remove non_witness_utxo for segwit v1+
* Implement decodepsbt for Taproot fields
* Fill PSBT Taproot output data to/from SignatureData
* Assert that TaprootBuilder is Finalized during GetSpendData
* Store TaprootBuilder in SigningProviders instead of TaprootSpendData
* Fetch key origins for Taproot keys
* Fill PSBT Taproot input data to/from SignatureData
* Implement de/ser of PSBT\'s Taproot fields
* Add serialization methods to XOnlyPubKey
* Add TaprootBuilder::GetTreeTuples
* Move individual KeyOriginInfo de/ser to separate function
* net: add new method Sock::Listen() that wraps listen()
* net: add new method Sock::Bind() that wraps bind()
* net: change GetBindAddress() to take Sock argument
* net: add new method Sock::GetSockName() that wraps getsockname()
* doc: Fix typo in macdeploy
* test: fix failing test interface_usdt_utxocache.py
* rpc: use enum instead of string for filter type
* Revert \"ci: Increase CPU number for \"Win64 native\" task\"
* p2p, doc: Use MAX_BLOCKS_TO_ANNOUNCE consistently
* test: Remove unused call to generate in rpc_mempool_info
* test: Sync MiniWallet utxo state after each generate call
* test: Drop spent utxos in MiniWallet scan_tx
* test: Return new_utxos from create_self_transfer_multi in MiniWallet
* test: Return new_utxo from create_self_transfer in MiniWallet
* Pass Peer& to Misbehaving()
* build: use BOOST_NO_CXX98_FUNCTION_BASE to suppress warnings
* build: suppress array-bounds errors in libxkbcommon
* Fix signed integer overflow in prioritisetransaction RPC
* refactor: Replace feeDelta by m_modified_fee
* guix: patch LIEF to fix PPC64 NX default
* guix: use LIEF 0.12.1
* guix: remove usage of -Wl,-z,noexecstack for PPC64 HOST
* rpc: Return incrementalrelayfee in getmempoolinfo
* test: Remove unnecessary block mining from importdescriptors test
* build: Bump default `PlatformToolset` for Visual Studio 2022
* doc: Make Windows build docs match the CI task
* ci: Increase CPU number for \"Win64 native\" task
* ci: Bump vcpkg to the latest version
* ci: Limit ccache cache size properly on \"Win64 native\" task
* ci: Update Windows task image up to visualstudio2022
* guix: parallelize LIEF build
* rpc: Use steady_clock for getrpcinfo durations
* refactor: remove unused method `CDBWrapper::CompactRange`
* refactor: remove unused methods `{CDBIterator,CCoinsViewDBCursor}::GetValueSize()`
* Use more specific path when including `memenv.h` header
* [net processing] Set CNode::m_relays_txs=true when receiving BIP37 filters
* test: `-whitebind` and `-bind` with `-listen=0` should throw an error
* qt6: Do not use deprecated high DPI attributes in Qt 6
* refactor: Fix style in `initTranslations()` function
* qt6: Do not use deprecated `QLibraryInfo::path` in Qt 6
* qt6: Fix type registration
* ci: Improve naming related to \"macOS 12 native x86_64\" task
* ci, refactor: Add `MACOS_NATIVE_TASK_TEMPLATE`
* Update Arch Linux build example
* test: Fail if connect_nodes fails
* net: rename Sock::Reset() to Sock::Close() and make it private
* net: remove CloseSocket()
* net: remove now unused Sock::Release()
* build: Remove negated --enable-fuzz checks from build system
* Use consistent wording in log
* test: Remove from_node from create_self_transfer
* MiniWallet helpers
* Add doc/design/libraries.md
* test, qt: Add tests for `GUIUtil::extractFirstSuffixFromFilter`
* qt: Replace `QRegExp` with `QRegularExpression`
* qt: Add a function that extracts the suffix from a filter
* wallet: avoid extra wtx lookup in AddToSpends
* doc: update configure ar doc to mention libtool 2.4.7
* guix: use libtool 2.4.7
* p2p: always set nTime for self-advertisements
* build: add
*_STANDARD vars to depends gen_id
* build: globally define NOMINMAX
* qt: Fix `BitcoinAmountField`\'s base widget
* qt, refactor: Convert `SendCoinsEntry` to a sub-`QWidget`
* qt, refactor: Drop unused `QFrame`s in `SendCoinsEntry`
* test: refactor: save MiniWallet mode explicitly
* build: Fix `::_wsystem` check
* build: sqlite 3380500 in depends
* scripted-diff: rename fAllowOtherInputs -> m_allow_other_inputs
* refactor: use GetWalletTx in SelectCoins instead of access mapWallet
* wallet: move \"use-only coinControl inputs\" below the selected inputs lookup
* wallet: unify “allow/block other inputs“ concept
* refactor: move DEFAULT_
*_LIMIT assertions from validation to policy
* refactor: move EXTRA_DESCENDANT_TX_SIZE_LIMIT to policy/policy.h
* refactor: use braced initialization in policy/policy.h
* scripted-diff: use static constexpr in policy/policy.h
* refactor: Move DEFAULT_DESCENDANT_SIZE_LIMIT to policy/policy.h
* refactor: Move DEFAULT_DESCENDANT_LIMIT to policy/policy.h
* refactor: Move DEFAULT_ANCESTOR_SIZE_LIMIT to policy/policy.h
* refactor: Move DEFAULT_ANCESTOR_LIMIT to policy/policy.h
* doc: typo fix
* wallet: fix warning: \"argument name \'feerate\' in comment does not match parameter name\"
* wallet: GetAvailableBalance, remove double walk-through every available coin
* wallet: add \'only_spendable\' filter to AvailableCoins
* wallet: remove unused IsSpentKey(hash, index) method
* wallet: avoid extra IsSpentKey -> GetWalletTx lookups
* wallet: decouple IsSpentKey(scriptPubKey) from IsSpentKey(hash, n)
* wallet: IsSpent, \'COutPoint\' arg instead of (hash, index)
* wallet: IsLockedCoin, \'COutPoint\' arg instead of (hash, index)
* wallet: AvailableCoins, don\'t call \'wtx.tx->vout[i]\' multiple times
* wallet: return \'CoinsResult\' struct in `AvailableCoins`
* test: implement \'bech32m\' mode for `getnewdestination()` helper
* test: add helpers for creating P2TR scripts/addresses from output key
* build: systemtap 4.7
* build: Remove unused `LIBBITCOIN_KERNEL` variable
* doc: Correct comment describing value of MAX_FILE_SIZE_PSBT as in MiB
* scripts: remove no-longer-needed ignored exports
* build: add and use CXX_STANDARD in depends
* build: add and use C_STANDARD in depends
* contrib: Update makeseeds to asmap-nextgen
* contrib: add seeds progress indicator and remove asmap one in makeseeds script
* contrib: Use asmap for ASN lookup in makeseeds
* test: fundrawtransaction preset input weight calculation
* wallet: do not count wallet utxos as external
* net: use Sock::WaitMany() instead of CConnman::SocketEvents()
* net: introduce Sock::WaitMany()
* net: also wait for exceptional events in Sock::Wait()
* bench/rpc_mempool: Create ChainTestingSetup, use its CTxMemPool
* bench: Use existing CTxMemPool in TestingSetup
* scripted-diff: test: Use CTxMemPool in TestingSetup
* test/policyestimator: Use ChainTestingSetup\'s CTxMemPool
* rest/getutxos: Don\'t construct empty mempool
* tree-wide: clang-format CTxMemPool references
* Bugfix: configure: Define default for use_libevent
* refactor: cleanups post unsubtree\'ing univalue
* refactor: un-subtree univalue
* [doc] RBF feerate rule
* doc: Update importaddress mention incompatibility with descriptor wallet
* test: passing a value below 5 MB to -maxmempool should throw an error
* qt, refactor: Add `transactionoverviewwidget.cpp` source file
* miner: Make mempool optional for BlockAssembler
* miner: Make UpdatePackagesForAdded static
* miner: Absorb SkipMapTxEntry into addPackageTxs
* RPC/blockchain: Reorder result documentation for scantxoutset
* scripted-diff: RPC/blockchain: Lowercase \"when\" in scantxoutset documentation
* RPC/blockchain: Elaborate on scantxoutset documentation
* test: check for `getblocktxn` request with out-of-bounds tx index
* refactor: Introduce PeerManagerImpl::RejectIncomingTxs
* scripted-diff: Avoid incompatibility with CMake AUTOUIC feature
* build: support LTO in depends
* message-capture-parser: fix out of bounds error for empty vectors
* logging: use LogPrintfCategory rather than a manual category
* logging: add LogPrintfCategory to log unconditionally with category
* build: test for timingsafe_bcmp
* util: modify Win32LockedPageAllocator to query windows for limit
* doc: add distcc to productivity notes
* test: Remove MiniWallet mempool_valid option
* Squashed \'src/secp256k1/\' changes from 8746600ee..44c2452fd
* compat: Consolidate mingw-w64 ASLR workaround for upstream libsecp changes
* test: refactor: use `create_lots_of_big_transactions` to dedup where possible
* test: use MiniWallet for mining_prioritisetransaction.py
* test: Fix previous release binary download script for Apple ARM64
* guix: re-revert riscv execstack workaround
* Reset settings.json when GUI options are reset
* Add release notes about unified bitcoin-qt and bitcoind persistent settings
* Migrate -lang setting from QSettings to settings.json
* Migrate -prune setting from QSettings to settings.json
* Migrate -proxy and -onion settings from QSettings to settings.json
* Migrate -listen and -server settings from QSettings to settings.json
* Migrate -upnp and -natpmp settings from QSettings to settings.json
* Migrate -spendzeroconfchange and -signer settings from QSettings to settings.json
* Migrate -par setting from QSettings to settings.json
* Migrate -dbcache setting from QSettings to settings.json
* qt, wallet, refactor: Make `WalletModel::sendCoins()` return `void`
* test: Fix out-of-range port collisions
* doc: Update developer notes
* sync.h: Imply negative assertions when calling LOCK
* scripted-diff: Convert global Mutexes to GlobalMutexes
* sync.h: Add GlobalMutex type
* qt/clientmodel: thread safety annotation for m_cached_tip_mutex
* net_processing: thread safety annotation for m_tx_relay_mutex
* [test] Fix port collisions caused by p2p_getaddr_caching.py
* [test_framework] Set PortSeed.n directly after initialising params
* doc: add `desig` to ignore-words
* doc: fix typo in kernel/context.h
* Remove redundant nLastTry check
* Remove redundant nTime checks
* test: Fix wait_for_debug_log UnicodeDecodeError
* build: use BOOST_MULTI_INDEX_ENABLE_SAFE_MODE when debugging
* [test] Test addr cache for multiple onion binds
* [net] Seed addr cache randomizer with port from binding address
* [net] Use ConnectedThroughNetwork() instead of GetNetwork() to seed addr cache randomizer
* doc: Fix command in \"OpenBSD Build Guide\"
* Add LogPrintLevel to lint-format-strings, drop LogPrint-vs-LogPrintf section in dev notes
* wallet: CommitTransaction, remove extra wtx lookup and add exception for a possible db write error.
* test: add BIP-125 rule 5 testcase with default mempool
* test: allow passing sequence through create_self_transfer_multi
* Remove no-op TIME_INIT on deser
* scripted-diff: remove duplicate categories from LogPrint output
* Move minRelayTxFee to policy/settings
* test: clean up all-lint.py
* test: rename lint-all.py to all-lint.py
* Bugfix: RPC/blockchain: pruneblockchain: Return the height of the actual last pruned block
* test: ensure createmultisig and addmultisigaddress are not returning any warning for expected cases
* rpc: fix inappropriate warning for address type p2sh-segwit in createmultisig and addmultisigaddress
* doc: Fix typo in importdescriptors
* ci: Reuse some configure options in \"ARM64 Android APK\" task
* ci, android: Update NDK up to r23c
* ci, android: Update Command-line Tools from 2.1 up to 7.0
* ci: Drop unneeded packages in \"ARM64 Android APK\" task
* qt: Drop no longer supported Android architecture
* miniscript: rename IsSane and IsSaneSubexpression to prevent misuse
* miniscript: nit: don\'t return after assert(false)
* miniscript: explicit the threshold size computation in multi()
* miniscript: add an OpCode typedef for readability
* miniscript: mark nodes with duplicate keys as insane
* fuzz: add a Miniscript target for string representation roundtripping
* fuzz: rename and improve the Miniscript Script roundtrip target
* miniscript: tiny doc fixups
* miniscript: split ValidSatisfactions from IsSane
* miniscript: introduce a CheckTimeLocksMix helper
* miniscript: use optional instead of bool/outarg
* miniscript: make equality operator non-recursive
* scripted-diff: miniscript: rename \'nodetype\' variables to \'fragment\'
* miniscript: remove a workaround for a GCC 4.8 bug
* kernel: SanityChecks: Return an error struct
* Move init::SanityCheck to kernel::SanityCheck
* init: Initialize globals with kernel::Context\'s life
* kernel: Introduce empty and unused kernel::Context
* test: Use Set/UnsetGlobals in BasicTestingSetup
* logging: fix logging empty threadname
* Add functional test for block sync from inbound peers
* Sync chain more readily from inbound peers during IBD
* test: check `replaceable` mismatch error in `createrawtransaction` RPC
* qt, refactor: add translator comments in `TransactionDesc::FormatTxStatus()`
* qt: Remove unnecessary wallet includes from rpcconsole.cpp
* use testing setup mempool in ComplexMemPool bench
* create and use mempool transactions using real coins in MempoolCheck
* [test util] to populate mempool with random transactions/packages
* [test util] add chain name to TestChain100Setup ctor
* kernel: pass params to BlockManager rather than using a global
* Use designated initializers
* test: Set maxfeerate=0 in MiniWallet sendrawtransaction()
* Squashed \'src/univalue/\' changes from 6c19d050a9..de4f73ddca
* refactor: Replace get_int by getInt alias
* refactor: Explicitly convert atomic to int
* build: pass bdb cppflags only where needed
* test: use MiniWallet for feature_dbcrash.py
* doc: Avoid ADL for function calls
* doc: Explain squashing with merge commits
* test: check pre-segwit peer error in `getblockfrompeer` RPC
* Fixup option name in bench message
* doc: Fix spelling errors identified by codespell in coments
* test: add coverage for non-hex value to -minimumchainwork
* Add test for getheaders behavior
* Respond to getheaders if we have sufficient chainwork
* Revert \"build: more robustly check for fcf-protection support\"
* test: Use MiniWallet in rpc_rawtransaction.py
* MOVEONLY: Move signrawtransactionwithwallet test
* Clarify in release process how to update defaultAssumeValid/nMinimumChainWork
* Release process: use 4096 blocks and getbestblockhash for getchaintxstats
* Specify in release process which chains need to be updated
* Reorganize release process chainparams section to reduce repetition
* Clarify release process overhead note to be more actionable
* Release process: exclude huge files for mainnet m_assumed_blockchain_size
* Release process: specify blockchain/chain_state units, reduce repetition
* Add missing references to signet in the release process
* compat: remove glibcxx sanity checks
* rpc: Capture potentially large UniValue by ref for rpcdoccheck
* rpc: remove deprecated fee fields from mempool entries
* ci: Install documented packages for \"Win64\" CI task
* Get time less often in AddrManImpl::ResolveCollisions_()
* multiprocess build cleanup: comment on manual dependencies
* multiprocess build fix: ipc/capnp/init.capnp.h: No such file or directory
* Add RPC to get mempool txs spending outputs
* Delete UpdatePackagesForAdded at beginning of addPackageTxs.
* windeploy: Renewed windows code signing certificate
* scripts and tools: update lint-logs.py to detect LogPrintLevel()
* tracing: fix `coin_selection:aps_create_tx_internal` calling logic
* settings: Add resetSettings() method
* init: Remove Shutdown() node.args reset
* settings: Add update/getPersistent/isIgnored methods
* Update zmq.md: Fix parameter in hwm example block
* refactor: Change LogPrintLevel order to category, severity
* leveldb: Log messages from leveldb with category and debug level
* http: Use severity-based logging for messages from libevent
* logging: Unconditionally log levels >= WARN
* Add BIP-341 specified constraints to `ComputeTaprootMerkleRoot`
* fuzz: coinselection, add missing fee rate.
* contrib: Remove keys that are no longer used for merging
* test: add coverage for unknown -blockfilterindex
* doc: update developer notes wrt --enable-debug and DEBUG_LOCKCONTENTION
* ci: add DEBUG_LOCKCONTENTION to CI task containing DEBUG_LOCKORDER
* build: add DEBUG_LOCKCONTENTION to --enable-debug configuration
* logging: Add log severity level to net.cpp
* logging: Add severity level to logs.
* coinstats: Move GetUTXOStats to rpc/blockchain
* kernel: Use ComputeUTXOStats in validation
* style-only: Rearrange using decls after scripted-diff
* scripted-diff: Move src/kernel/coinstats to kernel::
* Use only kernel/coinstats.h in index/coinstatsindex.h
* coinstats: Split node/coinstats.h to kernel/coinstats.h
* coinstats: Move hasher codepath to kernel/coinstats
* Move logic from LookupUTXOStatsWithIndex to CoinStatsIndex::LookUpStats
* coinstats: Separate hasher/index lookup codepaths
* coinstats: Return purely out-param CCoinsStats
* coinstats: Extract index_requested in-member to in-param
* coinstats: Extract hash_type in-member to in-param
* includes: Remove rpc/util.h -> node/coinstats.h
* fuzz: Remove useless GetUTXOStats fuzz case
* qt: Use `QRegularExpression` in `AddressBookSortFilterProxyModel` class
* qt, test: Add tests for searching in `AddressBookPage` dialog
* refactor: Pass interfaces::Node references to OptionsModel constructor
* refactor: Remove redundant scope in `BanMan::SweepBanned()`
* refactor: Add thread safety annotation to `BanMan::SweepBanned()`
* refactor: Move code from ctor into private `BanMan::LoadBanlist()`
* Rename NetinfoRequestHandler::is_block_relay data member to is_tx_relay
* Fix frequent -netinfo JSON errors from null getpeerinfo#relaytxes
* test: Use permissions from git in `lint-files.py`
* test: Don\'t use shell=True in `lint-files.py`
* Set effective_value when initializing a COutput
* rpc: getreceivedbylabel, don\'t loop over the entire wallet txs map if no destinations were found for the input label.
* refactor: Remove defunct attributes.h includes
* qt: Replace `QCoreApplication::quit()` with `QCoreApplication::exit(0)`
* doc: remove passing `--disable-external-signer` in OpenBSD build guide
* refactor: Add OptionsModel getOption/setOption methods
* validation: Have ChainstateManager own m_chainparams
* Add ChainstateManager::m_adjusted_time_callback
* Add ChainstateManagerOpts, using as ::Options
* refactor: Propagate negative `!m_tx_relay_mutex` capability
* refactor: Propagate negative `!m_most_recent_block_mutex` capability
* add 3 new test cases for SelectCoins()
* Do not call global Params() when chainman is in scope
* Do not pass CChainParams& to PeerManager::make
* Do not pass CChainParams& to BlockAssembler constructor
* Do not pass Consensus::Params& to Chainstate helpers
* Do not pass time getter to Chainstate helpers
* qt, doc: Remove unneeded comments
* qt: Revamp ClientModel code to handle {Block|Header}Tip core signals
* qt: Revamp ClientModel code to handle BannedListChanged core signal
* qt: Revamp ClientModel code to handle NumConnectionsChanged core signal
* qt: Revamp ClientModel code to handle ShowProgress core signal
* scripted-diff: replace deprecated Q_OS_MAC with Q_OS_MACOS
* refactor: Use Span of std::byte in CExtKey::SetSeed
* util: Add ParseHex() helper
* test: Add test for embedded null in hex string
* rpc: wallet: remove `-deprecatedrpc=exclude_coinbase` logic
* build: Enable RPC_DOC_CHECK on --enable-debug
* init: Allow -proxy=\"\" setting values
* test: add coverage for unknown network in -onlynet
* Add mockable clock type and TicksSinceEpoch helper
* scripted-diff: Use getInt over get_int/get_int64
* index: Don\'t commit a best block before indexing it during sync
* Add link to NetBSD release
* [test] Remove segwit argument from build_block_on_tip()
* Remove fUseWTXID parameter from CBlockHeaderAndShortTxIDs constructor
* [net processing] Don\'t initialize TxRelay for non-tx-relay peers.
* [net processing] Add m_tx_relay_mutex to protect m_tx_relay ptr
* [net processing] Comment all TxRelay members
* [net processing] [refactor] Move m_next_send_feefilter and m_fee_filter_sent
* rpc: Put undocumented JSON failure mode behind a runtime flag
* tidy: use modernize-use-default-member-init
* refactor: use C++11 default initializers
* test: make BIP157 messages default-constructible (MESSAGEMAP compatibility)
* test: p2p: add missing BIP157 message types to MESSAGEMAP
* Use steady_clock in ConnectAndCallRPC and inline time call in loop conditional
* Fix -rpcwait with -netinfo printing negative time durations
* Add more proper thread safety annotations
* Add proper thread safety annotation to `CWallet::GetTxConflicts()`
* Add proper thread safety annotation to `CachedTxGetAvailableCredit()`
* test: Fix intermittent race in p2p_unrequested_blocks.py
* guix: native GCC 10 toolchain for Linux builds
* guix: use -fcommon when building glibc 2.24
* guix: fix glibc 2.27 multiple definition warnings with GCC 10
* guix: adjust RISC-V __has_include() patch to work with GCC 10
* guix: compile glibc without -werror
* test: use sendall in wallet_taproot.py tests
* Sanitize port in `addpeeraddress()`
* bench: Make all arguments -kebab-case
* bench: Add `--sanity-check` flag, use it in `make check`
* wallet: CreateTransaction(): return out-params as (optional) struct
* wallet: CreateTransactionInternal(): return out-params as (optional) struct
* refactor: replace RecursiveMutex `m_most_recent_block_mutex` with Mutex
* refactor: reduce scope of lock `m_most_recent_block_mutex`
* rpc: remove deprecated \"softforks\" field from getblockchaininfo
* parsing external signer master fingerprint string as bytes instead of caring for lower/upper case in ExternalSigner::SignTransaction
* Wallet: Ensure m_attaching_chain is set before registering for signals
* rpc: avoid expensive `IsMine` calls in `GetReceived` tally
* rpc: avoid scriptPubKey<->CTxDestination conversions in `GetReceived` tally
* prevector: only allow trivially copyable types
* test: Slim down versionbits_tests.cpp
* rpc: Fix implicit-integer-sign-change in gettxout
* sync.h: strengthen AssertLockNotHeld assertion
* Increase threadsafety annotation coverage
* [net processing] Remove redundant nodestate->m_sendcmpct check in MaybeSetPeerAsAnnouncingHeaderAndIDs()
* [net processing] Only relay blocks by cmpctblock and cache for fast relay if segwit is enabled
* [net processing] Rename CNodeState compact block members
* [net processing] Tidy up `sendcmpct` processing
* [net processing] fPreferHeaderAndIDs implies fProvidesHeaderAndIDs
* [net processing] Remove fWantsCmpctWitness
* [net processing] Remove fSupportsDesiredCmpctVersion
* [net processing] Simplify `sendcmpct` processing
* [net processing] Only accept `sendcmpct` with version=2
* [net processing] Only advertise support for version 2 compact blocks
* [net] Stop testing version 1 compact blocks.
* scripted-diff: Rename MainSignalsInstance() class to MainSignalsImpl()
* refactor: remove unused forward declarations in validationinterface.h
* refactor: make MainSignalsInstance() a class
* Add clang lifetimebound section to developer notes
* Add C++ functions and methods section to developer notes
* Link in developer notes style to internal interface exception
* Prefer Python for scripts in developer notes
* Remove obsolete BDB ENABLE_WALLET section in developer notes
* test: Fix race condition in index pruning test
* Squashed \'src/univalue/\' changes from a44caf65fe..6c19d050a9
* validation: move g_versionbitscache into ChainstateManager
* test/versionbits: make versionbitscache a parameter
* deploymentstatus: make versionbitscache a parameter
* refactor: use chainman instead of chainParams for DeploymentActive
*
* deploymentstatus: allow chainman in place of consensusParams
* validation: move UpdateUncommittedBlockStructures and GenerateCoinbaseCommitment into ChainstateManager
* validation: replace ::Params() calls with chainstate/chainman member
* validation: remove redundant CChainParams params from ChainstateManager methods
* validation: add CChainParams to ChainstateManager
* test: Check msg type in msg capture is followed by zeros
* refactor: move StartExtraBlockRelayPeers from header to implementation
* test: compare `/mempool/info` response with `getmempoolinfo` RPC
* scripted-diff: replace non-standard fixed width integer types (`u_int`...` -> `uint`...)
* Remove unused GetTimeSeconds
* guix: bump time-machine to 998eda3067c7d21e0d9bb3310d2f5a14b8f1c681
* refactor: make GetRand a template, remove GetRandInt
* Bugfix: configure: Define defaults for enable_arm_{crc,shani}
* Switch scheduler to steady_clock
* wallet: Change log interval to use `steady_clock`
* rpc: check `fopen` return code in dumptxoutset
* changes color of skipped functional tests
* random: Add FastRandomContext::rand_uniform_delay
* Add time helpers for std::chrono::steady_clock
* index, refactor: Change sync variables to use `std::chrono::steady_clock`
* qt, refactor: Declare `WalletModel` member functions with `const`
* qt, test: Add tests for `tableView` in `AddressBookPage` dialog
* qt: No need to force Qt::QueuedConnection for NotifyAddressBookChanged
* test: Remove extended lint (cppcheck)
* Unroll the ChaCha20 inner loop for performance
* doc: Shorten explanation of \"maintainers\"
* Sanity assert GetAncestor() != nullptr where appropriate
* test: previous releases: add v23.0
* refactor: Change
* to & in MutableTransactionSignatureCreator
* [unit test] prioritisation in mining
* [miner] bug fix: update for parent inclusion using modified fee
* MOVEONLY: group miner tests into MinerTestingSetup functions
* Wrap boost::replace_all
* contrib: fix dirname on `verify-commits`
* doc: add minimum required kernel version to dependencies.md
* guix: consolidate kernel headers to 5.15
* test: port \'lint-shell.sh\' to python
* build: Drop redundant checks for ranlib and strip tools
* build: No longer need to hack the `PATH` variable in `config.site`
* build: Let the depends build system define a path to `dsymutil` tool
* build: Pass missed darwin-specific tools via `config.site`
* build: No need to provide defaults for darwin-specific tools
* scripted-diff: Rename INSTALLNAMETOOL -> INSTALL_NAME_TOOL
* build: Pass missed `strip` tool via `config.site`
* refactor: rename command -> message type in comments in the src/net
* files
* scripted-diff: Rename message command to message type
* doc: update init.cpp -conf help text
* doc: update devtools, release-process readmes
* build: include bitcoin.conf in build outputs
* doc: update bitcoin-conf.md
* script: add script to generate example bitcoin.conf
* test: Add `strerror` to locale-dependence linter
* util: Increase buffer size to 1024 in SysErrorString
* util: Refactor SysErrorString logic
* util: Use strerror_s for SysErrorString on Windows
* util: Replace non-threadsafe strerror
* util: optimizes HexStr
* bench: Adds a benchmark for HexStr
* test: Adds a test for HexStr that checks all 256 bytes
* [netgroup] Use nStartByte as offset for the last byte of the group
* test, contrib, refactor: use `with` when opening a file
* fuzz: SplitString with multiple separators
* http: replace boost::split with SplitString
* core_read: Replace boost::split with SplitString
* Extend Split to work with multiple separators
* build: Fix `libmultiprocess` cross-compiling to Linux hosts
* blockstorage: add LIFETIMEBOUND to GetFirstStoredBlock()::start_time
* scripted-diff: Rename rpc/misc.cpp to rpc/node.cpp
* rpc: Move output script RPCs to separate file
* Pass lifetimebound reference to SingleThreadedSchedulerClient
* test: add coverage for invalid requests for `blockfilterheaders`
* tidy: add readability-redundant-declaration
* Disallow more unsafe string->path conversions allowed by path append operators
* Guard `#include `
* test: MiniWallet: skip mempool check if `mempool_valid=False`
* test: MiniWallet: always rehash after signing (P2PK mode)
* rpc: Move fee estimation RPCs to separate file
* lint: Fix lint-circular-dependencies.py file list
* test, bench: make prevector and checkqueue swap member functions noexcept
* validation: make CScriptCheck and prevector swap member functions noexcept
* Reject invalid rpcauth formats
* scripted-diff: Rename PeerManagerImpl members
* [net processing] Move nHighestFastAnnounce into PeerManagerImpl
* [net processing] Move block cache state into PeerManagerImpl
* [net processing] Inline and simplify UpdatePreferredDownload
* [net processing] Move nPreferredDownload into PeerManagerImpl
* [net processing] Move mapNodeState into PeerManagerImpl
* [net processing] Move CNodeState declaration above PeerManagerImpl
* test: Remove boost::split from getarg_tests.cpp
* ci: Clone iwyu only if missing
* test: stop node before calling assert_start_raises_init_error
* test: Remove boost::split from rpc_tests.cpp
* blockstorage, refactor: pass GetFirstStoredBlock() start_block by reference
* blockstorage, refactor: make GetFirstStoredBlock() a member of BlockManager
* test: Split MempoolAncestryTests into two
* rpc: Move signmessage RPC util to new file
* Remove cs_main from verifymessage
* Crash debug builds on PCKG_MEMPOOL_ERROR
* tests: add tests for cross-chain wallet use prevention
* wallet: ensure wallet files are not reused across chains
* wallet: ignore chainStateFlushed notifications while attaching chain
* Call CHECK_NONFATAL only once where needed
* build: Fix `AC_CHECK_HEADERS` and `AC_CHECK_LIB` for `libnatpmp` package
* build: Fix `AC_CHECK_HEADERS` and `AC_CHECK_LIB` for `miniupnpc` package
* build, refactor: Fix indentation
* test: Remove previous release check
* ci: Build libbitcoinkernel
* build: Extract the libbitcoinkernel library
* b-cs: Define G_TRANSLATION_FUN in bitcoinkernel.cpp
* build: Separate lib_LTLIBRARIES initialization
* build: Create .la library for bitcoincrypto
* build: Create .la library for leveldb
* build: Create .la library for crc32c
* build: Remove vestigial LIBLEVELDB_SSE42
* build: Don\'t add unrelated libs to LIBTEST_
*
* lint: Mention NONFATAL_UNREACHABLE in lint-assertions.py
* Converting `lint-all.sh` to `lint-all.py`.
* validation: Prune UnloadBlockIndex and callees
* validation: No mempool clearing in UnloadBlockIndex
* Clear {versionbits,warning}cache in ~Chainstatemanager
* style-only: Use std::clamp for check_ratio, rename
* style-only: Use for instead of when loading Chainstate
* init: Reset mempool and chainman via reconstruction
* validation: default initialize and guard chainman members
* tidy: Add include-what-you-use
* refactor: fix includes in src/init
* refactor: fix includes in src/compat
* tests: Do not always create a descriptor wallet in wallet_createwallet
* Add tests for addr destination rotation
* Use std::chrono for salting when randomizing ADDR destination
* scripted-diff: Rename ValidAsCString to ContainsNoNUL
* Use std::string_view throughout util strencodings/string
* Make DecodeBase{32,64} take string_view arguments
* Generalize ConvertBits to permit transforming the input
* Make DecodeBase{32,64} return optional instead of taking bool
*
* Make DecodeBase{32,64} always return vector, not string
* Reject incorrect base64 in HTTP auth
* Make SanitizeString use string_view
* Make IsHexNumber use string_view
* Make IsHex use string_view
* Make ParseHex use string_view
* Do not pass `WalletModel
*` to queued connection
* refactor: Make `RPCExecutor
*` a member of the `RPCConsole` class
* refactor: Guard `RPCConsole::{add,remove}Wallet()` with `ENABLE_WALLET`
* test: Fix intermittent test failure in wallet_listreceivedby.py
* Make BlockManager::LoadBlockIndex private
* move-only: Rename index + pruning functional test
* test: Update test for indices on pruned nodes
* Index: Allow coinstatsindex with pruning enabled
* Index: Use prune locks for blockfilterindex
* blockstorage: Add prune locks to BlockManager
* refactor: Introduce GetFirstStoredBlock helper function
* test: Add test for coinselection tracepoints
* doc: document coin selection tracepoints
* wallet: Add some tracepoints for coin selection
* wallet: compute waste for SelectionResults of preset inputs
* wallet: track which coin selection algorithm produced a SelectionResult
* scripted-diff: rename BytePtr to AsBytePtr
* build: Fix configuring depends with cmake
* rpc: Explain active and internal in listdescriptors
* tidy: enable modernize-use-nullptr
* Don\'t use zero as null pointer constant (-Wzero-as-null-pointer-constant)
* Remove not needed clang-format off comments
* init: disallow reindex-chainstate with optional indexes
* Precomputed hashes are note #16 in BIP341
* fuzz: add `SplitString` fuzz target
* test: add unit tests for `SplitString` helper
* refactor: introduce single-separator split helper `SplitString`
* p2p: replace RecursiveMutex `m_total_bytes_sent_mutex` with Mutex
* p2p: add assertions and negative TS annotations for `m_total_bytes_sent_mutex`
* scripted-diff: rename cs_totalBytesSent -> m_total_bytes_sent_mutex
* [tests] Move TxOrphange tests to orphange_tests.cpp
* Porting lint-assertions.sh to lint-assertions.py
* lint: Convert lint-circular-dependencies.sh to Python
* Converted lint-tests.sh to python
* lint: convert format strings linter test to python
* lint: convert shell locale linter test to Python
* Convert lint-include-guards.sh to python
* lint: Convert lint-python-utf8-encoding.sh to Python
* lint: Make known violations more specific in lint-locale-dependence
* lint: Convert lint-locale-dependence.sh to Python
* doc: Add 23.0 release notes
* guix: Improve error message about missed macOS SDK
* tests: Use descriptor that requires both legacy and segwit
* tests: Calculate input weight more accurately
* contrib: macdeploy: fix permissions typo in gen-sdk script
* util/check: Add CHECK_NONFATAL identity function, NONFATAL_UNREACHABLE AND UNREACHABLE macros
* Revert \"qt: Add ObjectInvoke template function\"
* qt: Replace `GUIUtil::ObjectInvoke()` with `QMetaObject::invokeMethod()`
* [netgroupman] Remove NetGroupManager::GetAsmap()
* [netgroupman] Move asmap checksum calculation to NetGroupManager
* [netgroupman] Move GetMappedAS() and GetGroup() logic to NetGroupManager
* [net] Only use public CNetAddr functions and data in GetMappedAS() and GetGroup()
* [netgroupman] Add GetMappedAS() and GetGroup()
* [net] Move asmap into NetGroupManager
* [init] Add netgroupman to node.context
* [build] Add netgroup.cpp|h
* test: compare `/mempool/contents` response with `getrawmempool` RPC
* doc: add reference to `getrawmempool` RPC in `/mempool/contents` REST doc
* Remove not needed ArithToUint256 roundtrips in tests
* Remove duplicate static_asserts
* lint: convert submodule linter test to Python
* refactor: use Span in random.
*
* test: Remove unused taproot node from wallet_taproot.py
* doc: add more info to dependencies.md
* build: don\'t compress macOS DMG
* contrib: macdeploy: monkey-patch gen-sdk to be deterministic
* contrib: macdeploy: make gen-sdk deterministic
* doc: Add gpg key import instructions for Windows
* scripted-diff: Rename pindexBestHeader, fHavePruned
* Clear fHavePruned in BlockManager::Unload()
* move-mostly: Make fHavePruned a BlockMan member
* Clear pindexBestHeader in ChainstateManager::Unload()
* style-only: Miscellaneous whitespace changes
* move-mostly: Make pindexBestHeader a ChainMan member
* validation: Load pindexBestHeader in ChainMan
* lint: Convert lint-includes.sh to Python
* qt: Do not assume `qDBusRegisterMetaType` return type
* qt: Do not use `QKeyEvent` copy constructor
* miniscript: the \'d:\' wrapper must not be \'u\'
* net: use Sock::SetSockOpt() instead of standalone SetSocketNoDelay()
* net: use Sock::SetSockOpt() instead of setsockopt()
* net: add new method Sock::SetSockOpt() that wraps setsockopt()
* refactor: Use [[maybe_unused]] attribute
* refactor: Drop unneeded workarounds aimed to silence unused warning
* Simplify GetTime
* test: use MiniWallet for p2p_segwit.py
* scripted-diff: Regenerate key_io data deterministically
* contrib: make gen_key_io_test_vectors deterministic
* doc: Fix a link to `test/lint/lint-python.py`
* doc: cleanups to mempool rest endpoints
* docs: update `/rest/chaininfo` doc referring to RPC help
* bench: Add a benchmark for wallet loading
* lint: Convert Python linter to Python
* lint: Convert lint-git-commit-check.sh to Python
* lint: Convert lint-whitespace.sh to Python
* test: Add a test that creates a wallet with invalid parameters
* Change wallet validation order
* contrib: Remove suspicious hosts list from makeseeds
* init: Prevent -noproxy and -proxy=0 settings from interacting with other settings
* test: Test for disabling wallet flags
* rpc, wallet: setwalletflags warnings are optional
* test: fix connman UB by calling derived constructor
* qt: Remove `QApplication::globalStrut()` call
* qt/wallettests: sort includes
* qt: Skip displayUnitChanged signal if unit is not actually changed
* qt, refactor: Remove default cases for scoped enum
* qt, refactor: Remove BitcoinUnits::valid function
* qt, refactor: Make BitcoinUnits::Unit a scoped enum
* qt: Use QVariant instead of int for BitcoinUnit in QSettings
* qt, refactor: Use member initializers in TransactionStatus
* qt, refactor: remove unused field `qint64 TransactionStatus::open_for`
* qt, refactor: remove unused parameters in `TransactionDesc::FormatTxStatus()`
* scripted-diff: rename nDepth -> depth
* qt, refactor: remove redundant scope in `TransactionDesc::FormatTxStatus()`
* Revert \"build: Specify `zeromq` port explicitly for MSVC builds\"
* ci: Bump vcpkg to the latest version
* ci: Make Qt configure option change invalidate \"msvc_qt_built_cache\"
* doc: Add pre-splitoff translation update to release-process.md
* improve clarity and up max ipv6 ASNs
* ci: Make log verbose in error case only
* depends: Add file-based logging for individual packages
* test: add test for signet miner script
* test: add `is_bitcoin_util_compiled` helper
* test: determine path to `bitcoin-util` in test framework
* lint: Convert lint-logs.sh to Python
* net: remove non-blocking bool from interface
* doc: Remove fee delta TODO from txmempool.cpp
* Replace uint256 specific implementations of base_uint::GetHex() and base_uint::SetHex() with proper ones that don\'t depend on uint256 and replace template methods instantiations of base_uint with template class instantiation
* util, refactor: Add UNIQUE_NAME helper macro
* build, refactor: Drop useless `call` Make function
* print `(none)` if no warnings in -getinfo
* qt: Update deprecated enum value
* qt: Use `|` instead of `+` for key modifiers
* qt: Fix headers
* gui, refactor: rename fInvalid to num_test_failures in test_main.cpp
* gui: count test failures in test runner summary
* gui: add test runner summary
* gui: peersWidget - ResizeToContents Age and IP/Netmask columns
* gui: add Age column to peers tab
* gui: add FormatPeerAge() utility helper
* builder-keys: Add will8clark
* build: Do not define `PROVIDE_FUZZ_MAIN_FUNCTION` macro unconditionally
* Converted lint-python-mutable-default-parameters.sh to python
* test: use MiniWallet for feature_fee_estimation.py
* test: compare `/chaininfo` response with `getblockchaininfo` RPC
* key: use secp256k1_schnorrsig_sign32 over deprecated secp256k1_schnorrsig_sign
* build: remove some no-longer-needed var unexporting from configure
* build: remove --enable-experimental from libsecp256k1 configure
* build: fix MSVC build after subtree update
* Squashed \'src/secp256k1/\' changes from 0559fc6e41..8746600eec
* Update RPC argument and field naming guideline in developer notes
* refactor: fixup named args in txpackage tests
* lint: mypy 0.942
* lint: flake8 4.0.1
* lint: codespell 2.1.0
* refactor: Remove deduplication of data in rollingbloom bench
* lint: remove qt SIGNAL/SLOT lint
* [validation] don\'t package validate if not policy or missing inputs
* [unit test] package feerate and package cpfp
* [validation] try individual validation before package validation
* [packages/policy] use package feerate in package validation
* [docs] package feerate
* doc: Convert remaining comments to clang-tidy format
* lint: remove boost::bind linter
* ci: Build all optional tools in tidy task
* test: throw `ValueError` for invalid base58 checksum
* contrib: testgen: use base58 methods from test framework
* scripted-diff: rename `chars` to `b58chars` in test_framework.address
* contrib: testgen: import OP_
* constants from test framework
* contrib: testgen: avoid need for manually setting PYTHONPATH
* refactor: Remove outdated libevent logging code
* refactor: account for requiring libevent 2.1.8+
* build: Bump libevent minimum version up to 2.1.8
* Clear vTxHashes when mapTx is cleared
* test: validation:block_connected tracepoint test
* test: utxocache:
* tracepoint tests
* test: net:in/out_message tracepoint tests
* test: checks for tracepoint tests
* guix: make it possible to override gpg binary
* build: perform /Applications symlink generation in macdeployqtplus
* build: perform all .tiff copying in macdeployqtplus
* Remove gui-only syscalls
* init: Disable syscall sandbox in the bitcoin-qt process
* doc: update OpenBSD build docs for 7.0
* Remove nHeightEnd and nHeight in generateBlocks helper
* Remove buggy and confusing IncrementExtraNonce
* ci: Add clang-tidy task
* Add release notes
* Update // endpoints to use a \'?count=\' query parameter instead
* Add GetQueryParameter helper function
* Handle query string when parsing data format
* scripted-diff: rename RetFormat to RESTResponseFormat
* Refactoring: move declarations to rest.h
* doc: Update lint test docs
* lint: convert spell check lint test to python
* lint: Convert Python dead code linter to Python
* build: Do not modify `common.init.vcxproj` directly
* build, refactor: Add set_properties() to msvc-autogen.py
* validation: improve connect bench logging
* Add and improve informational links in doc/cjdns.md
* Add concrete steps in doc/cjdns.md to easily find a friend
* Remove utxo db upgrade code
* test: use MiniWallet for mempool_unbroadcast.py
* fuzz: add a fuzz target for Miniscript decoding from Script
* Miniscript: ops limit and stack size computation
* Miniscript: conversion from script
* Miniscript: type system, script creation, text notation, tests
* script: expose getter for CScriptNum, add a BuildScript helper
* script: move CheckMinimalPush from interpreter to script.h
* script: make IsPushdataOp non-static
* build: stop overriding user CXXFLAGS
* build: stop overriding user LDFLAGS
* build: stop overriding user CPPFLAGS
* doc: explain why we clear CXXFLAGS with enable-debug
* build: specify cmake build dir for multiprocess depends build
* doc: Add template for empty release notes
* lint: Start to use py lint scripts
* Move lint script and data file to avoid lint- prefix
* test: add regression test for bitcoin-core/gui/issues/567
* options: add a comment for -listenonion and dedup a long expression
* util/check: avoid unused parameter warnings
* refactor: remove macOS MAP_ANONYMOUS work around
* supp: remove Boost Valgrind suppression
* ci: use DWARF-4 for Valgrind CI job
* build, qt: bump Qt5 version to 5.15.3
* refactor: fix clang-tidy named args usage
* build: don\'t use Boost multi_index serialization
* Revert \"qt: Do not use QObject::tr plural syntax for numbers with a unit symbol\"
* build: remove faketime unsetting and comments from configure.ac
* refactor: add missing std:: includes to threadnames.cpp
* doc: remove incorrect mention of PR_GET_NAME
* doc: update release-process.md
* test: fix incorrect named args in txpackage tests
* fuzz: add target for coinselection
* doc: Use DecodeTxDoc helper
* rpc: Fix documentation assertion for `getrawtransaction`
* test: -peerblockfilters without -blockfilterindex raises an error
* doc: Speed up functional test runs using ramdisk
* refactor: add stdd:: includes to core_write
* refactor: use named args when ScriptToUniv or TxToUniv are invoked
* refactor: prefer snake case, TxToUniv arg hashBlock renamed block_hash
* refactor: merge ScriptPubKeyToUniv & ScriptToUniv into one function
* build, refactor: Replace tabs with spaces
* build, test: Fix test logfile name
* util/check: stop using lambda for Assert/Assume
* wallet: move Assert() check into constructor
* ci: Use clang-12 and libcxx-12 for msan
* add tests for no recipient and using send_max while inputs are specified
* Add sendall RPC née sweep
* Extract FinishTransaction from send()
* Extract interpretation of fee estimation arguments
* Elaborate error messages for outdated options
* Extract prevention of outdated option names
* contrib: refactor: replace `hex_switchEndian` in linearize scripts
* contrib: refactor: simplify block header string routine in linearize-data.py
* builder-keys: Add dunxen
* test: remove lief install from multiprocess job
* contrib: use LIEF 0.12.0 for symbol and security checks
* ci: Avoid boost test warnings
* compat: remove strnlen back-compat code
* [fuzz] Assert that Peer.m_tx_relay.m_relay_txs has been set correctly
* [net processing] PushNodeVersion() takes a const Peer&
* net_processing: move CNode data access out of lock
* ci: Integrate ccache into MSVC build
* ci: note why BDB is disabled for MSAN jobs
* ci: remove explicit --enable-wallet from msan job
* Bugfix: configure: Only avoid -isystem for exact /usr/include path
* Bugfix: configure: Quote SUPPRESS_WARNINGS sufficiently to preserve brackets
* ci: Use monterey-xcode-13.3
* test: fix incorrect named args in wallet tests
* bench: fix incorrect named args in coin_selection bench
* rpc: Fail to return undocumented or misdocumented JSON
* rpc: Add m_skip_type_check to RPCResult
* doc: Fix getpeerinfo doc
* test: Add diamond-shape prioritisetransaction test
* test: Rework create_self_transfer_multi
* test: invalid -i2psam will raise an init error
* test: check localaddresses in getnetworkinfo for nodes with proxy
* Move mempool RPCs to rpc/mempool
* style: Add static keyword where possible in rpc/mempool
* addrman: fix incorrect named args
* doc: Document clang-tidy in dev notes
* [doc] release notes for random change target
* [wallet] remove MIN_CHANGE
* [wallet] randomly generate change targets
* refactor coin selection for parameterizable change target
* [wallet] don\'t create long chains by default
* test: move-only: Move all generate
* tests to a single file
* refactor: remove unused boost header include in bitcoin-util.cpp
* Clarify that COutput is a struct, not a class
* wallet: Fix coinselection include
* scripted-diff: rename TxRelay members
* [net processing] Move tx relay data to Peer
* [net processing] Move m_wtxid_relay to Peer
* [net] Add CNode.m_relays_txs and CNode.m_bloom_filter_loaded
* Enforce Taproot script flags whenever WITNESS is set
* Remove nullptr check in GetBlockScriptFlags
* refactor: Pass const reference instead of pointer to GetBlockScriptFlags
* test: Change default test logging directory
* ci: Compile fuzz binary in periodic task
* build: fix copypasta in OpenBSD C{XX} flags
* doc: mention that BDB is for the legacy wallet in build-freebsd.md
* coinselection: Remove COutput operators == and !=
* coinselection: Remove CInputCoin
* coinselection: Use COutput instead of CInputCoin
* coinselection: Add effective value and fees to COutput
* moveonly: move COutput to coinselection.h
* wallet: Remove CWallet and CWalletTx from COutput\'s constructor
* wallet: Replace CWalletTx in COutput with COutPoint and CTxOut
* wallet: Provide input bytes to COutput
* wallet: Store whether a COutput is from the wallet
* wallet: Store tx time in COutput
* wallet: Remove use_max_sig default value
* scripted-diff: Rename COutput member variables
* wallet: cleanup COutput constructor
* test: passing -onlynet=onion with -onion=0/-noonion raises expected init error
* test: passing -onlynet=onion without -proxy/-onion raises expected init error
* test: passing invalid -onion raises expected init error
* test: passing invalid -proxy raises expected init error
* test: hoist proxy out of 2 network loops in feature_proxy.py
* test: add CJDNS to LimitedAndReachable_Network unit tests
* net, init: assert each network reachability is true by default
* [move only] remove `is_wallet_compiled` checks
* test: use MiniWallet in `interfaces_zmq`
* Use CAmount for fee delta and modified fee
* Replace struct update_fee_delta with lambda
* init: disallow reindex-chainstate when pruning
* doc: mention that BDB is for the legacy wallet in build-netbsd.md
* guix: Drop code for the unsupported `i686-linux-gnu` host
* build: Add --enable-c++20 option
* Add CSerializedNetMsg::Copy() helper
* Make fs.h C++20 compliant
* scheduler: Capture ‘this’ explicitly in lambda
* test: Actually print TSan tracebacks
* test: use MiniWallet for mempool_package_onemore.py
* test: MiniWallet: add helper methods `{send,create}_self_transfer_multi`
* guix: point to latest upstream commit
* test: use MiniWallet for rpc_createmultisig.py
* guix: Drop unneeded openssl dependency for signapple
* build: require libtool 2.4.2
* Replace use of `ArgsManager` with `DatabaseOptions`
* Remove unused feebumper code
* test: Run non-wallet tests only once
* Move txoutproof RPCs to txoutproof.cpp
* wallet: Pass FastRandomContext& to coin selection
* wallet: Pass FastRandomContext& to DiscourageFeeSniping
* doc: remove unneeded documentation on basic package management on FreeBSD
* For descriptor pubkey parse errors, include context information
* qt: Avoid potential -Wdeprecated-enum-enum-conversion warning
* qt: Use human-readable strings in preference to hard-coded integers
* torcontrol: Query Tor for correct -onion configuration
* test: Limit scope of id global which is shared between subtests
* doc: Fix getblockchaininfo/getdeploymentinfo RPC docs
* test: Fix generate calls and comments in feature_segwit
* Use MiniWallet in feature_coinstatsindex
* test: Refactor MiniWallet get_utxo helper
* doc: Revise comments and whitespace to clarify
* refactor: Rename i to curr_try in SelectCoinsBnB
* refactor: Track BnB selection by index
* p2p: Serialize cmpctblock at most once in NewPoWValidBlock
* add ci/scratch dir to gitignore
* gui: improve \"Addresses Rate-Limited\" translator comments and tooltip in peers tab
* gui: improve \"Addresses Processed\" translator comments and tooltip in peers tab
* gui: improve \"Address Relay\" translator comments and tooltip in peers tab
* doc: clarify that BDB is only required for the legacy wallet
* test: Fix intermittent failure in feature_segwit
* macdeploy: remove unused detached-sig-apply
* doc: s/Compiler/Dependency in dependencies.md
* doc: cleanup wallet docs in build-osx.md
* fuzz: execute each file in dir without fuzz engine
* Add and use BlockManager::GetAllBlockIndices
* Add and use CBlockIndexHeightOnlyComparator
* move-only: Move CBlockIndexWorkComparator to blockstorage
* Only load BlockMan in BlockMan member functions
* style-only: No need for std::pair for vSortedByHeight
* style-only: Various blockstorage.cpp cleanups
* refactor: more const annotations for uses of CBlockIndex
*
* doc: update multisig-tutorial.md to default wallet type
* doc: Delete old line of code that was commented out
* Unit tests for IsWitnessProgram and IsP2WSH.
* bench: Sort bench_bench_bitcoin_SOURCES
* bench: Add logging benchmark
* doc: rework dependencies.md
* Add RegisterMempoolRPCCommands helper
* refactor: Avoid int64_t -> size_t -> int64_t conversion
* rpc: Move mempool RPCs to new file
* test: check for importprunedfunds RPC errors
* scripted-diff: Clarify CheckFinalTxAtTip name
* policy: Remove unused locktime flags
* wallet: Add sanity checks to AntiFeeSnipe
* wallet: Add a deprecation warning for newly created legacy wallets
* test: use MiniWallet for feature_maxuploadtarget.py
* contrib: fix implicit function decleration in win symbol check
* build: don\'t install deprecated libevent headers
* Revert \"Avoid the use of P0083R3 std::set::merge\"
* ci/doc: Set minimum required clang/libc++ version to 8.0
* [wallet] assert BnB internally calculated waste is the same as GetSelectionWaste()
* [miner] always assume we can create witness blocks
* doc: remove Boost LDFLAGS from netBSD build docs
* doc: Add `guix` prefix for changes to reproducible builds
* qt: Remove network detection based on address in BIP21
* ci: remove compiled-but-unused BDB from MSAN job
* Remove confusing P1008R1 violation in ATMPArgs
* wallet: refactor: dedup sqlite blob binding
* test: Correctly decode UTF-8 literal string paths
* guix: only check for the macOS SDK once
* build: Drop `double-conversion` from MSVC dependencies
* ci: Invalidate vcpkg binary cache if dependencies changed
* build: Specify `zeromq` port explicitly for MSVC builds
* util: Fix ReadBinaryFile reading beyond maxsize
* Add coinstatsindex_unclean_shutdown test
* index: Commit DB_MUHASH and DB_BEST_BLOCK to disk together
* tests: Ensure sorted/multi_a descriptors always generate different addrs
* guix: only use native GCC 7 toolchain for Linux builds
* bitcoin-chainstate: Lock cs_main to UnloadBlockIndex
* guix: use latest upstream python-certvalidator
* doc: include wtxid in TransactionDescriptionString
* doc: add wtxid info in release-notes
* test: add wtxid in expected_fields for wallet_basic
* wallet: add wtxid in WalletTxToJSON
* wallet: add GetWitnessHash()
* addrman: Log too low compat value
* test: refactor: use `random.sample` for choosing random keys in wallet_taproot.py
* build: Bump minimum Qt version to 5.11.3
* ci: Switch from bionic to buster
* build: Move guix time machine to prelude
* refactor: Rewrite AddToBlockIndex with try_emplace
* style: Modernize range-based loops over m_block_index
* style-only: Use using instead of typedef for BlockMap
* refactor: Rewrite InsertBlockIndex with try_emplace
* tests: Remove now-unnecessary manual Unload\'s
* blockstorage: Make m_block_index own CBlockIndex\'s
* Squashed \'src/leveldb/\' changes from f8ae182c1e..330dd6235f
* validation, refactoring: remove ChainstateManager::Reset()
* validation: replace lock with annotation in UnloadBlockIndex()
* ci: Bump vcpkg to the latest version
* Use GetPathArg where possible
* util, refactor: Use GetPathArg to read \"-settings\" value
* util: Add GetPathArg default path argument
* refactor: Release cs_main before MaybeSendFeefilter
* gui, refactor: use std::chrono for formatDurationStr() helper
* build: update ax_cxx_compile_stdcxx to serial 14
* Add (sorted)multi_a descriptors to doc/descriptors.md
* Simplify wallet_taproot.py functional test
* Add tests for (sorted)multi_a derivation/signing
* Add signing support for (sorted)multi_a scripts
* Add multi_a descriptor inference
* Add (sorted)multi_a descriptor and script derivation
* Merge/generalize IsValidMultisigKeyCount/GetMultisigKeyCount
* fuzz: Limit script_format to 100kB
* ci: Build bitcoin-chainstate
* build: Add example bitcoin-chainstate executable
* doc: Clean out release notes
* qt: Pre-branch translation updates for 23.x
* qt: English (source) translations update
* qt: Update translation source file
* Remove outdated comment on CFeeRate
* Move `GetAllOutputTypes` function from `rpc/rawtransaction.cpp` to `rpc/util.{h|cpp}`
* rpc/blockchain: rename getdeploymentinfo tip/active_chain_tip to blockindex
* rpc/blockchain: a constant craving
* trivial: comment tweaks
* rpc documentation improvements
* build: use header-only Boost unit test
* Bugfix: GUI: Check validity when QValidatedLineEdit::setText is called
* qt: Update source translations
* refactor: replace boost::filesystem with std::filesystem
* Replace lock with thread safety annotation in CBlockTreeDB::LoadBlockIndexGuts()
* rpc: getdeploymentinfo: include signalling info
* rpc: getdeploymentinfo: include block hash/height
* rpc: getdeploymentinfo: change stats to always refer to current period
* rpc: getdeploymentinfo: allow specifying a blockhash other than tip
* rpc: move softfork info from getblockchaininfo to getdeploymentinfo
* Guard CBlockIndex::nStatus/nFile/nDataPos/nUndoPos by cs_main
* AcceptPackage fixups
* document and clean up MaybeUpdateMempoolForReorg
* test: MiniWallet: support default `from_node` for creating txs
* test: refactor: add constant for sequence number `SEQUENCE_FINAL`
* Add src/wallet/
* code to wallet:: namespace
* Add src/node/
* code to node:: namespace
* scripted-diff: Rename touched member variables
* Make blockstorage globals private members of BlockManager
* doc: Fix typo in getmempoolinfo
* build: use a static .tiff for macOS .dmg over generating
* rpc: Use EnsureAnyArgsman in rpc/blockchain
* scripted-diff: Bump copyright headers
* doc: Remove fixed TODO from wallet/feebumper
* Expose block filters over REST.
* Squashed \'src/secp256k1/\' changes from be8d9c262f..0559fc6e41
* Move AcceptBlockHeader to ChainstateManager
* refactor: Implement restorewallet() logic in the wallet section
* [policy] require submitted packages to be child-with-unconfirmed-parents
* rpc: Quote user supplied strings in error messages
* validation: VerifyDB only needs Consensus::Params
* Use SelectionResult in SelectCoins
* Use SelectionResult in AttemptSelection
* test: feature_rbf.py: check specified wallet type availability
* Remove CTxMemPool params from ATMP
* MOVEONLY: Move rpcwallet to rpc/wallet
* MOVEONLY: Move spending RPCs to spend.cpp
* MOVEONLY: Move balance and utxo RPCs to coins.cpp
* MOVEONLY: Move address related functions from rpcwallet to addresses.cpp
* MOVEONLY: Move transaction related wallet RPCs to transactions.cpp
* build: Fix build for Android x86_64
* Include coinbase transactions in receivedby wallet rpcs
* Revert \"Fixes Bug in Transaction generation in ComplexMempool benchmark\"
* Fixes Bug in Transaction generation in ComplexMempool benchmark
* build: remove x-prefix comparisons
* correct rpc address_type helptext
* wallet: Replace confusing getAdjustedTime() with GetTime()
* More Span simplifications
* Replace MakeSpan helper with Span deduction guide
* MOVEONLY: Move wallet encryption RPCs to encrypt.cpp
* refactor: Make m_cs_fee_estimator non-recursive
* refactor: Add non-thread-safe CBlockPolicyEstimator::_removeTx helper
* Add thread safety annotations to CBlockPolicyEstimator public functions
* rpc: various fixups for dumptxoutset
* MOVEONLY: Move utility functions from rpcwallet to wallet/rpc/util
* Break validation <-> txmempool circular dependency
* Remove AcceptToMemoryPoolWithTime
* wallet: Split signmessage from rpcwallet
* psbt: sign without finalizing
* refactor: Replace validation.h include with forward-decl in miner.h
* refactor: Make CWalletTx sync state type-safe
* policy: Treat taproot as always active
* test: refactor: take use of `create_block` version parameter (or use default)
* doc: Fix typos in endif header comments
* scripted-diff: Bump copyright headers
* scripted-diff: Remove redundant sync_all and sync_blocks
* multiprocess: Delay wallet client construction
* build: consistently quote AC_DEFINE() arguments
* Squashed \'src/minisketch/\' content from commit 89629eb2c7
* [validation] Add CChainState::ProcessTransaction()
* test: MiniWallet: add P2TR support and use it per default
* MOVEONLY: mempool checks to their own functions
* [validation] re-introduce bool for whether a transaction is RBF
* fees: Always round up fee calculated from a feerate
* rpc: fix \"trusted\" description in TransactionDescriptionString
* [mempool] delete exists(uint256) function
* Make explicit the node param in init_wallet()
* Fix outdated comments referring to ::ChainActive()
* Squashed \'src/univalue/\' changes from 98fadc0909..a44caf65fe
* doc: update release notes for 22539
* refactor: Block unsafe fs::path std::string conversion calls
* Add newkeypool RPC to flush the keypool
* scripts: remove pixie.py
* bitcoin-tx: Reject non-integral and out of range sequence ids
* doc: Extract FundTxDoc
* [MOVEONLY] consensus: move amount.h into consensus
* Add syscall sandboxing (seccomp-bpf)
* test: use miniwallet in test_rpc() function in feature_rbf.py
* allow fundtx rpcs to work with external inputs
* doc: Combine 23.0 release notes
* Remove -rescan startup parameter
* gui: add RPC setting
* test: MiniWallet: add `send_to` method to create arbitrary txouts
* rpc: remove deprecated addresses and reqSigs from rpc outputs
* Add SelectCoinsSRD function
* scripted-diff: Rename overloaded int GetArg to GetIntArg
* Allow lockunspent to store the lock in the wallet DB
* test: Activate all regtest softforks at height 1, unless overridden
* add missing includes in policy/rbf
* [doc] improve RBF documentation
* [policy/refactor] pass in relay fee instead of using global
* doc: Fix RPC result documentation
* test: use MiniWallet for make_utxo helper in feature_rbf.py
* test: scale amounts in test_doublespend_tree down by factor 10
* test: scale amounts in test_doublespend_chain down by factor 10
* Allow passing \"tried\" to rpc addpeeraddress to call CAddrMan::Good()
* test: Replace MiniWallet scan_blocks with rescan_utxos
* ci: Enable more functional tests on Windows MSVC task
* Remove txindex migration code
* Start using init makeNode, makeChain, etc methods
* doc: Added hyperlink for doc/build
* whitespace fixups after move and scripted-diff
* scripted-diff: rename variables in policy/rbf
* MOVEONLY: fee checks (Rules 3 and 4) to policy/rbf
* MOVEONLY: check that fees > direct conflicts to policy/rbf
* MOVEONLY: check for disjoint conflicts and ancestors to policy/rbf
* MOVEONLY: BIP125 Rule 2 to policy/rbf
* Make GetEntriesForConflicts return std::optional
* [test] checks descendants limtis for second generation Package descendants
* scripted-diff: Use generate
* from TestFramework
* [addrman] Set m_asmap in CAddrMan initializer list
* refactor: Detach wallet transaction methods (followup for move-only)
* test: Check that non-signaling BIP125 tx can be replaced via parent
* refactor: separate the rpc_rawtransaction tests into functions
* move-only: regroup similar rpc_rawtransaction tests together
* test: add and harmonize getrawtransaction logging
* Allow the long term feerate to be configured, default of 10 sat/vb
* MOVEONLY: getting mempool conflicts to policy/rbf
* MOVEONLY: BIP125 max conflicts limit to policy/rbf.h
* Use `context.args` in `CWallet::Create` instead of `gArgs`.
* Use generate
* from TestFramework
* qt: Handle new added plurals in bitcoin_en.ts
* test: Check if specified config file cannot be opened
* Avoid wallet code writing node settings file
* refactor: remove ::vpwallets and related global variables
* test: use f-strings in feature_versionbits_warning.py
* Add a new RPC command: restorewallet
* qt, refactor: Fix indentation
* qt: Add Load PSBT functionaliy with nowallet
* test: Set regtest.BIP66Height = 102 to speed up tests
* Change SignTransaction\'s input_errors to use bilingual_str
* Use bilingual_str for address fetching functions
* fuzz: check that ser+unser produces the same AddrMan
* make ParseOutputType return a std::optional
* consensus/params: simplify ValidDeployment check to avoid gcc warning
* Squashed \'src/secp256k1/\' changes from efad3506a8..be8d9c262f
* [init] Disallow starting up with conflicting paramters for -dnsseed and -forcednsseed
* Ignore banlist.dat
* test: use MiniWallet for simple doublespend test in feature_rbf.py
* test: feature_rbf.py: make MiniWallet instance available for all sub-tests
* test: remove unneeded initialization code in feature_rbf.py
* refactor: move `GetTransaction(...)` to node/transaction.cpp
* rpc: Block until synced if coinstatsindex is used in gettxoutsetinfo
* tracing: Tracepoint for connected blocks
* [test] remove or move tests using `-segwitheight=-1`
* qt, refactor: Move InitExecutor class into its own module
* doc: clean out release notes post branch-off
* rpc: Return block time in getblockchaininfo
* refactor: move UpdateTip into CChainState
* refactor: move UpdateMempoolForReorg into CChainState
* validation: make CChainState::m_mempool optional
* Use DeploymentEnabled to hide VB deployments
* doc: recommend `--disable-external-signer` in OpenBSD build guide
* qt: Draw \"eye\" sign at the beginning of watch-only addresses
* [refactor] Move ComputeBlockVersion into VersionBitsCache
* [move-only] Move ComputeBlockVersion from validation to versionbits
* [refactor] versionbits: make VersionBitsCache a full class
* [refactor] rpc/blockchain.cpp: SoftForkPushBack
* scripted-diff: rename versionbitscache
* [refactor] Add versionbits deployments to deploymentstatus.h
* [refactor] Add deploymentstatus.h
* versionbits: Use dedicated lock instead of cs_main
* versionbits: correct doxygen comments
* test: Add test for replacement relay fee check
* Translations update
* refactor: remove m_internal from DescriptorSPKman
* wallet: allow to import same descriptor twice
* refactor: Remove chainparams arg from CChainState member functions
* refactor: Remove ::Params() global from inside CChainState member functions
* test: remove `ToHex` helper, use .serialize().hex() instead
* test: introduce `tx_from_hex` helper for tx deserialization
* banman: save the banlist in a JSON format on disk
* wallet: Add missing BlockUntilSyncedToCurrentChain
* doc: Final merge of release notes snippets
* test: Run pep-8 on touched test
* test: Use MiniWallet in test_no_inherited_signaling RBF test
* test: Remove unused generate() from test
* Add support for SIGHASH_DEFAULT in RPCs, and make it default
* refactor: clean up external_signer.h includes
* Remove `Warning:`
* Rearrange fillPSBT arguments
* scripted-diff: tree-wide: Remove all review-only assertions
* init: Use existing chainman
* MOVEONLY: context-free package policies
* disallow_mempool_conflicts -> allow_bip125_replacement and check earlier
* [refactor] comment/naming improvements
* wallet: add displayAddress to interface
* gui: add external signer path to options dialog
* test: Extend feature_rbf.py with no inherited signaling
* Squashed \'src/secp256k1/\' changes from 3967d96bf1..efad3506a8
* qt: Translations update
* validation: change ProcessNewBlock() to take a CBlock reference
* index: Add chainstate member to BaseIndex
* fuzz: Speed up banman fuzz target
* Use COINBASE_MATURITY constant in functional tests.
* MOVEONLY: CWallet transaction code out of wallet.cpp/.h
* [policy] detect unsorted packages
* [validation] package validation for test accepts
* English translations update
* build: Use Qt archive of the same version as the compiled binaries
* rpc: Improve avoidpartialspends and avoid_reuse documentation
* Convert uses of double-serialization to {En,De}codeDouble
* Replace size/weight estimate tuple with struct for named fields
* rpc: fix code comment for bumpfee/psbtbumpfee output
* rpc: fix docs for bumpfee psbt update
* Factor feefilter logic out
* [net processing] Move addr relay data and logic into net processing
* refactor: Make CFeeRate constructor architecture-independent
* scripted-diff: Replace `GetDataDir()` calls with `gArgs.GetDataDirNet()` calls
* fuzz: Add utxo_snapshot target
* doc: release note for getnodeaddresses by network
* rpc: address:amount dictionaries are OBJ_USER_KEYS
* wallet: make chain optional for CWallet::Create
* refactor: Add CWallet:::AttachChain method
* qt: English translations update
* refactor: remove redundant fOnlySafe argument
* refactor: Use type-safe assumeutxo hash
* index: Avoid async shutdown on init error
* doc: Clarify that feerates are per virtual size
* rpc: include_unsafe option for fundrawtransaction
* rpc/listaddressgroupings: redefine inner-most array as ARR_FIXED
* move-only: Move functions to blockstorage
* refactor: Move block storage globals to blockstorage
* test: Add missing test for empty P2WSH redeem
* test: Add tests for block_info in gettxoutsetinfo
* index: Coinstats index can be activated with command line flag
* GUI/Intro: Move prune setting below explanation
* GUI/Intro: Estimate max age of backups that can be restored with pruning
* GUI/Intro: Rework UI flow to let the user set prune size in GBs
* GUI/Intro: Abstract GUI-to-option into Intro::getPrune
* Add bitcoin_en.xlf intermediate translation file to the repo
* rpc: Keep default argument value in correct type
* Refactor ProcessNewBlock to reduce code duplication
* rpc: Tidy up local references (see commit message)
* scripted-diff: rest/rpc: Use renamed EnsureAny
*()
* rpc/rawtx: Use existing NodeContext
* rpc/mining: Use existing NodeContext
* miner: Pass in previous CBlockIndex to RegenerateCommitments
* versionbits: simplify state transitions
* versionbits: Add explicit NEVER_ACTIVE deployments
* tests: test versionbits delayed activation
* versionbits: Add support for delayed activation
* tests: clean up versionbits test
* move-only: Move
*Disk functions to blockstorage
* move-only: Move ThreadImport to blockstorage
* Move external signer out of wallet module
* rpc: add network field to rpc getnodeaddresses
* doc: fixup -Wdocumentation issues
* net: Deserialize hardcoded seeds from BIP155 blob
* rpc: Add HelpExampleCliNamed and use it for `createwallet` doc
* miner: Add chainstate member to BlockAssembler
* Revert \"miner: Pass in chainstate to BlockAssembler::CreateNewBlock\"
* Revert \"scripted-diff: Invoke CreateNewBlock with chainstate\"
* doc: Merge release notes
* rpc: Missing doc updates for bumpfee psbt update
* remove unused class util::Ref and its unit test
* refactor: replace util::Ref by std::any (C++17)
* rpc: deprecate `addresses` and `reqSigs` from rpc outputs
* doc: Add release notes for #18335 (rpc work queue exceeded error)
* Qt: add Android packaging support
* test: add missing netaddress include headers
* p2p, refactor: pass and use uint16_t CService::port as uint16_t
* Use Bech32m encoding for v1+ segwit addresses
* Implement Bech32m encoding/decoding
* refactor: post Optional<> removal cleanups
* scripted-diff: remove Optional & nullopt
* validation: Make DumpMempool(...) and LoadMempool(...) easier to test/fuzz/mock
* scripted-diff: remove MakeUnique()
* scripted-diff: Invoke CreateNewBlock with chainstate
* miner: Pass in chainstate to BlockAssembler::CreateNewBlock
* wallet: Mark replaced tx to not be in the mempool anymore
* validation: Move invalid block handling to CChainState
* Move MakeNoLogFileContext to common libtest_util, and use it in bench
* Change all ping times to std::chrono types
* Revert \"qt: Remove Transactionview Edit Label Action\"
* [refactor] txmempool: split epoch logic into class
* rpc: send: support external signer
* wallet: ExternalSigner: add GetDescriptors method
* rpc: add external signer RPC files
* wallet: add -signer argument for external signer command
* qt: Remove Transactionview Edit Label Action
* tree-wide: Fix erroneous AcceptToMemoryPool replacements
* scripted-diff: Invoke ::AcceptToMemoryPool with chainstate
* validation: Add chainstate member to MemPoolAccept
* validation: Pass in coins cache to ::LimitMempoolSize
* tests: add deterministic chain generation unittest fixture
* simplify ChainstateManager::SnapshotBlockhash() return semantics
* chainparams: add allowed assumeutxo values
* net_processing: simplify PeerManageImpl method args
* rpc: Add hash_type MUHASH to gettxoutsetinfo
* rpc: Return total fee in mempool
* build: use focal in gitian descriptors
* validation: Guard all chainstates with cs_main
* Add CaptureMessage
* validation: Use accessible chainstate in ChainstateManager::ProcessNewBlock
* validation: Use existing chainstate in ChainstateManager::ProcessNewBlockHeaders
* scripted-diff: Use BlockManager::LookupBlockIndex
* validation: Guard the active_chainstate with cs_main
* gui: improve markup handling of connection type tooltip
* refactor: Drop boost::thread stuff in CCheckQueue
* Add local thread pool to CCheckQueue
* build: detect sys/sdt.h for eBPF tracing
* doc: Add manual page generation for bitcoin-util
* Replace boost::variant with std::variant
* gui: improve connection type tooltip
* net: Add libnatpmp support
* Don\'t declare de facto const reference variables as non-const
* [doc] Add release notes for removed getpeerinfo fields.
* build: Define .INTERMEDIATE target once only
* contrib: Parse ELF directly for symbol and security checks
* ci: Drop travis_fold feature as Travis CI is no longer used
* wallettool: Add dump command
* Squashed \'src/crc32c/\' changes from 224988680f..b5ef9be675
* refactor: Replace uses ChainActive() in interfaces/chain.cpp
* Remove the remaining fee estimation globals
* doc: Release note regarding -rpcauth validation
* Move ChainImpl from interfaces/chain.cpp to node/interfaces.cpp
* scripted-diff: Use [[nodiscard]] (C++17) instead of NODISCARD
* Do not compile BDB things when USE_BDB is defined
* Allow zero-fee fundrawtxn and walletcreatefundedpsbt calls
* doc: clean out release notes post branch-off
* qt: Pre-splitoff translations update
* wallet: override minfee checks (fOverrideFeeRate) for fee_rate
* wallet: provide valid values if invalid estimate mode passed
* wallet: update fee rate units, use sat/vB for fee_rate error messages
* wallet: introduce fee_rate (sat/vB) param/option
* wallet: add sendtoaddress/sendmany explicit fee rate coverage
* wallet: fundrawtx fee rate coverage, fixup ParseConfirmTarget()
* wallet, bugfix: fix bumpfee with explicit fee rate modes
* Make raw multisig tests legacy wallet only in rpc_rawtransaction.py
* Only relay Taproot spends if next block has it active
* wallet: Make -wallet setting not create wallets
* Squashed \'src/secp256k1/\' changes from c6b6b8f1bb..3967d96bf1
* Make sqlite support optional (compile-time)
* qt: Pre-splitoff translations update
* test: Add test for -blockversion
* doc: Merge release notes
* QA: Use GBT to get block versions correct
* tests: functional tests for Schnorr/Taproot/Tapscript
* --- [TAPROOT] Tests ---
* Make Taproot spends standard + policy limits
* --- [TAPROOT] Regtest activation and policy ---
* Support for Schnorr signatures and integration in SignatureCheckers (BIP 340)
* --- [TAPROOT] BIP340/341/342 consensus rules ---
* --- [TAPROOT] Refactors ---
* Add libsqlite3
* Squashed \'src/secp256k1/\' changes from 8ab24e8dad..c6b6b8f1bb
* Expedite removal of tx requests that are no longer needed
* [doc] release notes for max fee checking
* tor: make a TORv3 hidden service instead of TORv2
* net: advertise support for ADDRv2 via new message
* net: CAddress & CAddrMan: (un)serialize as ADDRv2
* doc: Collect release-notes snippets
* test: Get rid of default wallet hacks
* qt: Periodic translations update
* net: Print error message if -proxy is specified without arguments (instead of continuing without proxy server)
* Move checksum check from net_processing to net
* net: CNetAddr: add support to (un)serialize as ADDRv2
* feature: Added ability for users to add a startup command
* validation: Move PruneOneBlockFile to BlockManager
* Assert that RPCArg names are equal to CRPCCommand ones (net, rpcwallet)
* Assert that RPCArg names are equal to CRPCCommand ones (blockchain)
* Do not create default wallet
* Add OpenBSD instructions for building the Qt GUI
* [rpc] add send method
* Squashed \'src/secp256k1/\' changes from 2ed54da18a..8ab24e8dad
* Remove mapLinks in favor of entry inlined structs with iterator type erasure
* Remove mempool global from init
* refactor: Use DatabaseStatus and DatabaseOptions types
* Add in/out connections to rpc getnetworkinfo
* wallet: Reload previously loaded wallets on GUI startup
* zmq: enable tcp keepalive
* Remove -zapwallettxes
* [rpc] fundrawtransaction, walletcreatefundedpsbt lock manually selected coins
* refactor: Move wallet methods out of chain.h and node.h
* Pass mempool reference to chainstate constructor
* gui: Replace interface::Node references with pointers
* gui: Partially revert #10244 gArgs and Params changes
* net: change CNetAddr::ip to have flexible size
* Move only: Move CDiskTxPos to its own file
* Add loadwallet and createwallet RPC load_on_startup options
* rpc: Assert that RPCArg names are equal to CRPCCommand ones (misc)
* [net] Add addpeeraddress RPC method
* refactor: test: use _ variable for unused loop counters
* test: Fail wait_until early if connection is lost
* Replace current benchmarking framework with nanobench
* txdb: add CCoinsViewDB::ChangeCacheSize
* rpc: Avoid useless mempool query in gettxoutproof
* Add /settings.json persistent settings storage.
* Dump transaction version as an unsigned integer in RPC/TxToUniv
* walletdb: Add MakeBatch function to BerkeleyDatabase and use it
* doc: move-only release notes
* [rpc] refactor: consolidate sendmany and sendtoaddress code
* wallet: Pass unused args to StartWallets
* doc: Use precise permission flags where possible
* Clean up separated ban/discourage interface
* Replace automatic bans with discouragement filter
* refactor: Remove unused EnsureChainman
* build: Add MemorySanitizer (MSan) in Travis to detect use of uninitialized memory
* build: Sort Makefile.am after renaming file
* qa: Test concurrent wallet loading
* test: Add FeeFilterRounder test
* rpc/wallet: add two explicit modes to estimate_mode
* doc: add C++17 release note for 0.21.0
* [gui] Load PSBT from clipboard
* [gui] PSBT Operations Dialog (sign & broadcast)
* FillPSBT: report number of inputs signed (or would sign)
* [rpc] fundrawtransaction: add_inputs option to control automatic input adding
* [rpc] walletcreatefundedpsbt: don\'t automatically append inputs
* walletdb: Move BDB specific things into bdb.{cpp/h}
* pep-8 test/functional/test_framework/util.py
* test: refactor: Inline adjust_bitcoin_conf_for_pre_17
* tests: run test-security-check.py in CI
* Squashed \'src/secp256k1/\' changes from b19c000063..2ed54da18a
* wallet: Make RPC help compile-time static
* refactor: Error message bilingual_str consistency
* Remove g_rpc_chain global
* This PR adds initial support for type hints checking in python scripts.
* trivial: Suggested cleanups to surrounding code
* wallet: Minimal fix to restore conflicted transaction notifications
* util: dedup code in callers of serviceFlagToStr()
* util: simplify the interface of serviceFlagToStr()
* Consolidate service flag bit-to-name conversion to a shared serviceFlagToStr function
* BlockTip struct created and connected to notifyHeaderTip and notifyBlockTip signals.
* qt: Hide non PKHash-Addresses in signing address book
* qt: Remove QFont warnings with QPA=minimal
* qt: Add privacy feature to Overview page
* refactor: Replace const char
* to std::string
* validation: Make ProcessNewBlock
*() members of ChainstateManager
* validation: Make PruneOneBlockFile() a member of ChainstateManager
* validation: Make LoadBlockIndex() a member of ChainstateManager
* node: Add chainman alias for g_chainman
* test: Replace TEST_PREVIOUS_RELEASES env var with test_framework option
* refactor: Pass NodeContext to RPC and REST methods through util::Ref
* Add util::Ref class as temporary alternative for c++17 std::any
* multiprocess: add multiprocess travis configuration
* build: multiprocess autotools changes
* refactor: Pass SynchronizationState enum to GUI
* Switch from Optional to std::optional (C++17). Run clang-format.
* gui: Fix manual coin control with multiple wallets loaded
* [net processing] Message handling for getcfcheckpt.
* Make InitError bilingual
* Make ThreadSafe{MessageBox|Question} bilingual
* [test] add v0.16.3 backwards compatibility test
* wallet: Avoid translating RPC errors when loading wallets
* gui: Add close window shortcut
* test: Strip down previous releases boilerplate
* [wallet] Remove locked_chain from CWallet, its RPCs and tests
* [wallet] Move getHeight from Chain::Lock interface to simple Chain
* build: Drop make dist in gitian builds
* Add a --descriptors option to various tests
* add importdescriptors RPC and tests for native descriptor wallets
* [gui] load PSBT
* Move DEFAULT_MAX_RAW_TX_FEE_RATE to node/transaction.h
* doc: Add wallet release notes for 0.21.0
* test: add further BIP37 size limit checks to p2p_filter.py
* test: add more inactive filter tests to p2p_filter.py
* [wallet] allow transaction without change if keypool is empty
* wallet: Avoid use of Chain::Lock in CWallet::ScanForWalletTransactions
* wallet: Avoid use of Chain::Lock in rescanblockchain
* test: complete impl. of msg_merkleblock and wait_for_merkleblock
* Revert \"Merge #16367: Multiprocess build support\"
* validation: introduce unused ChainstateManager
* Add multiprocess travis configuration
* Multiprocess build changes
* Wed Oct 18 2023 marecAATTdetebe.org- Update to version 0.12.7:
* version bump
* sign block hash using descriptor wallet
* return sooner if minting is disabled
* Mon Sep 04 2023 marecAATTdetebe.org- Update to version 0.12.6:
* version bump
* calculate fees more appropriately
* add lock of cs_wallet
* increase fee for small outputs
* Mon Aug 28 2023 marecAATTdetebe.org- Update to version 0.12.5:
* version bump
* Do not start staking thread if the keypool is empty
* Peercoin is 피어코인 in Korean
* don\'t touch outputs that are desired size already
* initialize availableCoins to 0
* add filtering to optimizeutxoset
* add optimizeutxoset method
* fix some send rpc methods
* start with the optimizeutxoset RPC command
* Update japanese translation ビットコイン→ピアコイン Bitcoin→Peercoin
* Peercoin is 点点币 in simplified Chinese and 點點幣 in traditional Chinese
* enable riscv64 builds
* Sat May 27 2023 marecAATTdetebe.org- Update to version 0.12.4:
* version bump
* use http mirror on peercoin.net for latest release information
* allow http in qt
* print the error
* allow 0 outputs
* support OPTIONS method
* add corsdomain header if specified
* Sat Apr 15 2023 marecAATTdetebe.org- Update to version 0.12.3:
* Update nMinimumChainWork and defaultAssumeValid (testnet)
* rfc-27 witness script size rule
* version bump to 0.12.3
* Update nMinimumChainWork and defaultAssumeValid
* correct bech32 detection
* Update README.md
* version bump
* return settxfee stub that does nothing
* retry minting after exceptions
* handle missing reserve balance
* Fri Mar 10 2023 marecAATTdetebe.org- Update to version 0.12.2:
* version bump
* return settxfee stub that does nothing
* retry minting after exceptions
* handle missing reserve balance
* Sat Feb 11 2023 marecAATTdetebe.org- Update to version 0.12.1:
* version bump
* fix peercoin-tx compilation on freebsd
* fix secp256k1
* fix autogen.sh
* Update copyright year to 2023
* test: Add `nTime` in `CTransaction` class only for transactions below version 3
* test: Add `nFlags` in `CBlockHeader` class
* test: Add missing `vchBlockSig` in `CBlock` `class
* there\'s no need to sign blocks from submitblock at all anymore
* no more version in readme
* remove test binaries
* Remove multiple pruning-related variables and functions
* set earliest activation of v12 to April 17, 1200 UTC
* update protocol version
* update build number
* Remove unused FeeCalculation declarations
* reject old block version once v12 activates
* fix year and build number
* correct supermajority calculation
* Sun Feb 05 2023 marecAATTdetebe.org- Update to version 0.12.0:
* remove test binaries
* Remove multiple pruning-related variables and functions
* set earliest activation of v12 to April 17, 1200 UTC
* update protocol version
* update build number
* Remove unused FeeCalculation declarations
* reject old block version once v12 activates
* fix year and build number
* correct supermajority calculation
* Remove pruning residue in WalletController::closeWallet()
* set default minting interval to 30 days
* Do not process blocks without data during UTXO snapshot load
* qt: Remove the rest of the pruning code
* Remove `replaces_txid` and `replaced_by_txid` keys
* delay activation
* final fix dpkg appimage install
* Use correct Peercoin Github URL
* temp fix dpkg appimage install
* view v12 softfork status in getblockchaininfo
* cache coinstake input transactions
* super majority of 90% required for fork
* network format does not match disk format unfortunately
* fix disconnect block with unspendable zero outputs
* Revert \"fix default ports\"
* Remove unused getPruneMiB() declaration
* reduce minting table model and qt interface in general update frequency
* improve importcoinstake rpc output
* allow coinstake rpc commands to work with wallet unlocked for minting
* accept blockchain state from v11
* new splashscreen aligned
* New Ladybug Splash but to proper branch
* #658 fix peercoin icons for macosx
* fix amountfromvalue for rpc
* reduce dependency on kernel.cpp from common lib
* rfc5
* build: publish to dockerhub
* build: ignore appimage zsync files
* build: update appimage builder
* build: pass fetch tags to gbuild
* build: disable tests better commit / tag detection force gui build use pigz over gzip
* bump qt to 5.15.5
* duplicate coinstake protection
* current peercoin version is 3
* fix walletpassphrase rpc
* add version name
* remove btc residue
* fix tab icons and styles
* fix fee calculation
* bump docker actions
* rename bitcoin-util to peercoin-util
* set -lpthread for arm builds
* add peercoin-util.exe
* allow for focal glibc
* various build fixes
* rfc20
* some fixes to generateblocks
* allow taproot only after fork date
* add v12 activation time
* add peercoin fields to json
* reorder libs for linux
* libleveldb for wallet
* wallet needs these as well
* fix cryptolibs more
* move cryptolibs to the right place
* fix trace
* minisketch test
* some warnings removed
* missing line
* Revert \"autoupdate\"
* more missing modules
* more missing modules
* missing modules
* autoupdate
* fix build
* enable minting
* fix default ports
* Revert changes to README.md
* fix minting view and listminting
* handle pos flag in headers
* don\'t serialize nflags unless we have to
* fix tests
* fix translation files
* more build fixes
* more build fixes
* configure and build fixes
* doc: Update manual pages for 23.0
* build: Bump to final
* doc: Update manual pages for 23.0rc5
* qt: 23.0rc5 translations update
* build: Bump rc to 23.0rc5
* guix: fix GCC 10.3.0 + mingw-w64 setjmp/longjmp issues
* doc: Update manual pages for 23.0rc4
* qt: 23.0rc4 translations update
* build: Bump rc to 23.0rc4
* RPC: Switch getblockfrompeer back to standard param name blockhash
* Add DEBUG_LOCKCONTENTION documentation to the developer notes
* Put lock logging behind DEBUG_LOCKCONTENTION preprocessor directive
* build: Fix \"ERR: Unsigned tarballs do not exist\"
* guix: fix vmov alignment issues with gcc 10.3.0 & mingw-w64
* wallet: Postpone NotifyWalletLoaded() for encrypted wallets
* wallet, refactor: Add wallet::NotifyWalletLoaded() function
* doc: Update manual pages for 23.0rc3
* qt: 23.0rc3 translations update
* build: Bump rc to 23.0rc3
* util: Add inotify_rm_watch to syscall sandbox (AllowFileSystem)
* build: Fix Boost.Process test for Boost 1.78
* build: Fix Boost.Process detection on macOS arm64
* util: add linkat to syscall sandbox (AllowFileSystem)
* contrib: fix signet miner (sighash mismatch)
* rpc: Exclude descriptor when address is excluded
* ci: Temporarily use clang-13 to work around clang-14 TSan bug
* doc, init: add links to doc/cjdns.md
* doc: update i2p.md with cjdns, improve local addresses section
* doc: update tor.md with cjdns and getnodeaddresses, fix tor grep,
* doc: create initial doc/cjdns.md for cjdns how-to documentation
* Clarify in -maxtimeadjustment that only outbound peers influence time data
* rpc: rename getdeploymentinfo status-next to status_next
* init, doc: improve -onlynet help and tor/i2p documentation
* options: flip listenonion to false if not listening
* gui: restore Send for external signer
* refactor: helper function signWithExternalSigner()
* move-only: helper function to present PSBT
* doc, guix: Include arm64-apple-darwin into codesigned archs
* doc: Drop a note about Intel-based Macs
* guix: Use \"win64\" for Windows artifacts consistently
* guix: Drop \"-signed\" suffix for signed macOS .dmg files
* guix: Use $HOST instead of generic osx{64} for macOS artifacts
* Update signapple for platform identifier fix
* doc: Update manual pages for rc2
* build: Bump to 23.0rc2
* build, mac: Include arch in codesignature tarball
* guix: use latest signapple
* qt: Avoid crash on startup if int specified in settings.json
* test: Add tests for GetArg methods / settings.json type coercion
* guix: use same commit for codesigning time-machine
* qt: Pull translations for 0.23rc1
* doc: Generate manual pages for 23.0rc1
* build: Bump version to 23.0rc1
* net: only assume all local addresses if listening on any
* net: fix GetListenPort() to derive the proper port
* net: pass Span by value to CaptureMessage()
* net: make CaptureMessage() mockable
* timedata: rename variables to match the coding style
* timedata: make it possible to reset the state
* Do not use `LocalTestingSetup` in getarg_tests test file.
* test: add combined CJDNS/I2P/localhost/onion eviction protection tests
* test: add tests for inbound eviction protection of CJDNS peers
* test: fix off-by-one logic in an eviction protection test
* p2p: extend inbound eviction protection by network to CJDNS peers
* tests: Tests for inactive HD chains
* wallet: Refactor TopUp to be able to top up inactive chains too
* wallet: Properly set hd chain counters when loading
* wallet: Parse hdKeypath if key_origin is not available
* Add size check on meta.key_origin.path
* net: remove unused CNetAddr::GetHash()
* net: include the port when deciding a relay destination
* net: add CServiceHash constructor so the caller can provide the salts
* net: open p2p connections to nodes that listen on non-default ports
* scripted-diff: rename `proxyType` to `Proxy`
* net: respect -onlynet= when making outbound connections
* qt: Pre-branch translation updates for 23.x
* ci: Force `--enable-external-signer` to prevent future regressions
* build: Fix Boost.Process check for Boost 1.73 and older
* build: Fix a non-portable use of `test`
* build, refactor: Replace tabs with spaces
* tests: Test upgrading wallet with privkeys disabled
* wallet: Don\'t generate keys when privkeys disabled when upgrading
* Fixup style of VerifyDB
* Avoid implicit-integer-sign-change in VerifyLoadedChainstate
* net: Update hardcoded seeds for 23.x
* contrib: make-seeds updates for 23.x
* Update nMinimumChainWork, defaultAssumeValid for 23.x
* Update chainTxData for 23.x
* fuzz: FuzzedFileProvider::write should not return negative value
* Avoid implicit-integer-sign-change in bech32.cpp
* test: Remove no longer needed suppressions
* doc: update maintainer list in REVIEWERS
* doc: Explain that feedback needs to be addressed
* doc: Move peer-review paragraph to right section
* doc: Add link to release-process.md in CONTRIBUTING.md
* p2p: Avoid InitError when downgrading peers.dat
* test: Fix intermittent test failure in feature_backwards_compatibility
* test: previous releases: add v22.0
* test: bump sandbox argument minimum version
* test: previous releases: add v0.21.0
* test: v0.20.1 backwards compatibility
* test: backwards compatibility: misc fixes
* test: Remove i686 from test/get_previous_releases.py
* qt: English (source) translations update
* Add missed word to error message
* wallet: Add external-signer-support specific error message
* build: upgrade depends Boost to 1.77.0
* build, qt: (Re-)sign package
* build, qt: Align frameworks with macOS codesign tool requirements
* test: Run symlink regression tests on Windows
* build: pass win32-dll to LT_INIT()
* test: Fix intermittent Tsan issue
* bench: Avoid deprecated use of volatile +=
* test: Fix Wambiguous-reversed-operator compiler warnings
* doc: Mention missing BIP157 in bips.md
* doc: Update bips.md for 23.x
* contrib: address gen-manpages feedback from #24263
* Output license info when binaries are passed -version
* refactor: shift CopyrightHolders() and LicenseInfo() to clientversion.cpp
* lint: remove no-longer used exceptions from lint-format-strings.py
* qt: Update translation source file
* Replace \"can not\" with \"cannot\" in docs, user messages, and tests
* User-facing content fixups from transifex translator feedback
* [doc] package deduplication
* [validation] look up transaction by txid
* qt: Override BitcoinApplication::event() to handle QEvent::Quit
* cli: describe quality/recency filtering in -addrinfo
* rpc: describe quality/recency filtering in getnodeaddresses
* util: Add SaturatingAdd helper
* doc: Swap gen-manpages and update RC steps in release process
* doc: Fix gen-manpages, rewrite in Python
* ci: Bump fuzz tasks to jammy
* Revert \"ci: Run fuzzer task for the master branch only\"
* Use `GetAllOutputTypes` in `getblock` RPC function
* Move `GetAllOutputTypes` function from `rpc/rawtransaction.cpp` to `rpc/util.{h|cpp}`
* doc: Rework generate
* doc
* Add tr() descriptor unit tests
* Bugfix: make ToPrivateString work with x-only keys
* Bugfix: set x-only flag when inferring pk() inside tr()
* doc: fix wording of alertnotify
* Rename wallet-tool to bitcoin-wallet in code comment
* Mention -signet in bitcoin-wallet help output
* scripted-diff: Rename nReadPos to m_read_pos in streams.h
* Make CDataStream work properly on 64-bit systems
* streams: Fix read-past-the-end and integer overflows
* ci: use Ubuntu Jammy for Windows CI
* rpc: Fix implicit-integer-sign-change in verifychain
* index: check muhash is in sync on coinstatsindex launch
* index: remove txindex references from base index
* util: Add missing rseq to syscall sandbox
* tracing: misc follow-ups to 22902
* tracing: correctly scope utxocache:flush tracepoint
* test: Remove suppression no longer needed with headers-only Boost.Test
* build: remove boost dep from libmultiprocess
* Primitives: Correct CTransaction deserialization docstring
* ci: add missing sqlite_cflags to MSAN fuzz job
* ci: remove boost_cxxflags from MSAN CIs
* Improve -netinfo help based on feedback from users and devs
* Update doc to match new default wallet type
* fuzz: Split script formatting from script fuzz target
* test: Add functional test for symlinked blocks directory
* test: Add fs_tests/create_directories unit test
* util: Work around libstdc++ create_directories issue
* block_connected: re-use previous GetTimeMicros
* block_connected: don\'t serialize block hash twice
* test: Add fs_tests/rename unit test
* util: Revert back MoveFileExW call for MinGW-w64
* build: Point Guix to recent commit on the master branch
* build: Fix gcc-cross-x86_64-w64-mingw32-10.3.0 in Guix
* Add missing thread safety lock assertions in validation.h
* Add missing thread safety lock assertions in validation.cpp
* doc: Fix typos
* test: activate all index types in feature_init.py
* index: Don\'t commit without valid m_best_block_index
* test: refactor: remove unneeded bytes<->hex conversions in `byte_to_base58`
* Print enable_fuzz_binary in configure
* util: Add missing unlinkat to syscall sandbox
* Release process: fix broken link to Guix building docs
* test: remove `import socket` in test_ipv6_local
* scripted-diff: Rename ShowModalDialogAndDeleteOnClose
* qt: Revert 7fa91e831227e556bd8a7ae3da64bd59d4f30d5f partially
* qt: Delay shutdown while a modal dialog is active
* qt: Disable tray icon menu when a modal dialog is active
* qt, refactor: Use local QAction instances for the tray icon menu
* qt, refactor: Drop BitcoinGUI::{send,receive}CoinsMenuAction members
* qt: Make show_hide_action dependent on the main window actual state
* qt: Drop BitcoinGUI::toggleHideAction member
* qt, refactor: Fill up trayIconMenu before connections
* qt, refactor: Replace BitcoinGUI::trayIconActivated with a lambda
* qt, refactor: Replace BitcoinGUI::macosDockIconActivated with a lambda
* build: remove -f from clang cp invocation
* build: remove unused include dir from clang package
* build: Add Boost.Process usage check
* build: correct depends FreeBSD C{XX}FLAGS
* build: add NetBSD support to depends
* Add optimized sha256d64_arm_shani::Transform_2way
* Implement sha256_arm_shani::Transform
* Add sha256_arm_shani to build system
* Rename SHANI to X86_SHANI to allow future implementation of ARM_SHANI
* Test that OP_1-OP_16 (but not lower/higher) start witness programs
* rpc/blockchain: rename getdeploymentinfo tip/active_chain_tip to blockindex
* trivial: comment tweaks
* rpc documentation improvements
* doc: getdeploymentinfo release notes tweaks
* build: remove native B2 package
* build: header-only Boost
* build: use header-only Boost unit test
* refactor: Avoid unsigned integer overflow in core_write
* improved getcoins.py
* build, refactor: Reuse expat package version in its download path
* build, refactor: Use conventional version notation for boost package
* release-process: Specify remote name in \"git fetch\"
* build: Fix `make deploy` for Windows when building out of source tree
* build: add support for OpenBSD to depends
* build: add a default build tar in depends
* RPC: Return external_signer in getwalletinfo
* util: use stronger-guarantee rename method
* ci: Follow Cirrus CI docs
* doc: cleanup doc on need of Developer Account to obtain macOS SDK
* build: remove unneeded getentropy detection (HAVE_GETENTROPY)
* random: use arc4random on OpenBSD
* Fix unintended unsigned integer overflow in strencodings
* test: Remove unused integer sanitizer suppressions
* fuzz: Avoid unsigned integer overflow in FormatParagraph
* util: Drop no longer needed StripRedundantLastElementsOfPath() function
* Use ArgsManager::GetPathArg() for \"-walletdir\" option
* Use ArgsManager::GetPathArg() for \"-blocksdir\" option
* Use ArgsManager::GetPathArg() for \"-datadir\" option
* util: Add ArgsManager::GetPathArg() function
* Remove broken and unused CDataStream methods
* test: Create fresh CDataStream each time
* test: Inline expected_xor
* build, refactor: Drop redundant `$(package)_download_file` assignments
* Fix integer sanitizer suppressions in validation.cpp
* Bugfix: GUI: Check validity when QValidatedLineEdit::setText is called
* Bugfix: GUI: Re-check validity after QValidatedLineEdit::setCheckValidator
* Bugfix: GUI: Only apply invalid style to QValidatedLineEdit, not its tooltip
* validation: use stronger EXCLUSIVE_LOCKS_REQUIRED()
* util: Avoid buggy std::filesystem:::create_directories() call
* docs: Move explanation of hardened key syntax closer to KEY section
* test: Remove unused valgrind suppressions
* test: Exclude broken feature_init for now
* test: Properly skip feature_syscall_sandbox in valgrind
* test: Call ceildiv helper with integer
* test: Repair failfast option for test runner
* Fix unsigned integer overflow in LoadMempool
* test: Avoid testing negative block heights
* Fix unsigned integer overflow in tapscript validation weight calculation
* Re-enable walletinit_verify_walletdir_no_trailing2 test disabled in #20744
* Re-enable util_datadir check disabled in #20744
* Add bitcoin_config.h to build_msvc/.gitignore
* bench: Represents paths with fs::path instead of std::string
* Squashed \'src/minisketch/\' changes from 89629eb2c7..7eeb778fef
* Follow Transifex docs to prepare XLIFF source
* qt,refactor: Use std::chrono in TrafficGraphWidget class
* qt: Update source translations
* init: Remove confusing \'(possible integer overflow?)\' from error message
* style: wrap long lines in CNode creation and add some comments
* scripted-diff: rename CNode::cs_hSocket to CNode::m_sock_mutex
* net: use Sock in CNode
* fuzz: move FuzzedSock earlier in src/test/fuzz/util.h
* build: remove Boost::system usage
* build: remove boost::filesystem usage
* refactor: replace boost::filesystem with std::filesystem
* build: add support for std::filesystem
* doc: Install only \"-posix\" MinGW compiler when possible
* ci: Drop no longer needed `update-alternatives`
* build, qt: Specify QMAKE_CXX explicitly
* depends: fix capnp\'s descriptor for make download
* build: add FreeBSD support to depends
* p2p, contrib: update i2p hardcoded seeds
* p2p, contrib: add cjdns hardcoded seeds
* build: Replace `which` command with `command -v`
* refactor: Fixup uint64_t-cast style in touched line
* Fix implicit-integer-sign-change in bloom
* test: speedup interface_rest.py by whitelisting peers (immediate tx relay)
* test: use MiniWallet for rest_interface.py
* test: add more wallet conflicts assertions
* Revert \"Add to spends only transcations from me\"
* ci: Use dash when building depends in centos build
* scripted-diff: Rename DOCKER_EXEC to CI_EXEC
* ci: Bump CentOS 8 image
* zmq: Fix implicit-integer-sign-change
* test: Fix sanitizer suppresions in streams_tests
* test: Fix feature_init intermittent issues
* test: Remove random line number feature from feature_init.py
* refactor: Make MessageBoxFlags enum underlying type unsigned
* refactor: replace RecursiveMutex m_chainstate_mutex with Mutex
* refactor: add negative TS annotations for `m_chainstate_mutex`
* scripted-diff: rename m_cs_chainstate -> m_chainstate_mutex
* Extract CTxIn::MAX_SEQUENCE_NONFINAL constant
* Avoid integer sanitizer warnings in chain.o
* fuzz: Speed up script fuzz target
* Fix race condition for SetBannedSetDirty() calls
* Avoid calling BanMan::SweepBanned() twice in a row
* Fix data race condition in BanMan::DumpBanlist()
* Prevent possible concurrent CBanDB::Write() calls
* Replace lock with thread safety annotation in CBlockTreeDB::LoadBlockIndexGuts()
* lint: add creat and ba into ignore-words for lint-spelling
* doc: Fix typos pointed out by lint-spelling
* build: Fix xargs warnings for Guix builds
* build: force CRCCheck in Windows installer
* gui: use available space to display \"Last Transaction\" in peer details
* gui: add \"Addresses Rate-Limited\" (m_addr_rate_limited) to peer details
* gui: add \"Addresses Processed\" (m_addr_processed) to peer details
* gui: add \"Address Relay\" (m_addr_relay_enabled) to peer details
* Avoid unsigned integer overflow in bitcoin-tx
* Release notes for getdeploymentinfo rpc
* rpc: getdeploymentinfo: include signalling info
* rpc: getdeploymentinfo: include block hash/height
* rpc: getdeploymentinfo: change stats to always refer to current period
* rpc: move softfork info from getblockchaininfo to getdeploymentinfo
* doc: add arm macOS depends platform triplet
* guix: add arm64-apple-darwin triplet
* guix: use autoconf 2.71
* contrib: support arm64 darwin in security checks
* build: use macOS 11 SDK (Xcode 12.2)
* Remove unused char serialize
* Use spans of std::byte in serialize
* span: Add BytePtr helper
* Guard CBlockIndex::nStatus/nFile/nDataPos/nUndoPos by cs_main
* Remove/inline ReadRawBlockFromDisk(block_data, pindex, message_start)
* Require IsBlockPruned() to hold mutex cs_main
* Require CBlockIndex::IsValid() to hold cs_main
* Require CBlockIndex::RaiseValidity() to hold cs_main
* Require CBlockIndex::IsAssumedValid() to hold cs_main
* Require CBlockIndex::GetUndoPos() to hold mutex cs_main
* Require WriteUndoDataForBlock() to hold mutex cs_main
* Require CBlockIndex::GetBlockPos() to hold mutex cs_main
* fs: consistently use fsbridge for fopen()
* fs: add missing include
* fs: consistently use fsbridge for {i,o}fstream
* build: Disable valgrind when building zeromq package in depends
* build: Disable libbsd when building zeromq package in depends
* build: Update netbsd_kevent_void.patch
* transaction decoding infer output descriptors
* doc: Fix rpc docs
* test, bugfix: fix intermittent failure in getrawtransaction_tests
* test: add functional test for `-maxtipage` parameter
* test: remove unused sanitizer suppressions
* Remove unused checkFinalTx
* wallet: Avoid dropping confirmed coins
* interfaces: Remove unused is_final
* qt: Treat unconfirmed txs as unconfirmed
* rpc: use peer_id, block_hash for FetchBlock
* rpc: more detailed errors for getblockfrompeer
* rpc: turn already downloaded into error in getblockfrompeer
* rpc: clarify getblockfrompeer behavior when called multiple times
* refactor: drop redundant hash argument from FetchBlock
* rpc: allow empty JSON object result
* test: fancier Python for getblockfrompeer
* tests: Test specifying input weights
* rpc, wallet: Allow users to specify input weights
* wallet: Allow user specified input size to override
* wallet: add input weights to CCoinControl
* scripts: add CONTROL_FLOW to ELF security checks
* build: build x86_64 Linux Boost with -fcf-protection=full
* script rename control flow check to MACHO specific
* Optimize CHECKSIGADD Script Validation
* doc: Update the used Qt version
* Mempool Update Cut-Through Optimization
* [TESTS] Increase limitancestorcount in tournament RPC test to showcase improved algorithm
* [unit test] package parents are a mix
* [validation] better handle errors in SubmitPackage
* AcceptPackage fixups
* [unit test] different witness in package submission
* [doc] more detailed explanation for deduplication
* [packages] return DIFFERENT_WITNESS for same-txid-different-witness tx
* guix: ignore additioanl failing certvalidator test
* build: point to latest commit on the master branch
* Run coin.IsSpent only once in a row
* refactor: replace RecursiveMutex `m_addr_local_mutex` with Mutex
* p2p: add assertions and negative TS annotations for m_addr_local_mutex
* scripted-diff: rename cs_addrLocal -> m_addr_local_mutex
* script: redirecting stderr to stdout before pipelining into grep
* script: preventing non-compatible sed binary.
* net, refactor: Drop tautological local variables
* scripted-diff: Rename CNetMessage::m_command with CNetMessage::m_type
* [net processing] Rename PoissonNextSendInbound to NextInvToInbounds
* [net processing] Move PoissonNextSendInbound to PeerManager
* scripted-diff: replace PoissonNextSend with GetExponentialRand
* [refactor] Use uint64_t and std namespace in PoissonNextSend
* [move] Move PoissonNextSend to src/random and update comment
* qa: test descriptors with mixed xpubs and const pubkeys
* refactor tests to fix ubsan suppressions
* refactor: replace RecursiveMutex g_maplocalhost_mutex with Mutex
* scripted-diff: rename cs_mapLocalHost -> g_maplocalhost_mutex
* build: disable external signer on Windows
* fs: Make compatible with boost 1.78
* build: patch depends zeromq to fix building on NetBSD Current
* zeromq 4.3.4
* Replace `struct update_lock_points` with lambda
* document and clean up MaybeUpdateMempoolForReorg
* build: specify hosts for qrencode package
* test: rest /tx with an invalid/unknown txid
* Highlight DNS request part
* util: Fix mis-swapped `prettyIndent` and `indentLevel` arguments
* fuzz: non-addrman fuzz tests: override-able check ratio
* fuzz: addrman fuzz tests: override-able check ratio
* test: non-addrman unit tests: override-able check ratio
* test: addrman unit tests: override-able check ratio
* bench: put addrman check ratio in a variable
* fuzz: parse the command line arguments in fuzz tests
* test: parse the command line arguments in unit tests
* refactor: replace RecursiveMutex `m_callbacks_mutex` with Mutex
* scripted-diff: rename `m_cs_callbacks_pending` -> `m_callbacks_mutex`
* refactor: replace RecursiveMutex `m_subver_mutex` with Mutex
* scripted-diff: rename `cs_SubVer` -> `m_subver_mutex`
* Fix implicit-integer-sign-change in arith_uint256
* log: Remove GetAdjustedTime from IBD header progress estimation
* fuzz: Limit fuzzed time to years 2000-2100
* doc: Rework 14707 release notes
* doc: move-only release note snippets
* test: use MiniWallet for mempool_accept.py
* test: MiniWallet: support default `from_node` for creating txs
* test: create txs with current `nVersion` (2) by default
* test: refactor: add constant for sequence number `SEQUENCE_FINAL`
* Necessary improvements to make configure work without libevent installed
* The evhttp_connection_get_peer function from libevent changes the type of the second parameter. Fixing the problem.
* build: Improve error message when pkg-config is not installed
* util: Restore GetIntArg saturating behavior
* refactor, qt: Use std::chrono for input_filter_delay constant
* refactor, qt: Add SHUTDOWN_POLLING_DELAY constant
* refactor, qt: Use std::chrono for non-zero arguments in QTimer methods
* refactor, qt: Use std::chrono in ConfirmMessage parameter
* refactor, qt: Use std::chrono for MODEL_UPDATE_DELAY constant
* scripted-diff: Rename functions to drop mention of boost
* build: Point Guix to the current top of the \"version-1.4.0\" branch
* Remove cs_main lock annotation from ChainstateManager.m_blockman
* [bugfix] prevent UnicodeDecodeError errors when opening log file in feature_init.py
* Move CBlockFileInfo::ToString method where class is declared
* Add src/wallet/
* code to wallet:: namespace
* Add src/node/
* code to node:: namespace
* Change type of `backup_file` parameter in RestoreWallet/restoreWallet
* refactor: Block unsafe std::string fs::path conversion copy_file calls
* doc: Remove outdated scriptChange TODO comment
* Add FastRange32 function and use it throughout the codebase
* scripted-diff: rename MapIntoRange to FastRange64
* [moveonly] Move MapIntoRange() to separate util/fastrange.h
* build: rename --enable-ebpf to --enable-usdt
* build: add systemtap\'s sys/sdt.h as depends
* qt: hide Create Unsigned button behind an expert mode option
* qt: Add Create Unsigned button to SendConfirmationDialog
* refactor: add thread safety lock assertion to WriteBlockIndexDB()
* doc: Drop no longer required notes for Windows builds
* build: Try posix-specific CXX first for mingw32 host
* guix: use upstream python-requests (2.26.0)
* build: use python-asn1crypto from upstream
* guix: use uptream nsis-x86_64
* guix: use GCC 10 (over GCC 8) to build releases
* scripted-diff: Rename touched member variables
* Make blockstorage globals private members of BlockManager
* doc: Clarify nPruneAfterHeight for signet
* test: Load genesis block to allow flush
* Move blockstorage-related unload to BlockManager::Unload
* move-only: Create WriteBlockIndexDB helper
* Move functions to BlockManager
* test: set ban after mocking time
* ci: Clone entire bitcoin-core/qa-assets repo only when run fuzzing
* test: run feature_pruning.py without wallet compiled
* scripted-diff: Rename libbitcoin_server.a to libbitcoin_node.a
* util: move MapIntoRange() for reuse in fuzz tests
* init: Use clang-tidy named args syntax
* style-only: Rename
*Chainstate return values
* docs: Make LoadChainstate comment more accurate
* node/chainstate: Use MAX_FUTURE_BLOCK_TIME
* Refactor: Uses c++ init convention for time variables
* Refactor: Changes remaining time variable type from int to chrono
* qa: replace assert with test framework assertion helpers in fee estimation test
* qa: fee estimation with RBF test cleanups
* qa: don\'t mine non standard txs in fee estimation test
* qa: pass scriptsig directly to txins constructor in fee estimation test
* qa: split coins in a single tx in fee estimation test
* qa: use a single p2sh script in fee estimation test
* qa: remove a redundant condition in fee estimation test
* reviewers: add tracing
* refactor: Remove pointless and confusing shift in RelayAddress
* wallettool: Check that the dumpfile checksum is the correct size
* test: check that bitcoin-tx detects missing input amount for segwit transactions
* Require that input amount is provided for bitcoin-tx witness transactions
* Let test_runner.py start multiple jobs per timeslot
* doc: Fix typo in getmempoolinfo
* net: change CreateNodeFromAcceptedSocket() to take Sock
* net: use Sock in CConnman::ListenSocket
* net: add new method Sock::Accept() that wraps accept()
* doc: Fix typo in LoadBlockIndex
* refactor: Avoid integer overflow in ApplyStats when activating snapshot
* Move AdditionOverflow to util, Add CheckedAdd with unit tests
* Add dev doc to CCoinsStats::m_hash_type and make it const
* style: Remove unused whitespace
* test: use MiniWallet for mining_basic.py
* test: wait rather than assert presence of file in startupnotify test
* build: use a static .tiff for macOS .dmg over generating
* depends: Fix typo
* doc: Mark proprietary array optional
* test: Bundle all integer sanitizer suppressions of dependencies
* doc: remove CC_FOR_BUILD from OpenBSD build doc
* test: Cover eviction by timeout in addrman_evictionworks
* test: Add test for multiplicity in addrman new tables
* test: Add test for updating addrman entries
* test: introduce utility function to retrieve an addrman
* test: Remove unused AddrManTest class
* test: Remove tests for internal helper functions
* test: use AddrMan instead of AddrManTest where possible
* test: Inline SimConnFail function
* test: delete unused GetBucketAndEntry function
* test: Update addrman_serialization unit test to use AddrMan\'s interface
* addrman: Introduce a test-only function to lookup addresses
* rpc: Use EnsureAnyArgsman in rpc/blockchain
* rpc: Add EnsureArgsman helper
* scripts: make security checks architecture independent
* Add RPC help for getblock verbosity level 3
* Address review comments from #22918
* Change \'Show\' icon
* Update test/sanitizer_suppressions/lsan
* build: use host_os instead of TARGET_OS in configure output
* Fixup style of moved code
* Move BlockManager to node/blockstorage
* build, qt: No need to set inapplicable QPA backend for Android
* ci: Update Cirrus CI task name
* [bugfix] update lockpoints correctly during reorg
* MOVEONLY: update_lock_points to txmempool.h
* test: enable txindex in feature_init
* test: feature_init: retain debug.log and improve detection
* test: feature_init: tweak all .ldb files of a certain type
* test: add TestNode.wait_for_debug_log
* test: introduce TestNode.debug_log_bytes
* test: add functional test for -startupnotify
* doc: Update license year range to 2022
* doc: Fix dumptxoutset RPC help doc
* refactor: Remove implicit-integer-sign-change suppressions in validation.cpp
* [test] compare filter and header with the result of the getblockfilter RPC
* [rest] drop superfluous rpc serializations flags for block filters
* [rest] add a more verbose error message for invalid header counts
* [refactor] various style fix-ups
* doc: testnet3 was not reset and is doing BIP30 checks again
* doc: fix undo data filename (s/undo???.dat/rev???.dat/)
* rpc: Quote user supplied descriptor in error msg
* scripted-diff: Insert missed copyright headers
* scripted-diff: Bump copyright headers
* script: Fix copyright_header.py
* ci: Enable the gui in the TSan build
* test: check ban_duration and time_remaining after setting ban
* build: Add ability to build qt in depends with -stdlib=libc++
* Include patches for Guix
* build: Drop redundant AC_SUBST macros
* build: Drop redundant check of PKG_CHECK_MODULES presence
* test: use MiniWallet for p2p_compactblocks.py
* doc: Remove TODO comment in tx_verify
* doc: Fix -changetype help text
* doc: Remove TODO from block fuzz test
* test: use MiniWallet for rpc_scantxoutset.py
* test: introduce `address_to_scriptpubkey` helper
* test: introduce `getnewdestination` helper for generating various address types
* build: Fix regression introduced in PR23603
* build, qt: Hardcode last modified timestamp in Qt RCC
* doc: Drop outdated note
* test: Fix pep8 of touched file
* test: Fix rpc_scantxoutset intermittent issue
* test: Add missing suppressions for crypto_diff_fuzz_chacha20.cpp
* test: check for invalid listtransactions RPC parameters
* Fix Racy ParseOpCode function initialization
* ci: use GCC 8 when building packages in native_qt5 CI
* scripted-diff: Rename interfaces::WalletClient to interfaces::WalletLoader
* test: call VerifyLoadedChainstate during ChainTestingSetup
* gui: address type dropdown, add bech32m
* wallet: add taprootEnabled() to interface
* rpc: Add warning to user about newkeypool command
* wallet: Strictly match tx change type to improve privacy
* test: check that pruneblockchain RPC fails for future block or timestamp
* ci: Use Cirrus \"greedy\" flag to use idle CPU time when available
* Change time variable type to std::chrono::seconds in src/net_processing.cpp
* [doc] CPFP carve out and single-conflict RBF exemption
* [doc] clarify RBF difference from BIP125
* [doc] current rbf policy
* refactor: addrman_select test
* refactor: addrman_evictionworks test
* refactor: addrman_noevict test
* refactor: addrman_selecttriedcollisions test
* test: fix intermittent timeouts in p2p_timeouts.py
* Update REST docs with new accessors
* Expose block filters over REST.
* contrib: add achow101 to trusted keys
* scripts: match on exe type over str in symbol-check.py
* scripts: match on exe type over str in security-check.py
* p2p, refactor: drop unused DNSLookupFn param in LookupSubnet()
* p2p, refactor: tidy up LookupSubNet()
* ci: Use system sqlite in native macOS task
* ci: Bump the macOS image to the latest Monterey
* test: Improve \"invalid_command\" subtest in system_tests for Windows
* test: Fix \"non-zero exit code\" subtest in system_tests for Windows
* test: Fix \"false\" subtest in system_tests for Windows
* test: Fix \"echo\" subtest in the system_tests for Windows
* Refactor the chacha20 differential fuzz test
* Remove unnecessary cast in CKey::SignSchnorr
* Remove --disable-openssl-tests for libsecp256k1 configure
* Squashed \'src/secp256k1/\' changes from be8d9c262f..0559fc6e41
* ci: Disable s390x gui tests for now
* p2p: Always serialize local timestamp for version msg
* Replace $(AT) with .SILENCE.
* [fuzz] Add fuzzing harness to compare both implementations of ChaCha20
* [fuzz] Add D. J. Bernstein\'s implementation of ChaCha20
* Move pindexBestInvalid to ChainstateManager
* Move m_failed_blocks to ChainstateManager
* Move AcceptBlockHeader to ChainstateManager
* Move FindForkInGlobalIndex from BlockManager to CChainState
* test: Combine addr generation helper functions
* test: Fix intermittent issue in p2p_addr_relay.py
* doc: add explanations for assert in index and magic numbers in test
* rpcwallet: mention labels are deactivated for ranged descriptors
* refactor: remove the wallet folder if the restore fails
* refactor: Move restorewallet() RPC logic to the wallet section
* refactor: Implement restorewallet() logic in the wallet section
* test: re-organized array according to order of logs and included 2 more interruption events
* test: include two more interruptions points
* build, qt: Drop support for `i686-linux-android` host
* [unit test] package submission
* [validation] de-duplicate package transactions already in mempool
* [packages] add sanity checks for package vs mempool limits
* [validation] full package accept + mempool submission
* [policy] require submitted packages to be child-with-unconfirmed-parents
* [packages/doc] define and document package rules
* [unit test] context-free package checks
* [packages] add static IsChildWithParents function
* style: Use 4 spaces for indendation, not 5
* Disallow copies of CChain
* qt: prevent negative values of progressPerHour
* scripted-diff: Rename touched member variables
* Use mockable time for peer connection time
* refactor: Use type-safe std::chrono in net
* net: Drop only invalid entries when reading banlist.json
* build, android: Fix Android GUI not loading on Qt 5.15
* build, qt: use static QAndroidPlatformIntegrationPlugin
* test: add tests for LoadBlockIndex when using multiple chainstates
* validation: have LoadBlockIndex account for snapshot use
* validation: don\'t modify genesis during snapshot load
* Reduce size of strencodings decode tables
* Fix implicit integer sign changes in strencodings
* refactor: remove dependence on AddrManTest
* refactor: check Good() in tried_collisions test
* refactor: make AddrMan::Good return bool
* tests: Add missing assert_equal import to p2p_add_connections.py
* [net processing] Do not request transaction relay from feeler connections
* [test] Add testing for outbound feeler connections
* fuzz: Rework FillNode
* refactor: Set fSuccessfullyConnected in FillNode
* fuzz: Avoid negative NodeId in ConsumeNode
* refactor: remove unneeded calls to strprintf()
* doc: Improve ZMQ documentation
* Add multisig tutorial
* wallet: Replace Assume with Assert where needed in coinselection
* rpc: Quote user supplied strings in error messages
* build: use __SIZEOF_INT128__ for checking __int128 availability
* test: Use byte unit \'M\' for -maxuploadtarget functional test
* validation, doc: remove TODO comment
* validation, log: improve logging in FlushSnapshotToDisk()
* validation, log: extract FlushSnapshotToDisk() function
* test: Add edge case of pruning up to index height
* index: Fix backwards search for bestblock
* rpc: output all hash preimages in \'decodepsbt\'
* psbt: implement hash preimages fields
* build: Use config_opts instead of passing a compiler flag directly
* build, qt: Drop unused CROSS_COMPILE variable for Android builds
* build, refactor: Re-use `qt_lib_suffix` variable
* Add createmultisig and addmultisigaddress warnings release note
* Add warnings field to addmultisigaddress to warn about uncompressed keys
* Add warnings field to createmultisig to warn about uncompressed keys
* test: fix test failures in test/functional/p2p_timeouts.py
* doc: Remove TODO \'exclude peers with download permission\'
* fuzz: Move ISO8601 to one place
* Merge global xpubs in joinpsbts and combinepsbts
* Add global xpub test vectors from BIP
* Add global_xpubs to decodepsbt
* Implement serializations for PSBT_GLOBAL_XPUB
* Implement operator< for KeyOriginInfo and CExtPubKey
* Separate individual HD Keypath serialization into separate functions
* Store version bytes and be able to serialize them in CExtPubKey
* moveonly: Move (Un)Serialize(To/From)Vector, (De)SerializeHDKeypaths to psbt module
* Test for proprietary field
* Output proprietary type info in decodepsbt
* Implement PSBT proprietary type
* Output psbt version in decodepsbt
* Add GetVersion helper to PSBT
* Implement PSBT versions
* Types are compact size uints
* style-only: Remove redundant scope in
*Chainstate
* Collapse the 2 cs_main locks in LoadChainstate
* Remove all #include // for
* comments
* test/setup: Use LoadChainstate
* node/chainstate: Add options for in-memory DBs
* node/caches: Remove intermediate variables
* node/caches: Extract cache calculation logic
* validation: VerifyDB only needs Consensus::Params
* node/chainstate: Decouple from ShutdownRequested
* node/chainstate: Decouple from GetTime
* init: Delay RPC block notif until warmup finished
* Move -checkblocks LogPrintf to AppInitMain
* node/chainstate: Reduce coupling of LogPrintf
* node/chainstate: Decouple from concept of uiInterface
* Split off VerifyLoadedChainstate
* node/chainstate: Remove do/while loop
* Move init logistics message for BAD_GENESIS_BLOCK to init.cpp
* Move mempool nullptr Assert out of LoadChainstate
* node/chainstate: Decouple from concept of NodeContext
* node/chainstate: Decouple from ArgsManager
* node/chainstate: Decouple from stringy errors
* node/chainstate: Decouple from GetTimeMillis
* node: Extract chainstate loading sequence
* build: Include native_X.mk before X.mk
* rpc: Document that DEFAULT is for Taproot, ALL for everything else
* psbt: Actually use SIGHASH_DEFAULT
* psbt: Make sighash_type std::optional
* p2p: Make timeout mockable and type safe, speed up test
* scripted-diff: Rename m_last_send and m_last_recv
* ci: Make macOS native task sqlite only
* Use the imperative mood in example subject line
* Check descriptors returned by external signers
* test: add feature_coinstatsindex.py --descriptors to test_runner.py
* test: fix test feature_coinstatsindex.py for descriptor wallets
* Use SelectionResult in SelectCoins
* Use SelectionResult in AttemptSelection
* Use SelectionResult for waste calculation
* Make an OutputGroup for preset inputs
* Return SelectionResult from SelectCoinsSRD
* Return SelectionResult from KnapsackSolver
* Return SelectionResult from SelectCoinsBnB
* Make member variables of SelectionResult private
* scripted-diff: Use SelectionResult in coin selector tests
* Introduce SelectionResult struct
* Fix bnb_search_test to use set equivalence for
* test: Replace hashlib.new with named constructor
* contrib: add check for wget command in install_db4.sh
* build: Fix x86_64 <-> arm64 cross-compiling for macOS
* build: Bump Fonconfig version up to 2.12.6
* util, refactor: Improve headers for bitcoin-wallet tool
* scripted-diff: Use named args in RPC docs
* test: feature_rbf.py: check specified wallet type availability
* Swap out hashlib.ripemd160 for own implementation
* Add pure Python RIPEMD-160
* scripted-diff: Drop Darwin version for better maintainability
* doc: Normalize RPC description whitespace
* test: interface_bitcoin_cli.py: check specified wallet type availability
* fuzz: Fix RPC internal bug detection
* doc: Add missing optional to getblockfrompeer
* Fix typo and grammar
* rpc: getblockfrompeer
* rpc: move Ensure
* helpers to server_util.h
* Remove CTxMemPool params from ATMP
* build: Bump AX_PTHREAD macro to the latest version
* MOVEONLY: Move abortrescan from backup.cpp to transactions.cpp
* Remove unused imports from rpc/wallet and reorder RPCs
* MOVEONLY: Move rpcwallet to rpc/wallet
* MOVEONLY: Move spending RPCs to spend.cpp
* MOVEONLY: Move balance and utxo RPCs to coins.cpp
* MOVEONLY: Move address related functions from rpcwallet to addresses.cpp
* MOVEONLY: Move transaction related wallet RPCs to transactions.cpp
* build: Fix build for Android x86_64
* Coinbase receivedby rpcs release notes
* Test including coinbase transactions in receivedby wallet rpcs
* Include coinbase transactions in receivedby wallet rpcs
* mining, refactor: add m_mempool.cs thread safety lock assertions
* doc: Add missing optional to MempoolEntryDescription
* rpc: move fees object to match help
* doc: add release note for fee field deprecation
* test: add functional test for deprecatedrpc=fees
* rpc: deprecate fee fields from mempool entries
* Revert \"Fixes Bug in Transaction generation in ComplexMempool benchmark\"
* build, qt: Use Android NDK r23 LTS
* rpc: add missing scantxoutset examples
* Fixes Bug in Transaction generation in ComplexMempool benchmark
* p2p: Don\'t use timestamps from inbound peers
* build: remove x-prefix comparisons
* rpc: Add missing BlockUntilSyncedToCurrentChain to wallet RPCs
* Remove unused (and broken) functionality in SpanReader
* correct rpc address_type helptext
* wallet: Replace confusing getAdjustedTime() with GetTime()
* test: remove unneeded sync_all() calls in wallet_listtransactions.py
* test: add interface_bitcoin_cli.py --descriptors to test_runner.py
* test: fix test interface_bitcoin_cli.py for descriptor wallets
* doc: Merge release note snippets
* refactor: net: subnet lookup: use single-result LookupHost()
* rpc: Only allow specific types to be P2(W)SH wrapped in decodescript
* cover DisconnectBlock with lock annotation
* test: Add test for block relay only eviction
* test: add wallet_transactiontime_rescan.py --descriptors to test_runner.py
* test: fix test wallet_transactiontime_rescan.py for descriptor wallets
* test: refactor: use `set_node_times` helper in wallet_transactiontime_rescan.py
* Make Bech32 LocateErrors return error list rather than using out-arg
* Use std::iota instead of manually pushing range
* Use bounds-checked array lookups in Bech32 error detection code
* Simplify encoding of e in GF(1024) tables to (1,0)
* Replace GF1024 tables and syndrome constants with compile-time generated constexprs.
* Update release note for bech32 error detection
* Report encoding type in bech32 error message
* Improve Bech32 boost tests
* Address review comments for Bech32 error validation
* tests: Add data-driven testcases to rpc_decodescript.py
* test: Remove false coinstatsindex test
* qt: Handle Android back key in the Node window
* qt, android: Add GUIUtil::IsEscapeOrBack helper
* fuzz: Rework rpc fuzz target
* ci: Bump Qt to 5.15.2 in the native Windows task
* doc: Update `build_msvc/README.md` for Qt 5.15.2
* build, qt: Fix regression in rendering on macOS Big Sur
* build: qt 5.15.2
* build: add libxcb_util_wm 0.4.1
* build: add libxcb_util_image 0.4.0
* build: add libxcb_util_keysyms 0.4.0
* build: add libxcb_util_render 0.3.9
* build: add libxcb_util 0.4.0
* build: libxcb 1.14
* build: freetype 2.11.0
* build: expat 2.4.1
* build: xcb_proto 1.14.1
* build: libXau 1.0.9
* build: xproto 7.0.31
* Remove GetSpendHeight
* More Span simplifications
* Replace MakeSpan helper with Span deduction guide
* Generalize/simplify VectorReader into SpanReader
* doc: Document optional result fields in validateaddress
* doc: Document optional result fields in getpeerinfo
* MOVEONLY: Move LoadWalletHelper to wallet/rpc/util
* MOVEONLY: Move wallet encryption RPCs to encrypt.cpp
* MOVEONLY: Move backupwallet and restorewallet to rpc/backup.cpp
* MOVEONLY: Move rpcdump.cpp to wallet/rpc/backup.cpp
* test: fix: remove outdated TestNode.generate calls
* clean up txmempool includes
* change TestLockPointValidity to take a const reference
* remove unnecessary casts and use braced initialization
* test: listtranscations with externally generated addresses
* Add to spends only transcations from me
* Automatically add labels to detected receiving addresses
* Return used destinations from ScriptPubKeyMan::MarkUnusedAddresses
* Add CWallet::IsInternalScriptPubKeyMan
* wallet: resolve ambiguity of two ScriptPubKey managers providing same script
* Remove GetAdjustedTime from init.cpp
* Replace addrman.h include with forward decl in net.h
* refactor: Call type-solver earlier in decodescript
* style: Remove whitespace
* rpc: various fixups for dumptxoutset
* refactor: Fix implicit-signed-integer-truncation in cuckoocache.h
* MOVEONLY: Move utility functions from rpcwallet to wallet/rpc/util
* Introduce wallet/rpc/util
* rpc: remove info about mallocinfo needing glibc 2.10+
* miner: Remove uncompiled MTP code
* style: Add {} to if-bodies in node/miner
* Break validation <-> txmempool circular dependency
* [mempool] always assert coin spent
* [refactor] put finality and maturity checking into a lambda
* [mempool] only update lockpoints for non-removed entries
* MOVEONLY: TestLockPointValidity to txmempool
* Remove calls to global Params() in tx_pool test
* Remove AcceptToMemoryPoolWithTime
* doc: use BIP125-replaceable
* doc: Extract CreateTxDoc in rawtransaction
* scripted-diff: Use clang-tidy syntax for C++ named arguments
* doc: Use clang-tidy comments in crypto_tests
* net: don\'t check if the listening socket is valid
* Crash debug builds when mempool ConsensusScriptChecks fails
* test: Bump shellcheck version to 0.8.0
* test: add stress tests for initialization
* test: add node.chain_path and node.debug_log_path
* test: Make more shell scripts verifiable by the `shellcheck` tool
* [test] tx processing before and after ibd
* [net_processing] ignore all transactions during ibd
* wallet: Split signmessage from rpcwallet
* build, qt: Ditch `no_sdk_version_check.patch`
* ci: Always run merge_base_script first for consistency
* ci: Revamp Android SDK cache, and update it timely
* ci: Make macOS SDK cache independent, and update it timely
* psbt: sign without finalizing
* [tracing] tracepoints to utxocache add, spent and uncache
* [tracing] tracepoint for utxocache flushes
* test: add check_node_connections in util
* refactor: Use underlying type of isminetype for isminefilter
* Exit early for an empty vChecks in CCheckQueue::Add
* Avoid excessive lock contention in CCheckQueue::Add
* doc: Fix typos in packages.md
* test: always rescan after importing private keys in `init_wallet` helper
* doc: Tidy up nMinDiskSpace comment
* wallet: Call load handlers without cs_wallet locked
* build: don\'t set PORT=no in config.site
* contrib: Specify wb mode when creating mac sdk
* refactor: Replace validation.h include with forward-decl in miner.h
* style: Sort file list after rename
* scripted-diff: Move miner to src/node
* script install_db4.sh added check for patch command
* refactor: Make CWalletTx sync state type-safe
* build: add `--enable-lto` configuration option
* Revert \"doc: Install Rosetta on M1-macOS for qt in depends\"
* build, qt, macOS: Don\'t pass -device-option when building natively
* build, qt, macOS: Don\'t hard-code x86_64 as the arch when using qmake
* refactor: replace RecursiveMutex m_added_nodes_mutex with Mutex
* refactor: replace RecursiveMutex m_addr_fetches_mutex with Mutex
* scripted-diff: rename node vector/mutex members in CConnman
* refactor: remove RecursiveMutex cs_totalBytesRecv, use std::atomic instead
* Remove strtol in torcontrol
* qt: monospaced output in Console on macOS
* build: patch qt to explicitly define previously implicit header include
* policy: Treat taproot as always active
* net: split CConnman::SocketHandler()
* style: remove unnecessary braces
* net: keep reference to each node during socket wait
* net: dedup and RAII-fy the creation of a copy of CConnman::vNodes
* span: Add std::byte helpers
* refactor: Use ignore helper when unserializing an invalid pubkey
* Use value_type in CDataStream where possible
* util: ParseByteUnits - Parse a string with suffix unit [k|K|m|M|g|G|t|T]
* refactor: cast bool to int to silence compiler warning
* Modify copyright header on Bech32 code
* Add lots of comments to Bech32
* Add release notes for validateaddress Bech32 error detection
* Refactor and add more tests for validateaddress
* Add boost tests for bech32 error detection
* Add error_locations to validateaddress RPC
* Add Bech32 error location function
* More detailed error checking for base58 addresses
* configure.ac: remove Bashism
* test: refactor: replace OP_1/OP_TRUE magic numbers by constants
* test: refactor: take use of `create_block` txlist parameter
* test: refactor: take use of `create_block` version parameter (or use default)
* Extract Taproot internal keyid with GetKeyFromDestination
* Mention bech32m in -addresstype and -changetype help
* Create a tr() descriptor bech32m DescriptorScriptPubKeyMan by default
* Store pubkeys in TRDescriptor::MakeScripts
* build: don\'t check for deprecated qt5 package
* build: don\'t check for deprecated berkeley-db4 package
* wallet: Make GetOldestKeyPoolTime return nullopt for blank wallets
* wallet, refactor: Make GetOldestKeyPoolTime return type std::optional
* gui: Paste button in Open URI dialog
* GUI/Options: Restore \"S\" accelerator for \"Start on system login\" option
* scripts: test for PE control flow instrumentation
* build: use -fcf-protection=full when building Windows Boost in depends
* test: run rpc-generateblock.py even with wallet disabled
* util: Add missing fstatfs to syscall sandbox
* test: Remove sanitizer suppression implicit-signed-integer-truncation:netaddress.cpp
* test: add decodescript RPC test for P2TR output type
* test: check for decodescript RPC \'type\' results
* test: add logging to rpc_decodescript.py
* doc: Fix incorrect C++ named args
* span, doc: provide span.h context and explain lifetimebound definition
* net, doc: provide context for UnserializeV1Array()
* test: refactor: simplify `block_submit` in feature_nulldummy.py
* test: refactor: rename NULLDUMMY-invalidation helper
* test: simplify and document NULLDUMMY-invalidation helper
* doc: Pick better named args for MutableTransactionSignatureCreator
* fuzz: Add minisketch fuzz test
* Improve fs::PathToString documentation
* ci: Rework ci task names
* build: remove D__STDC_FORMAT_MACROS from CPPFLAGS
* build: require glibc 2.18+ for release builds
* doc: Fix typos in endif header comments
* ci: Replace soon EOL hirsute with jammy
* Sort file list after rename
* scripted-diff: Move minisketchwrapper to src/node
* multiprocess: Add interfaces::Node::broadCastTransaction method
* scripted-diff: Bump copyright headers
* scripted-diff: Remove redundant sync_all and sync_blocks
* test: Properly set sync_fun in NodeNetworkLimitedTest
* test: Use 4 spaces for indentation
* util: Use FEATURE_LATEST for wallets created with bitcoin-wallet
* doc: Add minimum supported Android NDK version
* doc: Move Android dependencies guide into `build-android.md`
* build: Switch to llvm buinutils for Android builds
* test: Force --nosandbox when --valgrind
* cli: hoist networks class data members to a constant
* cli: add cjdns network to -addrinfo and -netinfo
* tests: implement BIP341 test vectors
* tests: BIP341 test vector generation
* tests: add deterministic signing mode to ECDSA
* tests: abstract out precomputed BIP341 signature hash elements
* tests: give feature_taproot access to sighash preimages
* tests: add more fields to TaprootInfo
* Make signing follow BIP340 exactly w.r.t. aux randomness
* multiprocess: Delay wallet client construction
* ci: Drop --failfast in functional tests on native Windows CI task
* test: Return the largest utxo in MiniWallet.get_utxo
* fuzz: Rework ConsumeScript
* multiprocess: add interfaces::ExternalSigner class
* fuzz: replace every fuzzer-controlled loop with a LIMITED_WHILE loop
* build: Drop unneeded dependencies for bitcoin-wallet tool
* test: Enable SC2046 shellcheck rule
* test: Enable SC2086 shellcheck rule
* build_msvc/bitcoin_config.h is generated using build_msvc/msvc-autogen.py
* test: Add txindex migration test
* Add an argparse abbreviated mode to --failfast
* test: remove unnecessary block rehashing prior to solving
* Fix Arch linux dead link
* script: Add commits signed with sipas expired key to allow-revsig-commits
* depends, wallet: fix typos
* Use c++17 in clang-format
* build: remove duplicate -fvisibility=hidden from Boost build
* build: don\'t install Boost cmake config files
* build: consistently quote AC_CHECK_LIB() arguments
* build: consistently quote AC_MSG_
* arguments
* build: consistently quote AC_CHECK_PROG() arguments
* build: consistently quote arguments in AC_ARG_VAR()
* build: consistently quote arguments in AM_CONDITIONAL()
* build: consistently quote AC_DEFINE() arguments
* build: consistently quote AC_MSG_CHECKING() arguments
* build: consistently quote AC_PATH_TOOL arguments
* build: AC_PATH_PROG(S) consistently quote arguments
* build: cleanup AX_CHECK_PREPROC_FLAG() usage
* build: cleanup AX_CHECK_COMPILE_FLAG() usage
* build: cleanup AX_CHECK_LINK_FLAG() usage
* style: Use 4 spaces for indentation, not 5
* test: Remove unused CDataStream copy
* [addrman] [tests] Remove AddrManUncorrupted subclass
* [addrman] [tests] Remove AddrManCorrupted subclass
* [addrman] [tests] Tidy up unused arguments in addrman test functions
* [addrman] [tests] Remove deterministic argument and member from AddrManTest
* [addrman] Remove AddrMan friends
* ubsan: add minisketch exceptions
* Add thin Minisketch wrapper to pick best implementation
* Add basic minisketch tests
* Add minisketch dependency
* Add MSVC build configuration for libminisketch
* build: add minisketch build file and include it
* build: add configure checks for minisketch
* Squashed \'src/minisketch/\' content from commit 89629eb2c7
* Add a brief overview of fuzzing/Bitcoin Core fuzzing
* test: Correct MyPy typing for subtest decorator
* Remove `gArgs` from `wallet.h` and `wallet.cpp`
* refactor: use `CWallet` const shared pointers in dump{privkey,wallet} RPCs
* refactor: use const `LegacyScriptPubKeyMan` references in dump{privkey,wallet} RPCs
* refactor: avoid multiple key->metadata lookups in dumpwallet RPC
* p2p: improve checkaddrman logging with duration in milliseconds
* log, timer: add LOG_TIME_MILLIS_WITH_CATEGORY_MSG_ONCE macro
* log, timer: allow not repeating log message on completion
* [validation] Always call mempool.check() after processing a new transaction
* [refactor] Don\'t call AcceptToMemoryPool() from outside validation.cpp
* [validation] Add CChainState::ProcessTransaction()
* [logging/documentation] Remove reference to AcceptToMemoryPool from error string
* [validation] Remove comment about AcceptToMemoryPool()
* [test] Don\'t set bypass_limits to true in txvalidation_tests.cpp
* [test] Don\'t set bypass_limits to true in txvalidationcache_tests.cpp
* Add file validation to savemempool RPC test
* Add filename to savemempool RPC result
* test: Add ios_base::width tsan suppression
* test: MiniWallet: add P2TR support and use it per default
* test: generate blocks to MiniWallet address in rpc_blockchain.py
* fix `XOnlyPubKey::IsFullyValid` comment reference
* [test] call CheckPackage for package sanitization checks
* MOVEONLY: move package unit tests to their own file
* MOVEONLY: mempool checks to their own functions
* scripted-diff: clean up MemPoolAccept aliases
* document workspace members
* [validation] cache iterators to mempool conflicts
* [validation/rpc] cache + use vsize calculated in PreChecks
* [validation] re-introduce bool for whether a transaction is RBF
* [validation/refactor] store precomputed txdata in workspace
* [validation] case-based constructors for ATMPArgs
* Adds verification step to Schnorr and ECDSA signing
* wallet: Fixed Grammatical error in bdb.h
* test: Implicitly sync after generate
*, unless opted out
* doc: remove redundant optionals from build-unix.md
* doc: remove Boost build note from build-unix.md
* doc: Suggest `keys.openpgp.org` as keyserver in SECURITY.md
* contrib: recognize CJDNS seeds as such
* net: take the first 4 random bits from CJDNS addresses in GetGroup()
* net: relay CJDNS addresses even if we are not connected to CJDNS
* net: don\'t skip CJDNS from GetNetworkNames()
* net: take CJDNS into account in CNetAddr::GetReachabilityFrom()
* test: extend feature_proxy.py to test CJDNS
* test: remove default argument of feature_proxy.py:node_test()
* net: recognize CJDNS addresses as such
* net: don\'t skip CJDNS from GetNetworksInfo()
* net: introduce a new config option to enable CJDNS
* net: recognize CJDNS from ParseNetwork()
* net: use -proxy for connecting to the CJDNS network
* net: make it possible to connect to CJDNS addresses
* refactor: Take Span in SetSeed
* ci: Do not print `git log` for empty COMMIT_RANGE
* Open streams_test_tmp file in temporary folder
* ci: Enable ccache for \"ARM64 Android APK\" job
* build: Fix `make apk` if ccache enabled
* doc: remove mention of system univalue
* doc: Mention that BerkeleyDB is for legacy wallet in build-unix
* doc: update SECURITY.md inline with recent changes to bitcoincore.org
* Remove the build_msvc/testconsensus project
* ci: Build fuzz with libsqlite3-dev
* fuzz: Add wallet fuzz test
* build: Inline FUZZ_SUITE_LDFLAGS_COMMON
* tests: Calculate fees more similarly to CFeeRate::GetFee
* tests: Test for assertion when feerate is rounded down
* fees: Always round up fee calculated from a feerate
* doc: add assumeutxo notes
* refactor: move `update_
*` structs from txmempool.h to .cpp file
* refactor: use const reference for parents in `CTxMemPool::UpdateAncestorsOf`
* Disable lock contention logging in checkqueue_tests
* [net] Replace GetID() with id in TransportDeserializer constructor
* [net] Don\'t return an optional from TransportDeserializer::GetMessage()
* doc: Add output script descriptors BIPs 380..386
* test: Avoid excessive locking of `cs_wallet`
* test: Fix segfault in the psbt_wallet_tests/psbt_updater_test
* scripted-diff: disable unimplemented ArgsManager BOOL/INT/STRING flags
* refactor: Add explicit DISALLOW_NEGATION ArgsManager flag to clarify flag usage
* refactor: Split InterpretOption into Interpret{Key,Value} functions
* [MOVEONLY] reorder functions in addrman_impl.h and addrman.cpp
* [addrman] Add Add_() inner function, fix Add() return semantics
* [addrman] Rename Add_() to AddSingle()
* [addrman] Add doxygen comment to AddrMan::Add()
* refactor: get wallet path relative to wallet_dir
* Introduce new V4 format addrman
* test: MiniWallet: more deterministic coin selection for coinbase UTXOs (oldest first)
* test: fix misleading fee unit in mempool_limit.py
* refactor: use CWallet const shared pointers when possible
* refactor: const shared_ptrs
* test: add script_util helper for creating bare multisig scripts
* multiprocess: Add new bitcoin-gui, bitcoin-qt, bitcoin-wallet init implementations
* doc: Fix CWalletTx::Confirmation doc
* Make AddrMan support multiple ports per IP
* tests: Add feature_segwit.py --descriptors to test_runner.py
* tests: restrict feature_segwit legacy wallet import tests
* tests: Use descriptors for feature_segwit multisig setup
* wallet: Use PACKAGE_NAME to mention our software
* [refactor] pass coinsview and height to check()
* [mempool] simplify some check() logic
* [validation/mempool] use Spend/AddCoin instead of UpdateCoins
* MOVEONLY: remove single-use helper func CheckInputsAndUpdateCoins
* [mempool] remove now-unnecessary code
* [mempool] speed up check() by using coins cache and iterating in topo order
* [bench] Benchmark CTxMemPool::check()
* [refactor/bench] make mempool_stress bench reusable and parameterizable
* test: check for block reject reasons in p2p_segwit.py [2/2]
* test: check for block reject reasons in p2p_segwit.py [1/2]
* test: fix reference to block processing test in p2p_segwit.py
* walletdb: Use SQLiteDatabase for mock wallet databases
* tests: Place into mapWallet in coinselector_tests
* ci: Add vcpkg tools cache
* qt: Use only Qt translation primitives in GUI code
* Make GenTxid boolean constructor private
* remove unused CTxMemPool::info(const uint256& txid)
* rpc: improve TransactionDescriptionString() \"generated\" help
* test: add listtransactions/listsinceblock \"trusted\" coverage
* rpc: fix \"trusted\" description in TransactionDescriptionString
* external_signer: improve fingerprint matching logic (stop on first match)
* refactor: remove references to deprecated values under std::allocator
* tests: Use Descriptor wallets for generic wallet tests
* tests: Use legacy change type in subtract fee from outputs test
* tests: Use descriptors in psbt_wallet_tests
* tests: Use DescriptorScriptPubKeyMan in coinselector_tests
* tests, gui: Use DescriptorScriptPubKeyMan in GUI tests
* bench: Use DescriptorScriptPubKeyMan for wallet things
* bench: remove global testWallet from CoinSelection benchmark
* tests: Remove global vCoins and testWallet from coinselector_tests
* wallet: fix segfault by avoiding invalid default-ctored `external_spk_managers` entry
* Make CAddrman::Select_ select buckets, not positions, first
* wallet: Default new wallets to descriptor wallets
* rpc, wallet: Descriptor wallets are no longer experimental
* net: Avoid logging AlreadyHaveTx when disconnecting misbehaving peer
* [mempool] delete exists(uint256) function
* create explicit GenTxid::{Txid, Wtxid} ctors
* refactor: include a missing header in fs.cpp
* doc: Add note on deleting past-EOL release branches
* ci: Improve vcpkg binary cache settings
* ci, refactor: Rename VCPKG_TAG variable and vcpkg_cache script
* test: Replace log with assert_equal in wallet_abandonconflict
* Add comment to COIN constant.
* p2p: Use mocktime for ping timeout
* Fix K1/K2 use in the comments in ChaCha20-Poly1305 AEAD
* netinfo: print peer counts for all reachable networks
* test: bip125-replaceable in listsinceblock
* test: check that bumpfee RPC fails for txs with descendants in mempool
* test: get and decode tx with a single `gettransaction` RPC call
* ci: Disable syscall sandbox in valgrind functional tests
* style: Sort
* scripted-diff: Move bloom to src/common
* refactor: Remove unused MakeUCharSpan
* build: remove build stubs for external leveldb
* log: improve addrman logging
* Add missing gettimeofday to syscall sandbox
* Make explicit the node param in init_wallet()
* build: explicitly disable libsecp256k1 openssl based tests
* doc: nChainTx needs to become a 64-bit earlier due to SegWit
* build: fix python detection post #23182
* Fix outdated comments referring to ::ChainActive()
* Integrate univalue into our buildsystem
* Squashed \'src/univalue/\' changes from 98fadc0909..a44caf65fe
* ci: Bump vcpkg release tag
* qt: never disable HD status icon
* core_write: Rename calculate_fee to have_undo for clarity
* release-notes: Add release note about getblock verbosity level 3.
* rest: Add test for prevout fields in getblock
* rpc: Add test for level 3 verbosity getblock rpc call.
* rpc: Add level 3 verbosity to getblock RPC call.
* rpc: Replace boolean argument for tx details with enum class.
* test: Remove unused node from mining_prioritisetransaction
* test: Fix wallet_multisig_descriptor_psbt.py
* tracing: drop block_connected hash.toString() arg
* build: Remove unneeded share/man directory from libXau package
* build: Remove unneeded share/man directory from freetype package
* build: Remove empty var/cache/fontconfig directory from fontconfig
* build: Remove unneeded share/doc directory from expat package
* build: Drop non-existent share/pkgconfig directory
* doc: add disclaimer highlighting shortcomings of the basic multisig example
* test, doc: basic M-of-N multisig minor cleanup and clarifications
* doc: add another signing flow for multisig with descriptor wallets and PSBTs
* doc: M-of-N multisig using descriptor wallets and PSBTs, as well as a signing flow
* test: add functional test for multisig flow with descriptor wallets and PSBTs
* test: Delete generate
* calls from TestNode
* test: Use generate
* node RPC, not wallet RPC
* test: Use generate
* from TestFramework, not TestNode
* test: check abandoned tx in listsinceblock
* lint: enable mypy checking for missing imports
* lint mypy 0.910
* lint: install pyzmq (22.3.0) into linter environment
* doc: remove pointlessly duplicated linter version / install info
* Use absolute FQDN for DNS seed domains
* ci: Reduce Windows memory for faster scheduling
* ci, refactor: Disable binaries for Android task explicitly
* doc: update release notes for 22539
* refactor: Block unsafe fs::path std::string conversion calls
* refactor: Add fs::PathToString, fs::PathFromString, u8string, u8path functions
* test: Add check that newkeypool flushes change addresses too
* Add release notes for keypool flush changes
* Add test for flushing keypool with newkeypool
* Make legacy wallet upgrades from non-HD to HD always flush the keypool
* Fix outdated keypool size default
* Add newkeypool RPC to flush the keypool
* build: Drop -Wno-unused-local-typedef
* build: remove -Wunused-variable
* build: remove -Wswitch
* build: use loop-analysis over range-loop-analysis
* build: remove -Wsign-compare
* scripted-diff: Prefix makefile variables with QT_
* validation: put coins cache write log into bench debug log
* blockstorage: use debug log category
* validation: move header validation error logging to VALIDATION debug category
* validation: include block hash when reporting prev block not found errors
* symbol-check: Check requested ELF interpreter
* guix: Fix powerpc64(le) dynamic linker name
* scripts: remove pixie.py
* scripts: only parse the binary once in security-check.py
* scripts: use LIEF for ELF checks in security-check.py
* scripts: only parse the binary once in symbol-check.py
* scripts: use LIEF for ELF checks in symbol-check.py
* test-
*-check: Pass in
*FLAGS and compile with them
* bitcoin-tx: Reject non-integral and out of range multisig numbers
* bitcoin-tx: Reject non-integral and out of range sequence ids
* test: Check that bitcoin-tx accepts whitespace around sequence id and multisig numbers
* multiprocess: Make interfaces::Chain::isTaprootActive non-const
* build: make --enable-werror just -Werror
* rest: Return error when header count is not integral
* test:
* -> &
* bitcoin-tx: Avoid treating overflow as OP_0
* style: Fix whitespace in Parse
* functions
* refactor: Use C++11 range based for loop in ParseScript
* doc: Fixup ToIntegral docs
* util: Add mincore and clone3 to syscall sandbox
* Add BECH32_INVALID_VERSION test
* skip test_getaddressinfo() if wallet is disabled
* doc: add info for debugging with relative paths
* configure: keep relative paths in debug info
* refactor: use `{Read,Write}BE32` helpers for BIP32 nChild (de)serialization
* Replace stoul with ToIntegral in dbwrapper
* build: no-longer fail default configure if BDB isn\'t available
* qt: Add helper to load font
* test: Add ParseMoney and ParseScript tests
* [fuzz] Update comment in FillAddrman()
* [fuzz] Make Fill() a free function in fuzz/addrman.cpp
* [fuzz] Make RandAddr() a free function in fuzz/addrman.cpp
* [fuzz] Pass FuzzedDataProvider& into Fill() in addrman fuzz tests
* [fuzz] Create a FastRandomContext in addrman fuzz tests
* External input fund support cleanups
* test: introduce script_util helper for creating P2PK scripts
* util: Conditionalize some syscalls in syscall name table
* util: Add __NR_copy_file_range syscall constant for sandbox
* Add release notes for fee est with replacement txs
* qa: test fee estimation with replacement transactions
* qa: split run_test into smaller parts
* Re-include RBF replacement txs in fee estimation
* Test transactions conflicted by double spend in listtransactions
* test: Replace satoshi_round with int() or Decimal()
* doc: Extract FundTxDoc
* util: Add mremap syscall to AllowAddressSpaceAccess
* doc: Suggest using jom instead of nmake
* doc: Replace a link to Qt precompiled binaries with compile instructions
* build: Make default name Qt and VS versions agnostic
* qt: Fix WalletControllerActivity progress dialog title
* RPCConsole: Throw when overflowing size_t type for array indices
* test: Avoid RPC roundtrip in MiniWallet get_descriptor()
* Fix intermittent test failures due to missing sync_all
* Use self.generate not node.generate throughout tests
* contrib: Ask for captcha in signet getcoins.py
* util: Make sure syscall numbers used in profile are defined
* util: Define SECCOMP_RET_KILL_PROCESS if not provided by the headers
* [style] Run changed files through clang formatter.
* scripted-diff: Rename CAddrInfo to AddrInfo
* scripted-diff: Rename CAddrMan to AddrMan
* [includes] Fix up included files
* [doc] Update comments
* [refactor] Update GetAddr_() function signature
* [move-only] Move constants to test-only header
* [addrman] Change CAddrInfo access
* [move-only] Move CAddrInfo to test-only header file
* [net, addrman] Remove external dependencies on CAddrInfo objects
* [addrman] Introduce CAddrMan::Impl to encapsulate addrman implementation.
* [move-only] Match ordering of CAddrMan declarations and definitions
* [move-only] Move CAddrMan function definitions to cpp
* sandbox: add copy_file_range to allowed filesystem syscalls
* sandbox: add newfstatat to allowed filesystem syscalls
* build: add python3.10 alias to AC_PATH_PROGS call in configure
* consensus: use over in amount.h
* consensus: make COIN & MAX_MONEY constexpr
* [MOVEONLY] consensus: move amount.h into consensus
* Add syscall sandboxing (seccomp-bpf)
* Remove unused ParseDouble and ParsePrechecks
* refactor: Remove unused ParsePrechecks from ParseIntegral
* Replace use of locale dependent atoi(…) with locale-independent std::from_chars(…) (C++17)
* allow send rpc take external inputs and solving data
* Tests for funding with external inputs
* allow fundtx rpcs to work with external inputs
* Allow Coin Selection be able to take external inputs
* Allow CInputCoin to also be constructed with COutPoint and CTxOut
* doc: Combine 23.0 release notes
* test: update assert_fee_amount() in test_framework/util.py
* Return false on corrupt tx rather than asserting
* fuzz: add guide to fuzzing with Eclipser v1.x
* [test] Test that -blocksonly nodes still serve compact blocks.
* [test] Test that getdata(CMPCT) is still sent on regular low bandwidth connections.
* [test] Test that -blocksonly nodes do not send getdata(CMPCT) on a low bandwidth connection.
* [test] Test that -blocksonly nodes do not request high bandwidth mode.
* [net processing] Dont request compact blocks in blocks-only mode
* scripted-diff: rename DBErrors::RESCAN_REQUIRED to NEED_RESCAN
* Add rescan removal release note
* Remove -rescan startup parameter
* Corrupt wallet tx shouldn\'t trigger rescan of all wallets
* Remove outdated dummy wallet -salvagewallet arg
* qt, wallet: Drop no longer used WalletController::getOpenWallets()
* qt, wallet: Add LoadWalletsActivity class
* qt, wallet, refactor: Move connection to QObject::deleteLater to ctor
* qt, wallet: Move activity progress dialog from data member to local
* util: Introduce ToIntegral(const std::string&) for locale independent parsing using std::from_chars(…) (C++17)
* log: Adjust coin selection log string
* test: Fix typos in tests
* log: Avoid broken DEBUG_LOCKORDER log
* log: Avoid broken SELECTCOINS log
* build: remove support for weak linking getauxval()
* build: remove arm includes from getauxval() check
* Squashed \'src/crc32c/\' changes from b5ef9be675..0d624261ef
* Revert \"doc: Remove outdated comments\"
* wallet: enable SQLite extended result codes
* qt, refactor: Drop intermediate BitcoinApplication::shutdownResult slot
* qt: Do not exit and re-enter main event loop during shutdown
* qt, refactor: Allocate SendConfirmationDialog instances on heap
* qt, refactor: Keep HelpMessageDialog in the main event loop
* qt, refactor: Keep PSBTOperationsDialog in the main event loop
* qt, refactor: Keep AskPassphraseDialog in the main event loop
* qt, refactor: Keep EditAddressDialog in the main event loop
* qt, refactor: Keep CoinControlDialog in the main event loop
* qt, refactor: Keep OptionsDialog in the main event loop
* qt: Add GUIUtil::ShowModalDialogAndDeleteOnClose
* qt: Do not show unused widgets at startup
* doc: update developer docs for subtree renaming
* fuzz: Fix memory leak in system fuzz target
* Include vout when copying transaction ID from coin selection
* bloom: cleanup includes
* bloom: use constexpr where appropriate
* bloom: use Span instead of std::vector for `insert` and `contains`
* Fix feature_segwit failure due to witness
* qt: hyphenate usage of third-party modifier
* qt: ensure seperator when adding third-party transaction links
* qt: improve text for open third-party tx url action
* qt, refactor: simplify third-party tx url action through overload
* gui: add RPC setting
* qt: connection type translator comments
* test: use MiniWallet for p2p_filter.py
* test: introduce helper to create random P2WPKH scriptPubKeys
* test: MiniWallet: add `send_to` method to create arbitrary txouts
* ci: Enable extended tests on native Windows
* test: pep-8 touched test
* test: Remove unused and confusing main parameter from script_util
* doc: Remove un-actionable TODO from chainparams.cpp
* doc: update doxygen documention of ComputeTimeSmart() and AddToWalletIfInvolvingMe() regarding rescanning_old_block parameter
* test: add functional test to check transaction time determination during block rescanning
* wallet: fix ComputeTimeSmart algorithm to use blocktime during old block rescanning
* update estimatesmartfee rpc to return max of estimateSmartFee, mempoolMinFee and minRelayTxFee.
* refactor: minor styling, prefer snake case and same line if
* refactor: share logic between ScriptPubKeyToUniv and ScriptToUniv
* rpc: remove deprecated addresses and reqSigs from rpc outputs
* qt: Keep InitExecutor in main gui thread
* Run functional tests with all possible flags
* test: pep-8
* test: Use assert_equal over assert for easier debugging
* GUI: Ask user to unlock wallet before signing psbt
* Add test that walletprocesspsbt requires unlocked wallet when signing
* Ensure wallet is unlocked before signing in walletprocesspsbt
* test: Add remaining scenarios of 0 waste
* fuzz: Cleanup muhash fuzz target
* ci: update minimum compiler requirements for std::filesystem
* doc: update minimum compiler requirements for std::filesystem
* Use SelectCoinsSRD if it has less waste
* Add SelectCoinsSRD function
* tests: wallet_basic lock needed unspents
* tests: wallet_txn explicilty specify inputs
* tests: rpc_fundrawtx better test for UTXO inclusion with include_unsafe
* tests: rpc_fundrawtx use specific inputs for unavailable change test
* tests: rpc_fundrawtx lock to UTXO types
* ci: Enable feature_asmap.py test on native Windows
* scripted-diff: Rename overloaded int GetArg to GetIntArg
* net: switch to signet DNS seed
* Add references for the generator/constant used in Bech32(m)
* doc: Clarify that change_cost cannot be negative in GetSelectionWaste
* test: Add missing re.escape() to feature_addrman test
* doc: Remove outdated comments
* Fix (inverse) meaning of -persistmempool
* test: Remove Windows workaround in authproxy
* test: avoid non-determinism in asmap-addrman test
* Make GUI UTXO lock/unlock persistent
* Add release note for lockunspent change
* Update lockunspent tests for lock persistence
* Allow lockunspent to store the lock in the wallet DB
* Allow locked UTXOs to be store in the wallet database
* test: Add -testactivationheight tests to rpc_blockchain
* ci: Add more functional tests to the native Windows task
* ci: Increase the dynamic port range to the maximum on native Windows
* test: Avoid race after connect_nodes
* bench: fixed ubsan implicit conversion
* bench: various args improvements
* bench: clean up includes
* bench: add usage description and documentation
* bench: introduce -min_time argument
* bench: make EvictionProtection.
* work with any number of iterations
* bench: change AddrManGood to AddrManAddThenGood
* bench: remove unnecessary & incorrect multiplication in MuHashDiv
* bench: update nanobench from 4.3.4 to 4.3.6
* test: Check other fields are loaded correctly as well
* test: Remove unused self.connect_nodes
* test: pep8
* test: Use MiniWallet in mempool_persist
* test: Add MiniWallet get_descriptor function
* test: Activate all regtest softforks at height 1, unless overridden
* Introduce -testactivationheight=nameAATTheight setting
* test: Add extra_args argument to TestChain100Setup constructor
* test: Remove version argument from build_next_block in p2p_segwit test
* test: Remove unused ~TestChain100Setup
* test: validation: add unittest for UpdateTip behavior
* test: refactor: separate CreateBlock in TestChain100Setup
* test: refactor: declare NoMalleation const auto
* move-only: unittest: add test/util/chainstate.h
* validation: fix CheckBlockIndex for multiple chainstates
* validation: insert assumed-valid block index entries into candidates
* validation: set BLOCK_ASSUMED_VALID during snapshot load
* chain: add BLOCK_ASSUMED_VALID for use with assumeutxo
* validation: change UpdateTip for multiple chainstates
* doc: add comment for g_best_block
* refactor: remove unused assumeutxo methods
* validation: add chainman ref to CChainState
* log: call LogPrint only once with time data samples
* log: Remove unnecessary timing logs for Callbacks bench
* build: Restrict check for CRC32C intrinsic to aarch64
* test: use test_framework.p2p P2P_SERVICES in functional tests
* make MAX_BIP125_RBF_SEQUENCE constexpr
* [doc] improve RBF documentation
* Revert \"test: Add missing suppression signed-integer-overflow:addrman.cpp\"
* Use C++11 member initializer in CTxMemPoolEntry
* doc: Fix RPC result documentation
* refactor: Remove unused validation includes
* test: add aarch64-apple-darwin platform entry to get_previous_releases
* fuzz: Move all addrman fuzz targets to one file
* addrman: Replace assert with throw on corrupt data
* Refactor: Turn the internal addrman check helper into a forced check
* move-only: Move CAddrMan::Check to cpp file
* test: use MiniWallet for make_utxo helper in feature_rbf.py
* build: set OSX_MIN_VERSION to 10.15
* Add test for addrman consistency check on restart with asmap
* Add test for rpc addpeeraddress with \"tried\" argument
* Allow passing \"tried\" to rpc addpeeraddress to call CAddrMan::Good()
* test: Add addrman deserialization error tests
* test: Replace MiniWallet scan_blocks with rescan_utxos
* Fix BlockAssembler::AddToBlock, CTxMemPool::PrioritiseTransaction logging
* Enable TLS in links in documentation
* ci: Update valgrind config
* ci: Update s390x config
* ci: Set --nocleanup for Windows functional tests
* fuzz: allow lower number of sources
* fuzz: Use public interface to fill addrman tried tables
* addrman: Improve performance of Good
* doc/release-notes: Add new listunspent fields
* QA: Add tests for listunspent ancestor{count,size,fees} to mempool_packages
* RPC: Add ancestor{count,size,fees} to listunspent output
* Expose ancestorsize and ancestorfees via getTransactionAncestry
* cli: Display all proxies in -getinfo
* test: fix confusing off-by-one nValue in feature_coinstatsindex.py
* doc: remove WSL install instructions and point to upstream
* ci: Enable more functional tests on Windows MSVC task
* qa: Fix \"RuntimeError: Event loop is closed\" on Windows
* refactor: net: avoid duplicate map lookups to `mapLocalHost`
* doc: test: unittest segfault gdb
* wallet: refactor: avoid duplicate lookup on `mapValue[\"timesmart\"]`
* wallet: refactor: inline function WriteOrderPos()
* wallet: refactor: inline function ReadOrderPos()
* Specifies how to set the value of TORGROUP
* build: improve check for ::(w)system
* Remove txindex migration code
* doc: Fix validation typo
* Add missing includes and forward declarations, remove unused ones
* doc: add glibc to dependencies.md
* compat: remove glibc_compat.cpp
* build: remove glibc-back-compat from build system
* remove --enable-glibc-back-compat from CI and docs
* doc: update -addrinfo in release-notes.md and tor.md
* cli -addrinfo: drop torv2, torv3 becomes onion per GetNetworkName()
* consensus: don\'t call GetBlockPos in ReadBlockFromDisk without lock
* p2p: Rename fBlocksOnly, Add test
* test: Simplify p2p_blocksonly test with new miniwallet rescan_utxos method
* test: Set peertimeout in write_config
* doc: Remove stale comment for CPrivKey
* ci: use Debian Bullseye in ARM CI
* Cleanup headers after #20788
* Fix Qt test broken by #22219
* doc: Fix walletdisplayaddress RPC doc
* Start using init makeNode, makeChain, etc methods
* qt: ensure translator comments end in full stop
* doc: Add historical release notes for 22.0
* qt: fix bitcoin-qt app categorization on apple silicon
* fix typos in logging messages
* replace: self.nodes[0] with node
* test: use MiniWallet in mempool_limit.py
* qt: add missing tooltips to options menu settings
* qt: Add cancel button to configuration options popup
* qt: Add \"Copy address\" item to the context menu in the Peers table
* build_msvc: Drop 32-bit build configurations
* build_msvc: Make bitcoin-util ProjectGuid unique
* Raise InitError when peers.dat is invalid or corrupted
* Inline ReadPeerAddresses
* Move LoadAddrman from init to addrdb
* test: pep-8 whitespace
* test: Avoid intermittent test failure in feature_csv_activation.py
* whitespace fixups after move and scripted-diff
* MOVEONLY: fee checks (Rules 3 and 4) to policy/rbf
* MOVEONLY: check for disjoint conflicts and ancestors to policy/rbf
* MOVEONLY: BIP125 Rule 2 to policy/rbf
* Make GetEntriesForConflicts return std::optional
* [net] Remove asmap argument from CNode::CopyStats()
* [asmap] Make DecodeAsmap() a utility function
* [asmap] Remove SanityCheckASMap() from netaddress
* [net] Remove CConnman::Options.m_asmap
* doc: Set PYTHONUTF8=1 for functional tests on Windows
* Make unexpected time type in BCLog::LogMsg() a compile-time error
* Add util/types.h with ALWAYS_FALSE template
* log, timer: improve BCLog::LogMsg()
* sync: inline lock contention logging macro to fix time duration
* util: remove libevent <= 2.0.18 back-compat code
* bench: Fix 32-bit compilation failure in addrman bench
* ci: Switch multiprocess to i686 build
* [test] checks descendants limtis for second generation Package descendants
* doc: Add IPv6 address to zmq example
* test: Add IPv6 test to zmq
* zmq: Enable IPv6 on listening socket
* scripted-diff: Use generate
* from TestFramework
* test: Add missing suppression signed-integer-overflow:addrman.cpp
* ci: Fix merge_script in MSVC task
* cirrus: Enable tests on windows
* test: Fix tests on Windows
* Remove confusing CAddrDB
* Fix addrdb includes
* Move addrman includes from .h to .cpp
* system: skip trying to set the locale on NetBSD
* Enable clang-tidy bugprone-argument-comment and fix violations
* doc: add missing copyright header to getuniquepath.cpp
* addrman: Fix format string in deserialize error
* test: Remove useless overwrite
* ci: Build and cache static Qt instead of downloading a pre-built one
* ci: Add missed comments and test_bitcoin.exe command line option
* ci: Drop AppVeyor CI integration
* ci: Add Windows task to Cirrus CI
* wallet: AddWalletDescriptor requires cs_wallet lock
* wallet: GetLabelAddresses requires cs_wallet lock
* qt, refactor: Replace WalletFrame::addWallet with WalletFrame::addView
* qt, refactor: Declare getWalletModel with const and noexcept qualifiers
* qt, refactor: Drop redundant checks of walletModel
* qt, refactor: Pass WalletModel object to WalletView constructor
* build: Fix macOS Apple Silicon build with miniupnpc and libnatpmp
* doc: update enum naming in developer notes
* [fuzz] Add ConsumeAsmap() function
* [addrman] Make m_asmap private
* [net] Rename the copyStats arg from m_asmap to asmap
* [addrman] Set m_asmap in CAddrMan initializer list
* [net] Remove CConnMan::SetAsmap()
* [init] Read/decode asmap before constructing addrman
* MOVEONLY: Expose BanMapToJson / BanMapFromJson
* sync: remove DEBUG_LOCKCONTENTION preprocessor directives
* log, sync: improve lock contention logging and add time duration
* log, timer: add timing macro in usec LOG_TIME_MICROS_WITH_CATEGORY
* log, sync: add LOCK logging category, apply it to lock contention
* ci: Fuzz with -ftrivial-auto-var-init=pattern
* netinfo: clarify client and server versions in header
* test: Rename bitcoin-util-test.py to util/test_runner.py
* test: Update test README and lint script
* build: Update default platform toolset in msvc-autogen.py
* error if settings.json exists, but is unreadable
* tests: Add TrimString(...) tests
* Replace use of boost::trim_right with locale-independent TrimString
* Replace use of boost::trim use with locale-independent TrimString
* Add LIFETIMEBOUND to InitializeChainstate
* Add LIFETIMEBOUND to CScript where needed
* test: Always clear reject reason in IsStandard tx test
* refactor: Detach wallet transaction methods (followup for move-only)
* rpc: fix/add missing RPCExamples for \"Util\" RPCs
* Display peers in -netinfo that we don\'t relay addresses to
* Display peers in -netinfo that request we not relay transactions
* Simplify a few conditionals in -netinfo
* Add addr_processed and addr_rate_limited stats to -netinfo
* release: remove gitian
* msvc: update bitcoin_config.h defines
* policy: unit test Segwit dust thresholds
* doc: Add packages that provide Qt Wayland plugin for Linux
* fuzz: Remove addrdb fuzz target
* Stricter BIP32 decoding and test vector 5
* build: fix unoptimized libraries in depends
* guix/prelude: Override VERSION with FORCE_VERSION
* Consolidate XOnlyPubKey lookup hack
* doc: mention bech32m/BIP350 in doc/descriptors.md
* test, refactor: rpc_rawtransaction PEP8
* refactor: separate the rpc_rawtransaction tests into functions
* move-only: regroup similar rpc_rawtransaction tests together
* test: remove no longer needed (ASCII art) comments
* test: add and harmonize getrawtransaction logging
* test: run 2nd getrawtransaction section with/without -txindex
* refactor: txid to constant in rpc_rawtransaction to isolate tests
* refactor: dedup/reorg createrawtransaction sequence number tests
* Test src/node/transaction::GetTransaction() without -txindex
* Remove CBanEntry::SetNull
* Remove unused SERIALIZE_METHODS for CBanEntry
* Use waste metric for deciding which selection to use
* tests: Test GetSelectionWaste
* Add waste metric calculation function
* scripted-diff: tests: Use KnapsackSolver directly
* tests: Add KnapsackGroupOutputs helper function
* tests: Use SelectCoinsBnB directly instead of AttemptSelection
* Allow the long term feerate to be configured, default of 10 sat/vb
* [refactor] [addrman] Update constant comments
* [move-only] Extract constants from addrman .h to .cpp
* [addrman] Change addrman #define constants to be constexprs
* [addrman] Move CAddrMan::Unserialize to cpp file
* [addrman] Move CAddrMan::Serialize to cpp file
* MOVEONLY: getting mempool conflicts to policy/rbf
* call SignalsOptInRBF instead of checking all inputs
* [validation] default conflicting fees and size to 0
* MOVEONLY: BIP125 max conflicts limit to policy/rbf.h
* builder-keys: add kristapsk
* ci: Re-enable verify-commits.py check
* ci: Unconditionally set the global git author name in cirrys.yml
* refactor: remove RecursiveMutex cs_nBlockSequenceId
* build, qt: Fix typo in QtInputSupport check
* Remove GetAddrName
* Remove unused RecursiveMutex cs_addrName
* Remove unused MaybeSetAddrName
* ci: Make Cirrus CI Windows build with --enable-werror
* Fix Windows build with --enable-werror on Ubuntu Focal
* Set regtest.BIP65Height = 111 to speed up tests
* qt: Add copy IP/Netmask action for banned peer
* qt, refactor: Replace `if` check with `assert`
* qt, refactor: Drop redundant signalling in WalletView::setWalletModel
* qt, refactor: Emit WalletView::encryptionStatusChanged signal directly
* qt: Add WalletFrame::currentWalletSet signal
* Add I2P network SetReachable/IsReachable unit test assertions
* Improve doc/i2p.md regarding I2P router options/versions
* Update i2p.md and tor.md regarding -onlynet config option
* test: fix failure in feature_nulldummy.py on single-core machines
* test: refactor: use named args for block_submit in feature_nulldummy.py
* Fix build with Boost 1.77.0
* contrib: return non-zero status if getcoins.py errors
* contrib: catch bitcoin-cli RPC call errors in getcoins.py
* contrib: refactor: introduce bitcoin-cli RPC call helper in getcoins.py
* Use `context.args` in `src/wallet/load.cpp`.
* Use `context.args` in `CWallet::Create` instead of `gArgs`.
* Fix typo in bitcoin-cli.cpp
* fuzz: Avoid timeout in blockfilter fuzz target
* test, doc: refer to the correct variable names in p2p_invalid_tx.py
* doc: Remove incorrect INIT_PROTO_VERSION from nTime comment
* the result of CWallet::IsHDEnabled() was initialized with true.
* Use generate
* from TestFramework
* test: Add generate
* calls to test framework
* refactor: replace QDateTime::toTime_t with QDateTime::toSecsSinceEpoch
* refactor: replace QDateTime::fromTime_t with QDateTime::fromSecsSinceEpoch
* doc: remove outdated comment
* refactor: Remove unused KeyIDHasher
* util: check MoneyRange() inside ParseMoney()
* util: make ParseMoney return a std::optional
* qt: Add missing mnemonics in menu bar options
* fuzz: Use LIMITED_WHILE instead of limit_max_ops
* qt: Handle new added plurals in bitcoin_en.ts
* Add cleaner errors for unsuccessful faucet transactions
* [script] Update signet getcoins.py for custom network
* Drop us=... message in net debug for sending version message
* refactor: move CAddress-without-nTime logic to net_processing
* test: Check if specified config file cannot be opened
* util: Check if specified config file cannot be opened
* test: added test for disabled wallet
* net: do not advertise address where nobody is listening
* Assert that IsComplete() in GetSpendData()
* Remove default nHashTypeIn arguments to MutableTransactionSignatureCreator
* Simplify SignTransaction precomputation loop
* Improve comments in taproot signing logic
* Avoid temporary vectors/uint256s in VerifyTaprootCommitment
* Avoid wallet code writing node settings file
* refactor: replace remaining binascii method calls
* test: only use verbose for getrawmempool when necessary in functional tests
* test: use getmempoolentry instead of getrawmempool in functional tests when appropriate
* test: improve mempool_updatefrom efficiency by using getmempoolentry for specific txns
* ci: Run arm task on arm64 hardware
* ci: Run fuzzer task for the master branch only
* guix: Don\'t include directory name in SHA256SUMS
* [addrman] Clean up ctor
* [addrman] inline Clear() into CAddrMan ctor
* [addrman] Remove all public uses of CAddrMan.Clear() from the tests
* [tests] Remove CAddrMan.Clear() call from CAddrDB::Read()
* [addrman] Don\'t call Clear() if parsing peers.dat fails
* [addrman] Move peers.dat parsing to init.cpp
* ci: Make git available for all merge commits
* scripted-diff: Rename template to avoid CI configuration parsing warning
* doc: Update GitHub documentation links
* test: add addr-fetch timeout connection coverage in p2p_addrfetch.py
* test: add assert_getpeerinfo method and coverage in p2p_addrfetch.py
* test: fix bug in 22686
* ci: Invalidate depends caches when sources have been changed
* ci: Reorder scripts to make git available before depends_sources_cache
* doc: link to managing-wallets from doc readme
* refactor: remove ::vpwallets and related global variables
* [crypto] Fix K1/K2 use in ChaCha20-Poly1305 AEAD
* windres: use PACKAGE_VERSION rather than building more version numbers
* test: use f-strings in mining_
*.py tests
* test: use f-strings in interface_
*.py tests
* test: use f-strings in feature_proxy.py
* test: use f-strings in feature_segwit.py
* test: use f-strings in feature_settings.py
* test: use f-strings in feature_pruning.py
* test: use f-strings in feature_notifications.py
* test: use f-strings in feature_minchainwork.py
* test: use f-strings in feature_logging.py
* test: use f-strings in feature_loadblock.py
* test: use f-strings in feature_help.py
* test: use f-strings in feature_filelock.py
* test: use f-strings in feature_fee_estimation.py
* test: use f-strings in feature_dersig.py
* test: use f-strings in feature_dbcrash.py
* test: use f-strings in feature_csv_activation.py
* test: use f-strings in feature_config_args.py
* test: use f-strings in feature_cltv.py
* test: use f-strings in feature_blocksdir.py
* test: use f-strings in feature_backwards_compatibility.py
* test: use f-strings in feature_asmap.py
* scripts: prevent GCC optimising test symbols in test-symbol-check
* scripted-diff: replace clientInterface with m_client_interface in net
* net: use clientInterface rather than uiInterface
* Document about wallet backup and restoration
* [MOVEONLY] [tests] Move addrman ser/deser tests to addrman_tests.cpp
* Add FoundBlock.found member
* contrib: use hkps://keys.openpgp.org to retrieve builder keys
* [addrman] Merge the two Add() functions
* wallet: use PACKAGE_NAME instead of \"Bitcoin\" in rpcdump
* wallet: use FormatFullVersion instead of CLIENT_BUILD in rpcdump
* test: check for invalid `-prune` parameters
* fuzz: Avoid OOM in system fuzz target
* clientversion: No suffix #if CLIENT_VERSION_IS_RELEASE
* test: Test for ApproximateBestSubset edge case with too little fees
* wallet: Assert that enough was selected to cover the fees
* wallet: Use GetSelectionAmount for target value calculations
* builder-keys: Add dongcarl
* Change the wallet_backup.py test to use the restorewallet RPC command instead of restoring wallets manually.
* Add a new RPC command: restorewallet
* builder-keys: add jamesob
* p2p: log addrman consistency checks
* p2p, rpc, test: address rate-limiting follow-ups
* [addrman] Make addrman consistency checks a runtime option
* [tests] Make deterministic addrman use nKey = 1
* [addrman] Add deterministic argument to CAddrMan ctor
* Add missing const to CAddrMan::Check_()
* gui: Unregister wallet notifications before unloading wallets
* qt, refactor: Fix indentation
* qt: Add SubFeeFromAmount option
* qt: Add Load PSBT functionaliy with nowallet
* gui: add Direction column to peers tab
* qt: Refactor open date range to use std::optional
* refactor: Reuse MakeUnorderedList where possible
* refactor: Move MakeUnorderedList into util/string.h to make it reusable
* scripted-diff: Rename JoinErrors in more general MakeUnorderedList
* test: Set regtest.BIP66Height = 102 to speed up tests
* cli: Add progress bar for -getinfo
* release: Release with separate SHA256SUMS and sig files
* guix-verify: Non-zero exit code when anything fails
* [test] mempool package ancestor/descendant limits
* [test] parameterizable fee for make_chain and create_child_with_parents
* [test] helper function to increase transaction weight
* extract/rename helper functions from rpc_packages.py
* [policy] ancestor/descendant limits for packages
* [mempool] check ancestor/descendant limits for packages
* [refactor] pass size/count instead of entry to CalculateAncestorsAndCheckLimits
* MOVEONLY: add helper function for calculating ancestors and checking limits
* misc package validation doc improvements
* Change SignTransaction\'s input_errors to use bilingual_str
* Use bilingual_str for address fetching functions
* Add bilingual_str::clear()
* wallet: Properly set fInMempool in mempool notifications
* wallet, rpc: add listdescriptors private option
* fuzz: Re-enable assert in banman again
* gui: ensure external signer option remains disabled without signers
* gui: Prompt to reset settings when settings.json cannot be read
* fuzz: check that ser+unser produces the same AddrMan
* fuzz: move init code to the CAddrManDeterministic constructor
* test: refactor: remove binascii from test_framework
* test: Add missing include
* test: Properly set BIP34 height in CreateNewBlock_validity unit test
* [net_processing] Provide debug error if code assumptions change.
* [docs] Add release notes for #21528
* qt: Fix regression in \"Encrypt Wallet\" menu item
* qt, test: use regex search in apptests
* qt, test: introduce FindInConsole function
* make ParseOutputType return a std::optional
* p2p, rpc: address relay fixups
* Close minor startup race between main and scheduler threads
* doc: Correct description of CAddrMan::Create()
* doc: Update high-level addrman description
* [GetTransaction] remove unneeded `cs_main` lock acquire
* consensus/params: simplify ValidDeployment check to avoid gcc warning
* Improve mempool_accept_wtxid.py
* test: Set BIP34Height = 2 for regtest
* test: Create all blocks with version 4 or higher
* [addrman] Remove RemoveInvalid()
* Squashed \'src/secp256k1/\' changes from efad3506a8..be8d9c262f
* [style] Small style improvements to DNS parameters
* [test] Test the delay before querying DNS seeds
* [test] Test the interactions between -forcednsseed and -dnsseed
* [init] Disallow starting up with conflicting paramters for -dnsseed and -forcednsseed
* [test] Test -forcednsseed causes querying DNS seeds
* [test] Test the interactions between -connect and -dnsseed
* [test] Test logic to query DNS seeds with block-relay-only connections
* [test] Introduce test logic to query DNS seeds
* [test] Use the new endpoint to improve tests
* [RPC] Add field to getpeerinfo to indicate if addr relay is enabled
* [test] Test that we intentionally select addr relay peers.
* [net_processing] Remove RelayAddrsWithPeer function
* [net_processing] Introduce new field to indicate if addr relay is enabled
* [net_processing] Defer initializing m_addr_known
* [test] Update p2p_addr_relay test to prepare
* [net_processing] Introduce SetupAddressRelay
* test: remove confusing `MAX_BLOCK_BASE_SIZE`
* test: introduce `get_weight()` helper for CBlock
* test: introduce `get_weight()` helper for CTransaction
* Generate doxygen documentation for test sources
* Fix whitespace in touched files
* Remove unused CSubNet serialize code
* Ignore banlist.dat
* Fix incorrect whitespace in addrman
* Add missing GUARDED_BY to CAddrMan::insecure_rand
* fuzz: Actually use const addrman
* refactor: Mark CAddrMan::GetAddr const
* refactor: Mark CAddrMan::Select const
* test: refactor: remove `hex_str_to_bytes` helper
* doc: add info to i2p.md about IBD time and multiple networks
* contrib, p2p: update I2P hardcoded seeds
* test: fix segwit terminology (s/witness_program/witness_script/)
* Document faster throughput configuration
* test: Disable automatic connections by default
* test: update logging and docstring in rpc_blockchain.py
* test: replace magic values by constants in rpc_blockchain.py
* test: assert on mediantime in getblockheader and getblockchaininfo
* test: assert on the value of getblockchaininfo#time
* test: Add temporary sanitizer suppression implicit-signed-integer-truncation:netaddress.cpp
* build: Fix undefined reference to __mulodi4
* macdeploy: alternative info to download the macOS SDK
* test: add type annotations to util.get_rpc_proxy
* guix: Ensure EPOCH_SOURCE_DATE does not include GPG information
* guix: Remove extra \\r from all.SHA256SUMS line ending
* guix: Allow changing the base manifest in guix-verify
* guix: Make all.SHA256SUMS rather than codesigned.SHA256SUMS
* script, doc: guix touchups
* Updated Readme, Corrected the codesign typo
* doc: GetTransaction()/getrawtransaction follow-ups to #22383
* refactor: move `GetTransaction(...)` to node/transaction.cpp
* [net processing] Default initialize m_recent_confirmed_transactions
* scripted-diff: Rename recentRejects
* [net processing] Default initialize recentRejects
* [net processing] Default initialize m_stale_tip_check_time
* [net processing] Add Orphanage empty consistency check
* coinstats: Add comments for new coinstatsindex values
* Index: Improve logging in coinstatsindex
* rpc: Block until synced if coinstatsindex is used in gettxoutsetinfo
* rpc: Add missing gettxoutsetinfo help docs
* Index: Return early from failed coinstatsindex init
* index: Use batch writing in coinstatsindex WriteBlock
* scripted-diff: Fix coinstats data member names
* index: Avoid unnecessary type casts in coinstatsindex
* test: assert logging categories are sorted in rpc and help
* log, refactor: use guard clause in LogCategoriesList()
* log: sort LogCategoriesList and LogCategoriesString alphabetically
* test: verify number of categories returned by logging RPC
* test: add logging to wallet_listtransactions
* test: remove unneeded/redundant code in wallet_listtransactions
* test: speedup wallet_listtransactions by whitelisting peers (immediate tx relay)
* test: use constants for CSV/CLTV activation heights in rpc_signrawtransaction
* test: introduce `generate_to_height` helper, use in rpc_signrawtransaction
* test: check that CSV/CLTV are active in rpc_signrawtransaction
* fuzz: silence a compiler warning about unused CBanEntry comparator
* tracing: Tracepoint for connected blocks
* tracing: Tracepoints for in- and outbound P2P msgs
* doc: document systemtap dependency
* doc: Add initial USDT documentation
* Fix typo in comment
* p2p: refactor: tidy up `PeerManagerImpl::Misbehaving(...)`
* wallet test: Add test for subtract fee from recipient behavior
* wallet test refactor: add CreateSyncedWallet function
* fuzz: Limit max ops in tx_pool fuzz targets
* fuzz: Use ConsumeUInt256 helper to simplify rolling_bloom_filter fuzz test
* fuzz: Speed up rolling_bloom_filter fuzz test
* fuzz: Speed up prevector fuzz target
* util: improves error messages on get_previous_releases script
* fuzz: Temporarily disable failing assert in banman fuzz test
* Reduced number of validations in `tx_validationcache_tests` to keep the run time reasonable.
* guix/build: Remove vestigial SKIPATTEST.TAG
* guix/INSTALL: Misc fixups
* guix: Silence getent(1) invocation
* contrib: use newer config.guess & config.sub in install_db4.sh
* depends: use latest config.guess and config.sub for sqlite
* depends: use latest config.guess and config.sub for cctools
* depends: use latest config.guess and config.sub for libevent
* prefer to use txindex if available for GetTransaction
* [validation] Set witness script flag with p2sh for blocks
* [p2p] remove redundant NODE_WITNESS checks
* [p2p] remove unused segwitheight=-1 option
* [test] remove or move tests using `-segwitheight=-1`
* fuzz: Extend addrman fuzz test with deserialize
* mempool: apply rule of 5 to epochguard.h, fix compiler warnings
* qt, refactor: Fix code styling of moved InitExecutor class
* qt, refactor: Move InitExecutor class into its own module
* scripted-diff: Rename BitcoinCore class to InitExecutor
* qt: Add BitcoinCore::m_thread member
* Add ipc::Context and ipc::capnp::Context structs
* [Refactor] Rename scriptPubKey -> exec_script
* cli: Implement human readable -getinfo.
* torcontrol: Resolve Tor control plane address
* test: check for RPC error \'Transaction already in block chain\' (-27)
* RPC/blockchain: getblockchaininfo: Include versionbits signalling details during LOCKED_IN
* rpc: Return block time in getblockchaininfo
* ci: Bump Android NDK to r22 which supports std::filesystem
* build: Add support for Android NDK r22+
* [addrman] Remove unused test_before_evict argument from Good()
* Move pblocktree global to BlockManager
* Move LoadBlockIndexDB to BlockManager
* refactor: Pass script verify flags as uint32_t
* build: Bump master version to 22.99.0
* Update assumed chain params
* tests: Test for dumpwallet lock order issue
* Reorder dumpwallet so that cs_main functions go first
* [style] Clean up BroadcastTransaction()
* [test] Allow rebroadcast for same-txid-different-wtxid transactions
* [mempool] Allow rebroadcast for same-txid-different-wtxid transactions
* [test] Test transactions are not re-added to unbroadcast set
* [mempool] Only add a transaction to the unbroadcast set when it\'s added to the mempool
* test: Add functional test for AddrFetch connections
* net, rpc: Enable AddrFetch connections for functional testing
* p2p: Add timeout for AddrFetch peers
* p2p: AddrFetch - don\'t disconnect on self-announcements
* build: use aarch64 Clang if cross-compiling for darwin on aarch64
* guix: Bump to version-1.3.0 from upstream
* guix: Pin kernel header version
* macdeploy: cleanup .temp.dmg if present
* macdeploy: remove qt4 related code
* macdeploy: select the plugins we need, rather than excluding those we don\'t
* macdeploy: fix framework printing when passing -verbose
* macdeploy: remove unused plistlib import
* guix/INSTALL: Guix installs init scripts in libdir
* guix/INSTALL: Add coreutils/inotify-dir-recreate troubleshooting
* guix-attest: Produce and sign normalized documents
* guix: Overhaul README
* tree-wide: Rename gitian-keys to builder-keys
* guix: Update various check_tools lists
* guix: Check for a sane services database
* scripted-diff: Revert \"fuzz: Add Temporary debug assert for oss-fuzz issue\"
* scripted-diff: remove ResetI2PPorts() (revert e0a2b390c14)
* addrman: detect on-disk corrupted nNew and nTried during unserialization
* Improve tests using statistics
* Add logging and addr rate limiting statistics
* Functional tests for addr rate limiting
* Randomize the order of addr processing
* Rate limit the processing of incoming addr messages
* Make IsSegWitOutput return true for taproot outputs
* Move implementations of non-template fuzz helpers
* Test that descriptor wallet upgrade does nothing
* Change ScriptPubKeyMan::Upgrade to default to return true
* Avoid GCC 7.1 ABI change warning in guix build
* build, qt: Do not install
*.prl files
* build, qt: Fix wrong cross-compiling detection on macOS
* build, qt: Force bootstrap while building linguist tools
* build, qt: Drop translations.pro hack
* build, qt: Drop lrelease dependency patch
* build, qt: Add linguist_tools list
* build: Use Qt top-level build facilities
* Mark print-% target as phony.
* build: Add -Werror=implicit-fallthrough compile flag
* Use C++17 [[fallthrough]] attribute, and drop -Wno-implicit-fallthrough
* bench: fix 32-bit narrowing warning in bench/peer_eviction.cpp
* test: ensure I2P addresses are relayed
* test: make CAddress in functional tests comparable
* test: implement ser/unser of I2P addresses in functional tests
* test: use NODE_
* constants instead of magic numbers
* net: relay I2P addresses even if not reachable (by us)
* doc: added info to bitcoin.conf doc
* doc: Remove unnecessary steps from translations update process
* p2p: earlier continuation when no remaining eviction candidates
* p2p: process more candidates per protection iteration
* p2p: iterate eviction protection only on networks having candidates
* bench: add peer eviction protection benchmarks
* refactor: move GetRandomNodeEvictionCandidates() to test utilities
* refactor: move UpdateTip into CChainState
* refactor: no mempool arg to GetCoinsCacheSizeState
* refactor: move UpdateMempoolForReorg into CChainState
* validation: make CChainState::m_mempool optional
* Use DeploymentEnabled to hide VB deployments
* doc: Move buried deployment doc to the enum that enumerates them
* test: move rpc_rawtransaction tests to < 30s group
* test: whitelist rpc_rawtransaction peers to speed up tests
* test: Fix wallet_listdescriptors.py if bdb is not compiled
* test: Add feature_taproot.py --previous_release
* test: move releases download incantation to README
* test: previous releases: add v0.20.1
* doc: mention that we enforce port=0 in I2P
* addrman: reset I2P ports to 0 when loading from disk
* test: ensure I2P ports are handled as expected
* net: do not connect to I2P hosts on port!=0
* net: distinguish default port per network
* net: change I2P seeds\' ports to 0
* net: change assumed I2P port to 0
* init: remove straggling boost thread_group code
* fix incorrect testmempoolaccept doc
* net: don\'t bind on 0.0.0.0 if binds are restricted to Tor
* doc: recommend `--disable-external-signer` in OpenBSD build guide
* [test] submit same txid different wtxid as mempool tx
* [validation] distinguish same txid different wtxid in mempool
* test: use script_util helpers for creating P2W{PKH,SH} scripts
* test: use script_util helpers for creating P2SH scripts
* test: use script_util helpers for creating P2PKH scripts
* test: wallet util: fix multisig P2SH-P2WSH script creation
* test: Correct outstanding -Werror=sign-compare errors
* guix: Test security-check sanity before performing them
* scripts: adjust test-symbol-check for guix release environment
* scripts: more robustly test macOS symbol checks
* build: Use and test PE binutils with --reloc-section
* guix: Patch binutils to add security-related disable flags
* devtools: Improve
*-check.py tool detection
* ci: skip running the Linux test-security-check target for now
* lint: Run mypy with --show-error-codes
* test: add `bad-txns-prevout-null` test to mempool_accept.py
* test: add `bad-txns-prevout-null` test case to invalid_txs.py
* addrman: remove invalid addresses when unserializing
* fuzz: reduce possible networks check
* net: simplify CNetAddr::IsRoutable()
* doc: Install Rosetta on M1-macOS for qt in depends
* script: remove gitian reference from symbol-check.py
* guix: add additional documentation to patches
* lint: exclude Guix patches from spell-checking
* guix: no-longer pass --enable-glibc-back-compat to Guix
* build: remove glibc backcompat requirement for Linux symbol checks
* fuzz: Move CTxDestination fuzzing to script fuzz target
* fuzz: Simplify CTxDestination fuzzing in the script target
* fuzz: Improve ConsumeTxDestination
* fuzz: Move ConsumeTxDestination to cpp file
* build: remove --enable-determinism configure option
* qt: Emit dataChanged signal to dynamically re-sort Peers table
* qt: Draw \"eye\" sign at the beginning of watch-only addresses
* qt: Do not extend recent transaction width to address/label string
* guix: Also sort SHA256SUMS.part
* guix: Build depends/qt with our platform definition
* guix: Rebase toolchain on glibc 2.24 (2.27 for riscv64)
* doc: update doc/benchmarking.md
* bench: bench_bitcoin.cpp help fixups
* bench: bench.h fixes and improvements
* ci: use Ubuntu 20.04 as the default Docker container
* tests: remove ComputeBlockVersion shortcut from versionbits tests
* [refactor] Move ComputeBlockVersion into VersionBitsCache
* [move-only] Move ComputeBlockVersion from validation to versionbits
* [refactor] versionbits: make VersionBitsCache a full class
* [refactor] rpc/blockchain.cpp: SoftForkPushBack
* deploymentinfo: Add DeploymentName()
* [move-only] Rename versionbitsinfo to deploymentinfo
* scripted-diff: rename versionbitscache
* [refactor] Add versionbits deployments to deploymentstatus.h
* [refactor] Add deploymentstatus.h
* versionbits: Use dedicated lock instead of cs_main
* Translations update
* build: Fix Boost Process compatibility with mingw-w64 compiler
* wallet: do not spam about non-existent spk managers
* wallet: erase spkmans rather than setting to nullptr
* Do not clone qa-assets git repository if not necessary
* qt: allow prompt icon to be colorized
* GUI: Always call parent changeEvent handler
* GUI: Enable palette change adaptation on all platforms
* refactor: remove m_internal from DescriptorSPKman
* wallet: deactivate descriptor
* test: wallet importdescriptors update existing
* wallet: maintain SPK consistency on internal flag change
* wallet: don\'t mute exceptions in importdescriptors
* wallet: allow to import same descriptor twice
* wallet, rpc: listdescriptors does not need unlocked
* Pass in DescriptorCache to ToNormalizedString
* Change DescriptorImpl::ToStringHelper to use an enum
* Remove priv option for ToNormalizedString
* wallet: Upgrade existing descriptor caches
* wallet: Store last hardened xpub cache
* descriptors: Cache last hardened xpub
* Move DescriptorCache writing to WalletBatch
* Refactor Cache merging and writing
* Revert \"Cache parent xpub inside of BIP32PubkeyProvider\"
* ci: Upgrading pip version in macos environment
* doc: IsFinalTx comment about nSequence & OP_CLTV
* doc: Clarify developer notes about constant naming
* refactor: Make httpserver work queue a unique_ptr
* Remove unused wallet pointer from NotifyAddressBookChanged
* Remove unused wallet pointer from NotifyTransactionChanged signal
* refactor: Remove chainparams arg from CChainState member functions
* refactor: Remove ::Params() global from inside CChainState member functions
* Reject invalid coin height and output index when loading assumeutxo
* doc: Document minimum required libc++ version
* Avoid the use of P0083R3 std::set::merge
* rpc: reset scantxoutset progress on finish
* fuzz: Check banman roundtrip
* cli: Avoid truncating -rpcwaittimeout
* wallet: Add error message to GetReservedDestination
* Disallow bech32m addresses for legacy wallet things
* Use BECH32M for tr() desc, WitV1Taproot, and WitUnknown CTxDests
* Opportunistically use bech32m change addresses if available
* Add OutputType::BECH32M
* Limit LegacyScriptPubKeyMan address types
* doc: sort entries in doc/README.md#Miscellaneous alphabetically
* doc: add basic I2P documentation
* test: Add missing syncwithvalidationinterfacequeue
* test: Misc cleanup
* test: Run pep-8
* scripted-diff: Renames
* test: doc: improve doc for `from_hex` helper (mention `to_hex` alternative)
* scripted-diff: test: rename `FromHex` to `from_hex`
* test: remove `ToHex` helper, use .serialize().hex() instead
* test: introduce `tx_from_hex` helper for tx deserialization
* build: remove check for Boost Process header
* build: remove workaround for Boost and std::atomic
* build: set minimum required Boost to 1.64.0
* [test] Prevent intermittent issue
* [test] Remove GetAddrStore class
* [test] Update GetAddrStore callers to use AddrReceiver
* [test] Add functionality to AddrReceiver
* [test] Allow AddrReceiver to be used more generally
* refactor: Pass grind args vector as const reference
* Remove gArgs from AppInitUtil
* Remove unused OptionsCategory arg from AddCommand
* Remove unused includes from bitcoin-util
* test: Add bitcoin-util tests
* build_msvc: Add bitcoin-util.exe
* doc: add comment about CCoinsViewDBCursor constructor
* move-only(ish): don\'t expose CCoinsViewDBCursor
* refactor: wrap CCoinsViewCursor in unique_ptr
* script, doc: spelling update
* Taproot descriptor inference
* Report address as solvable based on inferred descriptor
* consensus refactor: extract ComputeTapleafHash, ComputeTaprootMerkleRoot
* style: remove () from assert in rpc_setban.py
* doc: fix grammar in doc/files.md
* test: ensure banlist can be read from disk after restart
* banman: save the banlist in a JSON format on disk
* test: Add missing sync_all to feature_coinstatsindex
* Revert \"test: Add temporary logging to debug #20975\"
* wallet: Add missing BlockUntilSyncedToCurrentChain
* add missing atomic include
* add dummy file param to fix jupyter
* doc: Final merge of release notes snippets
* test: MiniWallet: fix fee calculation for P2PK and check tx vsize
* test: MiniWallet: force P2PK signature to have fixed size (71 bytes)
* rpc: Add test for -rpcwaittimeout
* rpc: Prefix rpcwaittimeout error with details on its nature
* doc: Add release notes for the `-rpcwaittimeout` cli parameter
* rpc: Add a `-rpcwaittimeout` parameter to limit time spent waiting
* http: Release work queue after event base finish
* tests: Add test for compact block HB selection
* Protect last outbound HB compact block peer
* devtools: Integrate ARCH_MIN_GLIBC_VER table into MAX_VERSIONS in symbol-check.py
* devtools: Add xkb version to symbol-check
* devtools: Fix verneed section parsing in pixie
* fuzz: add missing ECCVerifyHandle to base_encode_decode
* test: Use MiniWallet in test_no_inherited_signaling RBF test
* test: Add txin.sequence option to MiniWallet
* contrib/signet/miner: remove debug code
* bitcoin-util: use AddCommand / GetCommand
* contrib/signet/README.md: Update miner description
* contrib/signet/miner: Automatic timestamp for first block
* contrib/signet/miner: --grind-cmd is required for calibrate
* contrib/signet: Fix typos
* Added new test for future blocks reacceptance
* Fixed inconsistencies between code and comments
* test: kill process group to avoid dangling processes
* scripts: check macOS SDK version is set
* scripts: check minimum required Windows version is set
* scripts: check minimum required macOS vesion is set
* scripts: LIEF 0.11.5
* build: improve detection of eBPF support
* Add support for SIGHASH_DEFAULT in RPCs, and make it default
* tests: check spending of P2TR
* Basic Taproot signing logic in script/sign.cpp
* Make GetInputUTXO safer: verify non-witness UTXO match
* Construct and use PrecomputedTransactionData in PSBT signing
* Construct and use PrecomputedTransactionData in SignTransaction
* Don\'t nuke witness data when signing fails
* Permit full precomputation in PrecomputedTransactionData
* Add precomputed txdata support to MutableTransactionSignatureCreator
* Add CKey::SignSchnorr function for BIP 340/341 signing
* Use HandleMissingData also in CheckSchnorrSignature
* Add TaprootSpendData data structure, equivalent to script map for P2[W]SH
* fuzz: Assert roundtrip equality for `CPubKey`
* Add roundtrip fuzz tests for CAddress serialization
* Use addrv2 serialization in anchors.dat
* Introduce well-defined CAddress disk serialization
* fuzz: Add Temporary debug assert for oss-fuzz issue
* fuzz: Speed up crypto fuzz target
* test: check rejected future block later accepted
* guix-attest: Error out if SHA256SUMS is unexpected
* Rewrite guix-{attest,verify} for new hier
* Make SHA256SUMS fragment right after build
* gui: misc external signer fixes and translation hints
* refactor: make ExternalSigner NetworkArg() and m_chain private
* refactor: reduce #ifdef ENABLE_EXTERNAL_SIGNER usage
* build: enable external signer by default
* refactor: clean up external_signer.h includes
* fuzz: fix fuzz binary linking order
* build: Disable deprecated-copy warning only when external warnings are enabled
* Randomize message processing peer order
* Switch Appveyor CI to VS2019 stable image
* Bugfix: GUI: Use a different shortcut for \"1 d&ay\" banning, due to conflict with \"&Disconnect\"
* GUI: Add keyboard shortcuts for other context menus
* GUI: Restore keyboard shortcuts for context menu entries
* refactor: Make CAddrMan::cs non-recursive
* Add AssertLockHeld to CAddrMan private functions
* Add thread safety annotations to CAddrMan public functions
* refactor: Avoid recursive locking in CAddrMan::Clear
* refactor: Apply consistent pattern for CAddrMan::Check usage
* refactor: Avoid recursive locking in CAddrMan::Check
* refactor: Fix CAddrMan::Check style
* Make CAddrMan::Check private
* refactor: Avoid recursive locking in CAddrMan::size
* test: Drop excessive locking in CAddrManTest::SimConnFail
* test: add combined I2P/onion/localhost eviction protection tests
* test: add tests for inbound eviction protection of I2P peers
* p2p: extend inbound eviction protection by network to I2P peers
* test: add combined onion/localhost eviction protection coverage
* p2p: remove unused m_is_onion member from NodeEvictionCandidate struct
* p2p: remove unused CompareLocalHostTimeConnected()
* p2p: remove unused CompareOnionTimeConnected()
* p2p: update ProtectEvictionCandidatesByRatio() doxygen docs
* p2p: make ProtectEvictionCandidatesByRatio() fully ratio-based
* test: remove combined onion/localhost eviction protection tests
* p2p: add CompareNodeNetworkTime() comparator struct
* p2p: add m_network to NodeEvictionCandidate struct
* p2p, refactor: rename vEvictionCandidates to eviction_candidates
* p2p, refactor: improve constness in ProtectEvictionCandidatesByRatio()
* test: add ALL_NETWORKS to test utilities
* test: speed up and simplify peer_eviction_test
* p2p, refactor: rm redundant erase_size calculation in SelectNodeToEvict()
* build: Fix MSVC linker /SubSystem option for bitcoin-qt.exe
* Update msvc and appveyor builds to use Qt5.12.11 binaries.
* fuzz: Call const member functions in addrman fuzz test only once
* test: doc: improve doc for chain_transaction() helper
* test: refactor: dedup utility function chain_transaction()
* Allow tr() import only when Taproot is active
* qt: Connect WalletView signal to BitcoinGUI slot directly
* qt: Drop redundant OverviewPage::handleOutOfSyncWarningClicks slot
* qt: Drop redundant WalletView::requestedSyncWarningInfo slot
* doc: update tor.md with removal of tor v2 support
* refactor: Pass block reference instead of pointer to PeerManagerImpl::BlockRequested
* addrman: use unordered_map instead of map
* Rearrange fillPSBT arguments
* validation: Farewell, global Chainstate!
* qt/test: Reset chainman in ~ChainstateManager instead
* scripted-diff: tree-wide: Remove all review-only assertions
* tree-wide: Remove stray review-only assertion
* qt/test: Use existing chainman in ::TestGUI (can be scripted-diff)
* scripted-diff: wallet/test: Use existing chainman
* fuzz: Initialize a TestingSetup for test_one_input
* scripted-diff: test: Use existing chainman in unit tests
* test: Pass in CoinsTip to ValidateCheckInputsForAllFlags
* test/miner_tests: Pass in chain tip to CreateBlockIndex
* test/util: Use existing chainman in ::PrepareBlock
* init: Use existing chainman
* Fix gui segfault caused by bitcoin/bitcoin#22216
* Make SetupServerArgs callable without NodeContext
* test: check anchors.dat when node starts for the first time
* Use latest signapple commit
* test: Use ConnmanTestMsg from test lib in denialofservice_tests
* scripted-diff: rename MarkBlockAs functions
* [net processing] Tidy up MarkBlockAsReceived()
* [net processing] Add IsBlockRequested() function
* [net processing] Remove QueuedBlock.hash
* scripted-diff: rename nPeersWithValidatedDownloads
* [net processing] Remove CNodeState.nBlocksInFlightValidHeaders
* [net processing] Remove QueuedBlock.fValidatedHeaders
* [net processing] Remove unnecessary hash arg from MarkBlockAsInFlight()
* MOVEONLY: context-free package policies
* disallow_mempool_conflicts -> allow_bip125_replacement and check earlier
* [refactor] comment/naming improvements
* [rpc] reserve space in txns
* [package] static_assert max package size >= max tx size
* Update REVIEWERS: I\'ve found that I keep track of PRs in need of review without the need for DrahtBot\'s automated notification :)
* doc: remove obsolete `okSafeMode` RPC guideline from developer notes
* build, qt: Fix compiling qt package in depends with GCC 11
* test: Add temporary coinstats suppressions
* zmq: use msg: prefix over errno= in zmqError
* zmq: use std::string in zmqError()
* Do not load external signers wallets when unsupported
* Fix issues when `walletdir` is root directory
* scripted-diff: Rename SelectCoinsMinConf to AttemptSelection
* Move vin filling to before final fee setting
* Set m_subtract_fee_outputs during recipients vector loop
* Move variable initializations to where they are used
* Move recipients vector checks to beginning of CreateTransaction
* Rename nSubtractFeeFromAmount in CreateTransaction
* Rename nValue and nValueToSelect
* Remove extraneous scope in CreateTransactionInternal
* Move cs_wallet lock in CreateTransactionInternal to top of function
* build, qt: Fix libraries linking order for Linux hosts
* gui: send using external signer
* gui: wallet creation detects external signer
* node: add externalSigners to interface
* gui: display address on external signer
* wallet: add displayAddress to interface
* gui: create wallet with external signer
* gui: add external signer path to options dialog
* guix: Check for disk space availability before building
* guix: Remove dest if OUTDIR mv fails
* Add sync_blocks in wallet_orphanedreward.py.
* fuzz: Increase branch coverage of the float fuzz target
* fuzz: Remove confusing return keyword from CallOneOf
* qt: Handle peer addition/removal in a right way
* qt: Drop PeerTablePriv class
* qt, refactor: Use default arguments for overridden functions
* libsecp256k1 no longer has --with-bignum= configure option
* Squashed \'src/secp256k1/\' changes from 3967d96bf1..efad3506a8
* Disable certain false positive warnings for libsecp256k1 msvc build
* test: Add temporary logging to debug #20975
* fuzz: Terminate immediately if a fuzzing harness ever tries to perform a DNS lookup (belts and suspenders)
* util: Properly handle -noincludeconf on command line
* test: convert docs into type annotations in test_framework/test_node.py
* test: convert docs into type annotations in test_framework/wallet.py
* test: convert docs into type annotations in test_framework/util.py
* p2p, rpc, fuzz: various tiny follow-ups
* qt: Drop BitcoinGUI
* WalletFrame data member
* qt: Move CreateWalletActivity connection from WalletFrame to BitcoinGUI
* qt: Move WalletView connections from WalletFrame to BitcoinGUI
* qt: Save/restore column sizes of the tables in the Peers tab
* qt: make console buttons look clickable
* qt: Align numbers in the \"Peer Id\" column to the right
* test: Remove unused node from feature_nulldummy
* test: Fix p2p_leak.py intermittent failure by lowering timeout
* doc: Various validation doc fixups
* Testcase for wallet issue with orphaned rewards.
* [doc] explain why CheckBlock() is called before AcceptBlock()
* tests: check derivation of P2TR
* Add tr() descriptor (derivation only, no signing)
* Add TaprootBuilder class
* Add XOnlyPubKey::CreateTapTweak
* Make consensus checking of tweaks in pubkey.
* Taproot-specific
* Separate WitnessV1Taproot variant in CTxDestination
* Avoid dependence on CTxDestination index order
* Change Solver() output for WITNESS_V1_TAPROOT
* Make XOnlyPubKey act like byte container
* contrib: remove torv2 seed nodes
* contrib: update generate-seeds.py to ignore torv2 addresses
* p2p, refactor: extract OnionToString() from CNetAddr::ToStringIp()
* p2p: remove torv2 from CNetAddr::ToStringIP()
* p2p: remove torv2 in SetIP() and ADDR_TORV2_SIZE constant
* p2p: remove pre-addrv2 onions from SerializeV1Array()
* p2p: ignore torv2-in-ipv6 addresses in SetLegacyIPv6()
* p2p: remove BIP155Network::TORV2 from GetBIP155Network()
* p2p: remove torv2 from SetNetFromBIP155Network()
* fuzz: rename CNetAddr/CService deserialize targets
* p2p: drop onions from IsAddrV1Compatible(), no longer relay torv2
* p2p: remove torv2/ADDR_TORV2_SIZE from SetTor()
* test: update feature_proxy to torv3
* wallet: Add IsAddressUsed / SetAddressUsed methods
* interfaces: Stop exposing wallet destdata to gui
* test: Add gui test for wallet receive requests
* build: Makes rcc output always deterministic
* depends: Fix qt.mk for mac arm64
* build, qt: Make QWindowsVistaStylePlugin available again (regression)
* script: fix spelling linter raising spuriously on \"invokable\"
* Mark `CheckTxInputs` `[[nodiscard]]` (out-param `txfee` only set if call is successful). Avoid UUM in fuzzing harness `coins_view`.
* ci: Bump macOS image to big-sur-xcode-12.5
* build: Add /opt/homebrew to path to look for boost libraries
* doc: improve note on choosing posix mingw32
* test: remove BasicTestingSetup from util_threadnames unit tests
* test: remove BasicTestingSetup from uint256 unit tests
* test: remove BasicTestingSetup from torcontrol unit tests
* test: remove BasicTestingSetup from sync unit tests
* test: remove BasicTestingSetup from reverse_lock unit tests
* test: remove BasicTestingSetup from policy_fee unit tests
* test: remove BasicTestingSetup from merkleblock tests
* test: remove BasicTestingSetup from hash unit tests
* test: remove BasicTestingSetup from compilerbug unit tests
* test: remove BasicTestingSetup from bswap unit tests
* test: remove BasicTestingSetup from bech32 unit tests
* test: remove BasicTestingSetup from base64 unit tests
* test: remove BasicTestingSetup from base32 unit tests
* test: remove BasicTestingSetup from arith_uint256 unit tests
* test: remove BasicTestingSetup from amount unit tests
* test: remove BasicTestingSetup from allocator unit tests
* qt: Translations update
* test: remove sanitizer suppression for nanobench
* test: update nanobench from release 4.0.0 to 4.3.4
* depends: Bump Qt version to 5.12.11
* net: cleanup newly added PeerManagerImpl::ProcessNewBlock
* validation: change ProcessNewBlock() to take a CBlock reference
* test: run mempool_reorg.py even with wallet disabled
* test: feature_cltv.py: don\'t return tx copies in modification functions
* test: drop unused node parameters in feature_cltv.py
* test: fix typo in feature_cltv.py (s/ctlv/cltv/)
* index: refactor-only: Reuse CChain ref
* index: Add chainstate member to BaseIndex
* bench: Use existing chainman in AssembleBlock
* bench: Use existing NodeContext in DuplicateInputs
* miner: Pass in chainman to RegenerateCommitments
* rest: Add GetChainman function and use it
* rpc/blockchain: Use existing blockman in gettxoutsetinfo
* fuzz: Speed up banman fuzz target
* refactor: Switch serialize to uint8_t (1/n)
* scripted-diff: rename GetSystemTimeInSeconds to GetTimeSeconds
* qt, rpc: Do not accept command while executing another one
* qt, rpc: Accept stop RPC even another command is executing
* qt, rpc, refactor: Return early in RPCConsole::on_lineEdit_returnPressed
* qt, rpc: Add \"Executing…\" message
* qt: Make RPC console welcome message translation-friendly
* doc: Fix external links (IRC, ...)
* gui: Add access to the Peers tab from the network icon
* doc: add maxuploadtarget to bitcoin.conf example
* Additional test vector for hardened derivation with leading zeros
* Use COINBASE_MATURITY constant in functional tests.
* Move COINBASE_MATURITY from `feature_nulldummy` test to `blocktools`.
* test: Fix IPv6 check on BSD systems
* build: don\'t use cf-protection when targeting arm-apple-darwin
* MOVEONLY: CWallet transaction code out of wallet.cpp/.h
* qt: Improve GUI responsiveness
* qt, macos: Fix GUIUtil::PolishProgressDialog bug
* qt: Make TransactionView aware of runtime palette change
* qt: Make CoinControlDialog aware of runtime palette change
* qt: Make OverviewPage aware of runtime palette change
* qt: Make UnitDisplayStatusBarControl aware of runtime palette change
* qt: Replace base class of ClickableLabel with ThemedLabel
* qt: Use GUIUtil::ThemedLabel class
* qt: Add GUIUtil::ThemedLabel class
* qt: Make SignVerifyMessageDialog aware of runtime palette change
* qt: Make SendCoinsEntry aware of runtime palette change
* qt: Make RPCConsole aware of runtime palette change
* qt: Make BitcoinGUI aware of runtime palette change
* qt: Make PlatformStyle aware of runtime palette change
* Add src/qt/android/.gitignore
* depends: latest config.sub (2021-04-30)
* depends: latest config.guess (2021-05-24)
* [policy] detect unsorted packages
* [doc] add release note for package testmempoolaccept
* [test] functional test for packages in RPCs
* [rpc] allow multiple txns in testmempoolaccept
* [policy] limit package sizes
* [fuzz] add ProcessNewPackage call in tx_pool fuzzer
* [test] unit tests for ProcessNewPackage
* [test] make submit optional in CreateValidMempoolTransaction
* [validation] package validation for test accepts
* [validation] explicit Success/Failure ctors for MempoolAcceptResult
* [policy] Define packages
* [refactor] add option to disable RBF
* [coins/mempool] extend CCoinsViewMemPool to track temporary coins
* [validation] make CheckSequenceLocks context-free
* Update Windows code signing certificate
* move-only: Group and re-order CAddrMan members by access type
* refactor: Do not expose CAddrMan members as protected without need
* [fuzz] Occasional valid magic bytes for transport serialization test
* [fuzz] Occasional valid checksum for transport serialization fuzz test
* [fuzz] Add serialization to deserialization test
* English translations update
* scripted-diff: Fix ellipsis after pr20773
* build: Use Qt archive of the same version as the compiled binaries
* qt: Replace disambiguation strings with translator comments
* contrib: add torv3 seed nodes for testnet, drop v2 ones
* qt: add translator comments for peers table columns
* gui: rename \"Peer Id\" to \"Peer\" in tab column and details area
* qt, refactor: Revert explicit including QStringBuilder
* qt, build: Optimize string concatenation
* rpc: Improve avoidpartialspends and avoid_reuse documentation
* wallet: Increase OUTPUT_GROUP_MAX_ENTRIES to 100
* qt: Refactor to remove unnecessary block in DispatchNotifications
* qt: Early subscribe core signals in transaction table model
* qt: Refactor ShowProgress to DispatchNotifications
* qt: Set flag after inital load on transaction table model
* Remove support for double serialization
* Convert uses of double-serialization to {En,De}codeDouble
* Convert existing float encoding tests
* Add unit tests for serfloat module
* Add platform-independent float encoder/decoder
* Remove unused float serialization
* Replace size/weight estimate tuple with struct for named fields
* fuzz: don\'t try and use fopencookie when building for Android
* doc: describe in fuzzing.md how to reproduce a CI crash
* ci: Bump multiprocess memory
* qt: Avoid unnecessary translations
* test: use MiniWallet (P2PK mode) for feature_dersig.py
* Have OutputGroup determine the value to use
* Change SelectCoins_test to actually test SelectCoins
* Remove CreateTransaction while loop and some related variables
* Remove use_bnb and bnb_used
* Do both BnB and Knapsack coin selection in SelectCoinsMinConf
* Have KnapsackSolver actually use effective values
* Roll static tx fees into nValueToSelect instead of having it be separate
* Move output reductions for fee to after coin selection
* Make cost_of_change part of CoinSelectionParams
* Move some calculations to common code in SelectCoinsMinConf
* scripted-diff: rename some variables
* build: Convert warnings into errors when testing for -fstack-clash-protection
* rpc: simplify addpeeraddress and improve code constness
* test: addpeeraddress functional test coverage
* Factor feefilter logic out
* Remove -feefilter option
* test: MiniWallet: introduce enum type for output mode
* guix: repro: Sort find output in libtool for gcc-8
* codesigning: Use SHA256 as digest for osslsigncode (Windows)
* guix: Add codesigning functionality
* guix: Package codesigning tools
* guix: Reindent existing manifest.scm
* Makefile.am: use APP_DIST_DIR instead of hard-coding dist
* net: ignore block-relay-only peers when skipping DNS seed
* [refactor] Remove unused ForEachNodeThen() template
* scripted-diff: rename address relay fields
* [net processing] Move addr relay data and logic into net processing
* [net processing] Make RelayAddress() a member function of PeerManagerImpl
* [net processing] Take NodeId instead of CNode
* as originator for RelayAddress()
* refactor: Make CFeeRate constructor architecture-independent
* Remove `GetDataDir(bool fNetSpecific = true)` function
* scripted-diff: Replace `GetDataDir(true)` calls with `gArgs.GetDataDirNet()` calls
* scripted-diff: Replace `GetDataDir()` calls with `gArgs.GetDataDirNet()` calls
* Make `ArgsManager.GetDataDirPath` private and drop needless suffix
* scripted-diff: Change `ArgsManager.GetDataDirPath()` to `ArgsManager.GetDataDirBase()` in tests
* Add `ArgsManager.GetDataDirBase()` and `ArgsManager.GetDataDirNet()` as an intended replacement for `ArgsManager.GetDataDirPath(net_identifier)`
* Make `m_cached_blocks_path` mutable. Make `ArgsManager::GetBlocksDirPath()` const.
* test: use P2PK-MiniWallet for feature_csv_activation.py
* test: MiniWallet: add P2PK support
* Cleanup -includeconf error message
* Fix crash when parsing command line with -noincludeconf=0
* fuzz: Add utxo_snapshot target
* fuzz: Speed up transaction fuzz target
* fuzz: Terminate immediately if a fuzzing harness ever tries to create a TCP socket (belt and suspenders)
* txmempool: add thread safety annotations
* build: libevent 2.1.12-stable
* qt, test: use qsignalspy instead of qeventloop
* qt: Add shortcuts for console font resize buttons
* qt: Add GUIUtil::AddButtonShortcut
* qt: Use native presentation of shortcut
* test: improve getnodeaddresses coverage, test by network
* rpc: enable filtering getnodeaddresses by network
* p2p: allow CConnman::GetAddresses() by network, add doxygen
* p2p: allow CAddrMan::GetAddr() by network, add doxygen
* p2p: pull time call out of loop in CAddrMan::GetAddr_()
* p2p: enable CAddrMan::GetAddr_() by network, add doxygen
* rpc/wallet: use OMITTED_NAMED_ARG instead of Default(VNULL)
* rpc/createwallet: omitted named arguments
* rpc: address:amount dictionaries are OBJ_USER_KEYS
* rpc/getpeerinfo: bytesrecv_per_msg is a dynamic dictionary
* rpc/gettxoutsetinfo: hash_or_height is a named argument
* fuzz: Add missing CheckTransaction before CheckTxInputs
* fuzz: Sanity check result of CheckTransaction
* p2p: pass strings to NetPermissions::TryParse functions by const ref
* wallet: make chain optional for CWallet::Create
* CWallet::Create move chain init message up into calling code
* refactor: Add CWallet:::AttachChain method
* refactor: move first run detection to client code
* net: flag relevant Sock methods with [[nodiscard]]
* wallet: refactor: dedup sqlite PRAGMA assignments
* wallet: refactor: dedup sqlite PRAGMA integer reads
* scripted-diff: update noban documentation in net_processing.cpp
* scripted-diff: rename NetPermissionFlags enumerators
* p2p, refactor: make NetPermissionFlags a uint32 enum class
* p2p: NetPermissions::HasFlag() pass flags param by value
* scripted-diff: add NetPermissionFlags scopes where not already present
* faster HexStr => 13% faster blockToJSON
* net: Return IPv6 scope id in `CNetAddr::ToStringIP()`
* doc: note that brew installed qt is not supported
* build: Silent lupdate \"unknown namespace/class\" warnings
* build: improve macro for testing -latomic requirement
* qt: English translations update
* qt: Extract translations correctly from UTF-8 formatted source
* net: Avoid calling getnameinfo when formatting IPv6 addresses in CNetAddr::ToStringIP
* net: Make IPv6ToString do zero compression as described in RFC 5952
* doc: Fix OSS-Fuzz links
* test: Fix off-by-one in mockscheduler test RPC
* scripts: test for MACHO control flow instrumentation
* build: build Boost with -fcf-protection when targeting Darwin
* fuzz: Remove incorrect float round-trip serialization test
* docs: improve make with parallel jobs description.
* refactor: Replace memset calls with array initialization
* net: use stronger AddLocal() for our I2P address
* wallet: Do not iterate a directory if having an error while accessing it
* refactor: remove redundant fOnlySafe argument
* ci: Bump cirrus fuzz CPUs to avoid timeout
* refactor: Avoid magic value of all-zeros in assumeutxo base_blockhash
* Fix assumeutxo crash due to invalid base_blockhash
* refactor: Use type-safe assumeutxo hash
* refactor: Remove unused code
* move-only: Add util/hash_type
* build: add
*~ to .gitignore
* net: initialize nMessageSize to max uint32_t instead of -1
* index: Avoid async shutdown on init error
* fuzz: Run const CScript member functions only once
* doc: Remove mention of priority estimation
* guix-attest: Avoid incomplete sigdirs with ERR traps
* guix: Skip attesting to dist-archive
* guix: Attest to inputs in inputs.SHA256SUMS
* guix: Construct $OUTDIR in ${DISTSRC}/output
* guix: Minor quoting fix in libexec/build.sh
* guix-attest: Allow skipping GPG signing with NO_SIGN
* guix-attest: Use ascii-armor signatures
* guix-attest: Only use cross-platform flags for find+xargs
* guix: Add guix-verify script
* guix: Add guix-attest script
* refactor: Replace std::bind with lambdas
* refactor: Use appropriate thread constructor
* refactor: Make TraceThread a non-template free function
* build, qt, refactor: Drop sed commands for win32-g++/qmake.conf
* fuzz: Avoid timeout in EncodeBase58
* fuzz: Avoid excessively large min fee rate in tx_pool
* fuzz: Limit max insertions in timedata fuzz test
* p2p: allow NetPermissions::ClearFlag() only with PF_ISIMPLICIT
* test: add net permissions noban/download unit test coverage
* p2p, bugfix: use NetPermissions::HasFlag() in CConnman::Bind()
* doc: Clarify that feerates are per virtual size
* scripted-diff: Clarify that feerates are per virtual size
* qt: Do not clear console prompt when font resizing
* qt, refactor: Drop redundant history cleaning in RPC console
* qt: Untie irrelevant signal-slot parameters
* refactor: Add TSA annotations to the WorkQueue class members
* refactor: Remove useless extern keyword
* qt: enable wordWrap for peers-tab detail services
* Remove user input from URI error message
* qt: Save/restore RPCConsole geometry only for window
* qt: Use template function qOverload in signal-slot connections
* refactor: feature_csv_activation.py: move tx helper functions to methods
* test: use MiniWallet for feature_csv_activation.py
* rpc: include_unsafe option for fundrawtransaction
* qt: Do not use QObject::tr plural syntax for numbers with a unit symbol
* fuzz: Remove strprintf test cases that are known to fail
* cleaned up and added missing \"include\" statements for pubkey.cpp and pubkey.h
* scripted-diff: Replace three dots with ellipsis in the UI strings
* test: Bump shellcheck version
* build: Drop pointless sed commands
* test: fee rate values that cannot be represented as sat/vB
* rpc: for sat/vB fee rates, limit ParseFixedPoint decimals to 3
* rpc: enable passing decimals to AmountFromValue, add doxygen
* test: ParseFixedPoint with 3 decimals for sat/vB fee rates
* test: type error and out of range fee rates where missing
* test: explicit fee rates with invalid amounts
* test: improve zero-value explicit fee rate coverage
* rpc/listaddressgroupings: redefine inner-most array as ARR_FIXED
* rpc/createrawtransaction: redefine addresses as OBJ_USER_KEYS
* rpc: include OBJ_USER_KEY in RPCArg constructor checks
* streams: Accept URef obj for VectorReader unserialize
* fuzz: Limit ParseISO8601DateTime fuzzing to 32-bit
* net: Clarify message header validation errors
* net: Sanitize message type for logging
* depends: Add missing -D_LIBCPP_DEBUG=1 to debug flags
* fuzz: Remove unused --enable-danger-fuzz-link-all option
* fuzz: Add WRITE_ALL_FUZZ_TARGETS_AND_ABORT
* refactor: Avoid sign-compare compiler warning in util/asmap
* test: minor fixes & improvements for files linter test
* [net processing] Add internal _RelayTransactions()
* test: use MiniWallet for p2p_blocksonly.py
* fuzz: Create a block template in tx_pool targets
* fuzz: Limit mocktime to MTP in tx_pool targets
* fuzz: Use correct variant of ConsumeRandomLengthString instead of hardcoding a maximum size
* fuzz: Allow to pass min/max to ConsumeTime
* ci: Properly pass msan cflags
* fix permissions on 00_setup_env_native_fuzz_with_msan
* validation: remove nchaintx from assumeutxo metadata
* validation: fix ActivateSnapshot to use hardcoded nChainTx
* refactor: Replace &foo[0] with foo.data()
* refactor: Avoid &foo[0] on C-Style arrays
* refactor: Use only one temporary buffer in CreateObfuscateKey
* refactor: Use CPubKey vector constructor where possible
* script: Replace address-of idiom with vector data() method
* test: add new python linter to check file names and permissions
* test: fix file permissions on various scripts
* doc: update -maxconnections config option help
* doc: update -addnode config option help
* doc: update addnode rpc help
* test: Fix feature_config_args.py intermittent issue
* doc: add OSS-Fuzz section to fuzzing.md doc
* doc: update bitcoin.conf maxconnections info
* doc: update reduce-memory.md peer connections info
* style: Add { } to multi-line if
* move-only: Move functions to blockstorage
* move-only: Move constants to blockstorage
* refactor: Move block storage globals to blockstorage
* refactor: Move pruning/reindex/importing globals to blockstorage
* doc: add -addrinfo troubleshooting section to tor.md
* test: Add missing test for empty P2WSH redeem
* test: fix off-by-ones in rpc_fundrawtransaction
* depends: Fix id_string invocations
* build: fix configuring when building depends with NO_BDB=1
* test: install lief in CI
* contrib: consolidate PIE and NX security checks
* contrib: use LIEF in PE symbol checks
* contrib: use LIEF in macOS symbol checks
* contrib: use f strings in symbol-check.py
* contrib: add PE PIE check to security checks
* contrib: use LIEF for PE security checks
* contrib: use LIEF for macOS security checks
* contrib: use f strings in security-check.py
* guix: install LIEF in Guix container
* gitian: install LIEF in gitian container
* guix: Consistently use gcc-8 for $HOST
* test: Run feature_cltv with MiniWallet
* test: Hide tx rehash in helper
* test: Remove new_tx reference
* refactor: [index] Replace deprecated char with uint8_t in serialization
* fuzz: Limit toxic test globals to their respective scope
* ci: Add msan fuzz config
* ci: Use clang-12 in msan task
* ci: Set BASE_SCRATCH_DIR early, so that it can be used in test configs
* ci: Clarify that previous_releases task is using DEBUG
* ci: Use clang in multiprocess task to avoid OOM
* ci: Enable D_GLIBCXX_DEBUG for multiprocess task
* net: add I2P seeds to chainparamsseeds
* contrib: add a few I2P seed nodes
* contrib: parse I2P addresses in generate-seeds.py
* bench: Remove duplicate constants
* test: Use throwing variant accessor
* test: Use loop to register RPCs
* fuzz: Add -fsanitize=integer suppression needed for RPC fuzzer
* build,boost: update download url.
* fuzz: Reduce maintenance requirements by allowing RPC annotations also for conditionally available RPC commands (such as wallet commands) without the fragility of #ifdef forests
* fuzz: RPC fuzzer post-merge follow-ups. Remove unused includes. Update list of fuzzed RPC commands.
* script: update REVIEWERS
* p2p: Limit m_block_inv_mutex
* net: remove unnecessary check of CNode::cs_vSend
* build: use -stdlib++-isystem with Clang 10
* guix: use Clang 10 for the macOS cross compile
* build: no longer patch threading out of ld64
* build: Xcode 12.1, macOS SDK 10.15.6
* build: native cctools 973.0.1, ld64 609
* build: Clang 10.0.1
* build: libtapi 1100.0.11
* doc: add release notes for 20867
* rpc/util: multisig: only check redeemScript size is <= 520 for P2SH
* test/functional: standardness sanity checks for P2(W)SH multisig
* script: allow up to 20 keys in wsh() descriptors
* script: match multisigs with up to MAX_PUBKEYS_PER_MULTISIG keys
* doc: Add doc/release-notes/release-notes-0.21.1.md
* doc: add indexes/coinstats/db/ to files.md
* doc: fix -coinstatsindex help, and test/rpc touchups
* doc: add coinstatsindex to bitcoin.conf
* Remove Visual Studio 2017 reference from readme
* test: resolve bug in test/functional/interface_bitcoin_cli.py - Test -getinfo with -rpcwallet=unloaded wallet returns no balances
* build: use -isysroot over --sysroot on macOS
* qt: peertableview alternating row colors
* rpc: gettxoutsetinfo rejects hash_serialized_2 for specific height
* test: Add test for coinstatsindex behavior in reorgs
* rpc: Allow gettxoutsetinfo and getblockstats for stale blocks
* index, rpc: Add use_index option for gettxoutsetinfo
* test: Test coinstatsindex robustness across restarts
* test: Add tests for block_info in gettxoutsetinfo
* rpc, index: Add verbose amounts tracking to Coinstats index
* test: add coinstatsindex getindexinfo coverage, improve current tests
* rpc: Add Coinstats index to getindexinfo
* test: Add unit test for Coinstats index
* test: Add functional test for Coinstats index
* rpc: gettxoutsetinfo can be requested for specific blockheights
* index: Coinstats index can be activated with command line flag
* index: Add Coinstats index
* refactor: Simplify ApplyStats and ApplyHash
* refactor: Pass hash_type to CoinsStats in stats object
* crypto: Make MuHash Remove method efficient
* Remove progress bar on modal overlay
* GUI/Intro: Move prune setting below explanation
* GUI/Intro: Estimate max age of backups that can be restored with pruning
* GUI/Intro: Rework UI flow to let the user set prune size in GBs
* GUI/Intro: Abstract GUI-to-option into Intro::getPrune
* GUI/Intro: Return actual prune setting from showIfNeeded
* build: adds switch for disabling random base addresses in MSVC
* test: Assert that exit code indicates failure
* test: Fix intermittent issue in p2p_segwit.py
* refactor + document coin selection strategy
* [docs] add doxygen comments to wallet code
* [docs] format existing comments as doxygen
* doc: note on SDK for macOS depends cross-compile
* [tests] Speed up p2p_segwit.py
* test: Add missing shift-base:nanobench.h suppression
* ci: Use clang-12 for asan task
* test: Speed up mempool_spend_coinbase.py
* test: Fix test cache issue
* test: Create MiniWallet.create_self_transfer
* test: Add MiniWallet.sendrawtransaction
* test: Fix intermittent issue in p2p_addr_relay.py
* test: Use self.send_addr_msg
* build: mac_alias 2.2.0
* compressor: use a prevector in compressed script serialization
* qt, refactor: Drop no longer used PeerTableModel::getRowByNodeId func
* qt, refactor: Drop no longer used PeerTableModel::sort function
* qt: Use PeerTableSortProxy for sorting peer table
* qt: Add peertablesortproxy module
* fuzz: bolster ExtractDestination(s) checks
* fuzz: Add RPC interface fuzzing. Increase fuzzing coverage from 65% to 70%.
* doc/style followups in MempoolAcceptResult
* fuzz: Ensure prevout is consensus-valid
* doc: IsSnapshotActive
* validation: prepare VerifyDB for assumeutxo
* refactor: rename active_chainstate in VerifyDB
* multiprocess: Add echoipc RPC method and test
* multiprocess: Add comments and documentation
* multiprocess: Add bitcoin-node process spawning support
* multiprocess: Add Ipc interface implementation
* multiprocess: Add Ipc and Init interface definitions
* Update libmultiprocess library
* [validation] RewindBlockIndex no longer needed
* refactor: init: mark fReset const
* test: Fix feature_notifications.py intermittent issue
* refactor: Drop CCoinControl::SetNull
* [test] Add tests for addr relay in -blocksonly mode
* [test] Add address relay tests involving outbound peers
* [test] Add tests for getaddr behavior
* [test] Extract sending an addr message into a helper
* [test] Refactor the addr relay test to prepare for new tests
* refactor, qt: Simplify SendCoinsDialog::updateCoinControlState
* net, refactor: Fix style in CConnman::StopNodes
* net: Combine two loops into one, and update comments
* net: Restrict period when cs_vNodes mutex is locked
* Move common package version code to init/common
* Move common logging start code to init/common
* Move common logging GetArgs code to init/common
* Move common logging AddArg code to init/common
* Move common sanity check code to init/common
* Move common global init code to init/common
* test: check that _all_ invalid-CLTV txs are rejected after BIP65 activation
* test: check that _all_ invalid-CLTV txs are allowed in a block pre-BIP65
* test: prepare cltv_invalidate to test all failure reasons in feature_cltv.py
* test: add tx modfication helper function in feature_cltv.py
* net: Avoid calling getnameinfo when formatting IPv4 addresses in CNetAddr::ToStringIP
* net: Add IPv4ToString (we already have IPv6ToString)
* qt: Bump transifex slug for 22.x
* build, qt: No longer need to set QT_RCC_TEST=1 for determinism
* configure: Support -f{debug,macro}-prefix-map
* refactor: Add and use EnsureConnman in rpc code
* refactor: Mark member functions const
* qt, refactor: Use better QMenu::addAction overloaded function
* qt: Do not assign Alt+ shortcuts to context menu actions
* qt: Drop menu separator that separates nothing
* qt, refactor: Make AddressBookPage::deleteAction a local variable
* Update msvc build to use Qt5.12.10 binaries.
* Add bitcoin_en.xlf intermediate translation file to the repo
* qt [experimental]: Add a translation comment and a disambiguation string
* build: Add Qt lconvert tool to depends
* build: Use XLIFF file to provide more context to Transifex translators
* cli: use C++17 std::array class template argument deduction (CTAD)
* addrinfo: raise helpfully on server error or incompatible server version
* cli: add -addrinfo command
* cli: create AddrinfoRequestHandler class
* Re-add command to install vcpkg
* doc: Fix doxygen comment silent merge conflict in descriptor.cpp
* Clean up context dependent checks in descriptor parsing
* refactor: move uncompressed-permitted logic into ParsePubkey
*
* refactor: split off subscript logic from ToStringHelper
* Account for key cache indices in subexpressions
* Make DescriptorImpl support multiple subscripts
* refactor: move population of out.scripts from ExpandHelper to MakeScripts
* Remove support for subdescriptors expanding to multiple scripts
* test: Run versionbits_sanity for all chains
* test: Address outstanding versionbits_test feedback
* test: Check that no versionbits are re-used
* Change ClearDataDirPathCache() to ArgsManager.ClearPathCache().
* Change GetBlocksDir() to ArgsManager.GetBlocksDirPath().
* scripted-diff: Modify unit tests to use the ArgsManager in the BasicTestingSetup class instead of implicitly relying on gArgs.
* scripted-diff: Replace m_args with m_local_args in getarg_tests.cpp
* BasicTestingSetup: Add ArgsManager.
* Modify \"util_datadir\" unit test to not use gArgs.
* Move GetDataDir(fNetSpecific) implementation to ArgsManager.
* Move StripRedundantLastElementsOfPath before ArgsManager class.
* remove executable flag for src/net_processing.cpp
* qt: Elide long strings in their middle in the Peers tab
* [test] check that mapFlagNames is up to date
* [test] remove unnecessary OP_1s from invalid tests
* [test] minor improvements / followups
* [test] fix bug in ExcludeIndividualFlags
* [test] remove invalid test from tx_valid.json
* update docstring in feature_csv_activation.py
* rpc: Check default value type againts argument type
* rpc: Keep default argument value in correct type
* Refactor ProcessNewBlock to reduce code duplication
* script: Add trusted key for hebasto
* rpc: Improve getblock error message for invalid data type.
* rpc/rest: Take and reuse local Chain/ChainState obj
* rpc: Remove unnecessary casting of block height
* rpc: Tidy up local references (see commit message)
* rest/rpc: Remove now-unused old Ensure functions
* scripted-diff: rest/rpc: Use renamed EnsureAny
*()
* rpc: Add renamed EnsureAny
*() functions
* rpc: Add alt Ensure
* functions acepting NodeContext
* rest: Use existing NodeContext
* rest: Pass in NodeContext to rest_block
* rpc/rawtx: Use existing NodeContext
* rpc/mining: Use existing NodeContext
* rpc/blockchain: Use existing NodeContext
* rpc/
*,rest: Add review-only assertion to EnsureChainman
* miner: Pass in previous CBlockIndex to RegenerateCommitments
* qt: Do not use QClipboard::Selection on Windows and macOS.
* test: Remove intermittently failing and not very meaningful `BOOST_CHECK` in `cnetaddr_basic`
* qa: Test default include_mempool value of gettxout
* Remove no longer used contrib/bitcoin-qt.pro from the repo
* fuzz: use ConsumeBool() instead of !ConsumeBool()
* fuzz: split FuzzedSock interface and implementation
* fuzz: make FuzzedSock::Wait() sometimes simulate an occurred event
* fuzz: set errno from FuzzedSock::Wait() if it simulates a failure
* style: remove extra white space
* Add mainnet and testnet taproot activation params
* test: Reset mocktime in the common setup
* test: Use mocktime to avoid intermittent failure
* Avoid use of low file descriptor ids (which may be in use) in FuzzedSock and StaticContentsSock
* chainparams: drop versionbits threshold to 90% for mainnnet and signet
* versionbits: simplify state transitions
* versionbits: Add explicit NEVER_ACTIVE deployments
* fuzz: test versionbits delayed activation
* tests: test versionbits delayed activation
* versionbits: Add support for delayed activation
* tests: clean up versionbits test
* tests: test ComputeBlockVersion for all deployments
* tests: pull ComputeBlockVersion test into its own function
* doc: remove boostrap info from GUIX_COMMON_FLAGS doc
* test: Fix TSan suppression
* ci: Only cache depends/sdk-sources for macos/apk task in cirrus
* Fix assumeutxo crash due to truncated file
* qt: Handle exceptions in SendCoinsDialog::sendButtonClicked slot
* qt: Handle exceptions in WalletModel::pollBalanceChanged slot
* qt: Handle exceptions in BitcoinGUI::addWallet slot
* qt: Add GUIUtil::ExceptionSafeConnect function
* qt: Add BitcoinApplication::handleNonFatalException function
* qt: Make PACKAGE_BUGREPORT link clickable
* Revert \"test: Add tsan supp for leveldb::DBImpl::DeleteObsoleteFiles\"
* test: Remove spurious double lock tsan suppressions by bumping to clang-12
* external_signer: remove ExternalSignerException
* external_signer: use const where appropriate
* wallet: remove CWallet::GetExternalSigner()
* external_signer: remove ignore_errors from Enumerate()
* refactor: unify external wallet runtime errors
* refactor: add missing includes to external signer code
* refactor: move all signer code inside ENABLE_EXTERNAL_SIGNER #ifdefs
* tests: Skip SQLite fsyncs while testing
* doc: Remove irrelevant link to GitHub
* blockstorage: [refactor] Use chainman reference where possible
* move-only: Move
*Disk functions to blockstorage
* move-only: Move AbortNode to shutdown
* move-only: Move ThreadImport to blockstorage
* refactor: Move load block thread into ChainstateManager
* refactor: add [[noreturn]] attribute where applicable
* doc: Use CONFIG_SITE instead of --prefix
* ci: Fix previous releases cache order
* rpc: add help for enumeratesigners and walletdisplayaddress
* ci: use --enable-external-signer instead of --with-boost-process
* Move external signer out of wallet module
* i2p: cancel the Accept() method if waiting on the socket errors
* Use PrecomputedTransactionData in signet check
* Treat amount<0 also as missing data for P2WPKH/P2WSH
* Make all SignatureChecker explicit about missing data
* Add MissingDataBehavior and make TransactionSignatureChecker handle it
* doc: Fix name of script guix-build
* ci: Fix macOS brew install command
* test: increase listbanned unit test coverage
* rpc: add time_remaining field to listbanned
* rpc: add ban_duration field to listbanned
* doc: improve listbanned help
* rpc: swap position of banned_until and ban_created fields
* ci: Run self-hosted ci
* ci: Make cirrus cache folders relative to cirrus base dir
* ci: Restart docker before run
* ci: [refactor] Create setting for ephemeral config in .cirrus.yml
* Ignore guix builds
* fuzz: Extend psbt fuzz target a bit
* test: Remove option to make TestChain100Setup non-deterministic
* test: Use compressed keys in TestChain100Setup
* cirrus: Use SSD cluster for speedup
* guix: Register garbage collector root for containers
* guix: Update hint messages to mention guix-clean
* guix: Record precious directories and add guix-clean
* build: Remove spaces from variable-printing rules
* Drop JSONRPCRequest constructors after #21366
* doc: Fix typos from codespell lint
* rpc: improve getnodeaddresses help
* rpc: simplify/constify getnodeaddresses code
* rpc: add network field to rpc getnodeaddresses
* Fix wrong wallet RPC context set after #21366
* build: enable -Wdocumentation if suppressing external warnings
* doc: fixup -Wdocumentation issues
* build: suppress libevent warnings if supressing external warnings
* fuzz: Fix uninitialized read in test
* wallet: refactor: dedup sqlite statement deletions
* wallet: refactor: dedup sqlite statement preparations
* Fix assumeutxo crash due to missing base_blockhash
* refactor: Prefer clean assert over UB in coinstats
* Test that signrawtx works when a signed CSV and CLTV inputs are present
* Introduce DeferringSignatureChecker and inherit with SignatureExtractor
* net: Deserialize hardcoded seeds from BIP155 blob
* contrib: Add explicit port numbers for testnet seeds
* contrib: Add a few TorV3 seed nodes
* contrib: generate-seeds.py generates output in BIP155 format
* test: make sure non-IP peers get discouraged and disconnected
* test: also check disconnect in denialofservice_tests/peer_discouragement
* test: use pointers in denialofservice_tests/peer_discouragement
* build: remove -Wdeprecated-register from NOWARN flags
* test: small cleanup in RPCNestedTests tests
* ci: increase CPU count of sanitizer job to increase memory limit
* refactor: Remove negative lock annotations from globals
* test: Document race:validation_chainstatemanager_tests suppression
* Fix a typo in guix-build output
* build: additional PKG_CHECK_MODULES calls in bitcoin_qt.m4
* build: misc doc changes in bitcoin_qt.m4
* build: set QT_
*_CFLAGS & QT_
*_LIBS in PKG_CHECK_MODULES() calls
* build: use QT_
*_LIBS rather than passing lib names
* scripted-diff: replace Qt5 with ${qt_lib_prefix} in _BITCOIN_QT_CHECK_STATIC_LIBS
* build: reorder libs in _BITCOIN_QT_CHECK_STATIC_LIBS (move-only)
* guix: Build dmg as a static binary
* depends: libdmg-hfsplus: Skip CMake RPATH patching
* guix: Remove codesign_allocate+pagestuff from unsigned tarball
* guix: Use clang-toolchain instead of clang
* guix: Fallback to local build for substitute-enabled Guix users
* guix: Add early health check for guix-daemon
* guix: More thoroughly control native toolchain
* guix: Supply --link-profile
* guix: Add troubleshooting documentation entries
* guix: Adapt guix-build to prelude, restructure hier
* guix: Remove guix-build.sh filename extension
* guix: Add source-able bash prelude and utils
* guix: Create windeploy inside distsrc-
*
* contrib: Silence git-describe when looking for tag
* guix: Use --cores instead of --max-jobs
* test: Document why no symbol names can be used for suppressions
* test: HelpExampleCliNamed and HelpExampleRpcNamed
* rpc: Add HelpExampleCliNamed and use it for `createwallet` doc
* rpc: Add HelpExampleRpcNamed
* test: Replace blanket UBSan signed integer overflow suppression for txmempool.cpp with specific suppression
* test: Add missing suppression for signed-integer-overflow:txmempool.cpp
* rpc: Fail to return undocumented return values
* build: set --build when configuring packages in depends
* Doc: Copyright: Fix embedded font file location
* wallet, rpc: update listdescriptors response format
* [doc] correct comment about ATMPW
* [doc] correct comment in chainparams
* [doc] GetBestBlock() doesn\'t do nothing
* [net] Changes to RunInactivityChecks
* test: use 327 fewer blocks in feature_nulldummy
* test, refactor: abstract the feature_nulldummy blockheight values
* script: Add explanatory comment to tc.sh
* node/ifaces: ChainImpl: Use an accessor for ChainMan
* node/ifaces: NodeImpl: Use an accessor for ChainMan
* validation: Make BlockManager::LookupBlockIndex const
* node: Avoid potential UB by asserting assumptions
* net_processing: Move comments to declarations
* node/coinstats: Replace #include with fwd-declaration
* miner: Add chainstate member to BlockAssembler
* Revert \"miner: Pass in chainstate to BlockAssembler::CreateNewBlock\"
* Revert \"scripted-diff: Invoke CreateNewBlock with chainstate\"
* Revert \"miner: Remove old CreateNewBlock w/o chainstate param\"
* rpc: document optional fields for getchaintxstats result
* doc: Merge release notes
* [net processing] Refactor MaybeSendAddr()
* [net processing] Fix overindentation in MaybeSendAddr()
* [net processing] Refactor MaybeSendAddr() - early exits
* [net processing] Change MaybeSendAddr() to take a reference
* [net processing] Extract `addr` send functionality into MaybeSendAddr()
* [net] Change addr send times fields to be guarded by new mutex
* [net processing] Only call GetTime() once in SendMessages()
* remove unused class util::Ref and its unit test
* refactor: replace util::Ref by std::any (C++17)
* util: introduce helper AnyPtr to access std::any instances
* net: add ifaddrs.h include
* build: check if -lsocket is required with
*ifaddrs
* rand: only try and use freeifaddrs if available
* ci: Bump macOS VM image to the latest version
* build: split native_cctools
* fuzz: [refactor] Use IsValidFlagCombination in signature_checker fuzz target
* fuzz: Removed unused try-catch in coins_view
* fuzz: [refactor] Use ConsumeScript in signature_checker fuzz target
* test: add I2P test for a runaway SAM proxy
* fuzz: add tests for the I2P Session public interface
* i2p: use pointers to Sock to accommodate mocking
* net: change ConnectSocketDirectly() to take a Sock argument
* net: add connect() and getsockopt() wrappers to Sock
* fuzz: avoid FuzzedSock::Recv() repeated errors with EAGAIN
* fuzz: extend FuzzedSock::Recv() to support MSG_PEEK
* fuzz: implement unimplemented FuzzedSock methods
* Add unit test coverage for our onion peer eviction protection
* Protect onion+localhost peers in ProtectEvictionCandidatesByRatio()
* Use EraseLastKElements() throughout SelectNodeToEvict()
* Add m_inbound_onion to AttemptToEvictConnection()
* Add unit tests for ProtectEvictionCandidatesByRatio()
* Use std::unordered_set instead of std::vector in IsEvicted()
* Move peer eviction tests to a separate test file
* Extract ProtectEvictionCandidatesByRatio from SelectNodeToEvict
* [net] remove fUpdateConnectionTime from FinalizeNode
* [net] remove CConnman::AddNewAddresses
* [net] remove CConnman::MarkAddressGood
* [net] remove CConnman::SetServices
* [net_processing] Keep addrman reference in PeerManager
* [net] Construct addrman outside connman
* build: Enable safe warnings for msvc builds
* rpc: deprecate `addresses` and `reqSigs` from rpc outputs
* [test] no send feefilters when txrelay is turned off
* test: remove qt byteswap compattests
* allow darkmode on macos build
* Allow icon colorization on mac os to better support dark mode
* tests: Add test for CNetAddr::ToString IPv6 address formatting (RFC 5952)
* qt: Improve URI/file handling message
* cirrus: Add missing depends_sources_cache to Android task
* cirrus: Only cache releases when needed
* ci: Bump Android cross-build to Ubuntu Focal
* ci: Build depends only once for Android build
* ci: Set DEPENDS_DIR when setting BASE_ROOT_DIR
* qt, refactor: Drop redundant setEditTriggers(NoEditTriggers) calls
* build: Remove unused header from the build system
* qt: fix issue when disabling the auto-enabled blank wallet checkbox
* test: Use deterministic chain in utxo set hash test
* test: Remove wallet dependency of utxo set hash test
* rpc: Improve gettxoutsetinfo help
* fuzz: [refactor] Use PickValue where possible
* build, qt: Fix static builds on macOS Big Sur
* Unconditionally check for fRelay field in test framework
* depends: fix Qt precompiled headers bug
* depends: disable Qt Vulkan support on Android
* CI: add Android APK build to cirrus
* CI: add Android APK build script
* Qt: add Android packaging support
* remove unnecessary newline from initWarning() argument
* build: Make Windows-specific targets available for Windows builds only
* build: Make macOS-specific targets available for macOS builds only
* test: add functional test for anchors.dat
* fuzz: cleanups for versionbits fuzzer
* build: miniupnpc 2.2.2
* fuzz: Fix tx_pool target to properly fuzz immature outpoints
* fuzz: Style fixups
* Fix wrong(1024) divisor for 1000-based prefixes
* build: Do not build unused CoreWLAN stuff in depends for macOS
* [doc] Coin: explain that IsSpent() can also mean never existed
* fuzz: Add tx_pool fuzz targets
* fuzz: Use ConsumeWeakEnum in addrman for service flags
* build: don\'t try and use -fstack-clash-protection on Windows
* contrib: Use -daemonwait in systemd init script
* util: Make Assume() usable as unary expression
* refactor: return std::nullopt instead of {}
* test: remove duplicate assertions in util_tests
* test: add ParseUInt16() test coverage
* build: Fix fuzz-cuckoocache cross-compiling for Windows with DEBUG=1
* wallet: Fix already-loading error message grammar
* validation: don\'t try to invalidate genesis block
* add functional test
* util: Handle HTTP_SERVICE_UNAVAILABLE in bitcoin-cli
* test: add missing netaddress include headers
* util: add missing braces and apply clang format to SplitHostPort()
* util: add ParseUInt16(), use it in SplitHostPort()
* p2p, refactor: pass and use uint16_t CService::port as uint16_t
* Doc: Tell howto install clang-format on Debian/Ubuntu
* style-only: Remove whitespace
* net: Simplify ProcessGetBlockData execution by removing send flag.
* log: Clarify that block request below NODE_NETWORK_LIMITED_MIN_BLOCKS disconnects
* tests: Add fuzzing harness for versionbits
* doc: Update dependencies.md with a new Qt version
* build: Cleanup libxkbcommon_postprocess_cmds
* build, qt: Drop redundant -lxcb-static flag
* build, qt: Always test plugins/subdir before adding to search paths
* bugfix: fix bech32_encode calls in gen_key_io_test_vectors.py
* Add signet support to gen_key_io_test_vectors.py
* Use Bech32m encoding for v1+ segwit addresses
* Implement Bech32m encoding/decoding
* test: Drop unused get_machine function
* test: Cleanup test files in test-{security,symbol}-check.py
* refactor: Pass PeerManagerImpl members only once
* [net processing] Don\'t pass CConnman to RelayTransactions
* [net processing] Move RelayTransaction into PeerManager
* doc: Update libnatpmp info in dependencies.md
* doc: Update zlib info in dependencies.md
* doc: revamp macOS build doc
* refactor: post Optional<> removal cleanups
* scripted-diff: remove Optional & nullopt
* doc: specify minimum HWI version
* rpc: don\'t require wallet for enumeratesigners
* Rename CoinSelectionParams::effective_fee to m_effective_feerate
* wallet: Move discard feerate fetching to CreateTransaction
* wallet: Move long term feerate setting to CreateTransaction
* wallet: Replace nFeeRateNeeded with effective_fee
* wallet: Use existing feerate instead of getting a new one
* test: give fundraw more time for test_transaction_too_large
* Always add -daemonwait to known command line arguments
* test: add a test to ensure RecvUntilTerminator() limit works
* i2p: limit the size of incoming messages
* qt: Do not translate file extensions
* refactor: reuse test string with embedded null char in util_tests
* test: add ParseUInt8() unit and fuzz test coverage
* compat: remove memcpy -> memmove backwards compatibility alias
* net: fix hSocket param in netbase.h::ConnectSocketDirectly()
* net: move Doxygen docs from netbase.cpp to netbase.h
* net: update incorrect Doxygen documentation in netbase.cpp
* Revert \"qt: Use \"fusion\" style on macOS Big Sur with old Qt\"
* Update vcpkg checkout commit.
* Add new format string placeholders for walletnotify to include relevant block information for transactions
* tests: Add fuzzing harness for LoadMempool(...) and DumpMempool(...)
* validation: Make DumpMempool(...) and LoadMempool(...) easier to test/fuzz/mock
* tests: Set errno in FuzzedFileProvider. Implement seek(..., ..., SEEK_END).
* doc: Update fuzzing docs for afl-clang-lto
* [net processing] Add ChainSyncTimeoutState default initializers
* [net processing] Remove CNodeState ctor body
* fuzz: Implement fuzzed_dns_lookup_function as lambda
* tests: Add fuzzing harness for Lookup(...)/LookupHost(...)/LookupNumeric(...)/LookupSubNet(...)
* net: Make DNS lookup code testable
* rpc: remove scantxoutset EXPERIMENTAL warning
* Remove pointer cast in CRPCTable::dumpArgMap
* refactor: Add RPC server ExecuteCommands function
* refactor: Replace JSONRPCRequest fHelp field with mode field
* scripted-diff: Drop redundant QString calls
* rpc: Properly document submitblock return value
* rpc: Properly document getblocktemplate return value
* rpc: Properly document scantxoutset return value
* rpc: Properly document gettxout return value
* ci, gitian: Drop unneeded python3-dev package for macOS builds
* contrib/init: (OpenRC) quote some unquoted variables.
* contrib/init: (OpenRC) Do not fail if both rpcuser and rpcpassword are unset.
* doc: update developer notes for removal of MakeUnique
* scripted-diff: remove MakeUnique()
* [doc] Improve comment about protected peers
* GUI: Write PSBTs to file with binary mode
* test: use fewer blocks in wallet_groups and move sync call
* test: add missing logging to wallet_groups.py
* bitcoind: Add -daemonwait option to wait for initialization
* shutdown: Use RAII TokenPipe in shutdown
* util: Add RAII TokenPipe
* build: update qt qpaint non determinism patch for 5.12.10
* build: update qt no-xlib patch for 5.12.10
* build: update qt android jni static patch for 5.12.10
* build: update qt lrelease patch for 5.12.10
* build, qt: Fix lib paths in
*.pc files
* build: disable qt SDK version checking
* build: Add QMacStyle support
* build: revert to using Qts internal zlib
* build: qt 5.12.10
* build: Add xkbcommon 0.8.4
* build: only pass -optimized-tools to qt in debug mode
* net_processing: Add review-only assertion to PeerManager
* scripted-diff: net_processing: Use existing chainman
* net_processing: Move some static functions to PeerManager
* node/ifaces: ChainImpl: Use existing NodeContext member
* node/ifaces: NodeImpl: Use existing NodeContext member
* node: Use existing NodeContext
* node/coinstats: Pass in BlockManager to GetUTXOStats
* miner: Pass in blockman to ::RegenerateCommitments
* scripted-diff: Invoke CreateNewBlock with chainstate
* miner: Pass in chainstate to BlockAssembler::CreateNewBlock
* validation: Remove extraneous LoadGenesisBlock function prototype
* qt: Fix regression with initial sorting after pr205
* [net processing] Remove unused CNode.address member
* rpc: refactor rpc wallet functions to take references instead of pointers
* rpc: remove calls to CWallet.get()
* doc: Rename fuzz seed_dir to corpus_dir
* build, qt: Fix regression introduced in #21363
* fuzz: Bump FuzzedDataProvider.h
* Use C++11 member initializer in CNodeState
* build: Small libxcb.mk improvements
* build: Clean remnants of QTBUG-34748 fix
* build, refactor: Fix indentation
* build, qt: Make Qt static libs check regardless of plugindir
* build, refactor: Rename internal _BITCOIN_QT_FIND_STATIC_PLUGINS macro
* build, qt: Refactor internal _BITCOIN_QT_CHECK_STATIC_PLUGINS macro
* wallet: Mark replaced tx to not be in the mempool anymore
* Add a test that selects too large if BnB is used
* Fail if maximum weight is too large
* Have CalculateMaximumSignedTxSize also compute tx weight
* qt test: Don\'t bind to regtest port
* fuzz: fix gcc Woverloaded-virtual build warnings
* doc: add signet to doc/bitcoin-conf.md
* doc: add signet to share/examples/bitcoin.conf
* Hoist repeated translated strings to RPCConsole struct members
* RPCConsole::updateDetailWidget: convert strings to translated strings
* net: Replace enum CConnMan::NumConnections with enum class ConnectionDirection
* qt, refactor: Use enum type as switch argument in TransactionTableModel
* qt, refactor: Use enum type as switch argument in PeerTableModel
* qt, refactor: Use enum type as switch argument in BanTableModel
* qt, refactor: Use enum type as switch argument in AddressTableModel
* tests: check never active versionbits
* tests: more helpful errors for failing versionbits tests
* build: compile libnatpmp with -DNATPMP_STATICLIB on Windows
* build: use newer source for libnatpmp
* qt: Make warning label look clickable
* test: bring p2p_leak.py up to date.
* fuzz: Avoid -Wreturn-type warnings
* Correction for VerifyTaprootCommitment comments
* build, doc: Drop libbz2-dev from macOS cross-compiling dependencies
* build, doc: Drop libcap-dev from macOS cross-compiling dependencies
* guix: Remove libcap from manifest
* guix: Update darwin native packages dependencies
* validation: CVerifyDB::VerifyDB: Use locking annotation
* validation: Use existing chain member in CChainState::LoadGenesisBlock
* validation: Use existing chain member in CChainState::AcceptBlock
* validation: Pass in chain to FindBlockPos+SaveBlockToDisk
* validation: Use
*this in CChainState::ActivateBestChainStep
* validation: Pass in chainstate to CTxMemPool::check
* validation: Use
*this in CChainState::InvalidateBlock
* validation: Move LoadBlockIndexDB to CChainState
* validation: Move invalid block handling to CChainState
* validation: Pass in chainstate to CVerifyDB::VerifyDB
* validation: Pass in chainstate to UpdateTip
* validation: Remove global ::{{Precious,Invalidate}Block,ResetBlockFailureFlags}
* validation: Remove global ::LoadGenesisBlock
* validation: Check chain tip is non-null in CheckFinalTx
* Move MakeNoLogFileContext to common libtest_util, and use it in bench
* fuzz: Add missing include (test/util/setup_common.h)
* Make tx relay data structure use std::chrono types
* Make all Poisson delays use std::chrono types
* Convert block/header sync timeouts to std::chrono types
* Change all ping times to std::chrono types
* txorphanage: comment improvements
* net_processing: move AddToCompactExtraTransactions into PeerManagerImpl
* scripted-diff: Update txorphanage naming convention
* txorphanage: Move functions and data into class
* txorphanage: Extract EraseOrphansForBlock
* net_processing: drop AddOrphanTx
* denialofservices_tests: check txorphanage\'s AddTx
* txorphanage: Extract OrphanageAddTx
* txorphanage: Extract GetOrphanTx
* txorphanage: Extract HaveOrphanTx
* txorphanage: Extract AddChildrenToWorkSet
* txorphanage: Add lock annotations
* txorphanage: Pass uint256 by reference instead of value
* move-only: Add txorphanage module
* test: check that getblockfilter RPC fails without block filter index
* util: Avoid invalid integer negation in ValueFromAmount: make ValueFromAmount(const CAmount& n) well-defined also when n is std::numeric_limits::min()
* util: Avoid invalid integer negation in FormatMoney: make FormatMoney(const CAmount& n) well-defined also when n is std::numeric_limits::min()
* cli: update -netinfo help doc following the merge of 882ce251
* cli: small -netinfo simplification and performance improvement
* cli: improve -netinfo invalid argument error message
* cli: warn in help that -netinfo is not intended to be a stable API
* cli: enable -netinfo help to run without a remote server
* fuzz: Add FUZZED_SOCKET_FAKE_LATENCY mode to FuzzedSock to allow for fuzzing timeout logic
* fuzz: Add fuzzing harness for Socks5(...)
* build: fix libnatpmp macos cross compile
* doc: Update build instructions for Fedora
* tests: Add fuzzing harness for TorController
* torcontrol: Move TorControlReply, TorControlConnection and TorController to improve testability
* doc: install qt5 when building on macOS
* build: Fix Qt processing of configure script for depends with DEBUG=1
* build: Make AM_CONDITIONAL([ENABLE_EXTERNAL_SIGNER]) unconditional
* build, refactor: Fix indentation for if..then..fi
* build: set Unicode true for NSIS installer
* Make .gitignore ignore src/test/fuzz/fuzz.exe
* doc: Remove outdated comment
* net: Do not skip the I2P network from GetNetworkNames()
* net: recognize I2P from ParseNetwork() so that -onlynet=i2p works
* net: accept incoming I2P connections from CConnman
* net: make outgoing I2P connections from CConnman
* net: add I2P to the reachability map
* init: introduce I2P connectivity options
* net: implement the necessary parts of the I2P SAM protocol
* net: extend Sock with a method to check whether connected
* net: extend Sock with methods for robust send & read until terminator
* net: extend Sock::Wait() to report a timeout
* net: dedup MSG_NOSIGNAL and MSG_DONTWAIT definitions
* net: move the constant maxWait out of InterruptibleRecv()
* net: extend CNetAddr::SetSpecial() to support I2P
* net: avoid unnecessary GetBindAddress() call
* net: isolate the protocol-agnostic part of CConnman::AcceptConnection()
* net: get the bind address earlier in CConnman::AcceptConnection()
* net: check for invalid socket earlier in CConnman::AcceptConnection()
* util: fix WriteBinaryFile() claiming success even if error occurred
* util: fix ReadBinaryFile() returning partial contents
* util: extract {Read,Write}BinaryFile() to its own files
* zmq test: fix sync-up by matching notification to generated block
* lint: Fix spelling errors in comments
* guix: Bump glibc and linux-headers
* guix: Rebase on 95aca2991b (1.2.0-12.dffc918)
* guix, doc: Update default HOSTS value
* Add benchmark to write JSON into a string
* guix: Add curl to required tool list
* doc: release note for changed {sign,verify}message error codes
* test: check parameter validity in rpc_signmessage.py
* rpc: fix {sign,message}verify RPC errors for invalid address/signature
* build: Bump minimum Qt version to 5.9.5
* test: remove unneeded node from feature_blockfilterindex_prune.py
* test: improve assertions in feature_blockfilterindex_prune.py
* guix: Passthrough SDK_PATH into container
* wallet: listdescriptors uses normalized descriptor form
* gui: add \"Last Block\" (CNodeStats::nLastBlockTime) to peer details
* gui: add \"Last Tx\" (CNodeStats::nLastTXTime) to peer details
* qt: add RPCConsole::TimeDurationField helper, call systime only once
* test: Avoid connecting to real network when running tests
* test: Assume node is running in subtests
* scripted-diff: Rename MakeFuzzingContext to MakeNoLogFileContext
* scripted-diff: Rename PROVIDE_MAIN_FUNCTION -> PROVIDE_FUZZ_MAIN_FUNCTION
* test: Intermittent issue in feature_blockfilterindex_prune
* test: Speed up rpc_blockchain.py by removing miniwallet.generate()
* test: Change address type from P2PKH to P2WSH in rpc_blockchain
* test: Cache 25 mature coins for ADDRESS_BCRT1_P2WSH_OP_TRUE
* test: Remove unused bug workaround
* test: Start only the number of nodes that are needed
* qt: Rename \"Edit label\" to \"Edit address label\"
* Revert \"qt: Remove Transactionview Edit Label Action\"
* qt: Disable requests context menu actions when appropriate
* qt: Prevent the main window popup menu
* guix: Explicitly set umask in build container
* build, doc: Fix configure script output indentation and typos
* test: Replace accidentally placed bit-OR with logical-OR
* [refactor] txmempool: split epoch logic into class
* wallet: fix doc typo in signer option
* build: make HAVE_O_CLOEXEC available outside LevelDB (bugfix)
* init: only use pipe2 if availabile, check in configure
* rpc, test: document {previous,next}blockhash as optional
* doc: add external-signer.md
* rpc: send: support external signer
* rpc: signerdisplayaddress
* wallet: ExternalSigner: add GetDescriptors method
* wallet: add GetExternalSigner()
* test: external_signer wallet flag is immutable
* rpc: add external_signer option to createwallet
* rpc: signer: add enumeratesigners to list external signers
* rpc: add external signer RPC files
* wallet: add ExternalSignerScriptPubKeyMan
* wallet: add external_signer flag
* test: add external signer test
* wallet: add -signer argument for external signer command
* test: framework: add skip_if_no_external_signer
* configure: add --enable-external-signer
* log: Clarify log message when file does not exist
* assumptions: check C++17 assumption with MSVC
* assumptions: assume a C++17 compiler
* Verify that all validation flags are backward compatible
* [test] check verification flags are minimal/maximal
* [test] Check for invalid flag combinations
* [refactor] use CheckTxScripts, TrimFlags, FillFlags
* Apply minimal validation flags to tx_invalid tests
* [test] add BADTX setting for invalid txns that fail CheckTransaction
* [test] fix two witness tests in invalid tests with empty vout
* Apply maximal validation flags to tx_valid tests
* [test] fix CSV test missing OP_ADD
* [test] remove unnecessary OP_1s from CSV and CLTV tests
* qt: Add Copy Address Action to Payment Requests
* doc: Clarify that squashing should happen before review
* guix: only download sources for hosts being built
* guix: Update conservative space requirements
* guix: Add support for powerpc64{,le}
* gui: Add monospaced font settings
* qt: Choose monospaced font in C++ code rather in `
*.ui` file
* qt: Make GUIUtil::fixedPitchFont aware of embedded font
* gui: Add Roboto Mono font
* contrib: run test-symbol check for RISCV
* [doc] Add a note about where lock annotations should go.
* [validation] Move the lock annotation from function definition to declaration
* net: Log to net debug in MaybeDiscourageAndDisconnect except for noban and manual peers
* qt: Remove Transactionview Edit Label Action
* gui: display BIP152 high bandwidth relay in peer details
* gui: display fRelayTxes in peer details
* qt: Save/restore recentRequestsView table column sizes
* qt: Move recentRequestsView properties settings to constructor
* qt: Save/restore TransactionView table column sizes
* qt: Move transactionView properties settings to constructor
* qt, refactor: Drop intermediate assignment
* qt: Drop buggy TableViewLastColumnResizingFixer class
* peers-tab: bug fix right panel toggle
* gui: update to \"Direction/Type\" peer details name/tooltip
* gui: add \"Type\" column to Peers main window
* gui: allow ConnectionTypeToQString to prepend direction optionally
* ci: Avoid invoking curl on the host
* style-only: Make AcceptToMemoryPool signature readable
* style-only: Make CheckSequenceLock signature readable
* validation: Use
*this in CChainState::LoadMempool
* validation: Pass in chainstate to UpdateMempoolForReorg
* validation: Pass in chainstate to CTxMemPool::removeForReorg
* validation: Pass in chain to ::TestLockPointValidity
* tree-wide: Fix erroneous AcceptToMemoryPool replacements
* validation: Remove old AcceptToMemoryPool w/o chainstate param
* scripted-diff: Invoke ::AcceptToMemoryPool with chainstate
* validation: Pass in chainstate to ::AcceptToMemoryPool
* validation: Pass in chainstate to ::LoadMempool
* validation: Pass in chainstate to AcceptToMemoryPoolWithTime
* validation: Add chainstate member to MemPoolAccept
* validation: Pass in chainstate to ::CheckSequenceLocks
* validation: Remove old CheckFinalTx w/o chain tip param
* scripted-diff: Invoke ::CheckFinalTx with chain tip
* validation: Pass in chain tip to ::CheckFinalTx
* validation: Pass in coins tip to CheckInputsFromMempoolAndCache
* validation: Pass in coins cache to ::LimitMempoolSize
* guix: Jump forwards in time-machine and adapt
* guix: Supply --keep-failed for debugging
* test: Move P2WSH_OP_TRUE to shared test library
* [net] Move checks from GetLocalAddrForPeer to caller
* [net] Change AdvertiseLocal to GetLocalAddrForPeer
* Fix fuzz binary compilation under windows
* [tools] Allow argument/parameter bin packing in clang-format
* Avoid comparision of integers with different signs
* doc: Rework internal and external links
* build: actually stop configure if Boost isn\'t available
* build: explicitly install libboost-dev package
* test: Fix NODE_NETWORK_LIMITED_MIN_BLOCKS disconnection
* test: Make test actually test something
* test: pep8 touched test
* test: disallow sendtoaddress/sendmany when private keys disabled
* Disallow sendtoaddress and sendmany when private keys disabled
* log: Prefix log messages with function name if -logsourcelocations is set
* [test] Check user agent string from test framework connections
* [test] Add P2P_SERVICES to p2p.py
* [test] Move MY_RELAY to p2p.py
* [test] Move MY_SUBVERSION to p2p.py
* [test] Move MY_VERSION to p2p.py
* [test] Move MIN_VERSION_SUPPORTED to p2p.py
* tests: Test getaddressinfo parent_desc
* rpc: Add parent descriptor to getaddressinfo output
* wallet: Add GetDescriptorString to DescriptorScriptPubKeyMan
* descriptors: Add ToNormalizedString and tests
* Add \"index/blockfilterindex -> validation -> index/blockfilterindex\" to expected circular dependencies
* Add functional test for blockfilterindex in prune-mode
* Add debug startup parameter -fastprune for more effective pruning tests
* Avoid pruning below the blockfilterindex sync height
* Avoid accessing nullpointer in BaseIndex::GetSummary()
* Allow blockfilter in conjunction with prune
* refactor: replace sizeof(a)/sizeof(a[0]) by std::size (C++17)
* refactor: init vectors via std::{begin,end} to avoid pointer arithmetic
* refactor: iterate arrays via C++11 range-based for loops if idx is not needed
* util: Use std::chrono for time getters
* time: add runtime sanity check
* build: remove mostly pointless BOOST_PROCESS macro
* cli: Treat high detail levels as the maximum in -netinfo
* [doc / util] Use comments to clarify time unit for int64_t type.
* [util] Introduce a SetMockTime that takes chrono time
* [util] Change GetMockTime to return chrono type instead of int
* [test] Throw error instead of segfaulting in failure scenario
* [test] Introduce a unit test helper to create a valid mempool transaction.
* scripted-diff: Remove shadowing lock annotations
* doc: Add instructions on how to fuzz the P2P layer using Honggfuzz NetDriver
* test: store subversion (user agent) as string in msg_version
* guix: Passthrough BASE_CACHE into container
* test: fix sign comparison warning in socket tests
* doc: remove potentially confusing ChainstateManager comment
* test: Add tests with maleated snapshot data
* tests: add snapshot activation test
* tests: add deterministic chain generation unittest fixture
* move-onlyish: break out CreateUTXOSnapshot from dumptxoutset
* txdb: don\'t reset during in-memory cache resize
* simplify ChainstateManager::SnapshotBlockhash() return semantics
* chainparams: add allowed assumeutxo values
* zmq test: speedup test by whitelisting peers (immediate tx relay)
* zmq test: fix flakiness by using more robust sync method
* zmq test: accept arbitrary sequence start number in ZMQSubscriber
* zmq test: dedup message reception handling in ZMQSubscriber
* scripted-diff: rename ping members
* [net processing] Move ping data fields to net processing
* [net processing] Move ping timeout logic to net processing
* [net processing] Move send ping message logic into function
* [net] Add RunInactivityChecks()
* [net processing] Add Peer& arg to MaybeDiscourageAndDisconnect()
* fuzz: Remove expensive and redundant muhash from crypto fuzz target
* init: use GetNetworkNames() in -onlynet help
* rpc: use GetNetworkNames() in getnetworkinfo and getpeerinfo helps
* net: create GetNetworkNames()
* net: update NET_UNROUTABLE to not_publicly_routable in GetNetworkName()
* net: remove CNode::m_inbound_onion defaults for explicitness
* net: make CNode::m_inbound_onion public, drop getter, update tests
* Re-add dead code detection
* test: remove unused function xor_bytes
* net_processing: simplify MaybeSetPeerAsAnnouncingHeaderAndIDs args
* net_processing: move MaybeSetPeerAsAnnouncingHeadersAndIDs into PeerManagerImpl
* net_processing: simplify ProcessGetData and FindTxForGetData args
* net_processing: move FindTxForGetData and ProcessGetData to PeerManagerImpl
* net_processing: simplify PeerManageImpl method args
* net_processing: move MarkBlockAs
*, TipMayBeStale, FindNextBlocksToDL to PeerManagerImpl
* net_processing: simplify AlreadyHaveTx args
* net_processing: move AlreadyHaveTx into PeerManageImpl
* net_processing: move some globals into PeerManagerImpl
* depends: Include GUIX_ENVIRONMENT in id string
* depends: Improve id string robustness
* build: Proper quoting for var printing targets
* [docs] Update developer notes to discourage very long lines
* doc: Guix is shipped in Debian and Ubuntu
* wallet: load flags before everything else
* [test] Use mocktime in test_seed_peers()
* [refactor] Correct log message in net.cpp
* [p2p] No delay in adding fixed seeds if -dnsseed=0 and peers.dat is empty. Add -fixedseeds arg.
* ci: remove boost thread installation
* build: don\'t build or use Boost Thread
* refactor: replace Boost shared_mutex with std shared_mutex in sigcache
* refactor: replace Boost shared_mutex with std shared_mutex in cuckoocache tests
* build: consolidate reduced export checks
* build: add building libconsensus to end-of-configure output
* build: remove ax_gcc_func_attribute macro
* build: remove AX_GCC_FUNC_ATTRIBUTE test for dllimport
* build: test for __declspec(dllexport) in configure
* build: remove duplicate visibility attribute detection
* test: Add test for deterministic UTXO set hash results
* test: Add test for gettxoutsetinfo RPC with MuHash
* rpc: Add hash_type MUHASH to gettxoutsetinfo
* refactor: Separate hash and stats calculation in coinstats
* refactor: Improve encapsulation between MuHash3072 and Num3072
* log: Move \"Pre-allocating up to position 0x[...] in [...].dat\" log message to debug category
* log: Move \"Leaving block file [...]: [...]\" log message to debug category
* fuzz: version handshake
* [refactor] improve style for touched code
* [refactor] const ATMPArgs and non-const Workspace
* [refactor] return MempoolAcceptResult
* [refactor] clean up logic in testmempoolaccept
* test: add Sock unit tests
* style: rename hSocket to sock
* net: use Sock in InterruptibleRecv() and Socks5()
* net: add RAII socket and use it instead of bare SOCKET
* net: move CloseSocket() from netbase to util/sock
* net: move MillisToTimeval() from netbase to util/time
* util: Disallow negative mocktime
* net: Avoid UBSan warning in ProcessMessage(...)
* Use -Wswitch for TxoutType where possible
* test: Add missing script_standard_Solver_success cases
* fuzz: Fail if message type is not fuzzed
* fuzz: Count message type fuzzers before main()
* fuzz: Disable shuffle when merge=1
* doc: Fixup docs in fuzz/script_assets_test_minimizer.cpp
* fuzz: Hide script_assets_test_minimizer
* script: Make LXC container size suitable for gitian builds
* Deduplicate some block-to-JSON code.
* Add EditorConfig file.
* ci: Re-run wine tests once if they fail
* Change BOOST_CHECK to BOOST_CHECK_EQUAL to see mismatched values when a check fails.
* ci: Properly bump to focal for win cross build
* Introduce GetUniquePath(base) helper method to replace boost::filesystem::unique_path() which is not available in std::filesystem.
* test: remove unnecessary assignment in bdb
* [addrman] Don\'t repeat \"Bucketing method was updated\" log multiple times
* [addrman] Improve serialization comments
* [addrman] Improve variable naming/code style of touched code.
* [addrman] Don\'t rebucket new table entries unnecessarily
* [addrman] Rename asmap version to asmap checksum
* [addrman] Improve variable naming/code style of touched code.
* [addrman] Fix new table bucketing during unserialization
* ci: use Ubuntu Focal for macOS cross build
* doc: Replace tabs for spaces
* test: remove assert_blockchain_height
* build: Disable --disable-fuzz-binary for guix builds
* build: Disable --disable-fuzz-binary for gitian builds
* test: Fix Windows cross build
* rpc: Return total fee in mempool
* test: remove type: comments in favour of actual annotations
* gitian: remove execstack workaround for ricv64 & powerpc64le
* build: use focal in gitian descriptors
* test: fix timeout decrease in feature_assumevalid
* build: build fuzz tests by default.
* build: more robustly check for fcf-protection support
* fix the unreachable code at feature_taproot
* docs: correctly identify script type
* gui: display plain \"Inbound\" in peer details
* fuzz: Avoid extraneous copy of input data, using Span<>
* netinfo: display only outbound block relay counts
* netinfo: add i2p network
* netinfo: add bip152 high-bandwidth to/from fields
* netinfo: display manual peers count
* netinfo: update to use peer connection types
* netinfo: add ConnectionTypeForNetinfo member helper function
* tests: Disable bdb dump test when no bdb
* Fix wallet_send.py wallet setup to work with descriptors
* Require legacy wallet for wallet_upgradewallet.py
* Explicitly mark legacy wallet tests as such
* Setup wallets for interface_zmq.py
* Use MiniWallet in rpc_net.py
* Setup wallets for interface_bitcoin_cli.py
* Setup wallets with descriptors for feature_notifications
* Have feature_filelock.py test both bdb and sqlite, depending on compiled
* Disable upgrades tests that require BDB if BDB is not compiled
* Disable wallet_descriptor.py bdb format check if BDB is not compiled
* tests: Don\'t make any wallets unless wallet is required
* Skip legacy wallet reliant tests if BDB is not compiled
* tests: Set descriptors default based on compilation
* doc: refer to BIPs 339/155 in feature negotiation
* [doc] clarify -peertimeout and -timeout descriptions
* fuzz: Configure check for main function (take 2)
* refactor: Treat ArgsManager::Flags as uint32_t explicitly
* scripted-diff: Remove setup_clean_chain if default is not changed
* doc: Improve setup_clean_chain documentation
* validation: Guard all chainstates with cs_main
* util: Add ArgsManager::GetCommand() and use it in bitcoin-wallet
* refactor: Move all command dependend checks to ExecuteWalletToolFunc
* test: Add tests
* wallet: [refactor] Pass ArgsManager to WalletAppInit
* build: make macOS HOST in download-osx generic
* doc: More precise -debug and -debugexclude doc
* Add documentation to contrib folder
* Add Message Capture Test
* Add capture parser
* Call CaptureMessage at appropriate locations
* Add CaptureMessage
* Clean PushMessage and ProcessMessages
* Drop boost/preprocessor dependencies
* refactor: Move STRINGIZE macro to macros.h
* build: Add -Werror=mismatched-tags
* Fix -Wmismatched-tags warnings
* Remove redundant MakeUCharSpan wrappers
* Remove CDataStream::Init in favor of C++11 member initialization
* Treat CDataStream bytes as uint8_t
* refactor: Drop CDataStream constructors in favor of one taking a Span of bytes
* Remove unused CDataStream methods
* refactor: remove boost::thread_group usage
* style-only: Remove redundant sentence in ActivateBestChain comment
* style-only: Make TestBlockValidity signature readable
* validation: Use accessible chainstate in ChainstateManager::ProcessNewBlock
* validation: Use existing chainstate in ChainstateManager::ProcessNewBlockHeaders
* validation: Move LoadExternalBlockFile to CChainState
* validation: Remove global ::ActivateBestChain
* validation: Pass in chainstate to ::NotifyHeaderTip
* validation: Pass in chainstate to TestBlockValidity
* validation: Make CChainState.m_blockman public
* validation: Pass in blockman to ContextualCheckBlockHeader
* validation: Move GetLastCheckpoint to BlockManager
* validation: Move GetSpendHeight to BlockManager
* validation: Move FindForkInGlobalIndex to BlockManager
* validation: Remove global LookupBlockIndex
* scripted-diff: Use BlockManager::LookupBlockIndex
* validation: Move LookupBlockIndex to BlockManager
* validation: Guard the active_chainstate with cs_main
* rpc: document RPC_TRANSACTION_ALREADY_IN_CHAIN exception
* validation: remove redundant check on pindex
* Rewrite OutputGroups to be clearer and to use scriptPubKeys
* Explicitly filter out partial groups when we don\'t want them
* Move OutputGroup positive only filtering into Insert
* Move EligibleForSpending into GroupOutputs
* Move fee setting of OutputGroup to Insert
* Move GroupOutputs into SelectCoinsMinConf
* Remove OutputGroup non-default constructors
* Change type definitions for \"chain\" and \"setup_clean_chain\" from type comments to Python 3.6+ types. Additionally, set type for \"nodes\".
* fuzz: Avoid designated initialization (C++20) in fuzz tests
* contrib: remove verify.sh
* contrib: binary verification script verify.sh rewritten in python
* net_processing: log txrelay flag from version message
* net: use peer=N instead of from=N in debug log
* net_processing: additional debug logging for ignored messages
* net: make debug logging conditional on -debug=net
* net, net_processing: log disconnect reasons with -debug=net
* ci: Fuzz with integer sanitizer
* Improve gui/src/qt README.md
* bitcoin-cli: Correct docs (no \"generatenewaddress\" exists)
* gitian-linux: Extend noexec-stack workaround to powerpc
* gitian-linux: Build binaries for 64-bit POWER
* gitian: Properly quote arguments in wrappers
* Support glibc-back-compat on 64-bit POWER
* rpc: Remove duplicate name and argNames from CRPCCommand
* rpc: Use RPCHelpMan for check-rpc-mappings linter
* rpc: [refactor] Use concise C++11 code in CRPCConvertTable constructor
* Fix docker args conditional
* fuzz: Avoid initializing version to less than MIN_PEER_PROTO_VERSION
* fuzz: move-only FillNode implementation to cpp file
* scripted-diff: Remove unused \"What\'s This\" button in dialogs on Windows
* qt: Add flags to prevent a \"What\'s This\" button on Windows OS
* util: Log static plugins meta data and style
* qt: Use \"fusion\" style on macOS Big Sur with old Qt
* wallet, rpc: add listdescriptors command
* doc: update ConnectionType Doxygen documentation
* gui: improve markup handling of connection type tooltip
* gui: return inbound {full, block} relay type in peer details
* rpc: Add specific error code for \"wallet already loaded\"
* doc: update tor.md manual config, move after automatic config
* doc: update/improve automatic tor section of tor.md
* doc: update -proxy, -onion and -onlynet info in tor.md
* doc: update -onlynet help in src/init.cpp
* Add include for std::bind.
* qt: drop workaround for QTBUG-42503 which was fixed in Qt 5.5.0
* Add information to \"Confirm fee bump\" window
* fuzz: Add UBSan suppressions needed for fuzz tests to not warn under -fsanitize=integer
* fuzz: Avoid -fsanitize=integer warnings in fuzzing harnesses
* test: Work around libFuzzer deadlock
* raise helpMessageDialog
* refactor: remove straggling boost::mutex usage
* doc: Add developer documentation to isminetype
* Better error messages for invalid addresses
* refactor: Drop boost::thread stuff in CCheckQueue
* bench: Use CCheckQueue local thread pool
* test: Use CCheckQueue local thread pool
* Add local thread pool to CCheckQueue
* refactor: Use member initializers in CCheckQueue
* Fix BlockToJsonVerbose benchmark
* gitian-keys: Add signer aliases, some historical keys
* gitian-keys: add CoinForensics key
* [net] Cleanup InactivityChecks() and add commenting about time
* [net] InactivityCheck() takes a CNode reference
* doc: add xorriso to macOS depends packages
* zmq: deduplicate \'sequence\' publisher message creation/sending
* guix: Fix typo
* guix: README: Add darwin HOSTS entry
* guix: Check for macOS SDK before building anything
* guix: Set ZERO_AR_DATE for darwin build determinism
* build: Make xorrisofs reproducible with -volume_date
* guix: Add support for darwin builds
* build: Add var printing target to src/Makefile.am
* Fix MSVC build after gui#176
* qt: Stop the effect of hidden widgets on the size of QStackedWidget
* qt: Fix TxViewDelegate layout
* qt: Add TransactionOverviewWidget class
* qt: Use layout manager for Create Wallet dialog
* Replace fs::absolute calls with AbsPathJoin calls
* test: Clear forced -walletdir setting after wallet init_tests
* test: Change feature_config_args.py not to rely on strange regtest=0 behavior
* locks: Annotate CTxMemPool::check to require cs_main
* fuzz: Initialize a full TestingSetup where appropriate
* fuzz: Consolidate fuzzing TestingSetup initialization
* zmq test: deduplicate test setup code (node restart, topics subscription)
* wallet: Add BerkeleyDB version sanity check at init time
* lint: Skip whitespace lint for guix patches
* guix: Make nsis reproducible by respecting SOURCE-DATE-EPOCH
* Remove deprecated bumpfee behavior
* contrib: embed C++11 patch in install_db4.sh
* tracing: add tracing framework
* build: detect sys/sdt.h for eBPF tracing
* gitian: use signapple to apply the MacOS code signature
* gitian: install signapple in gitian-osx-signer.yml
* doc: Fix systemd spelling and link to doc/init.md
* script: Add Documentation key to bitcoind.service
* script: Improve robustness of bitcoind.service on startup
* test: Fix get_previous_releases.py for aarch64
* build: improve macro for testing -latomic requirement
* add std::atomic include to bitcoin-util.cpp
* build: fix RELOC_SECTION security check for bitcoin-util
* Fix 0.21.0 release note to specify correct option BIP 157 support
* rpc: Return wtxid from testmempoolaccept
* fuzz: Use mocktime in process_message
* fuzz targets
* [doc] for CheckInputsFromMempoolAndCache
* lock annotations for MemPoolAccept functions
* fuzz: Introduce CallOneOf helper to replace switch-case
* doc: Add historic 0.21.0 release notes
* Bugfix: GUI: Restore SendConfirmationDialog button default to \"Yes\"
* doc, rpc: add missing signet mentions in network name lists
* scripted-diff: Fix typo in stub manual pages
* doc: Add manual page generation for bitcoin-util
* net_processing: move Peer definition to .cpp
* net_processing: move PeerManagerImpl into cpp file
* net_processing: split PeerManager into interface and implementation classes
* net_processing: make more of PeerManager private
* net, net_processing: move NetEventsInterface method docs to net.h
* Replace KeyIDHasher with SaltedSipHasher
* Add generic SaltedSipHasher
* Move Hashers to util/hasher.{cpp/h}
* contrib/signet: Document miner script in README.md
* contrib/signet: Add script for generating a signet chain
* Add bitcoin-util command line utility
* rpc: allow getblocktemplate for test chains when unconnected or in IBD
* rpc: update getblocktemplate with signet rule, include signet_challenge
* guix: Print build params inside/outside of container
* guix: Move DISTSRC determination to guix-build.sh
* guix: Move OUTDIR determination+creation to guix-build.sh
* guix: Add more sanity checks to guix-build.sh
* guix: Add section headings to guix-build.sh
* genbuild: Specify rev-parse length
* docs: Point to contrib/guix/README.md in doc/guix.md
* guix: Small updates to README wording
* guix: Update HOSTS README entry for new architectures
* guix: Remove README development environment section
* guix: Add ADDITIONAL_GUIX_{COMMON,TIMEMACHINE}_FLAGS options
* guix: Add SUBSTITUTE_URLS option
* guix: Make guix honor MAX_JOBS setting
* sync: Use decltype(auto) return type for WITH_LOCK
* [test] Test the add_outbound_p2p_connection functionality
* [test] P2PBlocksOnly - Test block-relay-only connections.
* [test/refactor] P2PBlocksOnly - Extract transaction violation test into helper.
* [test/refactor] P2PBlocksOnly - simplify transaction creation using blocktool helper.
* [test] Add test framework support to create outbound connections.
* [rpc/net] Introduce addconnection to test outbounds & blockrelay
* refactor: Use C++17 std::array deduction for ALL_FEE_ESTIMATE_HORIZONS
* refactor: Use C++17 std::array deduction for OUTPUT_TYPES
* refactor, net: Increase CNode data member encapsulation
* refactor, move-only: Relocate CNode private members
* test: add test for banning of non-IP addresses
* net: allow CSubNet of non-IP networks
* qt, refactor: Drop no longer used PeerTableModel::getNodeStats function
* qt: Use PeerTableModel::StatsRole
* qt: Add PeerTableModel::StatsRole
* test: Replace getmempoolentry with testmempoolaccept in MiniWallet
* Replace boost::variant with std::variant
* net: Remove unused cs_feeFilter
* rpc: move getpeerinfo connection_type help to correct place
* gui: improve connection type tooltip
* gui: replace Direction with Connection Type in peer details
* gui: create GUIUtil::ConnectionTypeToQString utility function
* fuzz: net permission flags in net processing
* doc: Add explicit macdeployqtplus dependencies install step
* Update \'Secure string handling\'
* Expose integral m_conn_type in CNodeStats, remove m_conn_type_string
* fuzz: Add missing muhash registration
* test: run mempool_compatibility.py even with wallet disabled
* depends: Add comment about cache invalidation
* depends: Fully determine path for darwin cctools
* depends: Fully determine path for darwin_{CC,CXX}
* depends: Quote to prevent word splitting in config.site
* depends: Remove -fuse-ld line
* depends: Pin clang search paths for darwin host
* depends: Delay expansion of per-package vars
* util: Check for file being NULL in DirectoryCommit
* Fix possible data race when committing block files
* util: Introduce DirectoryCommit commit function to sync a directory
* util.h: Document FileCommit function
* util: Prefer Mac-specific F_FULLSYNC over fdatasync in FileCommit
* util: Refactor FileCommit from an #if sequence nested in #else, to a sequence of #elif
* doc: Add release notes
* doc: Add libnatpmp stuff
* ci: Add libnatpmp-dev package to some builds
* gui: Add NAT-PMP network option
* net: Add -natpmp command line option
* net: Add NAT-PMP to port mapping loop
* net: Add libnatpmp support
* gui: Apply port mapping changes on dialog exit
* scripted-diff: Rename UPnP stuff
* net: Add flags for port mapping protocols
* net: Keep trying to use UPnP when -upnp=1
* refactor: Replace magic number with named constant
* refactor: Move port mapping code to its own module
* test: Change MuHash Python implementation to match cpp version again
* fuzz: Add MuHash consistency fuzz test
* test: Add MuHash3072 fuzz test
* bench: Add Muhash benchmarks
* test: Add MuHash3072 unit tests
* crypto: Add MuHash3072 implementation
* crypto: Add Num3072 implementation
* build: Check for 128 bit integer support
* fuzz: Use ConsumeWeakEnum for ServiceFlags
* fuzz: Add ConsumeWeakEnum helper, Extract ALL_NET_PERMISSION_FLAGS
* fuzz: [refactor] Extract ALL_CONNECTION_TYPES constant
* fuzz: Use ConsumeNode in process_message target
* fuzz: Use ConsumeNode in process_messages target
* qt: Follow Qt docs when implementing rowCount and columnCount
* net: Move SocketSendData lock annotation to header
* net: Move CConnman/NetEventsInterface after CNode in header file
* gitian-keys: add miketwenty1 key
* qt: Save QSplitter state in QSettings
* Don\'t declare de facto const reference variables as non-const
* Don\'t declare de facto const member functions as non-const
* netinfo: add user help documentation
* gitian-keys: add key for guggero
* test: Add sanitizer suppressions for AMD EPYC CPUs
* [net] Add cs_vSend lock annotations
* [net] Move RecordBytesSent() call out of cs_vSend lock
* refactor: Use Mutex type for some mutexes in CNode class
* refactor: took out unused member functions
* build: enable unused member function diagnostic
* doc: fix various typos
* doc: Use https URLs where possible
* [mempool] Remove error suppression on upgrade
* Revert \"Add patch to make codesign_allocate compatible with Apple\'s\"
* gitian-keys: add darosior\'s key
* Add benthecarman to keys.txt
* Add gitian PGP key for theStack
* rpc: Replace boost::variant with std::variant for RPCArg.m_fallback
* lint: ignore gitian keys file for spelling linter
* lint: update list of spelling linter false positives
* test: bump codespell linter version to 2.0.0
* test: Set correct nValue for multi-op-return policy check
* fuzz: check that certain script TxoutType are nonstandard
* fuzz: remove no-longer-necessary packages from fuzzbuzz config
* doc: update developer notes for signet
* refactor: Remove nMyStartingHeight from CNode/Connman
* net: add CNode::IsInboundOnion() public getter and unit tests
* net: assert CNode::m_inbound_onion is inbound in ctor
* test, fuzz: fix constructing CNode with invalid inbound_onion
* doc: Update license year range to 2021
* scripted-diff: Bump copyright headers
* fuzz: Remove duplicate ALL_OUTPUT_TYPE array
* fuzz: Bump FuzzedDataProvider.h
* fuzz: Add coverage for CDataStream consumer
* fuzz: Fill various small fuzzing gaps
* p2p: remove unused legacyWhitelisted variable
* gui: display network in peer details
* gui: rename peer tab column headers, initialize in .h
* gui: add network column in peers tab/window
* gui: fix broken doxygen formatting in src/qt/guiutil.h
* gui: create GUIUtil::NetworkToQString() utility function
* net, rpc: change CNodeStats::m_network from string to Network
* [rpc] Remove deprecated \"whitelisted\" field from getpeerinfo
* [rpc] Remove deprecated \"banscore\" field from getpeerinfo
* [rpc] Remove deprecated \"addnode\" field from getpeerinfo
* lint: run mypy over contrib/devtools
* build: Define .INTERMEDIATE target once only
* test: Fix Comment Typo in BitcoinTestFramework
* fuzz: Call SendMessages after ProcessMessage to increase coverage
* [doc] Add permissions to the getpeerinfo help.
* tests: Add fuzzing harness for node eviction logic
* [doc] clarify getdata limit after #14897
* doc: [test] Remove outdated comment in fuzz runner
* fuzz: Check that NULL_DATA is unspendable
* depends: Use more legible qmake commands in qt package
* depends: Do not set build_subdir for qt package
* test: RPC: getblock fee calculations
* RPC: getblock: tx fee calculation for verbosity 2 via Undo data
* Switch to BIP341\'s suggested scheme for outputs without script
* [net processing] Remove dropmessagestest
* test: Add race:SendZmqMessage tsan suppression
* Update TSan suppressions
* qa: Correct epoll_ctl data race suppression
* [net processing] Guard m_continuation_block with m_block_inv_mutex
* [net processing] Move hashContinue to net processing
* scripted-diff: rename vBlockHashesToAnnounce and vInventoryBlockToSend
* [net processing] Move block inventory data to Peer
* [net processing] Rename nStartingHeight to m_starting_height
* [net processing] Move nStartingHeight to Peer
* [net processing] Improve documentation for Peer destruction/locking
* fuzz: Update FuzzedDataProvider.h from upstream (LLVM)
* script: Remove outdated extract-osx-sdk.sh
* test: Fix restart node race
* test: Add missing assignment in mempool_resurrect.py
* test: run mempool_resurrect.py even with wallet disabled
* Replace boost::optional with std::optional
* Remove unused MakeOptional
* psbt: Assert that tx has a value in UpdatePSBTOutput
* ci: Print COMMIT_RANGE to the log as it was in Travis CI
* ci: Drop Travis-specific workaround for shellcheck
* ci: Drop Travis-specific way to set COMMIT_RANGE variable
* ci: Fix COMMIT_RANGE variable value for PRs
* inline non-member functions with body in fuzzing headers
* contrib: Changes to checks for PowerPC64
* contrib: Parse ELF directly for symbol and security checks
* Clean up logging of outbound connection type
* ci: Install missing lint packages
* qt: Align layout of checkboxes
* wallet: Add missing check for -descriptors wallet tool option
* test: Add missing check for is_sqlite_compiled
* wallet: Pass ArgsManager into ExecuteWalletToolFunc instead of using global
* doc: Drop mentions of Travis CI as it is no longer used
* ci: Drop travis_fold feature as Travis CI is no longer used
* Add patch to make codesign_allocate compatible with Apple\'s
* fuzz: replace CNode code with fuzz/util.h::ConsumeNode()
* doc: Convert depends options list from html to markdown
* tests: Test bitcoin-wallet dump and createfromdump
* wallettool: Add createfromdump command
* wallettool: Add dump command
* fix misleading comment about call to non-existing function
* doc: warn that incoming conns are unlikely when not using default ports
* doc: Remove shouty enums in net_processing comments
* doc: update -externalip documentation in tor.md
* doc: add tor.md section on how to get tor info via bitcoind
* GUI: Define MAX_DIGITS_BTC for magic number in BitcoinUnits::format
* ci: Only use credits for pull requests to the main repo
* doc: Add warnings for http interfaces limitations
* ci: Use cpu=1 for linter
* ci: Move linter task to cirrus
* Make CanFlushToDisk a const member function
* Do not run functions with necessary side-effects in assert()
* build: remove cdrkit package from depends
* build: Replace genisoimage with xorriso
* build: Run libdmg-hfsplus\'s DMG tool in make deploy
* [net] Make p2p recv buffer timeout 20 minutes for all peers
* Fix length of R check in test/key_tests.cpp:key_signature_tests
* Remove redundant p2p lock tacking for tx download functional tests
* Add mutation for functional test test_preferred_inv
* Add functional test test_txid_inv_delay
* test: Makes wtxidrelay support a generic P2PInterface option
* Only consider addrv2 peers for relay of non-addrv1 addresses
* refactor: add IsAddrCompatible() to CNode
* test: walettool create descriptors
* wallettool: add param to create descriptors wallet
* wallettool: pass in DatabaseOptions into MakeWallet
* init: Signal-safe instant shutdown
* test: Fix intermittent wallet_multiwallet issue with got_loading_error
* test: pep8 wallet_multiwallet.py
* doc: Update for FreeBSD 12.2, add GUI Build Instructions
* test: run mempool_expiry.py even with wallet disabled
* depends: Drop workaround for a fixed bug in Qt build system
* Assert eviction at >= 29 candidates. Assert non-eviction at <= 20 candidates.
* test: Add unit testing of node eviction logic
* net: Move eviction node selection logic to SelectNodeToEvict(...)
* Move TX_MAX_STANDARD_VERSION to policy
* cirrus: Schedule one task with paid credits for faster CI feedback
* Move signet onion seed from v2 to v3
* build: Add option --enable-danger-fuzz-link-all
* fuzz: Link all targets once
* doc: Move add relay comment in net to correct place
* Check if Cjdns address is valid
* fuzz: Avoid time-based \"non-determinism\" in fuzzing harnesses by using mocked GetTime()
* net: use std::chrono throughout maxOutbound logic
* init: set nMaxOutboundLimit connection option directly
* net: remove nMaxOutboundTimeframe from connection options
* net: remove SetMaxOutboundTimeframe
* net: remove SetMaxOutboundTarget
* qt: Remove redundant BitcoinGUI::setTrayIconVisible
* gui: Replace \"Hide tray icon\" option with positive \"Show tray icon\" one
* Avoid weak-linked getauxval support on non-linux platforms (like macOS)
* Define correct symbols for getauxval
* [net processing] Tolerate sendheaders and sendcmpct messages before verack
* net: don\'t relay to the address\' originator
* [net processing] Clarify UpdatedBlockTip()
* [net processing] Remove unnecesary nNewHeight variable in UpdatedBlockTip()
* [net processing] Remove nStartingHeight check from block relay
* Update net_processing WTXID documentation per BIP339
* Remove m_is_manual_connection from CNodeState
* wallet: document that tx in CreateTransaction is purely an out-param
* Remove unused and confusing CTransaction constructor
* p2p: Ignore version msgs after initial version msg
* p2p: Ignore non-version msgs before version msg
* wallet: List all wallets in non-SQLite or non-BDB builds
* refactor: Consolidate redundant wallet database path and exists functions
* refactor: Drop call to GetWalletEnv in wallet salvage code
* refactor: Replace ListWalletDir() function with ListDatabases()
* MOVEONLY: Move IsBDBFile, IsSQLiteFile, and ListWalletDir
* Clarify comments around outbound peer eviction
* Periodically make block-relay connections and sync headers
* Use conn_type to identify block-relay peers, rather than m_tx_relay == nullptr
* Simplify and clarify extra outbound peer counting
* test: Fix inconsistent lock order in wallet_tests/CreateWallet
* [skip ci] sync: Check precondition in LEAVE_CRITICAL_SECTION() macro
* sync: Improve CheckLastCritical()
* test: Use Popen.wait instead of RPC in assert_start_raises_init_error
* [doc] Tidy up Tor doc (more stringent)
* doc: Update wallet database installation guide for macOS
* build: Use Homebrew\'s sqlite package if it is available
* build, refactor: Check that Homebrew\'s qt5 package is actually installed
* Support make src/bitcoin-node and src/bitcoin-gui
* test: Add option to git-subtree-check to do full check, add help
* Add regression test for incorrect decoding
* Improve heuristic hex transaction decoding
* configure: output notice that test binary is disabled by fuzzing
* test: add coverage for passing fee rate as a string
* wallet, bugfix: allow send to take string fee rate values
* test: add test for high-bandwidth mode states in getpeerinfo
* doc: release note for new getpeerinfo fields \"bip152_hb_{from,to}\"
* rpc: expose high-bandwidth mode states via getpeerinfo
* net: save high-bandwidth mode states in CNodeStats
* Remove g_relay_txes
* [net processing] Add m_ignores_incoming_txs to PeerManager and use internally
* [init] Use MakeUnique<> to construct peerman
* [net processing] Add IgnoresIncomingTxs() function to PeerManager
* [net processing] Move PushNodeVersion into PeerManager
* contrib: add symbol check test for PE
* depends: Set CMAKE_INSTALL_RPATH for native packages
* Squashed \'src/crc32c/\' changes from 224988680f..b5ef9be675
* util: Allow use of C++14 chrono literals
* Remove unused bits from service flags enum
* [net processing] Add RemovePeer()
* [net processing] Make GetPeerRef const
* [net_processing] Move peer_map to PeerManager
* [net processing] Move GetNodeStateStats into PeerManager
* test: Add new ChainTestingSetup and use it
* qt/test: [FIX] Add forgotten Context setting in RPCNestedTests
* Send and require SENDADDRV2 before VERACK
* Don\'t send \'sendaddrv2\' to pre-70016 software
* test: Remove no longer needed MakeChain calls
* refactor: Replace uses ChainActive() in interfaces/chain.cpp
* refactor: Get rid of more redundant chain methods
* build: mac_alias 2.1.1
* macdeploy: use Python 3.6
* macdeploy: remove runHDIUtil in favor of directly calling subprocess.run
* macdeploy: remove existing Bitcoin-Core.dmg if present
* macdeploy: move qt_conf to where it\'s used
* macdeploy: consolidate .DS_Store generation
* macdeploy: assume plistlib is available
* macdeploy: have a single level of logging output
* macdeploy: remove add-resources argument
* macdeploy: remove codesigning argument
* build: automatically determine macOS translations
* Clear m_addr_known before our periodic self-advertisement
* test: Fix intermittent feature_taproot issue
* rpc: Use FeeModes doc helper in estimatesmartfee
* init: don\'t create a CBlockPolicyEstimator if we don\'t relay transactions
* Remove the remaining fee estimation globals
* net: Assume that SetCommonVersion is called at most once per peer
* Warn when binaries are built from a dirty branch.
* Add depends qt fix for ARM macs
* rpc: Reject empty txids in gettxoutproof
* rpc, refactor: Avoid duplicate set lookup in gettxoutproof
* p2p: Put disconnecting logs into BCLog::NET category
* contrib: add MACHO tests to symbol-check tests
* contrib: Add test for ELF symbol-check
* doc: libbitcoinconsensus: add missing error code description, fix NBitcoin link
* test: Document why syncwithvalidationinterfacequeue is needed in tests
* Revert \"test: Add missing sync_all to wallet_balance test\"
* Don\'t make \"in\" parameters look like \"out\"/\"in-out\" parameters: pass by ref to const instead of ref to non-const
* ci: Adjust Cirrus CI task names (follow up)
* tests: Test that a fully signed tx given to signrawtx is unchanged
* refactor: Use C++17 std::array where possible
* Android : Ensure pic build for bdb
* util: Remove probably misleading TODO
* util: Add Assume() identity function
* util: Allow Assert(...) to be used in all contexts
* doc: rename CODEOWNERS to REVIEWERS
* build: Check that Homebrew\'s berkeley-db4 package is actually installed
* ci: Build with --enable-werror by default, and document exceptions
* net: Add compat.h header for htonl function
* net: Drop unneeded headers when compat.h included
* net: Drop unneeded Windows headers in compat.h
* Removed redundant git pull from appveyor config.
* Adjusted msvc compiler and linker settings to remove optimisations that are causing sporadic ABI issues on Visual Studio updates.
* depends: Do not force Precompiled Headers (PCH) for building Qt on Linux
* test: Fix intermittent p2p_finerprint issue
* ci: Adjust cirrus ci task names
* refactor: Improve use of explicit keyword
* lint: Use c++17 std in cppcheck linter
* ci: no-longer exclude feature_block in TSAN job
* qt: Improve comments in WalletController::getOrCreateWallet()
* qt: Call setParent() in the parent\'s context
* qt: Add ObjectInvoke template function
* sync: use HasReason() in double lock tests
* sync: const-qualify the argument of double_lock_detected()
* sync: print proper lock order location when double lock is detected
* rpc: Validate -rpcauth arguments
* rpc: Refactor to process -rpcauth once
* test: Fix wallet_multiwallet issue on windows
* refactor: Assert before dereference in CWallet::GetDatabase
* refactor: Drop redudant CWallet::GetDBHandle
* Mention units of MAX_STANDARD_ policy constants
* Mention in validation that IsWitnessStandard tests for P2TR
* Clean up assets test minimizer LDFLAGS
* Document additional IsWitnessStandard behavior
* Add comments on CPubKey::IsValid
* Add comments to VerifyTaprootCommitment
* Document need_vin_vout_mismatch argument to make_spender
* Fix and improve taproot_construct comments
* fuzz: Make addrman fuzzing harness deterministic
* Don\'t set BDB flags when configuring without
* build: Drop unneeded IOKit framework dependency
* build: Drop unneeded ApplicationServices framework dependency
* doc: Add bash as an OpenBSD dependency
* refactor: Replace deprecated Qt::SystemLocale{Short,Long}Date
* refactor: Clean up CTxMemPool initializer list
* refactor: Make CTxMemPool::m_check_ratio a const and a constructor argument
* refactor: Avoid double to int cast for nCheckFrequency
* Move WalletImpl from interfaces/wallet.cpp to wallet/interfaces.cpp
* Move ChainImpl from interfaces/chain.cpp to node/interfaces.cpp
* Move NodeImpl from interfaces/node.cpp to node/interfaces.cpp
* Add [[nodiscard]] to RenameOver(...)
* Handle rename failure in DumpMempool(...) by using RenameOver(...) return value
* Remove NODISCARD
* scripted-diff: Use [[nodiscard]] (C++17) instead of NODISCARD
* Drop noop gcc version checks
* depends: build qt in c++17 mode
* builds: don\'t pass -silent to qt when building in debug mode
* depends: build zeromq with -std=c++17
* depends: build Boost with -std=c++17
* depends: build bdb with -std=c++17
* [test] Fix wait condition in disconnect_p2ps
* qt: unlock wallet \"OK\" button bugfix
* RPC/Wallet: unloadwallet: Allow specifying wallet_name param matching RPC endpoint
* Add MAX_STANDARD_SCRIPTSIG_SIZE to policy
* sync: detect double lock from the same thread
* sync: make EnterCritical() & push_lock() type safe
* This change to the appveyor CI config for msvc builds reverses a change introduced in #19960. It re-applies a setting to inform vcpkg to only build release vesions of the dependencies rather than the default of debug and release.
* Add lifetimebound to attributes for general-purpose usage
* span: add lifetimebound attribute
* span: (almost) match std::span\'s constructor behavior
* wallet (not for backport): improve upgradewallet error messages
* wallet: fix and improve upgradewallet error responses
* wallet: fix and improve upgradewallet result responses
* Don\'t upgrade to HD split if it is already supported
* wallet: refactor GetClosestWalletFeature()
* build: Avoid secp256k1.h include from system
* test: Fix intermittent issue in mempool_compatibility
* wallet: Do not treat default constructed types as None-type
* refactor: Change pointer to reference because it can not be null
* Fix QPainter non-determinism on macOS
* test: Add testing of ParseInt/ParseUInt edge cases with leading +/-/0:s
* RPC/Wallet: unloadwallet: Clarify docs/error when both the RPC endpoint and wallet_name parameter specify a wallet
* doc: Document current boost dependency as 1.71.0
* depends: boost: Specify cflags+compileflags
* depends: boost: Remove unnecessary _archiver_
* depends: boost: Cleanup toolset selection
* depends: boost: Cleanup architecture/address-model
* depends: boost: Disable all compression
* depends: boost: Split into non-/native packages
* depends: boost: Bump to 1.71.0
* depends: boost: Refer to version in URL
* ci: Fix doc typos in .cirrus.yml
* ci: Run i686 centos ci config on cirrus
* ci: Run nowallet ci config on cirrus
* test: add is_bdb_compiled helper
* build: set minimum supported macOS to 10.14
* Fix mock SQLiteDatabases
* Allow disabling BDB in configure with --without-bdb
* GUI: Force descriptor wallets when BDB is not compiled
* RPC: Require descriptors=True for createwallet when BDB is not compiled
* Enforce salvage is only for BDB wallets
* Do not compile BDB things when USE_BDB is defined
* Include wallet/bdb.h where it is actually being used
* net: Treat raw message bytes as uint8_t
* build: remove global_init_link_order from mac qt qmake.conf
* build: document preprocessing steps in qt package
* build: don\'t copy Info.plist.
* into mkspec for macOS qt build
* build: remove plugin_no_soname from mac qt qmake.conf
* build: pass XCODE_VERSION through to qt macOS cross compile conf
* build: convert \"echo\" usage into a patch in qt package
* Use the correct incremental fee constant in bumpfee help
* Update feeRate (BTC/kvB) to fee_rate (sat/vB) in wallet_bumpfee
* Allow zero-fee fundrawtxn and walletcreatefundedpsbt calls
* Drop the leading 0 from the version number
* sanitizers: Add suppression for unsigned-integer-overflow in libstdc++ basic_string.tcc
* Squashed \'src/univalue/\' changes from 98261b1e7b..98fadc0909
* qt: Hide peer detail view if multiple are selected
* tests: shrink feature_taproot transfer of funds tx
* net: Use Span in ReceiveMsgBytes
* refactor: Extract ParseOpCode from ParseScript
* test: fix creation of std::string objects with \\0s
* qt, refactor: Fix \'buttonClicked is deprecated\' warnings
* qt, refactor: Fix \'split is deprecated\' warnings
* qt, refactor: Fix \'QFlags is deprecated\' warnings
* qt, refactor: Fix \'pixmap is deprecated\' warnings
* qt, refactor: Fix \'QDateTime is deprecated\' warnings
* docs/descriptors.md: Remove hardened marker in the path after xpub
* test: run mempool_spend_coinbase.py even with wallet disabled
* Remove confusing and almost useless \"unexpected version\" warning
* [addrman] Fix Connected() comment
* [net] Consolidate logic around calling CAddrMan::Connected()
* test: remove last_{block,header}_equals() in p2p_fingerprint.py
* test: use wait_for_{block,header} helpers in p2p_fingerprint.py
* init: Fix incorrect warning \"Reducing -maxconnections from N to N-1, because of system limitations\"
* remove CRPCCommand constructor that takes rpcfn_type function pointer
* remove dead rpc code
* Tests: Unit test related to WalletDB ReadKeyValue
* Catch ios_base::failure specifically
* doc: add contrib/signet readme
* contrib: add getcoins.py script to get coins from (signet) faucet
* src/randomenv.cpp: fix build on uclibc
* refactor: remove use of boost::algorithm::replace_first
* doc: clarify CRollingBloomFilter size estimate
* depends: native_ds_store 1.3.0
* depends: Fix PYTHONPATH setting in config.site.in
* lint: Also lint files with shellcheck directive
* depends: Allow relative CONFIG_SITE path env var
* doc: update contrib/seeds/README dnspython installation info
* script: fix deprecation warning in makeseeds.py
* Use std::make_unique
* build: Require C++17 compiler
* doc: Remove generated manual pages from master branch
* build: Bump gitian descriptors to 0.22
* CConnman: initialise at declaration rather than in Start()
* doc: Clarify that vpindexToConnect is in reverse order
* Remove dead CheckForkWarningConditionsOnNewFork
* qt, wallet: Drop unused parameter in WalletModel::setWalletEncrypted
* qt, wallet: Drop unused parameter in Wallet{Frame|View}::encryptWallet
* qt, wallet: Remove unused AskPassphraseDialog::Decrypt
* gui: Remove BDB version from the Information tab
* [tests] Recommend f-strings for formatting, update feature_block to use them
* Bump minimum python version to 3.6
* build: Bump master version to 0.21.99
* qt: Pre-splitoff translations update
* wallet: override minfee checks (fOverrideFeeRate) for fee_rate
* wallet: update sendtoaddress, send RPC examples with fee_rate
* wallet: use MIN_RELAY_TX_FEE in bumpfee help
* wallet: provide valid values if invalid estimate mode passed
* wallet: update remaining rpcwallet fee rate units to BTC/kvB
* wallet: update fee rate units, use sat/vB for fee_rate error messages
* wallet: remove fee rates from conf_target helps
* wallet: remove redundant bumpfee fee_rate checks
* wallet: introduce fee_rate (sat/vB) param/option
* wallet: remove unneeded WALLET_BTC_KB_TO_SAT_B constant
* wallet: fix bug in RPC send options
* gui: create wallet: add advanced section
* gui: create wallet: name placeholder
* [gui] create wallet: smarter checkbox toggling
* [upgradewallet] removed unused warning param
* swapped \"is\" for \"==\" in literal comparison
* Break circuit earlier
* wallet: Remove -upgradewallet from dummywallet
* test: Remove unused wallet.dat
* tests: Test specific upgradewallet scenarios and that upgrades work
* test: Add test_framework/bdb.py module for inspecting bdb files
* tests: Add a sha256sum_file function to util
* wallet: upgrade the CHDChain version number when upgrading to split hd
* wallet: remove nWalletMaxVersion
* wallet: have ScriptPubKeyMan::Upgrade check against the new version
* wallet: Add GetClosestWalletFeature function
* wallet: Add utility method for CanSupportFeature
* doc: Missing comments for signet parameters
* CI/Cirrus: Skip merge_base step for non-PRs
* style: minor improvements as a followup to #19845
* Add missing optional.h include
* Silence false positive GCC warning
* fuzz: Use ConsumeRandomLengthBitVector(...) in src/test/fuzz/connman and src/test/fuzz/net
* tests: Add fuzzing harness for CAddrMan
* tests: Remove no longer needed UBSan suppression (float-divide-by-zero in validation.cpp)
* addrman: ensure old versions don\'t parse peers.dat
* refactor: qt: Use vQueueNotifications.clear()
* qt: Make transaction notification queue wallet specific
* move-only: Define TransactionNotification before TransactionTablePriv
* tests: Add fuzzing harness for CConnman
* fuzz: Improve coverage for CPartialMerkleTree fuzzing harness
* Avoid signed integer overflow when loading a mempool.dat file with a malformed time field
* Remove references to CreateWalletFromFile
* QA: wallet_multiwallet: Check that recursive symlink directory and wallet.dat loops are ignored
* Bugfix: Wallet: Soft-fail exceptions within ListWalletDir file checks
* wallet: fix scanning progress calculation for single block range
* test: Suppress epoll_ctl data race
* ci: Remove redundant valgrind fuzz task
* test: Mock IBD in net_processing fuzzers
* test: Fix intermittent issue in wallet_listsinceblock
* fuzz: Assert roundtrip equality for both addrv1 and addrv2 versions of CService
* fuzz: Check for addrv1 compatibility before using addrv1 serializer/deserializer on CSubNet
* wallet: fix importdescriptor silent fail
* test: add getnetworkinfo network name regression tests
* rpc: update GetNetworksInfo() to not return unsupported networks
* net: update GetNetworkName() with all enum Network cases
* ci: Bump timeout factor
* Small improvements to the Taproot functional tests
* test: Fix intermittent feature_taproot issue
* test: Fix deser issue in create_block
* test: Remove unused unnamed parameter from block.serialize call
* ci: Run windows ci config on cirrus
* ci: Run macos ci config on cirrus
* ci: Run arm ci config on cirrus
* ci: Replace TRAVIS_OS_NAME with CI_OS_NAME
* ci: Move documentation to correct config file
* Fix change detection of imported internal descriptors
* scripted-diff: [build] Ensure source tarball has leading directory name
* ci: Set LC_ALL=C to allow running the s390x tests in qemu
* cirrus: Skip tasks on the gui repo main branch
* fix ecdsa verify in test framework
* wallet: Set DatabaseStatus::SUCCESS in MakeSQLiteDatabase
* test: Fix wallet_multiwallet test issue on Windows
* Set bilingual error completely
* Make it easier to reason about node eviction by removing unused NodeEvictionCandidate::addr (CAddress)
* fuzz: Assert expected DecodeHexTx behaviour when using legacy decoding
* test: Only try witness deserialize when checking for witness deserialize failure
* Ignoring (but warn) on duplicate -wallet parameters
* fuzz: Add missing ECC_Start to descriptor_parse test
* ci: Run ci configs on cirrus
* test: Fix intermittent rpc_net issue
* net: fix output of peer address in version message
* test: Replace ARRAYLEN with C++11 ranged for loop
* test: Run AssetTest even if built --with-libs=no
* ci: Add --with-libs=no to one ci config
* rpc: update conf_target helps for correctness/consistency
* wallet, rpc: fix send subtract_fee_from_outputs help
* wallet: add rpc send explicit fee rate coverage
* wallet: add sendtoaddress/sendmany explicit fee rate coverage
* wallet: add walletcreatefundedpsbt explicit fee rate coverage
* test: refactor for walletcreatefundedpsbt fee rate coverage
* wallet: fundrawtx fee rate coverage, fixup ParseConfirmTarget()
* wallet: combine redundant bumpfee invalid params and args tests
* wallet: improve bumpfee error/help, add explicit fee rate coverage
* wallet: fix SetFeeEstimateMode() error message
* wallet, bugfix: fix bumpfee with explicit fee rate modes
* [wallet] Return object from upgradewallet RPC
* net: Hardcoded seeds update for 0.21
* contrib: Add new versions to makeseeds.py and update gitignore
* fuzz: Fix DecodeHexTx fuzzing harness issue
* fuzz: Check for addrv1 compatibility before using addrv1 serializer on CService
* Avoid test-before-evict evictions of current peers
* Refactor test for existing peer connection into own function
* Call CAddrMan::Good() on block-relay-only peer addresses
* Avoid calling CAddrMan::Connected() on block-relay-only peer addresses
* Update assumed chain params
* tests: Make only desc wallets for wallet_multwallet.py --descriptors
* Avoid creating legacy wallets in wallet_importdescriptors.py
* Update feature_backwards_compatibility for descriptor wallets
* Update wallet_labels.py to not require descriptors=False
* tests: Add a --legacy-wallet that is mutually exclusive with --descriptors
* Disable some tests for tool_wallet when descriptors
* Make raw multisig tests legacy wallet only in rpc_rawtransaction.py
* Do addmultisigaddress tests in legacy wallet mode in wallet_address_types.py
* Use importdescriptors when in descriptor wallet mode in wallet_createwallet.py
* Avoid dumpprivkey and watchonly behavior in rpc_signrawtransaction.py
* Add script equivalent of functions in address.py
* Add descriptor wallet output to tool_wallet.py
* Use separate watchonly wallet for multisig in feature_nulldummy.py
* Move import and watchonly tests to be legacy wallet only in wallet_balance.py
* Use importdescriptors for descriptor wallets in wallet_bumpfee.py
* Avoid dumpprivkey in wallet_listsinceblock.py
* Make import tests in wallet_listtransactions.py legacy wallet only
* Use a separate watchonly wallet in rpc_fundrawtransaction.py
* Update wallet_importprunedfunds to avoid dumpprivkey
* Increase feature_taproot inactive test coverage
* Only relay Taproot spends if next block has it active
* docs: Correct getblockstats documentation for (sw)total_weight
* wallet: Fix bug when just created encrypted wallet cannot get address
* doc: Document that wallet salvage is experimental
* Ensure a legacy wallet for BDB format check
* Skip --descriptor tests if sqlite is not compiled
* util: Add StripRedundantLastElementsOfPath function
* wallet: Make -wallet setting not create wallets
* Squashed \'src/secp256k1/\' changes from c6b6b8f1bb..3967d96bf1
* cli -netinfo: print oversized/extreme ping times as \"-\"
* cli -netinfo: handle longer tor v3 local addresses
* cli -netinfo: make age column variable-width
* cli -netinfo: various quick updates and fixes
* RPC: createwallet: Nicer error message if descriptor wallet requested and sqlite support not compiled in
* GUI: Create Wallet: Nicely disable descriptor wallet checkbox if sqlite support not compiled in
* Make sqlite support optional (compile-time)
* fuzz: Properly initialize PrecomputedTransactionData
* [net processing] Don\'t add AlreadyHave txs to recentRejects
* [tests] Remove getnettotals/getpeerinfo consistency test
* [test] Clarify setup of node topology.
* [move-only, test]: Match test order with run order
* qt: Pre-splitoff translations update
* qt: Add WalletFrame::sizeHint
* test: Add test for -blockversion
* test: Default blockversion to 4 in feature_block
* test: Remove unused -blockversion from tests
* doc: Document ALLOW_HOST_PACKAGES dependency option
* doc: Update wallet files in files.md
* fuzz: Check for addrv1 compatibility before using addrv1 serializer
* gui: Call setWalletActionsEnabled(true) only for the first wallet
* qt: Fix visual quality of text in QR image
* qt, refactor: Limit scope of QPainter object
* wallet: fix buffer over-read in SQLite file magic check
* qt: Wrap tooltips in the intro window
* test: Speed up wallet_resendwallettransactions test with mockscheduler RPC
* test: Fix typo (one tx is enough) in p2p_feefilter
* test: Fix intermittent issue in p2p_feefilter
* Convert amounts from float to decimal
* test: Fix rpc_net intermittent issue
* Show name, format and if uses descriptors in bitcoin-wallet tool
* test: Move (dis)?connect_nodes globals into TestFramework as helpers
* scripted-diff: test: Replace uses of (dis)?connect_nodes global
* test: Replace use of (dis)?connect_nodes globals
* Bugfix: chainparams: Add missing (disabled) Taproot deployment for Signet
* test: add coverage for getwalletinfo format field
* rpc, wallet: Expose database format in getwalletinfo
* p2p: declare Announcement::m_state as uint8_t, add getter/setter
* doc: Merge release notes
* Warn on unknown rw_settings
* test: Fix intermittent issue in wallet_send
* test: Fix intermittent issue in wallet_import_rescan
* test: Fix -Wunused-function warning if configured --without-libs
* refactor: Clean up -Wlogical-op warning
* scripted-diff: rename vRecvGetData
* Guard vRecvGetData (now in net processing) with its own mutex
* Move vRecvGetData to net processing
* Lock before checking if orphan_work_set is empty; indicate it is guarded
* Move m_orphan_work_set to net_processing
* [Rename only] Rename orphan_work_set to m_orphan_work_set.
* test: add logging for mining_getblocktemplate_longpoll.py
* test: remove unused helpers random_transaction(), make_change() and gather_inputs()
* test: use MiniWallet for mining_getblocktemplate_longpoll.py
* script: Make ComputeEntrySchnorr and ComputeEntryECDSA const to clarify contract
* contrib: Fix gen_key_io_test_vectors.py imports
* Only update the updateSmartFeeLabel once in sync
* QA: Use GBT to get block versions correct
* QA: blocktools: Accept block template to create_block
* Initialize default-initialized uint256 consensus params to zero explicitly
* doc: Move assumed-values doxygen comments to header
* signet: Fix uninitialized read in validation
* Address functional test nits
* rpc: Adjust witness-tx deserialize error message
* [trivial] Extract connection type doc into file where it is used.
* [doc] Improve help for getpeerinfo connection_type field.
* doc: Add anchors.dat to files.md
* p2p: Try to connect to anchors once
* p2p: Fix off-by-one error in fetching address loop
* p2p: Integrate DumpAnchors() and ReadAnchors() into CConnman
* p2p: Add CConnman::GetCurrentBlockRelayOnlyConns()
* p2p: Add ReadAnchors()
* p2p: Add DumpAnchors()
* refactor: enable -netinfo to add future networks (i2p, cjdns)
* refactor: promote some -netinfo localvars to class members
* cli: simplify -netinfo using getpeerinfo network field
* rpc, test: expose CNodeStats network in RPC getpeerinfo
* net: add peer network to CNodeStats
* test: Remove unused nVersion=1 in p2p tests
* RPC: getpeerinfo: Wrap long help line for bytesrecv_per_msg
* RPC: getpeerinfo: Deprecate \"whitelisted\" field (replaced by \"permissions\")
* Ignore incorrectly-serialized banlist.dat entries
* Restore compatibility with old CSubNet serialization
* DecodeHexTx: Break out transaction decoding logic into own function
* DecodeHexTx: Try case where txn has inputs first
* tests: dumping and minimizing of script assets data
* tests: add generic qa-asset-based script verification unit test
* tests: functional tests for Schnorr/Taproot/Tapscript
* tests: add BIP340 Schnorr signature support to test framework
* --- [TAPROOT] Tests ---
* Activate Taproot/Tapscript on regtest (BIP 341, BIP 342)
* Make Taproot spends standard + policy limits
* --- [TAPROOT] Regtest activation and policy ---
* Implement Tapscript script validation rules (BIP 342)
* Use ScriptExecutionData to pass through annex hash
* Implement Taproot validation (BIP 341)
* Support for Schnorr signatures and integration in SignatureCheckers (BIP 340)
* Implement Taproot signature hashing (BIP 341)
* Add TaggedHash function (BIP 340)
* --- [TAPROOT] BIP340/341/342 consensus rules ---
* refactor: keep spent outputs in PrecomputedTransactionData
* refactor: rename scriptPubKey in VerifyWitnessProgram to exec_script
* scripted-diff: put ECDSA in name of signature functions
* --- [TAPROOT] Refactors ---
* Update wallet_multiwallet.py for descriptor and sqlite wallets
* Run dumpwallet for legacy wallets only in wallet_backup.py
* Include sqlite3 in documentation
* wallet: Enforce sqlite serialized threading mode
* Set and check the sqlite user version
* Use network magic as sqlite wallet application ID
* Use SQLite for descriptor wallets
* walletutil: Wallets can also be sqlite
* Determine wallet file type based on file magic
* Implement SQLiteDatabase::MakeBatch
* Implement SQLiteDatabase::Verify
* Implement SQLiteDatabase::Rewrite
* Implement SQLiteDatabase::TxnBegin, TxnCommit, and TxnAbort
* Implement SQLiteDatabase::Backup
* Implement SQLiteBatch::StartCursor, ReadAtCursor, and CloseCursor
* Implement SQLiteBatch::ReadKey, WriteKey, EraseKey, and HasKey
* Add SetupSQLStatements
* Implement SQLiteBatch::Close
* Implement SQLiteDatabase::Close
* Implement SQLiteDatabase::Open
* Initialize and Shutdown sqlite3 globals
* Constructors, destructors, and relevant private fields for SQLiteDatabase/Batch
* Implement SQLiteDatabaseVersion
* Add SQLiteDatabase and SQLiteBatch dummy classes
* Add sqlite to travis and depends
* Add libsqlite3
* Squashed \'src/secp256k1/\' changes from 8ab24e8dad..c6b6b8f1bb
* net: Send post-verack handshake messages at most once
* Report and verify expirations
* Delete limitedmap as it is unused now
* Make txid delay penalty also apply to fetches of orphan\'s parents
* Expedite removal of tx requests that are no longer needed
* Reduce MAX_PEER_TX_ANNOUNCEMENTS for non-PF_RELAY peers
* Change transaction request logic to use txrequest
* Add txrequest fuzz tests
* Add txrequest unit tests
* Add txrequest module
* build: optionally skip external warnings
* wallet: remove db mode string
* tests: don\'t export in6addr_loopback
* style and nits for fee-checking in BroadcastTransaction
* gui: Fix SplashScreen crash when run with -disablewallet
* test: add p2p_lock acquires in p2p_leak_tx.py
* test: use MiniWallet for p2p_leak_tx.py
* Avoid the use of abs64 in timedata
* test: Add tests for CNode::ConnectedThroughNetwork
* net: Add CNode::ConnectedThroughNetwork member function
* net: Add CNode::m_inbound_onion data member
* Only relay IPv4, IPv6, Tor addresses
* tor: make a TORv3 hidden service instead of TORv2
* net: advertise support for ADDRv2 via new message
* net: CAddress & CAddrMan: (un)serialize as ADDRv2
* Support bypassing range check in ReadCompactSize
* doc: Collect release-notes snippets
* doc: Update and improve files.md
* cirrus: Use kvm to avoid spurious CI failures in the default virtualization cluster
* [net] Remove CombinerAll
* rpc: change no wallet loaded message to be clearer
* fuzz: Configure check for main function
* Avoid \'timing mishap\' warnings when mocking
* Use mockable time everywhere in net_processing
* util: Do not use gArgs global in ArgsManager member functions
* [validation] Remove absurdfee from accepttomempool
* scripted-diff: update max-fee-exceeded error message to include RPC
* [rpc/node] check for high fee before ATMP in clients
* Bump vcpkg commit ID to get new msys mirror list
* test: Assert exclusive PSBT funding options
* test: Assert PSBT change type
* RPC: remove duplicate line in getblock help
* Ignore unknown messages before VERACK
* ci: Build Arm64 on Travis without functional tests
* test: Mention commit id in scripted diff error
* lint: Use TRAVIS_BRANCH in lint-git-commit-check.sh
* lint: Don\'t use TRAVIS_COMMIT_RANGE in whitespace linter
* lint: Don\'t use TRAVIS_COMMIT_RANGE for commit-script-check
* scripted diff: Improve invalid vout value rpc error message
* test: Get rid of default wallet hacks
* test, refactor: add default_wallet_name and wallet_data_filename variables
* net: rename CNetAddr scopeId to m_scope_id, improve code doc
* test: add test coverage for CNetAddr ipv6 scoped addresses
* [doc] Clarify semantic of peer\'s m_protect w.r.t to outbound eviction logics
* [doc] Clarify scope of eviction protection of outbound block-relay peers
* doc: Update onion service target port numbers in tor.md
* net: Extend -bind config option with optional network type
* net, refactor: Move AddLocal call one level up
* net: Pass onion service target to Tor controller
* refactor: Rename TorController::target to m_tor_control_center
* net, refactor: Refactor CBaseChainParams::RPCPort function
* net: Add alternative port for onion service
* net: Use network byte order for in_addr.s_addr
* rpc: Set HTTP Content-Type in bitcoin-cli
* refactor: fix -Wbraced-scalar-init warning in validation tests
* qt: Periodic translations update
* zmq: Append address to notify log output
* test: Add zmq test to support multiple interfaces
* doc: Add release notes to support multiple interfaces
* doc: Adjust ZMQ usage to support multiple interfaces
* zmq: Add support to listen on multiple interfaces
* signet: do not log signet startup messages for other chains
* [tests] Replace bytes literals with hex literals
* [tests] Fix pep8 style violations in address.py
* [tests] Correct docstring for address.py
* [tests] Tidy up imports in address.py
* [tests] Remove unused optional verify_checksum parameter
* [tests] Rename segwit encode and decode functions
* [tests] Move bech32 unit tests to test framework
* test: Add signet witness commitment section parse tests
* Remove gArgs global from CreateChainParams to aid testing
* ProcessOrphanTx: Move AddToCompactExtraTransactions call into ProcessOrphanTx
* ProcessOrphanTx: Remove aliases
* ProcessOrphanTx: Remove outdated commented
* ProcessOrphanTx: remove useless setMisbehaving set
* ProcessOrphanTx: remove useless done variable
* [net processing] Add doxygen comments for orphan data and function
* doc: Remove double-whitespace from help string, other whitespace fixups
* Fix misleading error message: Clean stack rule
* signet: Add assumed values for default signet
* [test] Make sure send rpc returns fee reason
* [send] Make send RPCs return fee reason
* Update msvc build to use new vcpkg manifest
* Improve docs about feeler connections
* doc: Added default signet config for linearize script
* log: Remove static log message \"Initializing chainstate Chainstate [ibd] AATT height -1 (null)\"
* net: Print error message if -proxy is specified without arguments (instead of continuing without proxy server)
* log: print unexpected version warning in validation log category
* policy/fees: remove a floating-point division by zero
* Remove header checks out of net_processing
* Give V1TransportDeserializer CChainParams& member
* Change CMessageHeader Constructor
* Add doxygen comment for ReceiveMsgBytes
* Move checksum check from net_processing to net
* Give V1TransportDeserializer an m_node_id member
* rpc: add brackets to ConstructTransaction
* [rpc] send: various touch-ups
* [rpc] send: fix parsing replaceable option
* Mark send RPC experimental
* test: Check that invalid peer traffic is accounted for
* test: Remove confusing cast to same type (int to int)
* doc: Mention signet in -help output
* net: recognize TORv3/I2P/CJDNS networks
* net: CNetAddr: add support to (un)serialize as ADDRv2
* test: move HasReason so it can be reused
* util: move HasPrefix() so it can be reused
* feature: Added ability for users to add a startup command
* wallet: no need for duplicate storage for ABANDON_HASH constant
* scripted-diff: Replace UINT256_ONE() with uint256::ONE
* uint256: Update constructors to c++11, make ONE static
* [Trivial] python help message
* test: remove unused constants in functional tests
* [rpc] Deprecate getpeerinfo addnode field
* [refactor] Rename test file to allow any getpeerinfo deprecations.
* [rpc] Add connection type to getpeerinfo RPC, update tests
* [log] Add connection type to log statement
* test: use explicit p2p objects where available
* [test] remove confusing p2p property
* scripted-diff: replace p2p with p2ps[0] in p2p_invalid_tx
* [doc] sample code for test framework p2p objects
* [refactor] clarify tests by referencing p2p objects directly
* validation: Remove review-only comments + assertions
* docs: Move FindFilesToPrune{,Manual} doxygen comment
* fix builds
* validation: Move PruneOneBlockFile to BlockManager
* validation: Pass in chainman to UnloadBlockIndex
* validation: Move ~CMainCleanup logic to ~BlockManager
* build: Fix target name
* Assert that RPCArg names are equal to CRPCCommand ones (net, rpcwallet)
* Remove unused LockAssertion struct
* Replace LockAssertion with a proper thread safety annotations
* refactor: Use explicit function type instead of template
* Update zmq notification documentation and sample consumer
* Add functional tests for zmq sequence topic and mempool sequence logic
* Add \'sequence\' zmq publisher to track all block (dis)connects, mempool deltas
* zmq test: Actually make reorg occur
* doc: Update comments for new chain settings (-signet and -chain=signet)
* fuzz: Remove needless guard
* refactor: Remove SignetTxs::m_valid and use optional instead
* test: Run signet test even when wallet was not compiled
* Clarify blocksonly whitelistforcerelay test
* build: patch qt libpng to fix powerpc build
* Assert that RPCArg names are equal to CRPCCommand ones (rawtransaction)
* Assert that RPCArg names are equal to CRPCCommand ones (blockchain)
* p2p: Use the greatest common version in peer logic
* p2p: Remove SetCommonVersion() from VERACK handler
* refactor: Rename local variable nSendVersion
* p2p: Unify Send and Receive protocol versions
* test: some sanity checks for consensus logic
* test: basic signet tests
* test: add small signet fuzzer
* test: signet network selection tests
* signet: hard-coded parameters for Signet Global Network VI (2020-09-07)
* qt: update QT to support signet network
* consensus: add signet validation
* add signet chain and accompanying parameters
* add signet basic support (signet.cpp)
* validation: move GetWitnessCommitmentIndex to consensus/validation
* Refactor the functional test
* Address nits in ADDR caching
* Add indexing ADDR cache by local socket addr
* Justify the choice of ADDR cache lifetime
* test: add parameterized constructor for msg_sendcmpct()
* doc: Add comments and additional reviewers to CODEOWNERS file
* doc: Add CODEOWNERS file
* scripted-diff: Rename SendMessage to SendZmqMessage.
* Replace zmqconfig.h by a simple zmqutil.
* Use std::unique_ptr for CZMQNotifierFactory.
* Simplify and fix notifier removal on error.
* Various cleanups in zmqnotificationinterface.
* qt: Rename qt-init thread before logging start
* qt: Name ClientModel timer QThread
* qt: Name WalletController worker QThread
* qt: Name RPCConsole executor QThread
* [test] add get_vsize util for more programmatic testing
* [rpc] Return fee and vsize from testmempoolaccept
* test: create default wallet in extended tests
* Tell users how to load or create a wallet when no wallet is loaded
* Do not create default wallet
* tests: Add fuzzing harness for Keccak and SHA3_256
* Test batch rpc with params
* [BroadcastTransaction] Remove unsafe move operator
* [p2p] Remove dead code
* [p2p] Check for nullptr before dereferencing pointer
* [mempool] Revert unbroadcast set to tracking just txid
* help: Generate checkpoint height from chainparams
* build: AX_PTHREAD serial 27
* build: split PTHREAD_
* flags out of AM_LDFLAGS
* scripted-diff: add FUZZ_SUITE_LDFLAGS_COMMON
* build: add PTHREAD_LIBS to LDFLAGS configure output
* cli -netinfo: display multiple levels of details
* cli: change -netinfo optional arg from bool to int
* cli: add getpeerinfo last_{block,transaction} to -netinfo
* cli: add -netinfo server version check and error message
* cli: create peer connections report sorted by dir, minping
* cli: create vector of Peer structs for peers data
* cli: add NetType enum struct and NetTypeEnumToString()
* cli: create local addresses, ports, and scores report
* cli: create inbound/outbound peer connections report
* cli: start dashboard report with chain and version header
* cli: tally peer connections by type
* cli: add ipv6 and onion address type detection helpers
* cli: create initial -netinfo option, NetinfoRequestHandler class
* Add OpenBSD instructions for building the Qt GUI
* [rpc] add send method
* [rpc] add snake case aliases for transaction methods
* [rpc] walletcreatefundedpsbt: allow inputs to be null
* Change CSipHasher\'s count variable to uint8_t
* Squashed \'src/secp256k1/\' changes from 2ed54da18a..8ab24e8dad
* bugfix: make LoadWallet assigns status always
* test: gettxoutproof duplicate txid
* test: Test empty array in gettxoutproof
* test: Run rpc_txoutproof.py even with wallet disabled
* test: MiniWallet: Default fee_rate in send_self_transfer, Pass in utxo_to_spend
* test: bugfix: Actually pick largest utxo
* .gitignore: ignore qa-assets/ folder
* build: use DIR_FUZZ_SEED_CORPUS if specified for cov_fuzz target
* script: fix zmq_sub.py file permissions
* doc: update PyZMQ installation instructions, ZeroMQ link
* Unroll Keccak-f implementation
* Add SHA3 benchmark
* Implement keccak-f[1600] and SHA3-256
* test: Use MiniWalet in p2p_feefilter
* test: inline hashToHex
* Do not pass chain params to CheckForStaleTipAndEvictPeers twice
* [net processing] Move Misbehaving() to PeerManager
* [net_processing] Move SendBlockTransactions into PeerManager
* [net processing] Move MaybePunishPeerForTx to PeerManager
* [net processing] Move ProcessOrphanTx to PeerManager
* [net processing] Move MaybePunishNodeForBlock into PeerManager
* [net processing] Move ProcessHeadersMessage to PeerManager
* [whitespace] tidy up indentation after scripted diff
* scripted-diff: [net processing] Rename PeerLogicValidation to PeerManager
* [net_processing] Pass chainparams to PeerLogicValidation constructor
* [move only] Collect all private members of PeerLogicValidation together
* Get rid of unused functions CTxMemPool::GetMemPoolChildren, CTxMemPool::GetMemPoolParents
* Remove mapLinks in favor of entry inlined structs with iterator type erasure
* Remove mempool global
* Remove mempool global from p2p
* Remove mempool global from init
* wallet: Avoid multiple BerkeleyBatch in DelAddressBook
* wallet: Remove path checking code from bitcoin-wallet tool
* wallet: Remove path checking code from createwallet RPC
* wallet: Remove path checking code from loadwallet RPC
* refactor: Pass wallet database into CWallet::Create
* wallet: Remove Verify and IsLoaded methods
* refactor: Use DatabaseStatus and DatabaseOptions types
* wallet: Add MakeDatabase function
* Remove WalletLocation class
* Change FILE_CHAR_BLOCKLIST to FILE_CHARS_DISALLOWED
* refactor: remove unused header in protocol.cpp
* test: Fix flaky wallet_basic test
* ci: Double tsan CPU and Memory to avoid global timeout
* Remove mempool global from interfaces
* Increase the ip address relay branching factor for unreachable networks
* refactor: Avoid duplicate map lookup in ScriptToAsmStr
* rawtransaction: fix argument in combinerawtransaction help message
* Add in/out connections to cli -getinfo
* UNIX_EPOCH_TIME fixup in rpc getnettotals
* Add in/out connections to rpc getnetworkinfo
* refactor: CTxMemPool::IsUnbroadcastTx() requires CTxMemPool::cs lock
* refactor: CTxMemPool::GetTotalTxSize() requires CTxMemPool::cs lock
* refactor: CTxMemPool::ClearPrioritisation() requires CTxMemPool::cs lock
* refactor: CTxMemPool::ApplyDelta() requires CTxMemPool::cs lock
* refactor: CTxMemPool::UpdateChild() requires CTxMemPool::cs lock
* refactor: CTxMemPool::UpdateParent() requires CTxMemPool::cs lock
* wallet: Reload previously loaded wallets on GUI startup
* test framework: serialize/deserialize inv type as unsigned int
* p2p: change CInv::type from int to uint32_t
* Protect localhost and block-relay-only peers from eviction
* qa: Changes v0.17.1 to v0.17.2
* [doc] Follow developer notes, add comment about missing default.
* [doc] Describe connection types in more depth.
* [refactor] Simplify connection type logic in ThreadOpenConnections
* [refactor] Simplify check for block-relay-only connection.
* [test] Add explicit tests that connection types get set correctly
* [trivial] Small style updates
* [doc] Explain address handling logic in process messages
* [refactor] Restructure logic to check for addr relay.
* [net] Remove unnecessary default args on OpenNetworkConnection
* scripted-diff: Rename `OUTBOUND` ConnectionType to `OUTBOUND_FULL_RELAY`
* wallet: filter for keys only before record deser in salvage
* walletdb: Add KeyFilterFn to ReadKeyValue
* test: Remove unused lock arg from BitcoinTestFramework.wait_until
* test: Rename wait until helper to wait_until_helper
* lint: add C++ code linter
* remove usage of boost::bind
* build: add /usr/local/ to LCOV_FILTER_PATTERN for macOS builds
* Avoid callback when -blocknotify is empty
* depends: Specify LDFLAGS to cmake as well
* depends: Prepend CPPFLAGS to C{,XX}FLAGS for CMake
* depends: Cleanup CMake invocation
* depends: More robust cmake invocation
* depends: Use $($(package)_cmake) instead of cmake
* net: improve nLastBlockTime and nLastTXTime documentation
* p2p: ensure inv is GenMsgTx before ToGenTxid in inv processing
* test: use CInv::MSG_WITNESS_TX flag in p2p_segwit
* p2p: make gtxid(.hash) and fAlreadyHave localvars const
* p2p: use CInv block message helpers in net_processing.cpp
* [net processing] Change AlreadyHaveTx() to take a GenTxid
* [net processing] Change AlreadyHaveBlock() to take block_hash argument
* [net processing] Remove mempool argument from AlreadyHaveBlock()
* [net processing] Split AlreadyHave() into separate block and tx functions
* p2p: remove nFetchFlags from NetMsgType TX and INV processing
* p2p: add CInv block message helper methods
* zmq: enable tcp keepalive
* test: Add chacha20 test vectors in muhash
* test: Add basic Python/C++ Muhash implementation parity unit test
* test: Add Python MuHash3072 implementation to test framework
* test: Move modinv to util and add unit test
* doc: Add best practice for annotating/asserting locks
* sync.h: Make runtime lock checks require compile-time lock checks
* Do not hide compile-time thread safety warnings
* Add missed thread safety annotations
* Use LockAssertion utility class instead of AssertLockHeld()
* Remove -zapwallettxes
* Have zmq reorg test cover mempool txns
* Add zmq test for transaction pub during reorg
* Add test case for mempool->block zmq notification
* Make ordering of zmq consumption irrelevant to functional test
* rpc: Assert that RPCArg names are equal to CRPCCommand ones (rpcdump)
* rpc: Assert that RPCArg names are equal to CRPCCommand ones (zmq)
* rpc: Assert that RPCArg names are equal to CRPCCommand ones (mining)
* rpc: Remove unused return type from appendCommand
* util: Hard code previous release tarball checksums
* scripted-diff: Move previous_release.py to test/get_previous_releases.py
* [rpc] fundrawtransaction, walletcreatefundedpsbt lock manually selected coins
* wallet: Avoid recursive lock in IsTrusted
* wallet, refactor: Immutable CWalletTx::pwallet
* tests: Add fuzzing harness for ec_seckey_import_der(...) and ec_seckey_export_der(...)
* tests: Add fuzzing harness for SigHasLowR(...) and ecdsa_signature_parse_der_lax(...)
* gui refactor: Inline SplashScreen::ConnectWallet
* refactor: Move wallet methods out of chain.h and node.h
* refactor: Create interfaces earlier during initialization
* bench: Prevent thread oversubscription
* bench: Allow skip benchmark
* Pass mempool reference to chainstate constructor
* Bugfix: Define and use HAVE_FDATASYNC correctly outside LevelDB
* wallet, refactor: Remove duplicate map lookups in GetAddressBalances
* test: Add tsan supp for leveldb::DBImpl::DeleteObsoleteFiles
* build: add -fstack-clash-protection to hardening flags
* build: add -fcf-protection=full to hardening options
* doc: Document differences in bitcoind and bitcoin-qt locale handling
* scripted-diff: rename misbehavior members
* [net processing] Move misbehavior tracking state to Peer
* [net processing] Add Peer
* [net processing] Remove CNodeState.name
* qt: Leverage the default \"Create new receiving address\" button
* qt: Make \"Create new receiving address\" default unconditionally
* Remove old check for 3-byte shifted IP addresses from pre-0.2.9 node messages
* util: remove c-string interfaces for DecodeBase58{Check}
* Updated outdated help command for getblocktemplate (fixes #19625)
* Drop deprecated and unused GUARDED_VAR and PT_GUARDED_VAR annotations
* chain: Remove UB CChain comparison
* tests: Add fuzzing harness for CNode
* gui: Clarify block height label
* rpc: Validate provided keys for query_options parameter in listunspent
* wallet: IsChange requires cs_wallet lock
* wallet: IsMine overloads require cs_wallet lock
* wallet: GetWalletTx requires cs_wallet lock
* build: replace wingenminiupnpcstrings sed with a patch in miniupnpc package
* build: replace qtranslations lrelease sed with a patch in qt package
* build: replace FreeType back-compat sed with a patch in qt package
* build: replace pwd sed in qt package with a patch
* build: remove no-longer needed qt workaround
* build: remove no-longer needed qt configure workaround
* build: use patch rather than sed in zeromq package
* build: use patch rather than sed in native_cctools package
* build: use patch rather than sed in fontconfig package
* build: use patch rather than sed in Boost package
* build: use patch rather than sed in bdb package
* test: Add docstring to wait_until() in util.py to warn about its usage
* test: Update wait_until usage in tests not to use the one from utils
* test: Fix intermittent issue in wallet_bumpfee
* test: Select at least the fee in wallet_bumpfee to avoid negative amounts
* gui: Delay interfaces::Node initialization
* gui: Replace interface::Node references with pointers
* gui: Remove unused interfaces::Node references
* gui: Partially revert #10244 gArgs and Params changes
* util: make EncodeBase64 consume Spans
* util: make EncodeBase32 consume Spans
* [test] Remove final references to mininode
* test: resort imports
* scripted-diff: Rename mininode to p2p
* scripted-diff: Rename mininode_lock to p2p_lock
* scripted-diff: gArgs -> args
* init: Capture copy of blocknotify setting for BlockNotifyCallback
* init: Pass reference to ArgsManager around instead of relying on global
* test: Activate segwit in TestChain100Setup
* test: Pass empty tx pool to block assembler
* test: Move doxygen comment to header
* net: change CNetAddr::ip to have flexible size
* net: don\'t accept non-left-contiguous netmasks
* Refactor Get{Prevout,Sequence,Outputs}Hash to Get{Prevouts,Sequences,Outputs}SHA256.
* Add SHA256Uint256 helper functions
* Add single sha256 call to CHashWriter
* Move Win32 defines to configure.ac to ensure they are globally defined
* build: Drop ZeroMQ patch for glibc < 2.12
* build: Drop ZeroMQ patch for Mingw-w64 < 4.0
* doc: release note for getpeerinfo last_block/last_transaction
* test: rpc_net.py logging and test naming improvements
* test: getpeerinfo last_block and last_transaction tests
* rpc: expose nLastBlockTime/TXTime as getpeerinfo last_block/transaction
* net: add nLastBlockTime/TXTime to CNodeStats, CNode::copyStats
* [net_processing] Move ProcessMessage to PeerLogicValidation
* [net_processing] Change PeerLogicValidation to hold a connman reference
* build: AX_BOOST_THREAD serial 33
* build: disable D-Bus on Android by default
* doc: Remove label from good first issue template
* test/fuzz: add a seed corpus generation option to the test_runner
* build, qt: Add Qt version checking
* build: Drop unused bitcoin_cv_qt58
* [test] Add test for getblockheader verboseness
* Remove unused includes
* Move comment about BaseIndex::DB from TxIndex::DB
* test: Add tests for getindexinfo RPC
* rpc: Add getindexinfo RPC
* test: Distinguish between nodes(bitcoind) and peers(mininodes) in p2p_leak.py
* test: remove `CNodeNoVersionIdle` from p2p_leak.py
* test: remove `CNodeNoVersionMisbehavior` from p2p_leak.py
* doc: Fix getmempoolancestor RPC result doc
* util: remove unused c-string variant of atoi64()
* util: make EncodeBase58Check consume Spans
* util: make EncodeBase58 consume Spans
* ci: Set cirrus RAM to 8GB
* ci: Run valgrind fuzzer on cirrus
* -maxapsfee: follow-up fixes
* doc: release notes for -maxapsfee
* tests: add sync_all to fix race condition in wallet groups test
* build: Enable some commonly enabled compiler diagnostics
* doc: comment out and add annotation to unused MSG_FILTERED_WITNESS_BLOCK
* build: Add Werror=range-loop-analysis
* Move only: Move CDiskTxPos to its own file
* test: test the implicit avoid partial spends functionality
* wallet: try -avoidpartialspends mode and use its result if fees are below threshold
* Shrink CAddress from 48 to 40 bytes on x64
* test: speedup p2p_feefilter.py by whitelisting peers (immediate tx relay)
* test: use wait_until for invs matching in p2p_feefilter.py
* test: add logging for p2p_feefilter.py
* test: Remove confusing and broken use of wait_until global
* ci: Set increased --timeout-factor by default
* build: Add missed gcov files to \'make clean\'
* Add variables for repeated scripts
* Remove GetScriptForWitness function
* Replace usage of GetScriptForWitness with GetScriptForDestination
* Add loadwallet and createwallet RPC load_on_startup options
* Refactor OutputGroups to handle effective values, fees, and filtering
* Use real value when calculating OutputGroup value
* walletdb: Remove unused static functions from walletdb.h
* wallettool: Have RecoverDatabaseFile return errors and warnings
* Call RecoverDatabaseFile directly from wallettool
* test: Fix \'make cov\' with clang
* test: ensure OP_1NEGATE satisfies BIP62 minimal push rule
* Do not turn OP_1NEGATE in scriptSig into 0x0181 in signing code
* test: add rpc_generate functional test
* rpc: print useful help and error message for generate
* test: consider generate covered in _get_uncovered_rpc_commands()
* wallet: Don\'t override signing errors
* rpc: Assert that RPCArg names are equal to CRPCCommand ones (misc)
* rpc: Limit echo to 10 args
* refactor: Use C++11 range based for loops to simplify rpc code
* rpc: Treat all args after a hidden arg as hidden as well
* rpc: document returned error fields as optional if applicable
* [test] Add test for NODE_COMPACT_FILTER.
* [net] Signal NODE_COMPACT_FILTERS if we\'re serving compact filters.
* Apply cfilters review fixups
* Cap listsinceblock target_confirmations param
* Reduce cs_main lock accumulation during GUI startup
* Optionally populate BlockAndHeaderTipInfo during AppInitMain
* Add BlockAndHeaderTipInfo to the node interface/appInit
* RPCConsole, take initial chaintip data as parameter
* moveonly: Fix indentation in bumpfee RPC
* Hide bumpfee\'s psbt creation behavior behind -deprecatedrpc
* Add psbtbumpfee RPC
* build: Add missed fuzz.coverage/ directory to .gitignore
* build: Add missed fuzz_filtered.info to COVERAGE_INFO
* build, test: Add support for llvm-cov
* rpc: Improve addnode remove command error message
* [net] Add addpeeraddress RPC method
* [test] Test that getnodeaddresses() can return all known addresses
* [addrman] Specify max addresses and pct when calling GetAddresses()
* [net] Remove unnecessary default args on CNode constructor
* [refactor] Remove IsOutboundDisconnectionCandidate
* [net/refactor] Simplify multiple-connection checks
* [net/refactor] Rework ThreadOpenConnections logic
* [net] Fix bug where AddrFetch connections would be counted as outbound full relay
* [net/refactor] Clarify logic for selecting connections in ThreadOpenConnections
* [net/refactor] Remove fInbound flag from CNode
* [net/refactor] Remove m_addr_fetch member var from CNode
* [net/refactor] Remove fFeeler flag from CNode
* [net/refactor] Remove m_manual_connection flag from CNode
* [net/refactor] Add connection type as a member var to CNode
* [doc] Describe different connection types
* [net/refactor] Add AddrFetch connections to ConnectionType enum
* [net/refactor] Extract m_addr_known logic from initializer list
* [net/refactor] Add block relay only connections to ConnectionType enum
* [net/refactor] Add feeler connections to ConnectionType enum
* [net/refactor] Add manual connections to ConnectionType enum
* [net/refactor] Introduce an enum to distinguish type of connection
* scripted-diff: Rename OneShot to AddrFetch
* refactor: test: use _ variable for unused loop counters
* Deduplicate missing parents of orphan transactions
* Rewrite parent txid loop of requested transactions
* doc: set CC_FOR_BUILD when building on OpenBSD
* Fix a compiler warning: unused GetDevURandom()
* build: Update and sort package list in gitian-linux.yml
* build: Drop old hack which is unneeded now
* test: Wait for \'cmpctblock\' in p2p_compactblocks when it is expected
* test: Wait until is_connected in add_p2p_connection
* Test that wtxid relay peers add wtxid to reject filter
* Restore test case for p2p transaction blinding
* refactor: Make HexStr take a span
* Replace `hidden service` with `onion service`
* build: make clean removes .gcda and .gcno files from fuzz directory
* test: Remove duplicate NodeContext hacks
* Add txids with non-standard inputs to reject filter
* build: set minimum required Boost to 1.58
* contrib: Fixup valgrind suppressions file
* util: use HAVE_FDATASYNC to determine fdatasync() use
* test: Catch decimal.InvalidOperation from TestNodeCLI#send_cli
* [util] add RunCommandParseJSON
* [ci] use boost::process
* [doc] include Doxygen comments for HAVE_BOOST_PROCESS
* [build] msvc: add boost::process
* [build] make boost-process opt-in
* configure: add ax_boost_process
* [depends] boost: patch unused variable in boost_process
* lint: Remove travis env var from commit linter
* test: Add LockStackEmpty()
* test: Repeat deadlock tests
* Preserve initial state if push_lock() throws exception
* test: Fail wait_until early if connection is lost
* rpc: Document getwalletinfo\'s unlocked_until field as optional
* Make Hash[160] consume range-like objects
* Make CHash256/CHash160 output to Span
* Make MurmurHash3 consume Spans
* Make CHash256 and CHash160 consume Spans
* Make script/standard\'s BaseHash Span-convertible
* Add MakeUCharSpan, to help constructing Span<[const] unsigned char>
* Make uint256 Span-convertible by adding ::data()
* scripted-diff: rename base_blob::data to m_data
* Test addr response caching
* Add addr permission flag enabling non-cached addr sharing
* Cache responses to addr requests
* Remove useless 2500 limit on AddrMan queries
* Move filtering banned addrs inside GetAddresses()
* scripted-diff: Remove Reference Links
* doc: Add historical release notes for 0.20.1
* refactor: make txmempool interface use GenTxid
* refactor: make FindTxForGetData use GenTxid
* refactor: use GenTxid in tx request functions
* test: request parents of orphan from wtxid relay peer
* p2p: enable fetching of orphans from wtxid peers
* refactor: add GenTxid (=txid or wtxid) type and use it for tx request logic
* rpc: RPCResult Type of MempoolEntryDescription should be OBJ. If multiple entries are possible, wrapping Type should be OBJ_DYN. fixes #19579
* doc: Clang 8 or later is required with FORCE_USE_SYSTEM_CLANG
* Linter to check commit message formatting
* Pass mempool pointer to GetCoinsCacheSizeState
* Pass mempool pointer to UnloadBlockIndex
* test: Simplify cs_main locks
* refactor: use local argsmanager in CRegTestParams
* scripted-diff: Replace gArgs with local argsman
* refactor: add unused ArgsManager to replace gArgs
* walletdb: Ensure that having no database handle is a failure
* Remove BDB dummy databases
* Introduce DummyDatabase and use it in the tests
* p2p, refactoring: use CInv helpers in net_processing.cpp
* p2p: add CInv transaction message helper methods
* Replace current benchmarking framework with nanobench
* test: test decodepsbt fee calculation (count input value only once per UTXO)
* Clean message_count and last_message
* walletdb: Remove BerkeleyBatch friend class from BerkeleyDatabase
* No need to check for duplicate fileids in all dbenvs
* walletdb: Move Db->open to BerkeleyDatabase::Open
* walletdb: track database file use as m_refcount within BerkeleyDatabase
* Combine BerkeleyEnvironment::Verify into BerkeleyDatabase::Verify
* devtools: Add security check for separate_code
* build: add -Wl,-z,separate-code to hardening flags
* net: save the network type explicitly in CNetAddr
* net: document `enum Network`
* test: add test for CChainState::ResizeCoinsCaches()
* add ChainstateManager::MaybeRebalanceCaches()
* Add CChainState::ResizeCoinsCaches
* txdb: add CCoinsViewDB::ChangeCacheSize
* travis: Re-enable s390x
* ci: Increase CCACHE_SIZE in some builds on Travis
* depends: bump native_cctools for fixed lto with external clang
* depends: enable lto support for Apple\'s ld64
* Fix .gitignore for src/test/fuzz directory
* [net processing] Tidy up Misbehaving()
* [net processing] Always supply debug message to Misbehaving()
* [net processing] Fixup MaybeDiscourageAndDisconnect() style
* rpc: Avoid useless mempool query in gettxoutproof
* rpc: Style fixups in gettxoutproof
* refactor: Drop unused CBufferedFile::Seek()
* span: Add Span::empty() and use it in script/descriptor
* Work around memory-aliasing in descriptor ParsePubkey
* [net processing] Continue SendMessages processing if not disconnecting peer
* [net processing] Only call MaybeDiscourageAndDisconnect from SendMessages
* [net processing] Fix bad indentation in SendMessages()
* [net processing] Change cs_main TRY_LOCK to LOCK in SendMessages()
* build: call AC_PATH_TOOL for dsymutil in macOS cross-compile
* Add /settings.json persistent settings storage.
* util: Add ReadSettings and WriteSettings functions
* test: Add test coverage for -networkactive option
* net: Log network activity status change unconditionally
* net: Add -networkactive option
* walletdb: Introduce WalletDatabase abstract class
* walletdb: Add BerkeleyDatabase::Open dummy function
* walletdb: Introduce AddRef and RemoveRef functions
* walletdb: Move BerkeleyDatabase::Flush(true) to Close()
* Further improve comments around recentRejects
* Disconnect peers sending wtxidrelay message after VERACK
* test: Use wtxid relay generally in functional tests
* test: Add tests for wtxid tx relay in segwit test
* test: Update test framework p2p protocol version to 70016
* Rename AddInventoryKnown() to AddKnownTx()
* Make TX_WITNESS_STRIPPED its own rejection reason
* Delay getdata requests from peers using txid-based relay
* Add p2p message \"wtxidrelay\"
* ignore non-wtxidrelay compliant invs
* Add support for tx-relay via wtxid
* Add wtxids to recentRejects instead of txids
* Just pass a hash to AddInventoryKnown
* Add wtxid to mempool unbroadcast tracking
* Add a wtxid-index to the mempool
* log: Avoid treating remote misbehvior as local system error
* refactor: Switch ValidationState mode to C++11 enum class
* Static asserts for consistency of fee defaults.
* build: pass -fcommon when building genisoimage
* test: Fix fuzzer compilation on macOS fixes #19557
* fuzz: add missing overrides to signature_checker
* walletdb: Don\'t remove database transaction logs and instead error
* scripted-diff: replace MAX_BLOCKS_ONLY_CONNECTIONS with MAX_BLOCK_RELAY_ONLY_CONNECTIONS
* test: fix intermittent p2p_ibd_txrelay race, add test_framework.py#wait_until
* contrib: Clean up previous_releases.py
* Remove unnecessary blockfile SetPos
* Remove previous_release.sh
* script: Add previous_release.py
* Make test DoS_mapOrphans deterministic
* doc: Update macOS cross compilation dependencies for Focal
* rpc: deduplicate WriteHDKeypath() used in decodepsbt
* fuzz: fix unused variable addrdb compiler warning
* tests: Add fuzzing harness for CBlockPolicyEstimator::{Read,Write} (policy/fees.h)
* tests: Add fuzzing harness for CBufferedFile::{SetPos,GetPos,GetType,GetVersion} (stream.h)
* tests: Add fuzzing harness for LoadExternalBlockFile(...) (validation.h)
* tests: Add fuzzing harness for CBufferedFile (streams.h)
* tests: Add fuzzing harness for CAutoFile (streams.h)
* tests: Add serialization/deserialization fuzzing helpers WriteToStream(…)/ReadFromStream(…)
* tests: Add FuzzedAutoFileProvider which provides a CAutoFile interface to FuzzedDataProvider
* tests: Add FuzzedFileProvider which provides a FILE
* interface to FuzzedDataProvider using fopencookie
* ci: add tsan debug symbols option
* ci: Add tsan suppression for race in DatabaseBatch
* [test] feefilter during and after IBD
* Additionally treat Tx.nVersion as unsigned in joinpsbts
* Dump transaction version as an unsigned integer in RPC/TxToUniv
* depends: Add documentation for FORCE_USE_SYSTEM_CLANG make flag
* depends: Reformat make options as definition list
* depends: Add justifications for macOS clang flags
* depends: specify libc++ header location for darwin
* depends: force a new host id string if FORCE_USE_SYSTEM_CLANG is in use
* depends: Allow building with system clang
* depends: Decouple toolchain + binutils
* [tests] Remove unnecessary cs_mains in denialofservice_tests
* scripted-diff: rename movie folder to animation
* gui: Show permissions instead of whitelisted
* refactor: replace CConnman pointers by references in net_processing.cpp
* net: improve encapsulation of CNetAddr
* Improve \"detected inconsistent lock order\" error message
* test: Improve \"potential deadlock detected\" exception message
* Fix mistakenly swapped \"previous\" and \"current\" lock orders
* rpc: Update server to use new RPCHelpMan
* rpc: Add option to hide RPCArg
* rpc: Assert that passed arg names are equal to hardcoded ones
* rpc: Add CRPCCommand constructor which takes RPCHelpMan
* rpc: Check that left section is not multiline
* qt: Get rid of cursor in out-of-focus labels
* test: update tests for peer discouragement
* gui, doc: rm Ban Score in GUI Peers window/release notes updates
* Call SHA256AutoDetect in benchmark setup
* tests: Add fuzzing harness for ChaCha20Poly1305AEAD
* tests: Add fuzzing harness for ChaCha20
* tests: Add fuzzing harness for CHKDF_HMAC_SHA256_L32
* tests: Add fuzzing harness for poly1305_auth(...)
* tests: Add fuzzing harness for AES256CBCEncrypt/AES256CBCDecrypt
* tests: Add fuzzing harness for AES256Encrypt/AES256Decrypt
* build: fix -Wformat-security check when compiling with GCC
* util: Make Assert work with any value
* test: Fix intermittent failure in wallet_encryption
* gui: Fix regression in GUI console
* walletdb: Add MakeBatch function to BerkeleyDatabase and use it
* walletdb: Refactor DatabaseBatch abstract class from BerkeleyBatch
* log: Properly log txs rejected from mempool
* [net/net processing] check banman pointer before dereferencing
* ci: Fix configure options for macOS builds
* ci: Drop Homebrew caching while using Homebrew addon on Travis
* ci: Do not activate Travis ccache caching strategy
* ci: Disable functional tests on forked repos to avoid timeouts for macOS
* net: rename DEFAULT_BANSCORE_THRESHOLD to DISCOURAGEMENT_THRESHOLD
* net: remove -banscore configuration option
* Make sure unconfirmed parents are requestable
* Drop setInventoryTxToSend based filtering
* Only respond to requests for recently announced transactions
* Introduce constant for mempool-based relay separate from mapRelay caching
* Swap relay pool and mempool lookup
* doc: CONTRIBUTING.md improvements
* doc: move-only release notes
* doc: Remove release notes of backports
* qt: Disable toolbar when overlay is shown
* qt, refactor: Cleanup ModalOverlay slots
* [protocol] Remove unused GETHEADERS_VERSION
* [protocol] Remove unused CADDR_TIME_VERSION
* [rpc] refactor: consolidate sendmany and sendtoaddress code
* wallet: Fix typo in comments; Simplify assert
* wallet: Fix clang build in Mac
* walletdb: don\'t reinitialize desc cache with multiple cache entries
* refactor: Use C++11 range-based for loop
* wallet: Never schedule MaybeCompactWalletDB when -flushwallet is off
* wallet: Pass unused args to StartWallets
* gui tests: Limit life-time of dummy testing setup
* test: Add smoke test to check that wallets are flushed by default
* Split SetWalletFlags into Add/LoadWalletFlags
* Split SetActiveScriptPubKeyMan into Add/LoadActiveScriptPubKeyMan
* Split SetHDChain into AddHDChain and LoadHDChain
* Fix ZapSelectTx to sync wallet spends
* tests: Add fuzzing harness for BanMan
* tests: Add ConsumeSubNet(...). Move and increase coverage in ConsumeNetAddr(...).
* doc: Use precise permission flags where possible
* tests: Avoid fuzzer-specific nullptr dereference in libevent when handling PROXY requests
* cli: reduce DefaultRequestHandler memory allocations
* Drop CADDR_TIME_VERSION checks now that MIN_PEER_PROTO_VERSION is greater
* net: Use mockable time for ping/pong, add tests
* util: Add count_microseconds helper
* doc: getpeerinfo banscore deprecation release note
* test: getpeerinfo banscore deprecation test
* rpc: deprecate banscore field in rpc getpeerinfo
* refactor: Remove unused BlockAssembler::pblock member var
* doc: improve subtree check instructions
* net: Extract download permission from noban
* refactor: Use uint16_t instead of unsigned short
* qt: increase console command max length
* doc: afl fuzzing comment about afl-gcc and afl-g++
* Updates msvc build to use ISO standard C++17.
* Drop unused CDBWrapper methods
* qt: Reset toolbar after all wallets are closed
* banlist: log post-swept banlist size at startup
* tools: clang-format 6 compatibility
* refactor: clean up PeriodicFlush()
* wallet: Replace CDataStream& with CDataStream&& where appropriate
* wallet: Remove confusing double return value ret+success
* [net] Don\'t try to take cs_inventory before deleting CNode
* [net] Make cs_inventory a non-recursive mutex
* [net processing] Remove PushBlockInventory and PushBlockHash
* Clean up separated ban/discourage interface
* Replace automatic bans with discouragement filter
* test: Test gettxouttsetinfo hash_type option
* rpc: Add hash_type NONE to gettxoutsetinfo
* rpc: gettxoutsetinfo can specify hash_type (only legacy option for now)
* refactor: Extract GetBogoSize function
* ci: Add tsan suppression for race in BerkeleyBatch
* walletdb: Move Rewrite into BerkeleyDatabase
* walletdb: Move PeriodicFlush into WalletDatabase
* walletdb: Combine VerifyDatabaseFile and VerifyEnvironment
* refactor: Remove unused EnsureChainman
* scripted-diff: Replace EnsureChainman with Assert in unit tests
* util: Add Assert identity function
* move-only: Move NDEBUG compile time check to util/check
* ci: Run tsan ci config on cirrus
* refactor: Remove confusing BlockIndex global
* doc: explain why passing -mlinker-version is required
* build: Detect missed pkg-config early
* build: Drop unused use_pkgconfig variable
* build: Drop use_pkgconfig check for libmultiprocess check
* build: Drop dead non-pkg-config code for libevent check
* build: Drop dead non-pkg-config code for qrencode check
* build: Drop dead non-pkg-config code for ZMQ check
* build: Fix indentation in UNIVALUE check
* build: Drop dead non-pkg-config code for UNIVALUE check
* build: Always use pkg-config
* build: Always define ZMQ_STATIC for MinGW
* tests: Add std::locale::global to list of locale dependent functions in lint-locale-dependence.sh
* psbt: Allow both non_witness_utxo and witness_utxo
* build: Add MemorySanitizer (MSan) in Travis to detect use of uninitialized memory
* ci: Add tsan suppression for race in wallet
* Enable Wswitch for OutputType
* Remove confusing OutputType::CHANGE_AUTO
* interfaces: Remove unused getDefaultChangeType
* ci: Run all tests on native mac again
* doc: Remove outdated comment in TransactionTablePriv
* wallet: Replace boost::none with nullopt
* script: Fix boost/C++17 compile failure
* Add Windows WSL build recommendation to temporarily disable Win32 PE support.
* test: Set -logthreadnames in unit tests
* init: Setup scheduler in tests and init in exactly the same way
* build: remove BIP70 configure option
* gui: change combiner for signals to optional_last_value
* walletdb: Handle cursor internally
* ci: Install fixed version of clang-format for linters
* build: Sort Makefile.am after renaming file
* scripted-diff: Move ui_interface to the node lib
* qt: Remove unused includes
* wallet: Do not include server symbols
* Revert \"Fix link error with --enable-debug\"
* test: retry when write to a socket fails on macOS
* test: use pgrep for better compatibility
* build: pass _WIN32_WINNT=0x0601 when building libevent for Windows
* depends: Patch libevent build to fix IPv6 -rpcbind on Windows
* refactor: Replace RecursiveMutex with Mutex in rpc/server.cpp
* test: move TEST_RUNNER_EXTRA into native tsan setup
* wallet: Handle concurrent wallet loading
* ci: Add test for clang-3.8 C++11 support
* refactor: Fix clang compile failure
* build: improve builtin_clz
* detection
* net: Avoid wasting inv traffic during IBD
* refactor: block import implies IsInitialBlockDownload
* Add ChainstateManager::ActiveChainstate
* test: Add FeeFilterRounder test
* [build] Remove unused RES_IMAGES
* doc: Mention Span in developer-notes.md
* doc: Document Span pitfalls
* ci: Increase test timeout for sanitizer configs
* docs: match usage text to script and location
* doc/REST-interface: Remove stale info
* build: Fix search for brew-installed BDB 4 on OS X
* scripted-diff: TxoutType C++11 scoped enum class
* doc: Update outdated txnouttype documentation
* rpc: Properly use underlying type in GetAllOutputTypes
* rpc: Simplify GetAllOutputTypes with the Join helper
* doc: add release note for -getinfo displaying multiwallet balances
* qt: Do not truncate node flag strings in debugwindow.ui peers details tab.
* qt: Fix regression in TransactionTableModel
* tests: Provide main(...) function in fuzzer
* doc: add release notes for explicit fee estimators and bumpfee change
* tests for bumpfee / estimate_modes
* rpc/wallet: add two explicit modes to estimate_mode
* fees: add FeeModes doc helper function
* rpc/wallet: add conf_target as alias to confTarget in bumpfee
* test: Bump linter versions
* refactor: Use Mutex type for g_cs_recent_confirmed_transactions
* tests: Add fuzzing harness for CHash{160,256}, C{HMAC_,}SHA{1,256,512}, CRIPEMD160, CSipHasher, etc.
* clang-format scheduler
* doc: Switch scheduler to doxygen comments
* scheduler: Replace stop(true) with StopWhenDrained()
* doc: Remove unused documentation about unimplemented features
* doc: Switch boost::thread to std::thread in scheduler
* test: Remove unused scheduler.h include from the common setup
* scheduler: Remove unused REVERSE_LOCK
* ci: Run fuzz testing test cases (bitcoin-core/qa-assets) under valgrind to catch memory errors
* Add tests for CPubKey serialization/unserialization
* Check size after Unserializing CPubKey
* test: hoist p2p values to test framework constants
* test: improve msg sends and p2p disconnections in p2p_invalid_messages
* test: refactor test_large_inv() into 3 tests with common method
* test: add p2p_invalid_messages logging
* net: update misbehavior logging for oversized messages
* refactor: Replace HexStr(o.begin(), o.end()) with HexStr(o)
* doc: add release note for bitcoin-cli -generate
* qt: Remove needless headers
* darwin: pass mlinker-version so that clang enables new features
* macos: Bump to xcode 11.3.1 and 10.15 SDK
* depends: bump MacOS toolchain
* contrib: macdeploy: Remove historical extraction notes
* contrib: macdeploy: Use apple-sdk-tools instead of xar+pbzx
* native_cctools: Don\'t use libc++ from pinned clang
* Adapt rest of tooling to new SDK naming scheme
* contrib: macdeploy: Correctly generate macOS SDK
* test: refactor functional tests to use restart_node
* test: add two edge case tests for CSubNet
* doc: Remove -whitelistforcerelay from comment
* test: Check that peers with forcerelay permission do not get a feefilter message
* test: Add connect_nodes method
* test: Add test for no net permission
* test: Replace self.nodes[0].p2p with conn
* test: remove redundant generate
* test: pep-8 p2p_feefilter.py
* test: move sync_blocks and sync_mempool functions to test_framework.py
* Make lint-spelling.py happy
* [gui] Load PSBT from clipboard
* [gui] PSBT Operations Dialog (sign & broadcast)
* FillPSBT: report number of inputs signed (or would sign)
* Improve TransactionErrorString messages.
* rpc: add missing space in JSON parsing error message, update test
* test: add multiwallet tests for bitcoin-cli -generate
* cli: add multiwallet capability to GetNewAddress and -generate
* test: add tests for bitcoin-cli -generate
* cli: create bitcoin-cli -generate command
* cli: extract ParseResult() and ParseError()
* cli: create GenerateToAddressRequestHandler class
* cli: create GetNewAddress()
* rpc: make generatetoaddress locals const
* rpc: create rpc/mining.h, hoist default max tries values to constant
* [tools] Update clang-format config
* doc: release note for rpc getaddressinfo removals
* rpc: getaddressinfo RPCResult fixup
* rpc: remove deprecated getaddressinfo `labels: purpose`
* rpc: remove deprecated getaddressinfo `label` field
* [rpc] fundrawtransaction: add_inputs option to control automatic input adding
* [rpc] walletcreatefundedpsbt: don\'t automatically append inputs
* Disallow automatic conversion between hash types
* Remove an apparently unnecessary conversion
* Explicitly support conversion between equivalent hash types
* Use explicit conversion from WitnessV0KeyHash -> CKeyID
* Use explicit conversion from PKHash -> CKeyID
* Convert CPubKey to WitnessV0KeyHash directly
* Prefer explicit CScriptID construction
* Prefer explicit uint160 conversion
* Change docs for walletcreatefundedpsbt RPC method
* tests: feature_backwards_compatibility.py test 0.16 up/downgrade
* Skip hdKeypath of \'m\'
* Fix link error with --enable-debug
* ci: Upgrade most ci configs to focal
* doc: move doc to ci readme
* ci: Have one config run in xenial to test against python3.5
* travis: Always run multiprocess build
* ci: Run asan ci config on cirrus
* cirrus: Clear dummy task
* refactor: Make CScriptVisitor stateless
* refactor: s/command/msg_type/ in CNetMsgMaker and CSerializedNetMsg
* net: Remove dead logging code
* net: Avoid redundant and confusing FAILED log
* [net] split PushInventory()
* init: use std::thread for ThreadImport()
* Remove WalletDatabase::Create, CreateMock, and CreateDummy
* scripted-diff: Replace WalletDatabase::Create
* with CreateWalletDatabase
* Add Create
*WalletDatabase functions
* doc: Mention repo split in the READMEs
* doc: Add redirect for GUI issues and pull requests
* scripted-diff: Make SeparatorStyle a scoped enum
* walletdb: refactor Read, Write, Erase, and Exists into non-template func
* Add sanity check asserts to span when -DDEBUG
* Simplify usage of Span in several places
* Add Span constructors for arrays and vectors
* Make pointer-based Span construction safer
* Make Span size type unsigned
* Test buffered valid message
* build: don\'t warn when doxygen isn\'t found
* test: Add missing sync_blocks
* refactor: Use AbortError in FatalError
* [refactor] use waiting inside disconnect_p2ps
* [test] wait for disconnect_p2ps to be reflected in getpeerinfo
* [test] logging and style followups for bloomfilter tests
* Add means to handle negative capabilities in thread safety annotations
* walletdb: Move BDB specific things into bdb.{cpp/h}
* walletdb: moveonly: Move BerkeleyBatch Cursor and Txn funcs to cpp
* walletdb: move IsWalletLoaded to walletdb.cpp
* walletdb: Add IsBDBWalletLoaded to look for BDB wallets specifically
* walletdb: Make SpliWalletFilePath non-static
* contrib: Fix SyntaxWarning in Python base58 implementation
* Add missing includes to fix compile errors
* Remove unused variables
* pep-8 test/functional/test_framework/util.py
* test: refactor: Inline adjust_bitcoin_conf_for_pre_17
* wallet: error if an explicit fee rate was given but the needed fee rate differed
* [net] Add seed.bitcoin.wiz.biz to DNS seeds
* test: use subprocess.run() in test-security-check.py
* tests: run test-security-check.py in CI
* refactor: Add AbortError alias
* Drop MSG_NOPREFIX flag
* Pass bilingual_str argument to AbortNode()
* refactor: Use bilingual_str::empty()
* test: mempool.dat compatibility between versions
* [tests] Make mininode_lock non-reentrant
* [tests] Don\'t call super twice in P2PTxInvStore.on_inv()
* [tests] Don\'t acquire mininode_lock twice in wait_for_broadcast()
* [tests] Only acquire lock once in p2p_compactblocks.py
* [p2p/refactor] move disconnect logic and remove misbehaving
* [test] test disconnect for filterclear
* [netprocessing] disconnect node that sends filterclear
* ci: Move travis workarounds to .travis.yml
* RPC: Rephrase generatetoaddress help, and use PACKAGE_NAME
* [tests] Don\'t import asyncio to test magic bytes
* refactor: Drop ::HasWallets()
* build: Fix m4 escaping
* build: Remove extra tokens warning
* build: Remove duplicated QT_STATICPLUGIN define
* build: Fix indentation in bitcoin_qt.m4
* build: Use pkg-config in BITCOIN_QT_CONFIGURE for all hosts
* build: Fix mingw pkgconfig file and dependency naming
* scripted-diff: rename privkey with seckey in secp256k1 interface
* Drop --disable-jni from libsecp256k1 configure options
* Update MSVC build config for libsecp256k1
* Squashed \'src/secp256k1/\' changes from b19c000063..2ed54da18a
* Refactor resource exhaustion test
* Fix \"invalid message size\" test
* Move size limits to module-global
* Remove two unneeded tests
* Add functional test for P2P eviction logic of inbound peers
* refactor: Remove unused request.fHelp
* wallet: Make RPC help compile-time static
* scripted-diff: rename node to peer for mininodes
* [test] fix race conditions and test in p2p_filter
* [test] sending invalid msgs to node with bloomfilters=0 causes disconnect
* [test] add BIP 37 test for node with fRelay=false
* [test] add mempool msg test for node with bloomfilter enabled
* tests: Add fuzzing harness for {Read,Write}{LE,BE}{16,32,64} (crypto/common.h)
* tests: Add std::vector ConsumeFixedLengthByteVector(FuzzedDataProvider& fuzzed_data_provider, const size_t length)
* [tests] move generate_wif_key to wallet_util.py
* [tests] sort imports in rpc_createmultisig.py
* Revert \"[TESTS] Move base58 to own module to break circular dependency\"
* refactor: Combine GetWalletForJSONRPCRequest and EnsureWalletIsAvailable functions
* test: Remove leftover comment in mining_basic
* test: pep-8 mining_basic
* [TESTS] Move base58 to own module to break circular dependency
* Make SetMiscWarning() accept bilingual_str argument
* Make GetWarnings() return bilingual_str
* refactor: Make GetWarnings() bilingual_str aware internally
* test: Add BerkeleyDatabase tsan suppression
* gui: add missing translation.h include to fix build
* refactor: Change Node::initError to take bilingual_str
* refactor: Put`TryParsePermissionFlags` in anonymous namespace
* refactor: Error message bilingual_str consistency
* change blacklist to blocklist
* refactor: Replace RecursiveMutex with Mutex in warnings.cpp
* refactor: replace pointers by references within tx_verify.{h,cpp}
* Test txinwitness is accessible on coinbase vin
* Expose txinwitness for coinbase in JSON form
* qt: Display warnings as rich text
* test: Remove unnecessary disconnect_nodes call in rpc_psbt.py
* test: remove redundant two-way disconnect_nodes calls
* test: warn if nodes not connected before disconnect_nodes
* refactor: Fix formatting of timedata.cpp
* refactor: Replace RecursiveMutex with Mutex in timedata.cpp
* refactor: Replace RecursiveMutex with Mutex in netbase.cpp
* refactor: Replace RecursiveMutex with Mutex in Shutdown()
* test: Avoid overwriting the NodeContext member of the testing setup
* build: Add -Wshadow-field
* log: remove deprecated `db` log category
* ci: Switch to bitcoincore.org download
* doc: Add documentation for \'checklevel\' argument in \'verifychain\' RPC call
* doc: noban precludes maxuploadtarget disconnects
* net: Reformat excessively long if condition into multiple lines
* doc: Add mypy to test dependencies
* test: Do not swallow flake8 exit code
* Remove g_rpc_chain global
* refactor: replace RegisterWalletRPCCommands with GetWalletRPCCommands
* build: turn on --enable-c++17 by --enable-fuzz
* ci: tsan with wallet
* qt: lock cs_main, m_cached_tip_mutex in that order
* gui: Add Close All Wallets action
* gui: Add closeAllWallets to WalletController
* refactor: Specify boost/thread/thread.hpp explicitly
* txdb: Remove unused boost/thread
* txindex: Remove unused boost/thread
* build fixes
* [test] CScriptNum Decode Check as Unit Tests
* rpc: Remove special case for unknown service flags
* validation: delay flushing undo files in syncing node case
* build: Enable unreachable-code-loop-increment
* refactor: Fix unreachable code in init arg checks
* validation: Make VerifyDB level 4 interruptible
* validation: Remove unused boost interruption_point
* test: Make valgrind.supp work on aarch64
* validation: use std::chrono in IsCurrentForFeeEstimation()
* validation: use std::chrono in CChainState::FlushStateToDisk()
* This PR adds initial support for type hints checking in python scripts.
* ci: Remove unused workaround
* ci: Install llvm to get llvm symbolizer
* test: Add more tsan suppressions
* ci: Mute depends logs completely
* test: Extend tsan suppressions for clang stdlib
* ci: Use libc++ instead of libstdc++ for tsan
* ci: Set halt_on_error=1 for tsan
* ci: Deduplicate DOCKER_EXEC
* cirrus: Remove no longer needed install step
* test: Check that invalid witness destinations can not be imported
* fuzz: Stop nodes in process_message
* fuzzers
* fuzz: Give CNode ownership to ConnmanTestMsg in process_message fuzz harness
* doc: Move 0.21 fragments into the main release notes
* doc: Add release-notes-0.20.0.md
* doc: Remove release notes of 0.20.1 release
* net: improve code documentation for dns seed behaviour
* trivial: Suggested cleanups to surrounding code
* wallet: Minimal fix to restore conflicted transaction notifications
* wallet: Remove unused boost::thread_interrupted
* walletdb: Remove unsed boost/thread
* wallet: Make PeriodicFlush uninterruptible
* Use salted hasher instead of nonce in sigcache
* Add Hash Padding Microbenchmarks
* test: Add missing sync_blocks to wallet_hd
* test: pep-8 wallet_hd
* Limit scope of all global std::once_flag
* gui, refactor: Register Qt meta types in application constructor
* doc: Explain that anyone can work on good first issues, move text to CONTRIBUTING.md
* doc: Expand section on Getting Started
* doc: Add headings to CONTRIBUTING.md
* doc: Fix unrelated typos reported by codespell
* tests: Add fuzzing harness for functions in script/sign.h
* tests: Add fuzzing harness for functions in script/sigcache.h
* tests: Add fuzzing harness for functions in script/interpreter.h
* tests: Add fuzzing harness for functions in script/descriptor.h
* tests: Add fuzzing harness for functions in script/bitcoinconsensus.h
* tests: Fill fuzzing coverage gaps for functions in script/script.h, script/script_error.h and script/standard.h
* tests: Add fuzzing helper functions ConsumeDataStream, ConsumeTxDestination and ConsumeUInt160
* [test] Add test for cfilters.
* [net processing] Message handling for getcfilters.
* [indexes] Fix default [de]serialization of BlockFilter.
* [refactor] Pass CNode and CConnman by reference
* Always define the raii_event_tests test suite
* tests: implement base58_decode
* [trivial/doc] Fix comment type
* [doc] Update unbroadcast description in RPC results
* [trivial] Remove misleading \'const\'
* [test] Manage node connections better in mempool persist test
* [doc] Provide rationale for randomization in scheduling.
* [mempool] Don\'t throw expected error message when upgrading
* [test] Test that wallet transactions aren\'t rebroadcast before 12 hours
* [test] P2P connection behavior should meet expectations
* [test] updates to unbroadcast test
* test: Explain that a bug should be filed when the test fail
* depends: Propagate only specific CLI variables to sub-makes
* depends: boost: Use clang toolset if clang in CXX
* depends: boost: Split target-os from toolset
* depends: boost: Specify toolset to bootstrap.sh
* depends: Propagate well-known vars into depends
* scripted-diff: replace gArgs with argsman
* Create a local class inherited from BasicTestingSetup with a localized args manager and put it into the getarg_tests namespace
* util: dedup code in callers of serviceFlagToStr()
* util: simplify the interface of serviceFlagToStr()
* test: Fix intermittent failure in feature_dbcrash
* qt: Fix shutdown when waitfor
* cmds are called from RPC console
* wallet: Fix for exported confirmation field in payment to self transactions
* DNS seeds: don\'t query DNS while network is inactive
* DNS seeds: wait for 5m instead of 11s if 1000+ peers are known
* qt: Use parent-child relation to manage lifetime of OptionsModel object
* Consolidate service flag bit-to-name conversion to a shared serviceFlagToStr function
* Bugfix: GUI: Use unsigned long long type to avoid implicit conversion of MSB check
* BlockTip struct created and connected to notifyHeaderTip and notifyBlockTip signals.
* Added best block hash to the NotifyHeaderTip and NotifyBlockTip signals.
* qt: Track QEvent::Resize during animation
* Disable unavailable context menu items in transactions tab
* qt: Hide non PKHash-Addresses in signing address book
* qt: Remove QFont warnings with QPA=minimal
* qt: Rename slot to updateDisplayUnit()
* qt: Overhaul ReceiveRequestDialog
* qt: Add privacy feature to Overview page
* qt: Add BitcoinUnits::formatWithPrivacy() function
* build: Only allow ASCII identifiers
* build: Replace -Wthread-safety-analysis with broader -Wthread-safety
* Get rid of -Wthread-safety-precise warnings
* Use template function instead of void
* parameter
* refactor: Rename LockGuard to StdLockGuard for consistency with StdMutex
* Add thread safety annotated wrapper for std::mutex
* logging: thread safety annotations
* util/system.cpp: add thread safety annotations for dir_locks
* test/checkqueue_tests: thread safety annotations
* rpc/blockchain.cpp: thread safety annotations for latestblock
* net: fMsgProcWake use LOCK instead of lock_guard
* wallet/wallet.h: Remove mutexScanning which was only protecting a single atomic bool
* rpc/blockchain.cpp: Remove g_utxosetscan mutex that is only protecting a single atomic variable
* refactor: Replace const char
* to std::string
* Remove outdated comment about DER encoding
* doc : add link to readme.md in the first section
* Add release notes about salvage changes
* Move RecoverKeysOnlyFilter into RecoverDataBaseFile
* Move RecoverDatabaseFile and RecoverKeysOnlyFilter into salvage.{cpp/h}
* Make BerkeleyBatch::Recover and WalletBatch::RecoverKeysOnlyFilter standalone
* Expose a version of ReadKeyValue and use it in RecoverKeysOnlyFilter
* Move BerkeleyEnvironment::Salvage into BerkeleyBatch::Recover
* walletdb: remove fAggressive from Salvage
* walletdb: don\'t automatically salvage when corruption is detected
* wallet: remove -salvagewallet
* Add basic test for bitcoin-wallet salvage
* wallettool: Add a salvage command
* test: Remove global wait_until from p2p_getdata
* test: Default mininode.wait_until timeout to 60s
* test: pep-8 p2p_getdata.py
* Remove old serialization primitives
* Convert LimitedString to formatter
* Convert wallet to new serialization
* Convert Qt to new serialization
* doc: Add and fix comments about never destroyed objects
* Replace thread_local g_lockstack with a mutex-protected map
* refactor: Refactor duplicated code into LockHeld()
* refactor: Add LockPair type alias
* refactor: Add LockStackItem type alias
* Prevent UB in DeleteLock() function
* rpc: Make gettxoutsetinfo/GetUTXOStats interruptible
* rpc: factor out RpcInterruptionPoint from dumptxoutset
* tests: Add fuzzing harness for CCoinsViewCache
* [test] Add test for cfheaders
* [net processing] Message handling for getcfheaders.
* [doc] Add comment for m_headers_cache
* test: add -getinfo multiwallet functional tests
* rpc: drop unused JSONRPCProcessBatchReply size arg, refactor
* cli: use GetWalletBalances() functionality for -getinfo
* cli: create GetWalletBalances() to fetch multiwallet balances
* cli: lift -rpcwallet logic up to CommandLineRPC()
* build fixes
* build fixes
* validation: Mark g_chainman DEPRECATED
* validation: Make ProcessNewBlock
*() members of ChainstateManager
* validation: Make PruneOneBlockFile() a member of ChainstateManager
* validation: Make LoadBlockIndex() a member of ChainstateManager
* net: Pass chainman into PeerLogicValidation
* node: Add chainman alias for g_chainman
* doc: Drop protobuf stuff
* tests: Don\'t limit fuzzing inputs to 1 MB for afl-fuzz (now: ∞ ∀ fuzzers)
* test: Default --previous-releases to false if dir is empty
* test: Replace TEST_PREVIOUS_RELEASES env var with test_framework option
* Change SetType to SetInternal and remove m_address_type
* Remove unimplemented SetCrypted from DescriptorScriptPubKeyMan
* rpc: createwallet warning that descriptor wallets are experimental
* docs: Add release notes for descriptor wallets
* Remove IBD check in sethdseed
* Test that keys from inactive seeds are generated
* Generate new keys for inactive seeds after marking used
* Determine inactive HD seeds from key metadata and track them in LegacyScriptPubKeyMan
* have GenerateNewKey and DeriveNewChildKey take a CHDChain as an argument
* [test] wait for inital broadcast before comparing mempool entries
* [mempool] sanity check that all unbroadcast txns are in mempool
* [rpc] add unbroadcast info to mempool entries and getmempoolinfo
* [wallet] remove nLastResend logic
* Upgrade or rewrite encrypted key checksums
* Set fDecryptionThoroughlyChecked based on whether crypted key checksums are valid
* Read and write a checksum for encrypted keys
* [indexes] Add compact block filter headers cache
* net: Use C++11 member initialization in protocol
* test: Fix intermittent ETIMEDOUT on FreeBSD
* gui: Remove un-actionable TODO
* Updated comment for the condition where a transaction relay is denied
* Add test for param interaction b/w -blocksonly and -whitelistforcerelay
* refactor: Remove g_rpc_node global
* scripted-diff: Remove g_rpc_node references
* refactor: Pass NodeContext to RPC and REST methods through util::Ref
* Add util::Ref class as temporary alternative for c++17 std::any
* multiprocess: add multiprocess travis configuration
* depends: add MULTIPROCESS depends option
* build: multiprocess autotools changes
* guix: Add clarifying documentation for V env var
* guix: Make V=1 more powerful for debugging
* test: explicit imports from test_framework.messages in p2p_invalid_messages.py
* test: add inventory type constant MSG_CMPCT_BLOCK
* test: replace inv type magic numbers by constants
* Add comments to CustomUintFormatter
* Convert everything except wallet/qt to new serialization
* Convert blockencodings_tests to new serialization
* Convert merkleblock to new serialization
* Add SER_READ and SER_WRITE for read/write-dependent statements
* Extend CustomUintFormatter to support enums
* Merge BigEndian functionality into CustomUintFormatter
* net: Run clang-format on protocol.h
* net: Remove un-actionable TODO
* http: Avoid crash when g_thread_http was never started
* test: Replace inline-comments with logs, pep8 formatting
* init: Remove confusing and redundant InitError
* Revert \"gui: Avoid Wallet::GetBalance in WalletModel::pollBalanceChanged\"
* gui: Avoid wallet tryGetBalances calls before TransactionChanged or BlockTip notifications
* Cancel wallet balance timer when shutdown requested
* Switch transaction table to use wallet height not node height
* build: enforce minimum required Windows version (7)
* refactor: Remove Node:: queries from GUI
* qt: Add SynchronizationState enum to signal parameter
* refactor: Remove Node::getReindex() call from GUI
* refactor: Pass SynchronizationState enum to GUI
* refactor: Remove unused bool parameter in RPCNotifyBlockChange()
* refactor: Remove unused bool parameter in BlockNotifyGenesisWait()
* ci: Set DEBIAN_FRONTEND=noninteractive
* ci: tsan on clang-9
* log: Remove \"No rpcpassword set\" from logs
* Do not answer GETDATA for to-be-announced tx
* Push down use of cs_main into FindTxForGetData
* Abstract logic to determine whether to answer tx GETDATA
* docs: Add notes on how to diasble rpc timeout in functional tests while attatching gdb.
* test: Add capability to disable RPC timeout in functional tests.
* Switch from Optional to std::optional (C++17). Run clang-format.
* tests: Fill fuzzing coverage gaps for functions in util/translation.h
* tests: Fill fuzzing coverage gaps for functions in consensus/validation.h
* tests: Fill fuzzing coverage gaps for functions in primitives/block.h
* avoided os-dependant path
* ci: Add fuzzbuzz integration
* test: Add test for GetRandMillis and GetRandMicros
* Add templated GetRandomDuration<>
* scripts: add additional type annotations to security-check.py
* scripts: add run_command to security-check.py
* scripts: remove NONFATAL from security-check.py
* scripts: no-longer check for 32 bit windows in security-check.py
* rpcwallet: Replace pwallet-> with wallet.
* rpcwallet: Replace boost::optional::emplace with simple assignment of T{}
* test: Remove UninterruptibleSleep from test and replace it by SyncWithValidationInterfaceQueue
* validationinterface: Rework documentation, Rename pwalletIn to callbacks
* build: enable -Werror=gnu
* test: Remove RPCOverloadWrapper boilerplate
* util: Drop OpOriginal() and OpTranslated()
* gui: Do not translate InitWarning messages in debug.log
* util: Enhance Join()
* util: Enhance bilingual_str
* Drop unused GIT_COMMIT_DATE macro
* refactor: Remove duplicated code
* build: Rename BUILD_
* macros and the code self-descriptive
* scripted-diff: Rename share/genbuild.sh macros to more meaningful ones
* Drop unused CLIENT_VERSION_SUFFIX macro
* test: remove glibc fdelt sanity check
* build: remove fdelt_chk backwards compatibility code
* build: Suppress -Wdeprecated-copy warnings
* gui: Fix manual coin control with multiple wallets loaded
* build: Enable -Wsuggest-override
* refactor: Add BerkeleyDatabaseVersion() function
* test: use p2p constants in denial of service tests
* p2p: add MAX_FEELER_CONNECTIONS constant
* [test] Add test for cfcheckpt
* [net processing] Message handling for getcfcheckpt.
* [init] Add -peerblockfilters option
* Set LD_LIBRARY_PATH consistently in travis tests
* Remove unused ci configs that have been moved elsewhere
* fuzz: Pass down MAKEJOBS to test_runner
* net: use CMessageHeader::HEADER_SIZE, add missing include
* Add a link from ZMQ doc to ZMQ example in contrib/
* build: don\'t pass -w when building for Windows
* refactor: Remove override for final overriders
* refactor: Use override for non-final overriders
* doc: add c++17-enable to fuzzing instructions
* build: Enable -Werror=sign-compare
* refactor: Rework asmap Interpret to avoid ptrdiff_t
* test: Fix outstanding -Wsign-compare errors
* fuzz: use std::optional for sep_pos variable
* test: Fix verack race to avoid intermittent test failures
* fuzz: fix vector size problem in system fuzzer
* util: Cleanup translation.h
* doc: Do not translate technical or extremely rare errors
* Make InitError bilingual
* Make ThreadSafe{MessageBox|Question} bilingual
* gui: Add detailed text to BitcoinGUI::message
* [ci] make list of previous releases to download a setting
* [test] backwards compatibility: bump v0.19.0.1 to v0.19.1
* [test] add v0.16.3 backwards compatibility test
* depends: Add --sysroot option to mac os native compile flags
* build: remove -Qunused-arguments workaround for clang + ccache
* test: Fix intermittent sync_blocks failures
* build: make linker checks more robust
* Add asmap_direct fuzzer that tests Interpreter directly
* Make asmap Interpreter errors fatal and fuzz test it
* Add additional effiency checks to sanity checker
* Add asmap sanity checker
* Improve asmap Interpret checks and document failures
* Deal with decoding failures explicitly in asmap Interpret
* Introduce Instruction enum in asmap
* wallet: Fix typo in assert that is compile-time true
* build: warn on potentially uninitialized reads
* doc: Fix typo in Coin doxygen comment
* net: remove is{Empty,Full} flags from CBloomFilter, clarify CVE fix
* rel-builds: Specify core.abbrev for git-rev-parse
* build: Accomodate makensis v2.x
* guix: Remove logical cores requirement
* lint: Also enable source statements for non-gitian
* rel-builds: Directly deploy win installer to OUTDIR
* nsis: Specify OutFile path only once
* guix: Expose GIT_COMMON_DIR in container as readonly
* guix: Make source tarball using git-archive
* gitian: Limit sourced script to just assignments
* Get rid of BindWallet
* Disable CWalletTx copy constructor
* Avoid copying CWalletTx in LoadToWallet
* Get rid of unneeded CWalletTx::Init parameter
* Remove CWalletTx merging logic from AddToWallet
* contrib: Remove optimize-pngs.py script, which lives in the maintainer repo
* valgrind : remove duplicate BCLog::Logger suppression
* valgrind: remove rest_blockhash_by_height suppression
* wallet: Make sure no WalletDescriptor members are uninitialized after construction
* wallet: Make sure no DescriptorScriptPubKeyMan members are uninitialized after construction
* build: add -Wgnu to compile flags
* Remove use of non-standard zero variadic macros
* Drop unused LOG_TIME_MICROS helper
* prevector: Avoid unnamed struct, which is a GNU extension
* lockedpool: avoid sensitive data in core files (FreeBSD)
* wallet: Remove trailing whitespace from potential translation strings
* wallet: Report full error message in wallettool
* wallet: Avoid translating RPC errors when creating txs
* wallet: Avoid translating RPC errors when loading wallets
* init: Remove boost from ThreadImport
* tests: Add fuzzing harness for MessageSign, MessageVerify and other functions in util/message.h
* Remove CCoinsViewCache::GetValueIn(...)
* gui: Add close window shortcut
* tests: feature_backwards_compatibility.py test downgrade after upgrade
* test: Fix p2p_leak intermittent issue
* test: Fix intermittent p2p_segwit issue
* test: add factor option to adjust test timeouts
* script: prevent UB when computing abs value for num opcode serialize
* test: Strip down previous releases boilerplate
* [wallet] Remove locked_chain from CWallet, its RPCs and tests
* [wallet] Move methods from Chain::Lock interface to simple Chain
* [wallet] Move getBlockHash from Chain::Lock interface to simple Chain
* [wallet] Move getBlockHeight from Chain::Lock interface to simple Chain
* [wallet] Move getHeight from Chain::Lock interface to simple Chain
* ci: Merge C++17 build with one of the existing ones
* tests: Clarify how we avoid hitting the signed integer overflow in CFeeRate::GetFeePerK() when fuzzing
* tests: Add fuzzing harness for IsRBFOptIn(...)
* tests: Add fuzzing harness for CBlockPolicyEstimator
* test: use unittest and test_runner for test framework unit testing
* test: fix message for ECC_InitSanityCheck test
* test: add test for witness commitment index
* validation: Add minimum witness commitment size constant
* fix: update rest info on block size and json
* Add C++17 test to Travis
* Add configure option for c++17
* Support conversion between Spans of compatible types
* Update ax_cxx_compile_stdcxx.m4
* util: Detect posix_fallocate() instead of assuming
* test: check misbehavior more independently in p2p_filter.py
* tests: Sort fuzzing harnesses
* tests: Add fuzzing coverage for JSONRPCTransactionError(...) and RPCErrorFromTransactionError(...)
* tests: Add fuzzing coverage for TransactionErrorString(...)
* tests: Add fuzzing coverage for ParseFixedPoint(...)
* tests: Add fuzzing coverage for FormatHDKeypath(...) and WriteHDKeypath(...)
* tests: Add fuzzing coverage for CHECK_NONFATAL(...)
* tests: Add fuzzing coverage for StringForFeeReason(...)
* tests: Add fuzzing harness for functions in system.h (ArgsManager)
* test: Add CreateWalletFromFile test
* test: Add mempool_updatefromblock.py
* ci: Fix default retry script usage
* test: added test for upgradewallet RPC
* bench: Start nodes with -nodebuglogfile
* Prevent valgrind false positive in rest_blockhash_by_height
* [mempool] Persist unbroadcast set to mempool.dat
* [test] Integration tests for unbroadcast functionality
* [refactor/test] Extract P2PTxInvStore into test framework
* [wallet] Update the rebroadcast frequency to be ~1/day.
* [p2p] Reattempt initial send of unbroadcast transactions
* [util] Add method that returns random time in milliseconds
* [mempool] Track \"unbroadcast\" transactions
* tests: Add missing sync_all to wallet_importdescriptors.py
* test: Fix wallet_bumpfee intermittent error
* ci: Add and document BASE_BUILD_DIR
* ci: Document why tests can not be run on mac
* doc: Better explain GNU ld\'s dislike of ld64\'s options
* qt: remove todo bug fix for old versions of Qt
* refactor: Drop unused ${WRAP_DIR}/${HOST} directory
* build: Drop make dist in gitian builds
* scripts: add PE .reloc section check to security-check.py
* ci: Run functional tests on mac again
* wallet: Recommned absolute path for dumpwallet
* Add a --descriptors option to various tests
* tests: Add RPCOverloadWrapper which overloads some disabled RPCs
* Correctly check for default wallet
* Implement CWallet::IsSpentKey for non-LegacySPKMans
* Return error when no ScriptPubKeyMan is available for specified type
* Change wallet_encryption.py to use signmessage instead of dumpprivkey
* Functional tests for descriptor wallets
* add importdescriptors RPC and tests for native descriptor wallets
* Add IsLegacy to CWallet so that the GUI knows whether to show watchonly
* Generate new descriptors when encrypting
* Be able to create new wallets with DescriptorScriptPubKeyMans as backing
* Implement GetMetadata in DescriptorScriptPubKeyMan
* Change GetMetadata to use unique_ptr
* Implement FillPSBT in DescriptorScriptPubKeyMan
* Implement SignMessage for descriptor wallets
* Implement SignTransaction in DescriptorScriptPubKeyMan
* Implement GetSolvingProvider for DescriptorScriptPubKeyMan
* Implement GetKeypoolOldestTime and only display it if greater than 0
* Implement ReturnDestination in DescriptorScriptPubKeyMan
* Implement GetReservedDestination in DescriptorScriptPubKeyMan
* Implement Unlock and Encrypt in DescriptorScriptPubKeyMan
* Implement GetNewDestination for DescriptorScriptPubKeyMan
* Implement TopUp in DescriptorScriptPubKeyMan
* Implement SetupGeneration for DescriptorScriptPubKeyMan
* Implement writing descriptorkeys, descriptorckeys, and descriptors to wallet file
* Implement several simple functions in DescriptorScriptPubKeyMan
* Add IsSingleType to Descriptors
* Implement loading of keys for DescriptorScriptPubKeyMan
* Load the descriptor cache from the wallet file
* Implement GetID for DescriptorScriptPubKeyMan
* Implement IsHDEnabled in DescriptorScriptPubKeyMan
* Implement MarkUnusedAddresses in DescriptorScriptPubKeyMan
* Implement IsMine for DescriptorScriptPubKeyMan
* Add LoadDescriptorScriptPubKeyMan and SetActiveScriptPubKeyMan to CWallet
* Implement SetType in DescriptorScriptPubKeyMan
* Store WalletDescriptor in DescriptorScriptPubKeyMan
* Add a lock cs_desc_man for DescriptorScriptPubKeyMan
* Introduce WalletDescriptor class
* Create LegacyScriptPubKeyMan when not a descriptor wallet
* Return nullptr from GetLegacyScriptPubKeyMan if descriptor wallet
* Add WALLET_FLAG_DESCRIPTORS
* Introduce DescriptorScriptPubKeyMan as a dummy class
* Introduce SetType function to tell ScriptPubKeyMans the type and internal-ness of it
* log: Use Join() helper when listing log categories
* test: Fix intermittent failure in wallet_importmulti
* test: Remove raw-tx byte juggling in mempool_reorg
* tests: Add fuzzing harness for functions in primitives/transaction.h
* tests: Add fuzzing harness for functions in primitives/block.h
* fuzz: Run in parallel
* doc: Document how to fuzz Bitcoin Core using honggfuzz
* test: use zero-argument super() shortcut (Python 3.0+)
* bench: add CAddrMan benchmarks
* [net processing] Move all const declarations to top of net_processing.cpp
* [validation] Move all const declarations to top of validation.h
* [validation] Move validation-only consts to validation.cpp
* [net processing] Move net processing consts to net_processing.cpp
* test: add coverage for -rpcwallet cli option
* refactor: test: use wait_for_getdata() in p2p_compactblocks.py
* test: Check submitblock return values
* fixing documentation to not require rpcpassword
* test: display command line options passed to send_cli() in debug log
* test: Fix intermittent error in mempool_reorg
* test: check for matching object hashes in wait_for_getdata
* wallet: Add BlockUntilSyncedToCurrentChain to dumpwallet
* [psbt] add file size limit
* [gui] load PSBT
* [gui] save PSBT to file
* Move DEFAULT_MAX_RAW_TX_FEE_RATE to node/transaction.h
* [util] GetFileSize
* [gui] send dialog: split on_sendButton_clicked
* test: Remove unused, undocumented and misleading CScript.__add__
* bench: Replace ::mempool globabl with test_setup.mempool
* bench: Remove requirement that all benches use RegTestingSetup
* [docs] use consistent naming for possible_overwrite
* [tests] small whitespace fixup
* scripted-diff: Rename PRUNED to SPENT in coins tests
* [docs] Improve commenting in coins.cpp|h
* script: Remove undocumented and unused operator+
* scripts: add MACHO LAZY_BINDINGS test to test-security-check.py
* scripts: add MACHO Canary check to security-check.py
* doc: fix typo in configure.ac
* doc: note why we can\'t use thread_local with glibc back compat
* [test] add 8 error messages to feature_segwit and change version to type
* test: Increase debugging to hunt down mempool_reorg intermittent failure
* test: Fix linter issue
* test: add further BIP37 size limit checks to p2p_filter.py
* tests: Add fuzzing harness for Golomb-Rice coding (GolombRiceEncode/GolombRiceDecode)
* build: Set libevent minimum version to 2.0.21
* ci: Remove xenial tsan workaround
* Merge getreceivedby tally into GetReceived function
* rpc: doc: Fix and extend getblockstats examples
* test: add more inactive filter tests to p2p_filter.py
* net: limit BIP37 filter lifespan (active between \'filterload\' and \'filterclear\')
* test: fix intermittent race condition in interface_bitcoin_cli.py
* test: add wait_for_cookie_credentials() to test framework
* wallet: Refactor WalletRescanReserver to use wallet reference
* scripted-diff: test: replace command with msgtype
* Remove -upgradewallet startup option
* Add upgradewallet RPC
* Make UpgradeWallet a member function of CWallet
* Have UpgradeWallet take the version to upgrade to and an error message out parameter
* Only run UpgradeWallet if the wallet needs to be upgraded
* Move wallet upgrading to its own function
* [tests] Don\'t initialize PrecomputedTransactionData in txvalidationcache tests
* test: Properly raise FailedToStartError when rpc shutdown before warmup finished (take 2)
* test: Replace boost::mutex with std::mutex
* test: Bump timeout in wallet_import_rescan
* [wallet] allow transaction without change if keypool is empty
* [wallet] CreateTransaction: simplify change address check
* [wallet] translate \"Keypool ran out\" message
* fuzz: http_request workaround for libevent < 2.1.1
* test: Create cached blocks not in the future
* ci: Disable valgrind functionl tests on forked repos to avoid timeouts
* rpc: Document all aliases for first arg of listtransactions
* rpc: Document all aliases for second arg of getblock
* rpc: Rename first arg of generateblock RPC to \"output\"
* test: Move boost/stdlib includes last
* scripted-diff: Bump copyright headers
* scripted-diff: Sort test includes
* fuzz: fix unused variable compiler warning
* rpc: settxfee respects -maxtxfee wallet setting
* test: Improve naming and logging of avoid_reuse tests
* wallet: Prefer full destination groups in coin selection
* refactor: Remove unused methods CBloomFilter::reset()/clear()
* bnb: exit selection when best_waste is 0
* util: Document why ArgsManager (con/de)structor is not inline
* bench: Remove unused argsman.ClearArgs
* scripted-diff: Replace gArgs with local argsman in bench
* tools: Add unused argsman to bench_bitcoin
* ci: Limit cache size regardless of NO_DEPENDS
* tests: have coins simulation test also use CCoinsViewDB
* test: Verify findCommonAncestor always initializes outputs
* test: add -getinfo \"unlocked_until\" and \"headers\" coverage
* test: verify cli.getwalletinfo in wallet section
* test: verify bitcoin-cli -version with node stopped
* test: add coverage for bitcoin-cli -rpcwait
* [REFACTOR] Initialize PrecomputedTransactionData in CheckInputScripts
* fuzz: Disable debug log file
* test: Add optional extra_args to testing setup
* node: Add args alias for gArgs global
* [doc] Update thread information in developer docs
* test: Avoid accessing free\'d memory in validation_chainstatemanager_tests
* test: Add various low-level p2p tests
* gui: use PACKAGE_NAME in exception message
* gitian: add jonatack gpg key fingerprint
* Added my fingerprint Stephan Oeste (Emzy)
* build: add linker optimization flags to guix
* build: add linker optimization flags to gitian descriptors
* script: Disallow silent bool -> CScript conversion
* appveyor: Disable functional tests for now
* wallet: Avoid use of Chain::Lock in CWallet::GetKeyBirthTimes
* wallet: Avoid use of Chain::Lock in CWallet::CreateTransaction
* wallet: Avoid use of Chain::Lock in CWallet::ScanForWalletTransactions
* wallet: Avoid use of Chain::Lock in rescanblockchain
* wallet refactor: Avoid use of Chain::Lock in CWallet::RescanFromTime
* wallet: Avoid use of Chain::Lock in listsinceblock
* wallet: Avoid use of Chain::Lock in importmulti
* wallet: Avoid use of Chain::Lock in importwallet and dumpwallet
* wallet: Avoid use of Chain::Lock in importprunedfunds
* wallet refactor: Avoid use of Chain::Lock in qt wallettests
* wallet: Avoid use of Chain::Lock in tryGetTxStatus and tryGetBalances
* refactor: Add interfaces::FoundBlock class to selectively return block data
* Use getbalances in wallet_address_types tests
* Shift coverage from getunconfirmedbalance to getbalances in wallet_abandonconflict tests
* Improve getbalances coverage in wallet_balance tests
* ci: Add pip cache
* ci: Print ccache statistics summary
* ci: Drop unused WINEDEBUG variable
* rpc: Remove deprecated \"size\" from mempool txs
* test: add rpc_signrawtransaction logging
* test: refactor rpc_signrawtransaction witness script tests
* test: Try once more when RPC connection fails on Windows
* test: Document why connection is re-constructed on windows
* test: Remove python 3.4 workaround
* doc: default minconf for getbalance should be 0
* test: Extend wallet_dump test to cover comments
* test: Check that the version message does not leak the local address of the node
* test: Remove REJECT message code
* refactor: test: improve wait_for{header,merkleblock} interface
* test: complete impl. of msg_merkleblock and wait_for_merkleblock
* rpc: Remove deprecated migration code
* guix: Appease travis.
* guix: Use gcc-9 for mingw-w64 instead of 8
* guix: Don\'t set MINGW_HAS_SECURE_API CFLAG in depends
* guix: Bump to upstream commit with mingw-w64 changes
* guix: Check mingw symbols, improve SSP fix docs
* guix: Expand on INT trap message
* guix: Spelling fixes
* guix: Reinstate make-ssp-fixed-gcc
* guix: Bump time-machine for mingw-w64 patches
* guix: Use gcc-8 for mingw-w64 instead of 7
* guix: Set the well-known timezone env var
* guix: Make x86_64-w64-mingw32 builds reproducible
* guix: Remove dead links from README.
* guix: Appease shellcheck.
* guix: Improve guix-build.sh documentation
* guix: Build support for Windows
* Revert \"Merge #16367: Multiprocess build support\"
* gui: Avoid redundant tx status updates
* Add tests for generateblock
* Add generateblock rpc
* protect g_chainman with cs_main
* test: add basic tests for ChainstateManager
* use ChainstateManager to initialize chainstate
* refactor: move RewindBlockIndex to CChainState
* validation: introduce unused ChainstateManager
* validation: add CChainState.m_from_snapshot_blockhash
* [consensus] MOVEONLY: Move single-sig checking EvalScript code to EvalChecksig
* refactor: Use psbt forward declaration
* Add ChainClient setMockTime, getWallets methods
* depends: Use default macos clang compiler
* Add multiprocess travis configuration
* Set LD_LIBRARY_PATH consistently in travis tests
* libmultiprocess depends build
* Multiprocess build changes
* Drop bitcoin-wallet dependency on libevent
* Drop unintended bitcoin-tx dependency on libevent
* test: update and harden interface_bitcoin_cli tests
* cli -getinfo: use getbalances instead of deprecated getwalletinfo balance
* Release 0.11 (#623)
* old commits should not override new dev releases
* do not cache common downloads
* fetch single, relevant tag
* get release message from tag
* Fri Jun 03 2022 marecAATTdetebe.org- Update to version 0.11.8:
* version bump
* need to specify timestamp for v3 transactions
* handle delegated minting in transaction view
* fix listminting to show imported coinstake
* demote duplicity of stake
* Thu Apr 21 2022 marecAATTdetebe.org- Update to version 0.11.7:
* version bump
* fix comment
* fix parameters to AcceptToMemoryPool
* allow minter thread to recover from exceptions
* correct coinstake logic and style
* allow pubkey vouts in create raw transaction
* try to mint within allowed time
* Update build.yml (#632)
* don\'t override transaction time
* Fri Apr 08 2022 marecAATTdetebe.org- Update to version 0.11.6:
* version bump
* importcoinstake method
* Update build.yml
* add coinstake support to create transaction
* add timestamp support to rpc methods
* Add comma to README.md
* Update logo to the newest version
* Rework overriding of transaction version
* good bye old clients
* version bump
* let\'s allow overriding of transaction version
* Sun Jan 30 2022 marecAATTdetebe.org- Update to version 0.11.5:
* Rework overriding of transaction version
* good bye old clients
* version bump
* let\'s allow overriding of transaction version
* Create stale.yml
* set minting icon for mint transactions in overview
* Thu Jan 06 2022 marecAATTdetebe.org- Update to version 0.11.4:
* add more libraries to allowed list of macosx
* Update of copyright year to 2022
* please compiler
* version bump
* remove prune residue
* add check for latest version from github
* Fri Dec 24 2021 marecAATTdetebe.org- Update to version 0.11.3:
* version bump
* keep unlocked for minting state after further unlocks
* Changed Bitcoin to Peercoin in Cyrillic
* Remove some sync-checkpoint residue
* version bump
* fix transaction age in minting table
* Update mintingtablemodel.cpp
* Update mintingview.cpp
* Thu Nov 11 2021 marecAATTdetebe.org- Update to version 0.11.2:
* get rid of prune residue in welcome message
* allow more decimals to rpc, handle only 6
* Wed Nov 03 2021 marecAATTdetebe.org- Update to version 0.11.1:
* Update README.md
* sudo might be needed directly in the vm
* skip release job if not on the version tag or develop branch
* check for noop on release
* automate releases
* Delete .travis.yml
* Hardened checkpoint update for v0.11.0 mainnet
* install appimagecraft from github
* version bump
* v3 is the new standard
* improve github actions integration (#604)
* fix SEGFAULT when using -disablewallet
* Instead of the initial pop-up unlocking the wallet, decrypt it for minting only.
* return txindex command line option even though it does not do anything anymore
* Delete contrib/vagrant directory
* Fri Oct 01 2021 marecAATTdetebe.org- Update to version 0.11.0:
* final tardigrade image
* let\'s allow right fees for v3 txns
* one more checkpoint to steer testnet to right waters
* let\'s use blocktime where nTime is not available
* let\'s use derived time for display purposes
* new hardened checkpoint for pleasant 0.11 testnet
* fork date for main net is 1st of November
* don\'t serialize nTime for version 3 and above
* coinstake remains version 2 for now
* start enforcing low_s
* more fixes for minting
* preliminary work to let mints of new transactions possible
* let\'s accept lower fees for new transactions
* set pos flag after reading block from disk
* new hardened checkpoint for testnet
* let segwit mint again
* don\'t hash the hash
* get rid of prune residue
* stop complaining you stupid compiler
* make splitting coins during minting optional
* new hardened checkpoint for testnet
* allow v3 transaction into mempool
* remove latest testnet checkpoints
* fix rfc22 cap
* version bump to tardigrade
* version bumps
* allow new transaction as standard after the fork only
* rfc22 pow reward cap at 50ppc
* fork dates are set to 1st of July for testnet and 4th of October for mainnet
* allow specification of ntime in peercoin-tx
* add peercoin sigs
* Use latest signapple commit
* gitian: Remove codesign_allocate and pagestuff from MacOS build
* gitian: use signapple to create the MacOS code signature
* gitian: use signapple to apply the MacOS code signature
* gitian: install signapple in gitian-osx-signer.yml
* rm appimage.yml
* Corrected romanian letters and errors (#580)
* version bump
* sync checkpoints purge
* Delete SECURITY.md
* Update build-unix.md
* network format does not match disk format unfortunately
* Develop (#569)
* Update build.yml
* Update README.md
* fix java exclusion
* Update sonar-project.properties
* sonar-project.properties
* Added build.yml for Sonarcloud
* Update README.md
* update readme
* Update README.md
* drop seed by 7server.net
* rm some stub files
* rm bitcoin release notes
* cleanup seeds
* fix qt dpi scaling attribute complaint
* Mon Aug 02 2021 marecAATTdetebe.org- Update to version 0.10.4:
* version bump to 0.10.4
* set pos flag after reading block from disk
* get rid of prune residue
* let segwit mint again
* don\'t hash the hash
* more merge wtfs
* Wed Jun 23 2021 marecAATTdetebe.org- Update to version 0.10.3:
* version bump to 0.10.3
* remove tests that don\'t apply to peercoin
* remove trace of sync checkpoints from configure.ac
* clean up listminting
* clear up pos spam protection
* remove unused variables
* missing pooledtx in getmininginfo
* remove old fee logic
* more merge wtfs removed
* Update build-unix.md
* return rpc config
* Thu Jun 10 2021 marecAATTdetebe.org- Update to version 0.10.2:
* version bump to 10.2
* fix listunspent
* remove alerts subsystem
* add peercoin-wallet man
* fix openssl include
* Corrected romanian letters and errors (#580)
* version bump
* sync checkpoints purge
* Delete SECURITY.md
* Update build-unix.md
* network format does not match disk format unfortunately
* Backport invalid address tests
* naming nits
* Use Bech32m encoding for v1+ segwit addresses
* Add Bech32m test vectors
* Implement Bech32m encoding/decoding
* [doc] Add permissions to the getpeerinfo help.
* doc: Extract net permissions doc
* rpc: Add missing description of vout in getrawtransaction help text
* doc: Update manual pages pre-rc1
* gui: Pre-rc1 translations update
* build: Bump version to 0.20.2rc1
* tests: Test that a fully signed tx given to signrawtx is unchanged
* Revert \"Merge #19606: Backport wtxid relay to v0.20\"
* doc: Update data directory path comments
* util: Add StripRedundantLastElementsOfPath function
* macOS deploy: use the new plistlib API
* build: fix mutex detection when building bdb on macOS
* random: fixes read buffer resizing in RandAddSeedPerfmon
* net: Send post-verack handshake messages at most once
* rpc: Adjust witness-tx deserialize error message
* rpc: Properly deserialize txs with witness before signing
* Avoid the use of abs64 in timedata
* docs: Correct description for getblockstats\'s txs field
* build: set minimum required Boost to 1.48.0
* Further improve comments around recentRejects
* Disconnect peers sending wtxidrelay message after VERACK
* test: Use wtxid relay generally in functional tests
* test: Add tests for wtxid tx relay in segwit test
* test: Update test framework p2p protocol version to 70016
* Rename AddInventoryKnown() to AddKnownTx()
* Make TX_WITNESS_STRIPPED its own rejection reason
* Delay getdata requests from peers using txid-based relay
* Add p2p message \"wtxidrelay\"
* ignore non-wtxidrelay compliant invs
* Add support for tx-relay via wtxid
* Add wtxids to recentRejects
* Add wtxids of confirmed transactions to bloom filter
* Add wtxid-index to orphan map
* Add a wtxid-index to mapRelay
* Just pass a hash to AddInventoryKnown
* Add a wtxid-index to the mempool
* Update the vcpkg checkout commit ID in appveyor config.
* Set appveyor vm version to previous Visual Studio 2019 release.
* Simplify and fix CWallet::SignTransaction
* test addition of unknown segwit spends to txid reject filter
* Add txids with non-standard inputs to reject filter
* doc: Update 0.20.1 release notes with psbt changes
* build: Bump version to 0.20.1-final
* [0.20] lint: fix shellcheck URL in CI install
* doc: Add changelog and authors to release notes for 0.20.1
* qt: Translation update for 0.20.1rc1
* doc: Regenerate man pages for 0.20.1rc1
* build: Bump version to 0.20.1rc1
* qt: Fix QFileDialog for static builds
* Increment input value sum only once per UTXO in decodepsbt
* Remove cached directories and associated script blocks from appveyor CI configuration.
* appveyor: Remove clcache
* doc: move-only release notes for 0.20.1
* doc: Clear release notes for minor release
* Clean up separated ban/discourage interface
* Replace automatic bans with discouragement filter
* test: remove Cirrus CI FreeBSD job
* qa: Test concurrent wallet loading
* wallet: Handle concurrent wallet loading
* tests: Check that segwit inputs in psbt have both UTXO types
* psbt: always put a non_witness_utxo and don\'t remove it
* psbt: Allow both non_witness_utxo and witness_utxo
* rpc: show both UTXOs in decodepsbt
* trivial: Suggested cleanups to surrounding code
* wallet: Minimal fix to restore conflicted transaction notifications
* Fix WSL file locking by using flock instead of fcntl
* gui: update Qt base translations for macOS release
* build: improved output of configure for build OS
* util: Don\'t reference errno when pthread fails.
* Add missing QPainterPath include
* doc: Manpages update pre-final
* build: Set rc to 0 for -final
* doc: Merge 0.20.0 release notes from wiki
* build: Bump RC to rc2
* qt: Pre-rc2 translations update
* test: disable script fuzz tests
* fuzz: Remove enumeration of expected deserialization exceptions in ProcessMessage(...) fuzzer
* [net processing] Only send a getheaders for one block in an INV
* test: Remove const to work around compiler error on xenial
* miner: Avoid stack-use-after-return in validationinterface
* test: Add unregister_validation_interface_race test
* gui: Fix manual coin control with multiple wallets loaded
* test: Add test for conflicted wallet tx notifications
* rpc: Relock wallet only if most recent callback
* rpc: Add mutex to guard deadlineTimers
* [docs] Improve commenting in ProcessGetData()
* [test] test that an invalid GETDATA doesn\'t prevent processing of future messages
* [net processing] ignore unknown INV types in GETDATA messages
* [net processing] ignore tx GETDATA from blocks-only peers
* gui: Fix itemWalletAddress leak when not tree mode
* travis: Remove s390x
* travis: Remove valgrind
* build: Ensure source tarball has leading directory name
* rpc: Do not advertise dumptxoutset as a way to flush the chainstate
* Fix naming of macOS SDK and clarify version
* Do not expose and consider -logthreadnames when it does not work
* build: fix ASLR for bitcoin-cli on Windows
* build: Set libevent minimum version to 2.0.21
* Avoid non-trivial global constants in SHA-NI code
* gitian: Add missing automake package to gitian-win-signer.yml
* qt: Update translations pre-rc1
* doc: Update manpages pre-rc1
* build: Bump version to 0.20.0
* Correct scripted-diff example link
* ci: Rename RUN_CI_ON_HOST to DANGER_RUN_CI_ON_HOST
* ci: Add native s390x
* test: Set -use_value_profile=1 when merging fuzz inputs
* tests: Add coverage of {,Incremental}DynamicUsage(const std::set& s) to existing fuzzer
* tests: Add fuzzing harness for classes/functions in cuckoocache.h
* tests: Add fuzzing harness for classes/functions in checkqueue.h
* tests: Add coverage of GetVirtualTransactionSize(...) to existing fuzzer
* tests: Add fuzzing harness for AdditionOverflow(...)
* tests: Add fuzzing harness for FeeFilterRounder
* ci: Run unit tests sequential once
* appveyor: Enable minimal unit test logging to aid debugging
* Fix unregister_all_during_call cleanup
* test: Properly raise FailedToStartError when rpc shutdown before warmup finished
* build: Update ax_boost_mase.m4 to the latest serial
* Add test for UnregisterAllValidationInterfaces bug
* Do not clear validationinterface entries being executed
* Reorder the test instructions by number
* Merge and generalize case 3 and case 6
* Only run sanity check once at the end
* Assert immediately rather than caching failure
* Make a fuzzer-based copy of the prevector randomized test
* qt: Fix Window -> Minimize menu item
* Wallet: Change IsMine check in CWallet::DelAddressBook from assert to failure
* Wallet: Replace CAddressBookData.name with GetLabel() method
* QA: Test that change doesn\'t turn into non-change when spent in an avoid-reuse wallet
* test: Use one node to avoid a race due to missing sync in rpc_signrawtransaction
* rpc: Make verifychain default values static, not depend on global args
* test: wallet_bumpfee assertion fixup
* test: relax bumpfee dust_to_fee txsize an extra vbyte
* Remove PID file at the very end
* tests: Add fuzzing harness for HTTPRequest, libevent\'s evhttp and related functions
* test: skip backwards compat tests if not compiled with wallet
* scripted-diff: Replace strCommand with msg_type
* rpc: Avoid initialization-order-fiasco on static CRPCCommand tables
* fuzz: Add process_messages harness
* build: create test_fuzz library from src/test/fuzz/fuzz.cpp
* tests: Add proof-of-work fuzzing harness
* refactor: drop boost::signals2 in validationinterface
* scripts: add MACHO lazy bindings check to security-check.py
* test: remaining replacements of (send_message+sync_with_ping) with send_and_ping
* fuzz: Extend script fuzz test
* fuzz: Extend descriptor fuzz test
* test: remove rapidcheck integration and tests
* net: Hardcoded seeds update for 0.20
* test: add BIP37 remote crash bug [CVE-2013-5700] test to p2p_filter.py
* [doc] fix git add argument
* fuzz: Add CScriptNum::getint coverage
* fuzz: Avoid running over all inputs after merging them
* Wallet: Add warning comments and assert to CWallet::DelAddressBook
* Wallet: Avoid unnecessary/redundant m_address_book lookups
* rpc: Fix rpcRunLater race in walletpassphrase
* Wallet: Avoid treating change-in-the-addressbook as non-change everywhere
* Wallet: New FindAddressBookEntry method to filter out change entries (and skip ->second everywhere)
* Wallet: Add CAddressBookData::IsChange which returns true iff label has never been set
* Wallet: Require usage of new CAddressBookData::setLabel to change label
* scripted-diff: Wallet: Rename mapAddressBook to m_address_book
* test: Add basic addr relay test
* Bugfix: RPC: JSON null is not \"None\"
* Bugfix: RPC: Don\'t use a continuation elipsis after an elision elipsis
* Bugfix: RPC: Add missing commas and correct indentation of explicit ELISION
* net: Pass connman const when relaying address
* doc: Update webchat URLs in README.md
* init: Replace URL_WEBSITE with PACKAGE_URL
* build: Detect gmtime_
* definitions via configure
* chainparams: Bump assumed valid hash
* rpc: Make rpc documentation not depend on rpc args
* test: replace (send_message + sync_with_ping) with send_and_ping
* test: remove redundant sync_with_ping after add_p2p_connection
* qt: Translations update pre-branch
* Correctly compute redeemScript from witnessScript for signrawtransaction
* doc: Explain new test logging
* test: Remove redundant sync_with_ping after add_p2p_connection
* test: Wait for both veracks in add_p2p_connection
* gui: Delete progress dialog instead of hidding it
* wallet: Handle duplicate fileid exception
* doc: note the costs of fetching all pull requests
* test: add BIP37 \'filterclear\' test to p2p_filter.py
* ci: Use Focal for fuzzers
* test: check that peer is connected when calling sync_
*
* test: Remove unsafe BOOST_TEST_MESSAGE
* doc: block-relay-only is not blocksonly
* net: Add missing cs_vNodes lock
* tests: Add fuzzing harness for functions/classes in random.h
* tests: Add fuzzing harness for LimitedString (serialize.h)
* tests: Add fuzzing harness for functions/classes in span.h
* tests: Add fuzzing harness for functions/classes in merkleblock.h
* tests: Add fuzzing harness for functions/classes in flatfile.h
* Update -blocksonly documentation
* rpc: remove unused getbalances() code
* Bugfix: RPC: Remove final comma for last entry of fixed-size Arrays and Objects in RPCResult
* serialization: prevent int overflow for big Coin::nHeight
* net: Make addr relay mockable
* gui: Handle WalletModel::unload asynchronous
* Fix wallet unload race condition
* util: Replace i64tostr with ToString
* util: Remove unused itostr
* Limit decimal range of numbers ParseScript accepts
* test: add coverage for script parse error in ParseScript
* tests: Add fuzzing harness for functions/classes in chain.h
* tests: Add fuzzing harness for functions/classes in protocol.h
* ci: Remove misplaced comments from folded block scalar
* wallet: remove CreateTotalBumpTransaction()
* wallet: remove totalfee from createBumpTransaction()
* rpc: remove deprecated totalFee arg from RPC bumpfee
* ci: Use Homebrew addon on native macOS
* ci: Fix brew in Travis
* scripts: rename test_64bit_PE to test_PE
* scripts: add MACHO NX check to security-check.py
* scripts: add MACHO tests to test-security-check.py
* ci: Only clone bitcoin-core/qa-assets when fuzzing
* build: remove double LIBBITCOIN_SERVER from bench-Makefile
* test: Add basic test for BIP 37
* [scripts] previous_release: improve failed download error message
* tests: Add fuzzing harness for classes/functions in blockfilter.h
* tests: Add integer serialization/deserialization fuzzing harness
* Update with new Windows code signing certificate
* test: listsinceblock block height checks
* tests: Add fuzzing harness for functions in net_permissions.h
* tests: Add fuzzing harness for functions in timedata.h
* tests: Add fuzzing harness for functions in addrdb.h
* gui: avoid QT Designer/Form Editor re-formatting
* gui: display Mapped AS in peers info window
* Make VerifyWitnessProgram use a Span stack
* script: fix SCRIPT_ERR_SIG_PUSHONLY error string
* Check for overflow when calculating sum of outputs
* test: add executable flag for rpc_estimatefee.py
* ci: Run feature_block and feature_abortnode in valgrind
* tests: Don\'t assume presence of __builtin_mul_overflow in MultiplicationOverflow(...) fuzzing harness
* test: delete wallet_bumpfee_totalfee_deprecation.py
* test: update bumpfee testing from totalFee to fee_rate
* scripts: add PE dylib checking to symbol-check.py
* rpc: fix broken RPCExamples for waitforblock(height)
* build: Fix typo in EVENT_CFLAGS variable
* build: Fix libevent linking for bench_bitcoin binary
* rpc: add missing HelpExampleRpc for getblockfilter
* test: Remove ci timeout restriction in test_runner
* doc: Add internal interface conventions to developer notes
* refactor: Change createWallet, fillPSBT argument order
* refactor: Change Chain::broadcastTransaction param order
* refactor: Rename Chain::Notifications methods to be consistent with other interfaces methods
* refactor: Rename Node::disconnect methods
* refactor: Get rid of Wallet::IsWalletFlagSet method
* doc: Temporary note that release notes should be edited in wiki
* build: fix sysctl() detection on macOS
* doc: Add fuzzing quickstart guides for libFuzzer and afl-fuzz. Simplify instructions.
* Add bn2vch test to functional tests
* Simplify bn2vch using int.to_bytes
* Update merkle.cpp
* net: fix use-after-free in tests
* test: use fs namespace in dbwrapper unicodepath test
* doc: mention MAKE=gmake workaround when building on a BSD
* tests: Add harness which fuzzes EvalScript and VerifyScript using a fuzzed signature checker
* tests: simplify next_block() function in feature_block
* doc: fix GetTimeMicros() comment in random.cpp
* rand: remove getentropy() fallback for macOS < 10.12
* tx: Bump transifex slug to 020x
* qt: Periodical translations update
* Fix missing header in sync.h
* build: Drop needless EXTRA_DIST content
* tests: Add fuzzing harness for various functions taking std::string as input
* tests: Add fuzzing harness for MultiplicationOverflow(...)
* tests: Add fuzzing harness for CFeeRate
* tests: Add fuzzing harness for CBlockHeader
* tests: Add fuzzing harness for count_seconds(...)
* test: Bump timeouts to avoid valgrind failures
* Replace std::to_string with locale-independent alternative
* Fix mining to an invalid target + ensure that a new block has the correct hash internally in Python tests
* Replace remaining literals BTC with CURRENCY_UNIT
* rpc: Document an RPCResult for all calls; Enforce at compile time
* rpc: Add missing newline in RPCResult description
* Fix nit in getblockchaininfo
* util: Fail to parse space-only strings in ParseMoney(...) (instead of parsing as zero)
* refactor: Remove mempool global from net
* build: Drop SOURCEDIST reordering
* build: Use git archive as source tarball
* [mempool] Remove NotifyEntryAdded and NotifyEntryRemoved callbacks
* [validation] Remove pool member from ConnectTrace
* [validation] Remove NotifyEntryRemoved callback from ConnectTrace
* [validation] Remove conflictedTxs from PerBlockConnectTrace
* [validation interface] Remove vtxConflicted from BlockConnected
* [wallet] Notify conflicted transactions in TransactionRemovedFromMempool
* guix: Remove now-unnecessary gcc make flag
* fuzz: Add missing ECC_Start to key_io test
* test: Bump rpc timeout in feature_assumevalid to avoid valgrind timeouts
* test: Bump walletpassphrase timeouts in wallet_createwallet to avoid valgrind timeouts
* util: HelpExampleRpc formatting fixup
* tests: Add fuzzing of CSubNet, CNetAddr and CService related functions
* tests: Fuzz HasAllDesirableServiceFlags(...) and MayHaveUsefulAddressDB(...)
* tests: Fuzz DecodeBase64PSBT(...)
* tests: Simplify code by removing unwarranted use of unique_ptr:s
* tests: Fuzz DecodeHexBlk(...)
* tests: Fuzz RecursiveDynamicUsage(const std::shared_ptr& p)
* tests: Fuzz operator!= of CService
* tests: Increase fuzzing coverage of DecompressScript(...)
* tests: Fuzz currently uncovered code path in TxToUniv(...)
* tests: Re-arrange test cases in parse_univalue to increase coverage
* doc: Explain rebase/squash policy in CONTRIBUTING.md
* tests: Remove unit test from fuzzing harness
* tests: Add deserialization fuzzing of SnapshotMetadata (utxo_snapshot), uint160 and uint256
* tests: Add one specialized ProcessMessage(...) fuzzing binary per message type for optimal results when using coverage-guided fuzzing
* tests: Add fuzzing harness for ProcessMessage(...)
* ci: Enable all functional tests in valgrind
* bumpfee test: exit loop at proper time with new fee value being compared
* Add some test logging to wallet_bumpfee.py
* doc: asmap release note
* fuzz: Remove option --export_coverage from test_runner
* refactor: move DUMP_BANS_INTERVAL to banman.h
* scheduler: Make schedule
* methods type safe
* test: Explain why test logging should be used
* qa: Add getdescriptorinfo functional test
* Make lifetime correctness easier to see (avoid reference lifetime extension)
* tests: Add fuzzing harness for CScriptNum operations
* test: add logging to wallet_listsinceblock.py
* tests: Add fuzzing harness for CScript operations
* tests: Add common Consume
* fuzzing functions
* doc: Warn about wallet.dat re-use and backups
* doc: Add historical release notes for 0.19.1
* tests: Remove FUZZERS_MISSING_CORPORA
* tests: Add basic fuzzing harness for CNetAddr/CService/CSubNet related functions (netaddress.h)
* Clear any input_errors for an input after it is signed
* Replace GetSigningProvider with GetSolvingProvider
* Move direct calls to MessageSign into new SignMessage functions in CWallet and ScriptPubKeyMan
* Move key and script filling and signing from CWallet::FillPSBT to ScriptPubKeyMan::FillPSBT
* Move FillPSBT to be a member of CWallet
* fuzz: Add option to merge input dir to test runner
* doc: Remove --disable-ccache from docs
* tests: Reset FUZZERS_MISSING_CORPORA to enable regression fuzzing for more harnesses
* rpc/wallet: initialize nFeeRequired to avoid using garbage value on failure
* Use CWallet::SignTransaction in CreateTransaction and signrawtransactionwithwallet
* Implement CWallet::SignTransaction using ScriptPubKeyMan::SignTransaction
* Add SignTransaction function to ScriptPubKeyMan and LegacyScriptPubKeyMan
* Refactor rawtransaction\'s SignTransaction into generic SignTransaction function
* fuzz: Add assert(script == decompressed_script)
* build: Set minimum Automake version to 1.13
* Cache parent xpub inside of BIP32PubkeyProvider
* Only cache xpubs that have a hardened last step
* Cache the immediate derivation parent xpub
* Add DescriptorCache
* read_cache and DescriptorCache
* write_cache to Expand and GetPubKey
* Rename BIP32PubkeyProvider.m_extkey to m_root_extkey
* Track the index of the key expression in PubkeyProvider
* Introduce DescriptorCache struct which caches xpubs
* tests: Fuzz additional functions in the script fuzzing harness
* tests: Fuzz additional functions in the transaction fuzzing harness
* scheduler: Use C++11 member initialization, add shutdown assert
* tests: Fuzz additional functions in the integer fuzzing harness
* tests: Fuzz additional functions in the hex fuzzing harness
* tests: Add key_io fuzzing harness
* doc: remove Boost Chrono from install docs
* test: remove Boost Chrono installation from CI
* build: remove Boost Chrono detection from build system
* build: remove chrono package from depends Boost
* build: Add locale fuzzer to FUZZERS_MISSING_CORPORA
* test: Check that wait_until returns if time point is in the past
* lint-cppcheck: Remove -DHAVE_WORKING_BOOST_SLEEP_FOR
* tests: Add fuzzing harness for locale independence testing
* scheduler_tests: re-enable mockforward test
* Drop unused reverselock.h
* scheduler: switch from boost to std
* sync.h: add REVERSE_LOCK
* scheduler: don\'t rely on boost interrupt on shutdown
* tests: Add fuzzing harness for CKey related functions
* tests: Add float to FUZZERS_MISSING_CORPORA (temporarily)
* tests: Add serialization/deserialization fuzzing for integral types
* compressor: Make the domain of CompressAmount(...) explicit
* [rpc] changed MineBlocksOnDemand to IsMockableChain
* Remove redundant type information from rpc docs
* refactor: Cast ping values to double before output
* lockedpool: When possible, use madvise to avoid including sensitive information in core dumps
* refactor: Convert ping wait time from double to int64_t
* refactor: Convert min ping time from double to int64_t
* refactor: Convert ping time from double to int64_t
* doc: Merge release notes for 0.20.0 release
* init: move asmap code earlier in init process
* rpc: fix getpeerinfo RPCResult `mapped_as` type
* net: extract conditional to bool CNetAddr::IsHeNet
* logging: asmap logging and #include fixups
* test: add functional test for an empty, unparsable asmap
* config: separate the asmap finding and parsing checks
* config: enable passing -asmap an absolute file path
* config: use default value in -asmap config
* test: add feature_asmap functional tests
* test: Add bad-txns-
*-toolarge test cases to invalid_txs
* doc: Correct spelling errors in comments
* test: Bump timeouts to accomodate really slow disks
* wallet: use constant CWallets in rpcwallet.cpp
* wallet: make ReserveDestination pwallet ivar const
* wallet: make BackupWallet() const
* wallet: make getters const
* wallet/spkm: make GetOldestKeyPoolTime() const
* wallet: use constant CWallets in rpcdump.cpp
* wallet/db: make IsDummy() const
* wallet/db: make Backup() const
* wallet: make CanGetAddresses() const
* wallet: make KeypoolCountExternalKeys() const
* wallet: make CanGenerateKeys() const
* make BlockUntilSyncedToCurrentChain() const
* Change example addresses to bech32
* Drop unused mach time headers
* test: Add missing syncwithvalidationinterfacequeue
* test: add unit test for non-standard \"scriptsig-not-pushonly\" txs
* refactor: test/bench: dedup SetupDummyInputs()
* test: check specific reject reasons in feature_csv_activation.py
* util: Fail to parse empty string in ParseMoney
* util: Remove unused ParseMoney that takes a c_str
* Make AnalyzePSBT next role calculation simple, correct
* test: eliminiated magic numbers in feature_csv_activation.py
* test: check for OP_CSV empty stack fail reject reason in feature_csv_activation.py
* test: test OP_CSV empty stack fail in feature_csv_activation.py
* Templatize ValidationState instead of subclassing
* Remove ValidationState\'s constructor
* Refactor FormatStateMessage into ValidationState
* test: Fix race in p2p_segwit
* Add missing step in win deployment instructions
* build: add --enable-determinism configure flag
* test: check custom descendant limit in mempool_packages.py
* test: Disable mockforward scheduler unit test for now
* Convert blockencodings.h to new serialization framework
* Add CustomUintFormatter
* tests: Add fuzzing harness for rolling bloom filter class CRollingBloomFilter
* tests: Add fuzzing harness for bloom filter class CBloomFilter
* test: Reduce unneeded whitelist permissions in tests
* rpc: Auto-format RPCResult
* rpc: Move OuterType enum to header
* test: Add cost_of_change parameter assertions to bnb_search_test
* scripted-diff: Wallet: Rename incorrectly named
*UsedDestination
* util: Remove unused MilliSleep
* scripted-diff: Replace MilliSleep with UninterruptibleSleep
* util: Add UnintrruptibleSleep
* test: Set catch_system_errors=no on boost unit tests
* util: Avoid potential uninitialized read in FormatISO8601DateTime(int64_t nTime) by checking gmtime_s/gmtime_r return value
* test: Remove incorrect assumptions in validation_flush_tests
* test: Tabs to spaces in all tests
* Add static_asserts to ser_X_to_Y() methods
* tests: Improve test runner output in case of target errors
* tests: Add --exclude integer,parse_iso8601 (temporarily) to make Travis pass until uninitialized read issue in FormatISO8601DateTime is fixed
* tests: Add support for excluding fuzz targets using -x/--exclude
* tests: Remove -detect_leaks=0 from test/fuzz/test_runner.py - no longer needed
* add: test that transactions expire from mempool
* httpserver: use own HTTP status codes
* ci: Run fuzz testing test cases under valgrind
* doc: Minor grammatical changes and flow improvements
* [rpc] expose ability to mock scheduler via the rpc
* [lib] add scheduler to node context
* Fix a violation of C++ standard rules that unions cannot be switched.
* gui: Avoid Wallet::GetBalance in WalletModel::pollBalanceChanged
* tests: Add --valgrind option to test/fuzz/test_runner.py for running fuzzing test cases under valgrind
* Add DifferenceFormatter
* Make VectorFormatter support stateful formatters
* Convert CCompactSize to proper formatter
* Refactor message hashing into a utility function
* Deduplicate the message signing code
* Deduplicate the message verifying code
* ci: use --enable-werror on more hosts
* build: add Wreturn-type to Werror flags
* [test] add chainparams property to indicate chain allows time mocking
* [test] unit test for new MockForward scheduler method
* [util] allow scheduler to be mocked
* refactor: rpc: Remove vector copy from listtransactions
* rpc: update validateaddress RPCExamples to bech32
* build: pass -fno-ident in Windows gitian descriptor
* gui: Throttle GUI update pace when -reindex
* [REFACTOR] Abstract out script execution out of VerifyWitnessProgram()
* Revert \"Store p2sh scripts in AddAndGetDestinationForScript\"
* [test] check for addmultisigaddress regression
* wallet: Improve LegacyScriptPubKeyMan::CanProvide script recognition
* tests: Avoid hitting some known minor tinyformat issues when fuzzing strprintf(...)
* doc: remove PPA note from release-process.md
* gui: Fix race in WalletModel::pollBalanceChanged
* [test] add 0.19 backwards compatibility tests
* [test] add v0.17.1 wallet upgrade test
* [tests] add wallet backwards compatility tests
* [scripts] support release candidates of earlier releases
* [tests] check v0.17.1 and v0.18.1 backwards compatibility
* [scripts] build earlier releases
* Get the OutputType for a descriptor
* net: Remove forcerelay of rejected txs
* Get rid of VARINT default argument
* Ignore only auto-generated .vcxproj files
* Specify ignored bitcoin-qt file precisely
* ci: Check for submodules
* build: Add cov_fuzz target
* build: link fuzz/test_runner.py for out-of-tree builds
* build: Remove unused USE_COVERAGE
* test: set a name for CI Docker containers
* test: Disable s390 build on travis
* build: Skip i686 build by default in guix and gitian
* depends: Remove reference to win32
* qt: Fix deprecated QCharRef usage
* Squashed \'src/univalue/\' changes from 5a58a46671..98261b1e7b
* scripted-diff: Add missing spaces in RPCResult, Fix type names
* Qt: pass clientmodel changes from walletframe to walletviews
* Convert undo.h to new serialization framework
* Make std::vector and prevector reuse the VectorFormatter logic
* Add custom vector-element formatter
* doc: link to homebrew\'s troubleshooting page
* refactor: Work around GCC 9 `-Wredundant-move` warning
* net: Fail instead of truncate command name in CMessageHeader
* logging: enable thread_local usage on macOS
* build: don\'t embed a build-id when building libdmg-hfsplus
* random: don\'t special case clock usage on macOS
* test: replace \'regtest\' leftovers by self.chain
* build: add additional attributes to Win installer
* gui: Fix unintialized WalletView::progressDialog
* gui: Drop PeerTableModel dependency to ClientModel
* build: use macOS 10.14 SDK
* depends: native_cctools 921, ld64 409.12, libtapi 1000.10.8
* depends: clang 6.0.1
* net: reference instead of copy in BlockConnected range loop
* Remove false positive GCC warning
* build: Fix behavior when ALLOW_HOST_PACKAGES unset
* Make asmap Interpret tolerant of malicious map data
* Use ASNs for mapped IPv4 addresses correctly
* Mark asmap const in statistics code
* Avoid asmap copies in initialization
* test: Check wallet name in -walletnotify script
* tests: Add fuzzing harness for functions taking floating-point types as input
* Add missing includes
* gui: Drop ShutdownWindow dependency to BitcoinGUI
* [test] PSBT RPC: check that bip32_derivs are present by default
* gui: Drop BanTableModel dependency to ClientModel
* Output a descriptor in createmultisig and addmultisigaddress
* Add missing supported rpcs to doc/descriptors.md
* Remove GitHub Actions CI workflow.
* tests: Add fuzzer asmap to FUZZERS_MISSING_CORPORA (temporarily)
* tests: Add fuzzing harness for AS-mapping (asmap)
* gui: Remove WalletView and BitcoinGUI circular dependency
* gui: Add transactionClicked and coinsSent signals to WalletView
* psbt_wallet_tests: use unique_ptr for GetSigningProvider
* Add a constant for the maximum vector allocation (5 Mbyte)
* tests: reset fIsBareMultisigStd after bare-multisig tests
* on startup, write config options to debug.log
* build: Fix appveyor test_bitcoin build of
*.raw
* Use rolling bloom filter of recent block tx\'s for AlreadyHave() check
* test: only declare a main() when fuzzing with AFL
* doc: Improve fuzzing docs for macOS users
* test: Add ubsan surpression for crc32c
* build: Disable msvc warning 4722 for leveldb build
* build: MSVC changes for leveldb update
* build: CRC32C build system integration
* build: Add LCOV exception for crc32c
* test: Add crc32c exception to various linters and generation scripts
* test: Add crc32c to subtree check linter
* doc: Add crc32c subtree to developer notes
* build: Update build system for new leveldb
* Squashed \'src/crc32c/\' content from commit 224988680f7673cd7c769963d4035cb315aa3388
* Squashed \'src/leveldb/\' changes from f545dfabff4c2e9836efed094dba99a34fbc6b88..f8ae182c1e5176d12e816fb2217ae33a5472fdd7
* Fix benchmarks filters
* test: rename test suite name \"tx_validationcache_tests\" to match filename
* guix: Update documentation for time-machine
* guix: Pin Guix using `guix time-machine`
* tests: Add fuzzing harness for strprintf(...)
* tests: Add fuzzer strprintf to FUZZERS_MISSING_CORPORA (temporarily)
* tests: Update FuzzedDataProvider.h from upstream (LLVM)
* Bugfix: GUI: Hide the HD/encrypt icons earlier so they get re-shown if another wallet is open
* build: remove --large-address-aware linker flag
* Updated appveyor job to checkout a specific vcpkg commit ID.
* bump test timeouts so that functional tests run in valgrind
* gui: Shortcut to close ModalOverlay
* Refactor: Replace SigningProvider pointers with unique_ptrs
* Cleanup: Drop unused GUI learnRelatedScripts method
* Refactor: Copy CWallet signals and print function to LegacyScriptPubKeyMan
* Box the wallet: Add multiple keyman maps and loops
* refactor: define a UINT256_ONE global constant
* HD Split: Avoid redundant upgrades
* Make UpgradeKeyMetadata work only on LegacyScriptPubKeyMan
* Store p2sh scripts in AddAndGetDestinationForScript
* Always try to sign for all pubkeys in multisig
* List output types in an array in order to be iterated over
* Refactor: Allow LegacyScriptPubKeyMan to be null
* Locking: Lock cs_KeyStore instead of cs_wallet in legacy keyman
* wallet: Improve CWallet:MarkDestinationsDirty
* Add extra logging of asmap use and bucketing
* Return mapped AS in RPC call getpeerinfo
* doc: Use proper RPC help syntax in importmulti
* doc: Remove duplicate \"comment\" from listsinceblock RPC help
* doc: Properly document proxy_randomize_credentials as bool in getnetworkinfo
* doc: Fix syntax error (trailing square bracket) in finalizepsbt
* doc: Fix syntax error (trailing square bracket) in walletprocesspsbt
* doc: Add missing \"optional\" to \"long\" estimaterawfee RPC help
* src/init: correct a typo
* test: Add p2p test for forcerelay permission
* test: Fix whitespace in p2p_permissions.py
* test: Make msg_tx a witness tx
* build: remove configure checks for win libraries we don\'t link against
* Refactor message transport packaging
* tests: Add fuzzing harness for V1TransportDeserializer (P2P transport)
* tests: Add amount compression/decompression fuzzing to existing fuzzing harness: test compression round-trip
* test: add missing #include to fix compiler errors
* Convert compression.h to new serialization framework
* refactor: Remove redundant conditional
* Revert \"refactor: Remove never used default parameter\"
* Revert \"refactor: Simplify connection syntax\"
* Add FORMATTER_METHODS, similar to SERIALIZE_METHODS, but for formatters
* QA: feature_segwit: Check that template \"rules\" includes \"!segwit\" as appropriate
* Bugfix: Include \"csv\",\"!segwit\" in \"rules\"
* Fix doxygen errors
* wallet: Improve CWallet:MarkDestinationsDirty
* refactor: Simplify connection syntax
* refactor: Remove never used default parameter
* test: add unit test for non-standard txs with too large tx size
* gui: Remove warning \"unused variable \'wallet_model\'\"
* depends: Consistent use of package variable
* gui: hide HD & encryption icons when no wallet loaded
* QT: Change bumpFee asserts to simple error message
* Replace coroutine with async def in p2p_invalid_messages.py
* wallet: Replace %w by wallet name in -walletnotify script
* Make UpdateTransactionsFromBlock use Epochs
* Add Epoch Guards to CTXMemPoolEntry and CTxMemPool
* bug-fix macos: give free bytes to F_PREALLOCATE
* Don\'t allow implementers to think ScriptHash(Witness
*()) results in nesting computation
* scripted-diff: Bump copyright of files changed in 2020
* scripted-diff: Replace CCriticalSection with RecursiveMutex
* IsUsedDestination shouldn\'t use key id as script id for ScriptHash
* bitcoin-wallet: Use PACKAGE_NAME in usage help
* GUI: Use PACKAGE_NAME in modal overlay
* gui: Make Intro consistent with prune checkbox
* gui: Add Intro::UpdateFreeSpaceLabel()
* refactor: Add Intro::UpdatePruneLabels()
* refactor: Replace static variable with data member
* Convert chain to new serialization
* Convert VARINT to the formatter/Using approach
* Add a generic approach for (de)serialization of objects using code in other classes
* wallet: Reset reused transactions cache
* windows: remove call to SetProcessDEPPolicy
* windows: Enable heap terminate-on-corruption
* build: remove double LIBBITCOIN_SERVER linking
* doc: update release notes with getaddressinfo label deprecation
* Fix improper Doxygen inline comments
* gui: Set CConnman byte counters earlier to avoid uninitialized reads
* init: Stop indexes on shutdown after ChainStateFlushed callback.
* test: getaddressinfo label deprecation test
* rpc: deprecate getaddressinfo label field
* test: remove getaddressinfo label tests
* doc: address pr17578 review feedback
* Ignore msvc linker warning and update to msvc build instructions.
* ci: Combine 32-bit build with CentOS 7 build
* util: Add PruneGBtoMiB() function
* util: Add PruneMiBtoGB() function
* tests: Avoid using C-style NUL-terminated strings as arguments
* tests: Add tests to make sure lookup methods fail on std::string parameters with embedded NUL characters
* net: Avoid using C-style NUL-terminated strings as arguments in the netbase interface
* qa: Fix double-negative arg test
* qt: Rename SetPrune() to InitializePruneSetting()
* refactor: Drop `bool force\' parameter
* qt: Force set nPruneSize in QSettings after intro
* QT: bump fee returns PSBT on clipboard for watchonly-only wallets
* Restore English translation option
* contrib: makeseeds: Read suspicious hosts from a file instead of hardcoding
* gui: renamed \'debug window\' to \'node window\'
* psbt: check output index is within bounds before accessing
* doc: Add a note about backporting
* build: add Wdate-time to Werror flags
* qt: Add LogQtInfo() function
* doc: Add to Doxygen documentation guidelines
* scripted-diff: Add missed copyright headers
* refactor: Remove unused defines in bitcoinunits.h
* scripts: add MACHO dylib checking to symbol-check.py
* scripts: fix check-symbols & check-security argument passing
* IsUsedDestination should count any known single-key address
* Add logging for CValidationInterface events
* Refactor FormatStateMessage for clarity
* Format CValidationState properly in all cases
* Add VALIDATION to BCLog::LogFlags
* doc: update release notes
* test: getaddressinfo labels purpose deprecation test
* rpc: simplify getaddressinfo labels, deprecate previous behavior
* script: Update EXLUDE list in copyright_header.py
* script: Add empty line after C++ copyright
* script: Add ability to insert copyright to
*.sh
* gitignore: ignore fuzz binaries, remove test_bitcoin_fuzzy
* ci: Set LC_ALL=C when running in qemu-s390x
* ci: Use debian to avoid apt install 404 errors
* ci: Install needed gcc and qemu-user iff cross-compiling
* ci: Fix QEMU_USER_CMD parse issues
* ci: Move wrap-qemu into separate script
* scripts: fix check-symbols & check-security argument passing
* test: Show debug log on unit test failure
* tests: Add std::to_string to list of locale dependent functions
* Add missing typeinfo includes
* Convert addrdb/addrman to new serialization
* Introduce new serialization macros without casts
* ci: Fix brew python link
* scripts: add MACHO NOUNDEFS check to security-check.py
* scripts: add MACHO PIE check to security-check.py
* build: remove linking librt for backwards compatibility
* build: remove deprecated key from macOS Info.plist
* doc: Added running functional tests in valgrind
* scripted-diff: Bump copyright of files changed in 2019
* doc: Update dependencies.md
* doc: developer notes guideline on RPCExamples addresses
* rpc: incorporate review feedback from PR 17283
* build: Add default configure cache to .gitignore
* test: Change filemode of rpc_whitelist.py
* doc: Update license year range to 2020
* Integrate ASN bucketing in Addrman and add tests
* ci: Update vcpkg cache on MSBuild update
* ci: Update Qt binaries for GitHub Actions
* rpc: Remove mempool global from miner
* test: Properly document blockinfo size in miner_tests
* util: Disallow network-qualified command line options
* build: Sort fuzzing harnesses to avoid future merge conflicts
* tests: Add fuzzing harness for DecodeHexTx(...)
* build: set AC_PREREQ to 2.69
* Add asmap utility which queries a mapping
* Document better -keypool as a look-ahead safety mechanism
* doc: Mention PR Club in CONTRIBUTING.md
* Test watchonly wallet bumpfee with PSBT return
* bumpfee: Return PSBT when wallet has privkeys disabled
* Change bumpfee to use watch-only funds for legacy watchonly wallets
* use preferred shebang approach for documentation
* doc: Add formatting to the good first issue template
* net: Log to net category for exceptions in ProcessMessages
* test: add IsRFC2544 tests
* CNetAddr: fix IsRFC2544 comment
* tests: Add fuzzing harness for various hex related functions
* tests: Add fuzzing harness for various Base{32,58,64} related functions
* util: Move TrimString(...). Introduce default pattern (trims whitespace). Add NODISCARD.
* tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus
* build: remove WINDOWS_BITS from build system
* rest: Use mempool from node context instead of global
* tests: Add tests for decoding/parsing of base32, base64 and money strings containing NUL characters
* util: Don\'t allow DecodeBase32(...) of strings with embedded NUL characters
* util: Don\'t allow DecodeBase64(...) of strings with embedded NUL characters
* util: Don\'t allow ParseMoney(...) of strings with embedded NUL characters
* fix directory path for secp256k1 subtree in developer-notes
* tests: Add fuzzing harness for CheckBlock(...) and other CBlock related functions
* tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus
* [style] Code style fixups in GetWarnings()
* doc: Add release note for RPC Whitelist
* doc: Add ci prefix to CONTRIBUTING.md
* util: change GetWarnings parameter to bool
* [qt] remove unused parameter from getWarnings()
* ci-s390x: Add qemu and depends support in the ci script
* build: add -bind_at_load to hardened LDFLAGS
* Moved the include of the system projects to before the build depends on task. Otherwise it doesn\'t get run.
* depends: disable unused qt networking features
* depends: -optimized-qmake is now -optimized-tools
* depends: skip building qt proxies
* Included test_bitcoin-qt in msvc build.
* doc: update developer notes wrt unix epoch time
* qa: unify unix epoch time descriptions
* test: Add test for rpc_whitelist
* Update msvc build for Visual Studio 2019 v16.4
* tests: add tests for GetCoinsCacheSizeState
* refactoring: introduce CChainState::GetCoinsCacheSizeState
* build: fix typo
* util: Don\'t allow base58-decoding of std::string:s containing non-base58 characters
* tests: Add tests for base58-decoding of std::string:s containing non-base58 characters
* rpc: require second argument only for scantxoutset start action
* Add RPC Whitelist Feature from #12248
* ci: Use python 3.7 on Windows Github Actions
* wallet: unbreak with boost 1.72
* Don\'t calculate tx fees for PSBTs with invalid money values
* ci: Add valgrind run
* rpc: add missing newline in analyzepsbt rpcresult
* doc: Add release notes for 17447
* doc: Update release process with latest changes
* tests: Add fuzzing harnesses for various JSON/univalue parsing functions
* tests: Add fuzzing harnesses for various number parsing functions
* tests: Add ParseScript(...) (core_io) fuzzing harness
* tests: Add ParseHDKeypath(...) (bip32) fuzzing harness
* tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus
* Activate no-privkey -> ISMINE_WATCH_ONLY behavior for LegacySPKM only
* build: Use dnl for all comments in configure.ac, rather than #
* build: Remove backticks from configure.ac
* test: Remove ubsan alignment suppressions
* prevector: avoid misaligned member accesses
* test: re-enable CLI test support by using EncodeDecimal in json.dumps()
* Adds GitHub Action workflow which duplicates AppVeyor job.
* qt: Normalize placeholder to avoid using \"address book\" in sendcoinsentry
* gui: Move static placeholder texts to forms
* ui: disable 3rd-party tx-urls when wallet disabled
* Make env data logging optional
* lcov: filter /usr/lib64 from coverage report
* depends: don\'t configure xcb_proto
* util: Replace magics with DEFAULT_PRUNE_TARGET_GB
* gui: disable File->CreateWallet during startup
* cli: fix Fatal LevelDB error when specifying -blockfilterindex=basic twice
* Replace LegacyScriptPubKeyMan::IsCrypted with LegacyScriptPubKeyMan::HasEncryptionKeys
* Remove SetCrypted() and fUseCrypto; Change IsCrypted()\'s implementation
* Rename EncryptKeys to Encrypt and pass in the encrypted batch to use
* Clear mapKeys before encrypting
* Move fDecryptionThoroughlyChecked from CWallet to LegacyScriptPubKeyMan
* Move Unlock implementation to LegacyScriptPubKeyMan
* Replace LegacyScriptPubKeyMan::vMasterKey with GetDecryptionKey()
* Add GetEncryptionKey() and HasEncryptionKeys() to WalletStorage
* ci: Remove trusty build
* ci: Add CentOS 7 build
* tests: Fix fuzzing harness for descriptor parsing (descriptor_parse)
* lcov: filter depends from coverage report
* tests: Use a default of supports_cli=True (instead of supports_cli=False)
* tests: Mark functional tests not supporting bitcoin-cli (--usecli) as such
* tests: Test serialisation as part of deserialisation fuzzing. Test round-trip equality where possible. Avoid code repetition.
* tests: Add fuzzing harness for various functions consuming only integrals
* tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus
* tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus
* tests: Add fuzzing harness for various CTxOut related functions
* tests: Add fuzzing harness for various CTxIn related functions
* util: Update tinyformat to upstream
* Add bounds checks in key_io before DecodeBase58Check
* gitian: fixed SC2001 regex
* node: Use mempool from node context instead of global
* rpc: Use mempool from node context instead of global
* Move events_hasher into RNGState()
* depends: Support for S390X targets
* depends: Support for 64-bit POWER targets
* keypool: Add comment about TopUp and when to use it
* depends: don\'t use OpenGL in Qt on macOS
* build: pass -dead_strip_dylibs to ld on macOS
* tests: Add initialization order fiasco detection in Travis
* Fixed wget call in gitian-build.py
* ci: Remove unparseable lines from supp file for old xenial clang tsan
* ci: ubsan report_error_type=1 and add suppressions
* test: Print stderr when subprocess fails
* test: Use char instead of unsigned char
* ci: Bump to clang-8 for asan build to avoid segfaults on ppc64le
* util: remove unwanted fields from bitcoin-cli -getinfo
* build: pass -dead_strip_dylibs to ld on macOS
* depends: add ability to skip building qrencode
* doc: rename wallet-tool references to bitcoin-wallet
* Key pool: Fix omitted pre-split count in GetKeyPoolSize
* Key pool: Change ReturnDestination interface to take address instead of key
* Key pool: Move LearnRelated and GetDestination calls
* Fix origfee return for bumpfee with feerate arg
* tests: Add option --valgrind to run nodes under valgrind in the functional tests
* Add unit test for DB creation with unicode path
* script: Add Keyserver to verify-commits README
* Use correct C++11 header for std::swap()
* Fix comparison function signature
* net: Fix uninitialized read in ProcessMessage(...)
* script: Enable SC2001 rule for Gitian scripts
* script: Enable SC2155 rule for Gitian scripts
* tests: Add a test for funding with sufficient preset inputs and subtractFeeFromOutputs
* Default to bnb_used = false as there are many cases where BnB is not used
* Add OutputType and CPubKey parameters to KeepDestination
* Rename Keep/ReturnKey to Keep/ReturnDestination and remove the wrapper
* util: make ScheduleBatchPriority advisory only
* [gui] send: show watch-only balance in send screen
* [test] qt: add send screen balance test
* qt: Use proper class for Ui::ReceiveCoinsDialog
* qt: Fix class name of Ui::ModalOverlay
* ci: Print free disk space
* test: Properly deserialize integers in little-endian
* ci: Run functional tests on s390x
* doc: Change doxygen URL to doxygen.bitcoincore.org
* [test] move wallet helper functions into test library
* [test] move mining helper functions into test library
* Appveyor install libevent[thread] vcpkg
* Add s390x tests to travis
* Add ci script to install on s390x
* [test] move string helper functions into test library
* test: add rpc getaddressinfo labels test coverage
* test: add listlabels test in wallet_labels.py
* rpc: add getaddressinfo code documentation
* rpc: update getaddressinfo RPCExamples to bech32
* rpc: clarify label vs labels in getaddressinfo RPCHelpman
* rpc: improve getaddressinfo RPCHelpman content
* wallet: replace raw pointer with const reference in AddrToPubKey
* rpc: improve getaddressinfo RPCHelpman formatting
* build: Add NX workaround for RV64
* doc: Add historical release notes for 0.19.0.1
* Seed RNG with precision timestamps on receipt of net messages.
* Added libtest_util library to msvc build configuration.
* build: Allow export of environ symbols
* refactor: Nuke coincontrol circular dependency
* keypool: Move opportunistic TopUps from LegacyScriptPubKeyMan to CWallet and ReserveDestination
* keypool: Remove superfluous topup from CWallet::GetNewChangeDestination
* Key pool: Move CanGetAddresses call
* gui: remove macOS start on login code
* doc: add glibc 2.17 requirement to release-notes
* build: Bump minimum versions in symbol checker
* build: Disallow dynamic linking against c++ library
* ci: Remove use of cd
* doc: Changed MiniUPnPc link to https in dependencies.md
* test: add unit test for non-standard txs with wrong nVersion
* build: Create test utility library from src/test/util/
* Fire TransactionRemovedFromMempool from mempool
* Remove out of date comments for CalculateMaximumSignedTxSize
* tests: Add deserialization fuzzing harnesses
* tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus
* build: set minimum supported macOS to 10.12
* ci: Remove unmaintained extended_lint
* scripted-diff: Use ci DEPENDS_DIR, remove BASE_BUILD_DIR
* ci: Add DEPENDS_DIR variable, Add documentation for folders
* test: add unit test for non-standard bare multisig txs
* build: Fix configure report about qr
* scripted-diff: Move various folders to ci scratch dir
* refactor: Remove unused COINBASE_FLAGS
* test: add functional test for non-standard bare multisig txs
* build: remove libanl.so.1 from ALLOWED_LIBRARIES
* Put bounds on the number of CPUID leaves explored
* doc: Update and improve Developer Notes
* Allow BnB when subtract fee from outputs
* Use BnB when preset inputs are selected
* depends: only use dbus with qt on linux
* test: add functional test for non-standard txs with too large scriptSig
* Pass a maximum output length to DecodeBase58 and DecodeBase58Check
* Fix CPUID subleaf iteration
* Mark PSBTs spending unspendable outputs as invalid in analysis
* Have a PSBTAnalysis state that indicates invalid PSBT
* test: Wait until mempool is loaded in wallet_abandonconflict
* refactor: Cleanup headers from walletmodel.h
* refactor: Nuke walletmodel circular dependency
* refactor: Nuke walletmodeltransaction circular dep
* refactor: Nuke guiutil circular dependency
* refactor: Move SendCoinsRecipient in own header
* doc: Add some better examples for scripted diff
* test: Remove libssl-dev packages from CI scripts
* test: remove lsan suppression for libcrypto
* build: remove libcrypto as internal dependency in libbitcoinconsensus.pc
* doc: Remove ssl as a required dependency from build-unix
* test: skip tool_wallet test when bitcoin-wallet isn\'t compiled
* test: skip wallet_listreceivedby test when the cli isn\'t compiled
* test: skip bitcoin_cli test when the cli isn\'t compiled
* Refactor: Require scriptPubKey to get wallet SigningProvider
* Accumulate result UniValue in SignTransaction
* tests: Add fuzzing harness for various PSBT related functions
* random: mark RandAddPeriodic and SeedPeriodic as noexcept
* doc: correct random.h docs after #17270
* doc: add OpenSSL removal to release-notes.md
* ci: remove OpenSSL installation
* doc: remove OpenSSL from build instructions and licensing info
* depends: remove OpenSSL package
* build: remove OpenSSL detection and libs
* random: Remove remaining OpenSSL calls and locking infrastructure
* random: stop retrieving random bytes from OpenSSL
* random: stop feeding RNG output back into OpenSSL
* doc: Remove bitness from bitcoin-qt help message and manpage
* Changed tooltips of receive form to highlight difference between Label and Message
* refactor: Remove unused signal
* Fix segfault in allocator_tests/arena_tests
* Define ARENA_DEBUG in Travis test runs
* Fix compilation errors in support/lockedpool.cpp
* test: fix bitcoind already running warnings on macOS
* Fix input size assertion in wallet_bumpfee.py
* scripted-diff: Replace ::mempool with m_node.mempool in tests
* test: Replace recursive lock with locking annotations
* node: Add reference to mempool in NodeContext
* [build] ./configure --enable-werror: add unused-variable
* scripted-diff: Set gitian arch back to amd64
* test: add unit test for non-standard txs with too large scriptSig
* fuzz: Bump timeout in test_runner to accomodate for slow arm64 CPUs
* test: Remove fragile assert_memory_usage_stable
* GUI: Refactor formatServicesStr to warn when a ServicesFlag is missing
* Bugfix: GUI: Recognise NETWORK_LIMITED in formatServicesStr
* ci: Use clang-8 for fuzzing to run on aarch64 ci systems
* refactor: Remove null setting check in GetSetting()
* [gui] watch-only wallet: copy PSBT to clipboard
* depends: qt: Fix C{,XX} pickup
* [wallet] add fillPSBT to interface
* [gui] send: include watch-only
* [wallet] ListCoins: include watch-only for wallets without private keys
* tests: Update valgrind suppressions
* scripted-diff: Remove unused ArgsManager type flags in tests
* refactor: Add util_CheckValue test
* refactor: Add ArgsManager::GetSettingsList method
* refactor: Get rid of ArgsManagerHelper class
* refactor: Replace FlagsOfKnownArg with GetArgFlags
* refactor: Clean up includeconf comments
* refactor: Clean up long lines in settings code
* fix uninitialized variable nMinerConfirmationWindow
* Report amount of data gathered from environment
* Use thread-safe atomic in perfmon seeder
* Run background seeding periodically instead of unpredictably
* Add information gathered through getauxval()
* Feed CPUID data into RNG
* Use sysctl for seeding on MacOS/BSD
* Gather additional entropy from the environment
* Seed randomness with process id / thread id / various clocks
* [MOVEONLY] Move cpuid code from random & sha256 to compat/cpuid
* [MOVEONLY] Move perfmon data gathering to new randomenv module
* doc: minor corrections in random.cpp
* doc: Explain $LIB in LD_PRELOAD in gitian descriptors
* util: Add missing headers to util/fees.cpp
* wallet: Make -walletdir network only
* rpc: Expose block height of wallet transactions
* zmq: Fix due to invalid argument and multiple notifiers
* test: check custom ancestor limit in mempool_packages.py
* wallet: Avoid showing GUI popups on RPC errors (take 2)
* fix Typo: \"merkelRoot\" -> \"merkleRoot\"
* test: Use proper MAX_SCRIPT_ELEMENT_SIZE
* refactor: Use proper MAX_SCRIPT_ELEMENT_SIZE const
* ci: Extend docs
* travis: Rework CACHE_ERR_MSG
* Add TheCharlatan\'s pgp key
* Moves vcpkg list to a text file and updates the appveyor job and readme to use it.
* refactor: Styling w/ clang-format, comment update
* qt: Fix missing qRegisterMetaType for size_t
* Remove unnecessary forward declaration
* ci: Make ci system read-only on the git work tree
* ci: Remove git from required packages on host
* ci: Make all filesystem operations inside docker
* doc: Add relase note for db→walletdb rename
* doc: add historical 0.19.0 release notes
* scripted-diff: Change `BCLog::DB` to `BCLog::WALLETDB`
* Rename `db` log category to `walletdb` (like `coindb`)
* scripted-diff: Avoid hardcoded libfaketime dir in gitian
* Add settings_tests
* Deduplicate settings merge code
* Add util::Settings struct and helper functions.
* Remove includeconf nested scope
* Rename includeconf variables for clarity
* Clarify emptyIncludeConf logic
* wallet: Remove unused boost::this_thread::interruption_point
* Remove redundant class file includes from test_bitcoin project.
* [validation] fix comments in CheckInputScripts()
* scripted-diff: [validation] Rename CheckInputs to CheckInputScripts
* ci: Guess the native host when not cross compiling
* Implement O(1) OP_IF/NOTIF/ELSE/ENDIF logic
* [refactor] interpreter: define interface for vfExec
* Benchmark script verification with 100 nested IFs
* test: speed up wallet_avoidreuse.py
* test: add logging to wallet_avoidreuse.py
* doc: Added regtest config for linearize script
* 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.
* [refactor] Replace global int nScriptCheckThreads with bool
* [tests] Don\'t use TestingSetup in the checkqueue_tests
* [tests] Don\'t stop-start unnecessarily in rpc_fundrawtransaction.py
* [tests] Use -whitelist in rpc_fundrawtransaction.py
* Remove getBlockDepth method from Chain::interface
* Remove locked_chain from GetDepthInMainChain and its callers
* Use CWallet::m_last_block_processed_height in GetDepthInMainChain
* Only return early from BlockUntilSyncedToCurrentChain if current tip is exact match
* Refactor some importprunedfunds checks with guard clause
* Add block_height field in struct Confirmation
* doc: Add documentation for new test/lib
* scripted-diff: test: Move setup_common to test library
* Replace CWalletTx::SetConf by Confirmation initialization list
* script: Enable SC2006 rule for Gitian scripts
* script: Lint Gitian descriptors with ShellCheck
* build: Remove install command samples
* Add util_ArgParsing test
* wallet_importmulti: use addresses of the same type as being imported
* Add missing newline in util_ChainMerge test
* Improve \"Hide\" button tool-tip message
* rpc: Remove unused boost::this_thread::interruption_point
* test: add dumptxoutset RPC test
* devtools: add utxo_snapshot.sh
* rpc: add dumptxoutset
* Add m_last_block_processed_height field in CWallet
* Pass block height in Chain::BlockConnected/Chain::BlockDisconnected
* doc: Add template for good first issues
* coinstats: add coins_count
* Add missing SetupGeneration error handling in EncryptWallet
* remove old bootstrap relevant code
* Clean up nested scope in GetReservedDestination
* Get rid of confusing LegacyScriptPubKeyMan::TopUpKeyPool method
* Pass CTxDestination to ScriptPubKeyMan::GetMetadata
* doc: Update doc/bips.md with recent changes in master
* Add EnsureLegacyScriptPubKeyMan and use in rpcwallet.cpp
* TestShell: Return self from setup()
* TestShell: Simplify default setting of num_nodes
* Doc: Remove backticks in test-shell.md code block
* TestShell: Fix typo in TestShell warning printout
* [tools] update nNextInvSend to use mockable time
* [tools] add PoissonNextSend method that returns mockable time
* depends: move README.md Android instructions to a separate section
* tests: Add fuzzing harness for Bech32 encoding/decoding
* tests: Move CaseInsensitiveEqual to test/util/str
* cli: fix -getinfo output when compiled with no wallet
* logs: add timing information to FlushStateToDisk()
* logs: add BCLog::Timer and related macros
* ci: Run non-cross-compile builds natively
* ci: Run CI_WAIT only on travis
* [tests] Speed up rpc_fundrawtransaction.py
* wallet: LearnRelatedScripts only if KeepDestination
* wallet: Lock address type in ReserveDestination
* test: Reset global args between test suites
* bump libevent to 2.1.11 in depends
* test: Add ASSERT_DEBUG_LOG to unit test framework
* logging: Add member for arbitrary print callbacks
* depends: update README.md with working Android targets and API levels
* Add documentation for test_shell submodule
* test: add \"diamond\" unit test to MempoolAncestryTests
* doc: Fix some misspellings
* Add TestShell class
* Move argparse() to init()
* Move assert num_nodes is set into main()
* Clear TestNode objects after shutdown
* Add closing and flushing of logging handlers
* Refactor TestFramework main() into setup/shutdown
* Remove network_event_loop instance in close()
* wallet: Reuse existing batch in CWallet::SetUsedDestinationState
* wallet: Avoid recursive lock in CWallet::SetUsedDestinationState
* doc: Add ShellCheck to lint tests dependencies
* Refactor: Move nTimeFirstKey accesses out of CWallet
* Refactor: Move GetKeypoolSize code out of CWallet
* Refactor: Move RewriteDB code out of CWallet
* Refactor: Move SetupGeneration code out of CWallet
* Refactor: Move HavePrivateKeys code out of CWallet::CreateWalletFromFile
* Refactor: Move Upgrade code out of CWallet::CreateWalletFromFile
* Refactor: Move MarkUnusedAddresses code out of CWallet::AddToWalletIfInvolvingMe
* Refactor: Move GetMetadata code out of getaddressinfo
* Refactor: Move LoadKey LegacyScriptPubKeyMan method definition
* Refactor: Move SetAddressBookWithDB call out of LegacyScriptPubKeyMan::ImportScriptPubKeys
* refactor: Replace UnsetWalletFlagWithDB with UnsetBlankWalletFlag in ScriptPubKeyMan
* Refactor: Remove UnsetWalletFlag call from LegacyScriptPubKeyMan::SetHDSeed
* Remove SetWalletFlag from WalletStorage
* Refactor: Move SetWalletFlag out of LegacyScriptPubKeyMan::UpgradeKeyMetadata
* Refactor: Move SetAddressBook call out of LegacyScriptPubKeyMan::GetNewDestination
* Refactor: Add new ScriptPubKeyMan virtual methods
* Refactor: Declare LegacyScriptPubKeyMan methods as virtual
* MOVEONLY: Reorder LegacyScriptPubKeyMan methods
* bench: Remove redundant copy constructor in mempool_stress
* refactor: Remove redundant PSBT copy constructor
* doc: compiling with Visual Studio is now supported on Windows
* doc: update MSVC instructions to remove Qt configuration
* test: Do not instantiate CAddrDB for static call
* doc: Remove explicit network name references
* test: rm ascii art in rpc_fundrawtransaction
* test: add rpc_fundrawtransaction logging
* [qa] Add shrinkdebugfile=0 to regtest bitcoin.conf
* Minor refactoring to remove implied m_addr_relay_peer.
* log: Fix log message for -par=1
* GuessVerificationProgress: cap the ratio to 1
* [linter] Strip trailing / in path for git-subtree-check
* build: update retry to current version
* Fix incorrect help-debug for -checkpoints
* Squashed \'src/univalue/\' changes from 7890db99d6..5a58a46671
* QA: Add wallet_implicitsegwit to test the ability to transform keys between address types
* travis: Run unit and functional tests on native arm
* test: Add RegTestingSetup to setup_common
* Walk pindexBestHeader back to ChainActive().Tip() if it is invalid
* test: move-only ComputeFilter to src/test/lib/blockfilter
* replace asserts in RPC code with CHECK_NONFATAL and add linter
* [tests] remove bignum.py
* [tests] remove bn2bin()
* [tests] remove bn_bytes() function
* [tests] remove mpi2vch() function
* [tests] don\'t encode the integer size in bignum
* [tests] add function comments to bignum
* [tests] fix flake8 warnings in script.py and bignum.py
* rpc: Add generatetodescriptor
* docs: Add undefined to --with-sanitizers=fuzzer,address
* tests: Add fuzzing harness for ISO-8601 related functions
* refactor: Replace all uses of boost::optional with our own Optional type
* doc: Add developer note on c_str()
* [validation] Remove fMissingInputs from AcceptToMemoryPool()
* [validation] Remove unused first_invalid parameter from ProcessNewBlockHeaders()
* [validation] Remove useless ret parameter from Invalid()
* [validation] Remove error() calls from Invalid() calls
* [validation] Tidy Up ValidationResult class
* [validation] Add CValidationState subclasses
* Chainparams: Use name constants in chainparams initialization
* nsis: Write to correct filename in first place
* cli: Add \"headers\" and \"verificationprogress\" to -getinfo
* add unused SnapshotMetadata class
* wallet: Remove left-over BIP70 comment
* Fix missing strFailReason in CreateTransaction
* Fix misplaced AssertLockHeld
* doc: Clarify WalletStorage / Wallet relation
* Add back mistakenly removed AssertLockHeld
* Refactor: Add GetLegacyScriptPubKeyMan helper
* test: add reason checks for non-standard txs in test_IsStandard
* refactor: Remove addrdb.h dependency from node.h
* Add assertion to randrange that input is not 0
* Add new mempool benchmarks for a complex pool
* contrib: remove accounts from bash completion
* pubkey: Assert CPubKey\'s ECCVerifyHandle precondition
* Avoid using g_rpc_node global in wallet code
* scripted-diff: Remove g_connman, g_banman globals
* Pass NodeContext, ConnMan, BanMan references more places
* MOVEONLY: Move NodeContext struct to node/context.h
* scripted-diff: Rename InitInterfaces to NodeContext
* Fix issue with conflicted mempool tx in listsinceblock
* Fix occurences of c_str() used with size() to data()
* refactor: Remove redundant c_str() calls in formatting
* bench: Fix negative values and zero for -evals flag
* Add search for first blk file with pruned node
* tests: Add fuzzer initialization (hold ECCVerifyHandle)
* Add roundtrip and more tests to ParseISO8601DateTime and FormatISO8601DateTime
* Rename DecodeDumpTime to ParseISO8601DateTime and move to time.cpp
* gui: Fix duplicate wallet showing up
* Drop signal CClientUIInterface::LoadWallet
* Tests: Use self.chain instead of \'regtest\' in almost all current tests
* [rpc] set default bip32derivs to true for psbt methods
* Refactor: Split up CWallet and LegacyScriptPubKeyMan and classes
* MOVEONLY: Move key handling code out of wallet to keyman file
* Move wallet enums to walletutil.h
* added asserts to check m_addr_known when it\'s used
* [net] SocketHandler: log peer id for close and disconnect
* gui: disable font antialiasing for QR image address
* test: fix script_p2sh_tests OP_PUSHBACK2/4 missing
* gui: Make polling in ClientModel asynchronous
* Avoid unused call to GuessVerificationProgress in NotifyHeaderTip
* http: add missing header bootlegged by boost < 1.72
* tests: Add fuzzing harness for various CScript related functions
* ci: Remove ccache requirement on the host
* compat: remove bswap_
* check on macOS
* build: skip building OpenSSL lib_ssl
* build: remove OpenSSL from Qt build
* build: remove EVP_MD_CTX_new detection
* build: remove SSL lib detection
* gui: Update BIP70 support message
* build: remove BIP70 entries from macOS Info.plist
* gui: remove payment request file handling from OpenURI dialog
* Remove BIP70 Support
* docs: remove protobuf from docs
* build: remove protobuf from depends
* consensus: Explain why fCheckDuplicateInputs can not be skipped and remove it
* [validation] Remove unused cacheSigStore from CheckInputsFromMempoolAndCache
* ci: Disable functional tests on mac host
* doc: Changed miniupnp links to https
* tests: Remove Cygwin WinMain workaround
* tests: Skip unnecessary fuzzer initialisation. Hold ECCVerifyHandle only when needed.
* depends: fix boost mac cross build with clang 9+
* Add unit testing for the CompressScript functions
* tests: Add Parse(...) (descriptor) fuzzing harness
* tests: Allow for using non-default fuzzing initialization
* gui: Fix payAmount tooltip in SendCoinsEntry
* Add override/final modifiers to V1TransportDeserializer
* Make resetting implicit in TransportDeserializer::Read()
* Remove oversized message detection from log and interface
* Continue relaying transactions after they expire from mapRelay
* refactor: test/bench: dedup Build{Crediting,Spending}Transaction()
* Replace the LogPrint function with a macro
* static tooltip
* test: use default address type (bech32) for wallet_bumpfee tests
* Force CNetMessage::m_recv to use std::move
* build: use osslsigncode 2.0 in gitian
* refactor: Remove unused CExt{Pub,}Key (de)serialization methods
* Expand on wallet_balance.py comment from https://github.com/bitcoin/bitcoin/pull/16766\\#issuecomment-527563982
* Update release notes to mention changes to IsTrusted and impact on wallet
* Systematize style of IsTrusted single line if
* update variable naming conventions for IsTrusted
* Update comment in test/functional/wallet_balance.py
* Update wallet_balance.py test to reflect new behavior
* Reuse trustedParents in looped calls to IsTrusted
* Cache tx Trust per-call to avoid DoS
* Make IsTrusted scan parents recursively
* tests: Remove no longer needed UBSan suppressions (issues fixed). Add documentation.
* Add testcase to simulate bitcoin schema in leveldb
* ci: Enable address sanitizer (ASan) stack-use-after-return checking
* wallet: Remove unused GetLabelName
* doc: Added instructions for how to add an upsteam to forked repo
* Send amount shows minimum amount placeholder
* util: Add CHECK_NONFATAL and use it in src/rpc
* Android: add all arch support
* random: remove call to RAND_screen() (Windows only)
* [wallet] Remove `state` argument from CWallet::CommitTransaction
* [wallet] Remove return value from CommitTransaction()
* [wallet] Add doxygen comment to CWallet::CommitTransaction()
* gui: Add placeholder text to the sign message field
* Use adapter pattern for the network deserializer
* Remove transport protocol knowhow from CNetMessage / net processing
* Refactor: split network transport deserializing from message container
* util: Filter out macOS process serial number
* doc: Describe log files + consistent paths in test READMEs
* ci: Remove redundant check for TRAVIS_OS_NAME
* doc: Document that GNU tools are required for linters
* ci: Cleanup macOS runs
* doc: correct function name in ReportHardwareRand()
* p2p: Avoid allocating memory for addrKnown where we don\'t need it
* chain: Set all CBlockIndex members to null, remove SetNull helper
* Add tests for util/vector.h\'s Cat and Vector
* Add some general std::vector utility functions
* [wallet] Fix whitespace in CWallet::CommitTransaction()
* Remove unused includes
* tests: Add fuzzing harness for descriptor Span-parsing helpers
* rpc: fix -rpcclienttimeout 0 option
* gui: Added label & tooltip for Verify Message labels
* gui: remove OpenSSL PRNG seeding (Windows, Qt only)
* gui: Make RPCConsole::TabTypes an enum class
* Update macdeploy README to include correctly named `.dmg` file produced from `make deploy`
* tests: Fix fs_tests for unknown locales
* util: Filter control characters out of log messages
* github: Add warning for bug reports
* [test] rename SegwitVersion1SignatureHash()
* travis: run tests on macOS native
* test: Fix bug in blockfilter_index_tests.
* [wallet] Remove pruning check for -rescan option
* [wallet] Remove package limit config access from wallet
* [rpc] Fix broken bitcoin-cli examples
* test: fix \"tx-size-small\" errors after default address change
* doc: Add switch on enum example
* util: Add AllowShortCaseLabelsOnASingleLine option
* gui: Fix start timer from non QThread
* test: speed up wallet_address_types by whitelisting peers (immediate tx relay)
* gui: don\'t disable the sync overlay when wallet is disabled
* tests: Add test for loadblock option
* test: speedup wallet_backup by whitelisting peers (immediate tx relay)
* tests: Add EvalScript(...) fuzzing harness
* [build] depends macOS: point --sysroot to SDK
* depends: export dynamic JNI symbols from static qtforandroid.a
* Qt: patch androidjnimain.cpp to make sure JNI is initialised when statically compiled
* doc: update bips.md with buried BIP9 deployments
* build: pass --enable-option-checking to applicable packages
* build: only pass --disable-dependency-tracking to packages that understand it
* doc: Add missing indexes/blockfilter/basic/ to doc/files.md
* change wallet pointers to references in feebumper
* tests: Add FuzzedDataProvider fuzzing helper from the Chromium project
* doc: Doxygen-friendly CuckooCache comments
* [docs] Add release notes for removal of REJECT reasons
* [validation] Fix REJECT message comments
* [validation] Remove REJECT code from CValidationState
* typo and unneccessary parentheses
* [logging] Don\'t log REJECT code when transaction is rejected
* [validation] Fix peer punishment for bad blocks
* build: Add README.md to DIST target
* test: add unit tests for Span-parsing helpers
* Add missing fields in TransactionDescriptionString and others
* MOVEONLY : move RPC wallets helpers to TransactionDescriptionString
* test: Seed test RNG context for each test case, print seed
* build: Add variable printing target to Makefiles
* lint: Install grep and git via brew on mac for --perl-regexp
* lint: Fix shellcheck SC2155
* lint: Run the linters against Mac OS on Travis
* depends: pull upstream libdmg-hfsplus changes
* depends: latest config.guess & config.sub
* tests: Remove TRANSACTION_DESERIALIZE (replaced by transaction fuzzer)
* tests: Add fuzzing harness for CheckTransaction(...), IsStandardTx(...) and other CTransaction related functions
* ci: Run tests on arm
* init: Change fallback locale to C.UTF-8
* [test] Add coverage to estimaterawfee and estimatesmartfee
* build: Fix #include sys/poll.h to just poll.h (without sys/)
* [doc] fix Makefile target in benchmarking.md
* Add release note
* Update descriptors.md to include sortedmulti
* Test sortedmulti descriptor using BIP 67 tests
* Add sortedmulti descriptor and unit tests
* gitian: Put things in the right place to begin with
* gitian: Eliminate rename dependency
* gitian: Smaller diff with gitian-linux.yml
* gitian: Fix README inclusion in archives
* wallet: Avoid showing GUI popups on RPC errors
* Fix bug where duplicate PSBT keys are accepted
* Added double quotes
* Disable _FORTIFY_SOURCE when enable-debug
* tests: Pass fuzzing inputs as constant references
* Always generate `bitcoinstrings.cpp` on `make translate`
* build: Remove workaround for ancient libtool
* build: Ensure a minimal version of libtool
* Fix Python Docstring to include all Args.
* util: Simplify path argument for CBlockTreeDB ctor
* scripts: update copyright_header script to include additional files
* build: Bump gitian descriptor versions
* contrib: fix minor typos in makeseeds.py
* doc: Fix amount typo in release notes
* modify p2p_feefilter test to catch rounding error
* Disallow implicit conversion for CFeeRate constructor
* feefilter: Compute the absolute fee rather than stored rate to match mempool acceptance logic
* ci: Make apt-get more verbose, to debug travis timeouts
* Don\'t rename main thread at process level
* Prevent processing duplicate payment requests
* gitian: Use split-debug.sh for Win builds
* doc: Add detailed info about Bitcoin Core files
* doc: Update bips.md for default bech32 addresses in 0.20.0
* doc: move-only release notes fragments for 0.20.0
* Truly decouple wallet from chainparams for -fallbackfee
* p2p: Remove BIP61 reject messages
* ci: Use busybox utils for one build
* doc: move-only: Steps for \"before major release branch-off\"
* doc: reset release notes after 0.19 split-off
* build: 0.19 release updates on master
* contrib: Remove invalid nodes from seeds list
* gui: Add shortcuts for tab tools
* qa: Do not force overwrite of QT_QPA_PLATFORM on windows for gui tests
* doc: Explain QT_QPA_PLATFORM for gui tests
* doc: Consolidate release notes before 0.19.0
* doc: Add missing release notes for 16383
* chainparams: Bump assumed chain params
* net: 0.19 hardcoded seeds update
* contrib: makeseeds: More fancy output
* contrib: makeseeds: Limit per network, instead of total
* contrib: makeseeds: dedup by ip,port
* contrib: makeseeds: Factor out ASN lookup
* contrib: makeseeds: Improve logging and filtering
* Enable UBSan for Travis fuzzer job
* doc: Bump version in bips.md, mention bumping in release process
* add newline after -stdin
*
* cli: add -stdinwalletpassphrase for (slightly more) secure CLI
* add stdin helpers for password input support
* build: Installed Qt version only appears if being built
* util: Make thread names shorter
* doc: Remove mention of renamed mapBlocksUnlinked
* doc: Add mention of BIP158 indexing since v0.19.0
* doc: Add mention of BIP125 used by wallet GUI by default since v0.18.1
* scripts: search for next position of magic bytes rather than fail
* When BIP70 is disabled, get PaymentRequest merchant using string search
* doc: Add mention of BIP70 disabling by default in bips.md
* test bumpfee fee_rate argument
* qa: Fix service flag comparison check in rpc_net test
* test: Avoid whitespace linting in qt translations
* qt: Periodic translations update
* Correct docstring param name.
* build: Factor out qt translations from build system
* rpc bumpfee check fee_rate argument
* rpc bumpfee: add fee_rate argument
* test: add unittests for CheckProofOfWork
* test: Fix combine_logs.py for AppVeyor build
* Add release note for bech32 by default in wallet
* Revert \"gui: Generate bech32 addresses by default (take 2, fixup)\"
* Change default address type to bech32
* qt: Change default size of intro frame
* refactor: Remove Qt function to disable menu icons on macOS
* doc: Improve test READMEs
* doc: Remove MSVC update step from translation process
* [RPC] Fix casing in getblockchaininfo to be inline with the rest of the response
* make SaltedOutpointHasher noexcept
* refactor: consolidate PASTE macros
* Change sendcoins dialogue Yes to Send
* doc: Put PR template in comments
* test: Remove python dead code linter
* doc: replace outdated OpenSSL comment in test README
* ci: Remove TRAVIS env vars
* ci: Set $HOST before setting fallback values
* validation: Make GetWitnessCommitmentIndex public
* make sure to update the UI when deleting a transaction
* doc: Doxygen-friendly descriptor.h comments
* doc: Improve doxygen readme navigation section
* doc: Move doxygen intro to file for USE_MDFILE_AS_MANPAGE
* travis: Disable feature_block in tsan run
* builds: remove superfluous config_opts_aarch64_android
* txmempool: Make entry time type-safe (std::chrono)
* build: remove mingw linker workaround from win gitian descriptor
* Patch libevent when building for Android (fix arc4random_addrandom)
* Update bitcoin_qt.m4
* Define TARGET_OS when host is android
* test: use named args for sendrawtransaction calls
* doc: improve rawtransaction code/test docs
* test: fix incorrect value in rpc_rawtransaction.py
* gui: Rename address checkbox back to bech32
* Add OpenSSL termios fix for musl libc
* Refresh ZeroMQ 4.3.1 patch
* Only check the hash of transactions loaded from disk
* tests: Add information on how to add Vulture suppressions
* test: Fix extra_args in wallet_import_rescan.py
* doc: Fix doxygen comment for SignTransaction in rpc/rawtransaction_util
* test: Make PORT_MIN in test runner configurable
* util: Add count_seconds time helper
* test: mempool entry time is persisted
* Test: Move common function assert_approx() into util.py
* Fix Android zlib cross compilation issue (https://stackoverflow.com/questions/21396988/zlib-build-not-configuring-properly-with-cross-compiler-ignores-ar)
* Add full Android build example command and instructions on getting SDK/NDK
* Add config opts and patch for aarch64_android build of Qt
* Add ranlib to android.mk hosts file (fix OSX Android NDK build)
* Add example Android host-platform-triplet and options
* Add support for building Android dependencies
* [doc] update brew instruction for doxygen
* Update tx-size-small comment with relevant CVE disclosure
* Add documenting comments to spanparsing.h
* Abstract out some of the descriptor Span-parsing helpers
* test: lint: Add DisabledOpcodeTemplates to whitelist
* test: Remove unused connect_nodes_bi
* scripted-diff: test: Replace connect_nodes_bi with connect_nodes
* test: Use connect_nodes when connecting nodes in the test_framework
* test: Reformat python imports to aid scripted diff
* refactoring: move ReplayBlocks under CChainState
* refactoring: move LoadChainTip to CChainState method
* doc: fix CChainState::ActivateBestChain doc
* doc: Fix whitespace errs in .md files, bitcoin.conf, Info.plist.in, and find_bdb48.m4
* test: add unit test for wallet watch-only methods involving PubKeys
* test: add some unit tests for merkle.cpp
* test: Bump timeouts in slow running tests
* depends: qt: Fix LDFLAGS pickup
* [refactor] Rewrite AcceptToMemoryPoolWorker() using smaller parts
* qt: Run \"make translate\" in ./src
* test: Add notes on how to generate data/wallets/high_minversion
* build: remove unnecessary qt xcb patching
* build: remove unnecessary macOS qt patching
* Add python bech32 impl round-trip test
* test: improve gettransaction test coverage
* rpc: fix regression in gettransaction
* build: make protobuf optional in depends
* doc: clarify protobuf build requirements
* build: update boost macros to latest upstream
* [wallet] Rename \'decode\' argument in gettransaction method to \'verbose\'
* Clarify includeWatching for fundrawtransaction
* bitcoin-wallet: Add a missing closing parenthesis in the help
* Elaborate on the need to re-login on Debian-based systems to use tor following usermod
* Prevent UpdateTip log message from being broken up
* Qt: advise users not to switch wallets when opening a BIP70 URI.
* doc: specify protobuf as optional in build docs
* build: disable BIP70 support by default
* tests: rename \'test_getnetworkinginfo\' in \'test_getnetworkinfo\'
* tests: add a test for the \'servicesnames\' RPC field
* doc: add comments clarifying how local services are advertised
* Fix block index inconsistency in InvalidateBlock()
* util: CBufferedFile fixes
* doc: move-only ActivateBestChain doxygen comment to header
* signrawtransaction
*: improve error for partial signing
* signrawtransactionwithkey: better error messages for bad redeemScript/witnessScript
* depends: qt: Fix C{,XX}FLAGS pickup
* gui: fix autofocus in CreateWalletActivity::askPassphrase()
* gui: fix passphrase labels/tooltip in createwalletdialog/askpassphrasedialog
* gui: rename encrypt(), blank(), and askPasshprase()
* qa: Check scantxoutset result against gettxoutsetinfo
* rpc: Improve scantxoutset response and help message
* Escape ampersands (&) in wallet names in Open Wallet menu
* HTML escape address labels in more dialogs and notifications
* HTML escape the wallet name in more dialogs and notifications
* refactor: Cleanup walletinitinterface.h
* doc: Add issue templates for bug and feature request
* Added libbitcoin_qt and bitcoin-qt to the msbuild configuration.
* Testchains: Qt: Simplify network/chain styles
* Testchains: Generic selection with -chain= in addition of -testnet and -regtest
* Set init stop timeout to 10 min
* Add Create Wallet menu action
* Expose wallet creation to the GUI via WalletController
* Add CreateWalletDialog to create wallets from the GUI
* Optionally allow AskPassphraseDialog to output the passphrase
* refactor: Avoid locking cs_main in ProcessNewBlockHeaders
* gui: Refactor OpenWalletActivity
* contrib: guix: Remove ssp spec file hack
* contrib: guix: More robust search paths, add checks
* depends: zlib: Move toolchain options to configure
* Ignore old versionbit activations
* doc: add a release note for the new field in \'getpeerinfo\' and \'getnetworkinfo\'
* rpc/net: decode the services flags in a new entry
* Assert that the HRP is lowercase in Bech32::Encode
* Test that joinpsbts randomly shuffles the inputs
* Shuffle inputs and outputs after joining psbts
* Conservatively accept RBF bumps bumping one tx at the package limits
* Make lint-includes.sh work from any directory
* Disconnect peers violating blocks-only mode
* doc: improve comments relating to block-relay-only peers
* Don\'t relay addr messages to block-relay-only peers
* Add 2 outbound block-relay-only connections
* Add comment explaining intended use of m_tx_relay
* Check that tx_relay is initialized before access
* test: Remove incorrect and unused try-block in assert_debug_log
* Refactor rawtransaction_util\'s SignTransaction to have previous tx parsing be separate
* devtools: Accomodate block-style copyright blocks
* lint: Bump flake8 to 3.7.8
* lint: Disable flake8 W504 warning
* test/contrib: Fix invalid escapes in regex strings
* wallet: Fix segmentation fault in CreateWalletFromFile
* test: Print both messages on failure in assert_raises_message
* wallet: Fix documentation around WalletParameterInteraction
* doc: ActivateBestChainStep return value
* gui: Update English source translation
* gui: Update transifex slug for 0.19
* Avoid unnecessary \"Synchronizing blockheaders\" log messages
* qt: Replace objc_msgSend with native syntax
* Check for codespell in lint-spelling.sh
* GUI: Remove unused menu items for Windows and Linux
* doc: Add release note for the new gettransaction argument
* tests: Add a new functional test for gettransaction
* gettransaction: add an argument to decode the transaction
* Don\'t show addresses or P2PK in decoderawtransaction
* [qt] Change uninstall icon on Windows
* qt: Replace QFontMetrics::width() with TextWidth()
* Add a test wallet_reorgsrestore
* Modify wallet tx status if has been reorged out
* Add window final block height to getchaintxstats
* wallet: extract PubKey from P2PK script with Solver
* doc: Delete stale URL in test README
* Added the bench_bitcoin project to the list automatically produced by the msvc-autogen python script.
* wallet: Translate all initErrors in CreateWalletFromFile
* util: Make util/error bilingual_str (refactor)
* doc: Tidy up shadowing section
* [refactor] Change tx_relay structure to be unique_ptr
* [refactor] Move tx relay state to separate structure
* test: add executable flag for wallet_watchonly.py
* 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.
* qa: Relax so that the subscriber is ready before publishing zmq messages
* ci: Move CCACHE_DIR and test_runner tmp dir into ./ci/scratch/
* ci: Pass down $MAKEJOBS to test_runner.py
* test: Establish only one connection between nodes in rpc_invalidateblock
* move-only: move coins statistics utils out of RPC
* doc: Add spacing to command in translation_process.md
* Remove unused fScriptChecks parameter from CheckInputs
* Support serialization of std::vector
* rpc bumpfee: move feerate estimation logic into separate method
* lint: Catch use of [] or {} as default parameter values in Python functions
* Avoid using mutable default parameter values
* doc: Update labels in CONTRIBUTING.md
* qt: Remove QSignalMapper from TransactionView
* qt: Replace obsolete functions of QDesktopWidget
* qt: Remove obsolete QModelIndex::child()
* wallet: Use wallet name instead of pointer on unload/release
* [gui] intro: enable pruning by default unless disk is big
* [gui] intro: add prune preference
* [gui] intro: inform caller if intro was shown
* [gui] add explicit prune setter
* [node] add forceSetArg to interface
* [Doc] Add documentation for the new whitelist permissions
* Replace obsolete functions of QSslSocket
* qt: Remove QSignalMapper from RPCConsole
* Release notes: add previously undocumented changes
* Release notes: edit previously-detached notes
* Remove SyncTransaction for conflicted txn in CWallet::BlockConnected
* Encapsulate tx status in a Confirmation struct
* qt: Add TextWidth() wrapper
* gui: Ensure tx send error highlight is visible
* packages.md: document depends build targets
* Clarify need to specify --prefix with depends
* Doc: move detached release notes into release-notes.md
* gui: remove unused PlatformStyle::TextColorIcon
* refactor: replace qLowerBound & qUpperBound with std:: upper_bound & lower_bound
* refactor: replace qSort with std::sort
* refactor: replace qStableSort with std::stable_sort
* build: update RapidCheck Makefile
* QA: fix rpc_setban.py race
* Make descriptor test deterministic
* rpc: Use Join helper in rpc/util
* util: Add Join helper to join a list of strings
* Unrecommend making config file owned by bitcoin
* Set ProtectHome in systemd service file
* Chgrp config dir to bitcoin in systemd service
* Improve clarity of systemd service file comments
* scripts: move update-translations.py to maintainer-tools repo
* doc: add default bitcoin.conf locations
* scripts: remove github-merge.py
* doc: initial RapidCheck property-based testing documentation
* doc: add release-notes for getmempoolentry weight field addition
* qa: Add RPC tests for weight in mempool entry
* RPC: add weight to mempool entry output
* Bugfix: QA: Run tests with UPnP disabled
* qa: Test ZMQ notification after chain reorg
* qa: Refactor ZMQ test
* doc: Add note regarding ZMQ block notification
* test: Add test for default maxfeerate in sendrawtransaction
* wallet/rpc: Use the default maxfeerate value as BTC/kB
* doc: Add ZMQ dependencies to Fedora build
* Additional tests for other failure cases
* Check error messages in descriptor tests
* Give more errors for specific failure conditions
* Return an error from descriptor Parse that gives more information about what failed
* test: Test that low difficulty chain fork is rejected
* Reformat p2p_permissions.py
* [Fix] The default whitelistrelay should be true
* doc: Refer in rpcbind doc to the manpage
* test: Pass down correct chain name in tests
* [doc] mention whitelist is inbound, and applies to blocksonly
* ci: Set --ansi in test_runner
* ci: Add environment files for all settings
* build: echo prop tests status during build
* Add test for setban
* Fix spelling error chache -> cache.
* Cover UTXO set access with lock annotations
* ci: Add note that this assumes a fresh git clone
* ci: Use ./ci/ on non-travis host
* ci: Remove dependence on travis, use it as fallback env
* ci: Add retry
* ci: Rename .travis/ to ./ci/
* refactor: have CCoins
* data managed under CChainState
* doc: Improve versionbits.h documentation
* util: Move ResolveErrMsg to util/error
* [Fix] Allow connection of a noban banned peer
* lint: Add false positive to python dead code linter
* qt: Remove menu icons
* 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
* test: Test p2sh-witness and bech32 in wallet_import_rescan
* test: Replace fragile \"rng\" with call to random()
* test: Generate one block for each send in wallet_import_rescan
* [Consensus] Bury segwit deployment
* [docs] Add release notes for burying bip 9 soft fork deployments
* [Consensus] Bury CSV deployment height
* [tests] Add coverage for the content of getblockchaininfo.softforks
* Remove unused variable
* doc: Fix typos in COPYRIGHT
* build: Remove src/obj directory from repository
* depends: zeromq: disable draft classes and methods
* depends: xproto: configure flags cleanup
* depends: qrencode: configure flags cleanup
* depends: fontconfig: configure flags cleanup
* depends: libxcb: configure flags cleanup
* depends: libXau: configure flags cleanup
* descriptor: fix missed m_script_arg arg renaming in #14934
* Add missing contributor to release notes
* build: ignore macOS make deploy artefacts & add them to clean-local
* [rpc] Tidy up reporting of buried and ongoing softforks
* Moved and renamed hash256 from util.py to zmq_interface.py
* rpc: Fix getblocktemplate CLI example (#16594)
* Add test for AddTimeData
* travis: Bump timeout from 50 minutes to 90
* doc: Mention other ways to conserve memory on compilation
* build: Remove unused src/obj-test folder
* doc: Update Markdown syntax for bdb packages
* Add functional tests for flexible whitebind/list
* Replace the use of fWhitelisted by permission checks
* Do not disconnect peer for asking mempool if it has NO_BAN permission
* Make whitebind/whitelist permissions more flexible
* sipsorcery gitian key.
* Give QApplication dummy arguments
* [wallet] Restore confirmed/conflicted tx check in SubmitMemoryPoolAndRelay()
* doc: Add historical release notes for 0.18.1
* build: disable libsecp256k1 benchmarks
* Remove p2pEnabled from Chain interface
* Fix Char as Bool in interfaces
* util: refactor upper/lowercase functions
* Do not query all DNS seed at once
* Add unmodified-but-with-checksum to getdescriptorinfo
* Factor out checksum checking from descriptor parsing
* [wallet] restore coinbase check in SubmitMemoryPoolAndRelay()
* refactor: pcoinsTip -> CChainState::CoinsTip()
* build: disable libxcb extensions
* test: only include and init openSSL where it\'s actually used
* [doc] chain: Declare BLOCK_VALID_HEADER reserved
* doc: Fix grammar and punctuation in developer notes
* test: Add missing sync_blocks to feature_pruning
* [doc] Update and extend benchmarking.md
* test: Explain why -whitelist is used in feature_fee_estimation
* test: Format feature_fee_estimation with pep8
* test: Avoid hardcoding the chain name in combine_logs
* [build] .gitignore add Qt Creator Makefile.am.user
* log: harmonize bitcoind server logging
* Tidy up BroadcastTransaction()
* Remove unused submitToMemoryPool and relayTransactions Chain interfaces
* Remove duplicate checks in SubmitMemoryPoolAndRelay
* Introduce CWalletTx::SubmitMemoryPoolAndRelay
* Add BroadcastTransaction utility usage in Chain interface
* Test: Set -acceptnonstdtxn in feature_fee_estimation
* gui: Remove unused RPCConsole::tabFocus
* test: Adapt test framework for chains other than \"regtest\"
* test: Fix “local variable \'e\' is assigned to but never used”
* test: Make tests arg type specific
* Revamp option negating policy
* wallet: Drop unused OldKey
* doc: Add release note for the deprecated totalFee option of bumpfee
* 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.
* autoconf: Sane --enable-debug defaults.
* test: Add -acceptnonstdtxn to self.extra_args[3]
* gui: Generate bech32 addresses by default (take 2, fixup)
* [wallet] Remove CMerkleTx serialization logic
* [wallet] Flatten CWalletTx class hierarchy
* [wallet] Move CMerkleTx functions into CWalletTx
* test: Bump rpc_timeout in feature_dbcrash
* Add setting as known type
* qa: fix deprecated log.warn in feature_dbcrash test
* doc: update labels in CONTRIBUTING.md
* Allow createwallet to take empty passwords to make unencrypted wallets
* Updated python command in readme so it will work on systems that have both python2 and 3 installed.
* scripts: filter more qt plugins we don\'t use in macdeployqtplus
* scripts: misc cleanups in macdeployqtplus
* scripts: use format() in macdeployqtplus
* scripts: add type annotations to macdeployqtplus
* Trivial: add missing space
* wallet: Rename CWalletKey to OldKey
* wallet: Enumerate walletdb keys
* Replace IsArgKnown() with FlagsOfKnownArg()
* Use ArgsManager::NETWORK_ONLY flag
* rpc: sendrawtransaction unconditionality/privacy note
* [test] walletcreatefundedpsbt: check RBF is disabled when -walletrbf=0
* [doc] rpc: remove \"fallback to\" from RBF default help
* [rpc] walletcreatefundedpsbt: use wallet default RBF
* Remove unused m_debug_only member from Arg struct
* scripted-diff: Use ArgsManager::DEBUG_ONLY flag
* scripted-diff: Use Flags enum in AddArg()
* Add Flags enum to ArgsManager
* Refactor InterpretNegatedOption() function
* refactoring: Check IsArgKnown() early
* [mempool] log correct messages when CPFP fails
* test: Fail early on disconnect in mininode.wait_for_
*
* Add RPC bumpfee totalFee deprecation test
* deprecate totalFee argument in bumpfee RPC call
* Exclude depends/Makefile in .gitignore
* [qa] Ensure we don\'t generate a too-big block in p2sh sigops test
* [qa] Fix race condition in example_test.py
* doc: add note on precedence of options in bitcoin.conf
* refactor : use RelayTransaction in BroadcastTransaction utility
* doc: Remove downgrading warning in release notes, per 0.18 branch
* Enable all tests in feature_config_args.py
* Use CheckDataDirOption() for code uniformity
* Fix datadir handling in bitcoin-cli
* Fix datadir handling in bitcoin-qt
* Fix datadir handling in bitcoind
* Add CheckDataDirOption() function
* Return absolute path early in AbsPathForConfigVal
* Have importwallet use ImportPrivKeys and ImportScripts
* Optionally allow ImportScripts to set script creation timestamp
* Have importaddress use ImportScripts and ImportScriptPubKeys
* Have importpubkey use CWallet\'s ImportScriptPubKeys and ImportPubKeys functions
* scripted-diff: Make translation bilingual
* Add bilingual message type
* Refactor out translation.h
* tests: functional watch-only wallet tests
* doc: add release note for include_watchonly default changes
* depends: disable unused Qt features
* doc: remove line numbers from qt package links
* doc: fix typo in bitcoin_qt.m4 comment
* build: remove jpeg lib check from bitcoin_qt.m4
* build: disable libjpeg in qt
* test: Skip flaky p2p_invalid_messages test on macOS
* wallet: Recognize -disablewallet option early
* travis: Print memory and number of cpus
* extract min & max depth onto coin control
* Remove ReadVersion and WriteVersion
* Log the actual wallet file version
* Remove nFileVersion from CWalletScanState
* Specify AM_CPPFLAGS for ZMQ.
* txmempool: Remove unused default value MemPoolRemovalReason::UNKNOWN
* move-onlyish: move CCoinsViewErrorCatcher out of init.cpp
* doc: Update bips 35, 37 and 111 status
* build: Treat -Wswitch as error when --enable-werror
* Use switch on status in RpcWallet
* Return error for ignored passphrase through disable private keys option
* Have importprivkey use CWallet\'s ImportPrivKeys, ImportScripts, and ImportScriptPubKeys
* Log when an import is being skipped because we already have it
* test: remove redundant setup in addrman_tests
* depends: qt: Patch to remove dep on libX11
* gitignore: Actually pay attention to depends patches
* Add release notes for DEFAULT_BLOOM change
* rpcwallet: document include_watchonly default for watchonly wallets
* rpcwallet: default include_watchonly to true for watchonly wallets
* QA: Fix race condition in wallet_encryption test
* Get rid of PendingWalletTx class.
* depends: Bump QT to LTS release 5.9.8
* net: Make poll in InterruptibleRecv only filter for POLLIN events. poll should block until there is data to be read or the timeout expires.
* symbol-check: Disallow libX11-
*.so.
* shared libraries
* depends: libXext isn\'t needed by anyone
* build-aux: Remove check for x11-xcb
* depends: libX11: Make package headers-only
* depends: qt: Explicitly stop using Xlib/libX11
* depends: xproto is only directly needed by libXau
* fix: tor: Call event_base_loopbreak from the event\'s callback
* Use strong enum for WalletCreationStatus
* Place out args at the end for CreateWallet
* Remove wallet settings from chainparams
* qa: Add --filter option to test_runner.py
* docs: Improve netbase comments
* doc: describe how to pass wildcard names to test runner
* test: enable passing wildcards with path to test runner
* Remove unused bits from the service flags enum
* contrib: guix: Additional clarifications re: substitutes
* Fix autostart filenames on Linux
* contrib: guix: Various improvements.
* contrib: guix: Clarify SOURCE_DATE_EPOCH.
* contrib: Add deterministic Guix builds.
* Change ImportScriptPubKeys\' internal to apply_label
* Call node->initError instead of InitError from GUI code
* init: Use InitError for all errors in bitcoind/qt
* Restrict lifetime of ReserveDestination to CWallet::CreateTransaction
* CreateTransaction calls KeepDestination on ReserveDestination before success
* Remove redundant pre-TopUpKeypool checks
* test: Add test for maxtxfee option
* Move wallet creation out of the createwallet rpc into its own function
* Add GetNewChangeDestination for getting new change Destinations
* Replace CReserveKey with ReserveDestinatoin
* Add GetNewDestination to CWallet to fetch new destinations
* Move WatchOnly stuff from SigningProvider to CWallet
* Remove CCryptoKeyStore and move all of it\'s functionality into CWallet
* Move various SigningProviders to signingprovider.{cpp,h}
* Move KeyOriginInfo to its own header file
* scripted-diff: rename CBasicKeyStore to FillableSigningProvider
* Move HaveKey static function from keystore to rpcwallet where it is used
* [mempool] Allow one extra single-ancestor transaction per package
* Remove CKeyStore and squash into CBasicKeyStore
* test: Add test for BIP30 duplicate tx
* test: Properly serialize BIP34 coinbase height
* Remove redundant WalletController::addWallet slot
* depends: expat 2.2.7
* Update doc and CI config
* qt: Assert QMetaObject::invokeMethod result
* gui: Fix missing qRegisterMetaType(WalletModel
*)
* test: rpc_users: Make variable names more clear.
* test: rpc_users: Also test rpcauth.py with specified password.
* test: rpc_users: Add function for testing auth params.
* test: rpc_users: Add function for auth\'d requests.
* refactoring: remove mapBlockIndex global
* refactoring: make pindexBestInvalid internal to validation.cpp
* refactoring: add block_index_candidates arg to LoadBlockIndex
* refactoring: move block metadata structures into BlockManager
* refactor: Rename getWallets to getOpenWallets in WalletController
* gui: Sort wallets in open wallet menu
* test: Tool wallet test coverage for unexpected writes to wallet
* test: Split tool_wallet.py test into subtests
* test: Add log messages to test/functional/tool_wallet.py
* rpc: switch to using RPCHelpMan.Check()
* Make the RPCHelpMan aware of JSONRPCRequest and add Check() helper
* build: prune dbus from depends
* Remove unused guard
* doc: Include static members in Doxygen
* docs: add reduce-memory.md
* [build]: use #if HAVE_SYSTEM instead of defined(HAVE_SYSTEM)
* bench: Benchmark blockToJSON
* [docs] Add release notes for PR 15427
* rpc: migrate JSONRPCRequest functionality into request.cpp
* Disable other targets when enable-fuzz is set
* Enable ShellCheck rules
* [RPC] add new utxoupdatepsbt arguments to the CRPCCommand and CPRCConvertParam tables
* Add HaveKey and HaveCScript to SigningProvider
* Use placeholder instead of key expiration date
* Add logpath description for getrpcinfo
* Suppress output in test_bitcoin for expected errors
* Add ChaCha20Poly1305AATTBitcoin AEAD benchmark
* Add ChaCha20Poly1305AATTBitcoin tests
* rpc: fix RPC help requirements for getblocktemplate
* test: Split fundrawtx test into subtests
* test: Make local symbols in run_test members
* test: Add tests for getblockchaininfo.softforks
* bench: Move generated data to a dedicated translation unit
* rpc: Clarify that block count means height excl genesis
* wallet: Remove unreachable code in CreateTransaction
* wallet: Fix -maxtxfee check by moving it to CWallet::CreateTransaction
* Add antialiasing to traffic graph widget
* TEST: Replace hard-coded hex tx with classes
* Improve documentation of memory_cleanse()
* [MSVC] Copy build output to src/ automatically after build
* Fix: \"Bitcoin Core\" -> \"The Bitcoin Core\"
* Drop no-longer-relevant copyright holder name
* Include Objective-C source files
* doc: Fix broken link in doc/build-osx.md
* [MSVC] allow user level project customization
* [wallet] abort when attempting to fund a transaction above maxtxfee
* test: Add missing sync_all to wallet_balance test
* [MSVC] Enable Fuzz for functional tests
* qt: test: Create at most one testing setup
* util: No translation of `Bitcoin Core` in the copyright
* util: Explain why the path is cached
* tests: Switch one of the Travis jobs to an unsigned char environment (-funsigned-char)
* tests: Reduce compilation time and unneccessary recompiles by removing unused includes in tests
* qt: Run «make translate» in ./src/
* scripted-diff: Avoid passing PACKAGE_NAME for translation
* build: Stop translating PACKAGE_NAME
* Add Travis check for single parameter constructors not marked \"explicit\"
* Add missing ECC_Stop(); in GUI rpcnestedtests.cpp
* Remove extra CBlockIndex declaration
* Fix GCC 7.4.0 warning
* Add ChaCha20Poly1305AATTBitcoin AEAD implementation
* signrawtransactionwithkey: report error when missing redeemScript/witnessScript param
* rpc: Allow shutdown while in generateblocks
* build: dont compile rapidcheck with -Wall
* test: Require standard txs in regtest
* docs: release note wording
* wallet/rpc: use static help text
* wallet/rpc/getbalances: add entry for \'mine.used\' balance in results
* Use qInfo() if no error occurs
* [MSVC]: Create the config.ini as part of bitcoind build
* doc: remove orphaned header in developer notes
* ci: Run extended tests
* Set AA_EnableHighDpiScaling attribute early
* test: Log to debug.log in all tests
* Make and get the multisig redeemscript and destination in one function instead of two
* net: Document what happens to getdata of unknonw type
* test: use common setup in gui tests
* test: Create data dir in BasicTestingSetup
* MSVC: Fix error in debug mode (Fix #16245)
* Change ismine to take a CWallet instead of CKeyStore
* Move ismine to wallet module
* [qa] Test that getdata requests work as expected
* Make AbortNode() aware of MSG_NOPREFIX flag
* Add MSG_NOPREFIX flag for user messages
* Prepend the error/warning prefix for GUI messages
* doc: Remove travis badge from readme
* docs: add rapidcheck to vcpkg install list
* Cleaned up and consolidated msvc build files to allow faster builds and easier migration to vs2019.
* test: Suppress false positive leak in secure_allocator
* test: Log output even if fuzzer failed
* test: Add test that mainnet requires standard txs
* chainparams: Remove unused fMineBlocksOnDemand
* test: Add test for unknown args
* gui: Fix open wallet menu initialization order
* net: Use mockable time for tx download
* tests: Make coins_tests/updatecoins_simulation_test deterministic
* devtools: Fetch and display ACKs at sign-off time in github-merge
* getrawtransaction: inform about blockhash argument when lookup fails
* doc: Add release notes for 14897 & 15834
* travis: Use absolute paths for cache dirs
* travis: Fix caching issues
* Improve build-osx formatting
* doc: Remove explicit mention of version from SECURITY.md
* addrdb: Remove temporary files created in SerializeFileDB. Fixes non-determinism in unit tests.
* Add example 2nd arg to signrawtransactionwithkey
* Update configure to reject unsafe miniUPnPc API ver
* Replace remaining fprintf with tfm::format manually
* Failing functional tests stop lcov
* Add log output during initial header sync
* scripted-diff: Replace fprintf with tfm::format
* doc: Rework section on ACK
* tinyformat: Add doc to Bitcoin Core specific strprintf
* Delete error-prone CScript constructor
* devtools: Always use unabbreviated commit IDs in github-merge.py
* depends: xtrans: Configure flags cleanup.
* Fix spelling errors identified by codespell 1.15.0
* fixup: Fix prunning test
* Fix RPC/pruneblockchain returned prune height
* scripted-diff: gitian: Use REFERENCE_DATETIME directly.
* Remove -mempoolreplacement to prevent needless block prop slowness.
* Add test for dumping the private key imported from descriptor
* Extend importmulti descriptor tests
* [test] Add test to check mempool consistency in case of reorgs
* validation: Add missing mempool locks
* txpool: Make nTransactionsUpdated atomic
* doc: update release process with SECURITY.md
* doc: clarify support in SECURITY.md
* scripts: add key for fanquake to trusted keys list
* doc: Add release notes for 15993
* Align formatting with clang-format
* Use PACKAGE_NAME in UPnP description
* Drop support of insecure miniUPnPc versions
* Move DEFAULT_PEERBLOOMFILTERS from validation.h to net_processing.h
* Disable bloom filtering by default.
* Import private keys from descriptor with importmulti if provided
* Add private key derivation functions to descriptors
* [build]: check std::system for -[alert|block|wallet]notify
* [build] MSVC: set HAVE_SYSTEM for desktop apps
* [build] detect std::system or ::wsystem
* Clean up logic in memory_cleanse() for MSVC
* Include core_io.h from core_read.cpp
* Don\'t use global (external) symbols for symbols that are used in only one translation unit
* depends: remove usage of TAR_OPTIONS
* docs: create security policy
* [qa] Test disconnect block failure -> shutdown
* [validation] Crash if disconnecting a block fails
* wallet: do not encrypt wallets with disabled private keys
* tests: Mark unit test blockfilter_index_initial_sync as non-deterministic
* build: remove export GZIP from gitian descriptors
* Add riscv64 to outputs list in release-process.md
* qt: fix opening bitcoin.conf via Preferences on macOS; see #15409
* gui: Set progressDialog to nullptr
* New regression testing for CVE-2018-17144, CVE-2012-2459, and CVE-2010-5137.
* Added comments referencing multiple CVEs in tests and production code.
* Make reasoning about dependencies easier by not including unused dependencies
* Add test for GCC bug 90348
* Don\'t GPG sign intermediate commits with github-merge tool
* gui: Enable console line edit on setClientModel
* Limit Python linting to files in the repo
* gui: Enable open wallet menu on setWalletController
* bitcoind: update -avoidpartialspends description to account for auto-enable for avoid_reuse wallets
* doc: release notes for avoid_reuse
* wallet: enable avoid_partial_spends by default if avoid_reuse is set
* test: add test for avoidreuse feature
* wallet/rpc: add \'avoid_reuse\' option to RPC commands
* wallet/rpc: add setwalletflag RPC and MUTABLE_WALLET_FLAGS
* wallet: enable avoid_reuse feature
* wallet: avoid reuse flags
* wallet: make IsWalletFlagSet() const
* wallet: rename g_known_wallet_flags constant to KNOWN_WALLET_FLAGS
* Fix bug around transaction requests
* Expire old entries from the in-flight tx map
* logging: Add threadsafety comments
* Log early messages with -printtoconsole
* Replace OpenDebugLog() with StartLogging()
* docs: add release note for 14954
* contrib: add curl as a required program in gitian-build.py
* gui: move coin control OK to the right
* wallet: Pass WalletBatch to CWallet::UnsetWalletFlag
* Apply the batch treatment to CWallet::SetAddressBook via ImportScriptPubKeys
* depends: libX
*: --disable-malloc0returnsnull in conf
* Move some of ProcessImport into CWallet::Import
*
* depends: libXext: Bump to 1.3.3 to fix _XEatDataWords
* depends: Purge libtool archives
* depends: Build secondary deps statically.
* Exceptions should be caught by reference, not by value.
* Add vertical spacer
* Remove global symbols: Avoid using the global namespace if possible
* depends: add ability to skip building zeromq
* contrib: use newer config.guess & config.sub in install_db4.sh
* remove parameters -addresstype=legacy in rpc_rawtransaction test
* configure: Add flag for enabling thread_local.
* util: Add type safe GetTime
* doc: add bitcoin_config.h PACKAGE updates to release process
* build: bump bitcoin_config.h packages to v0.18
* wallet_balance.py: Prevent edge cases
* replace tx hash with txid in test rawtransaction
* refactor: Improve CRollingBloomFilter::reset by using std::fill
* bench: Add benchmark for CRollingBloomFilter::reset
* rpc: Mention getwalletinfo where a rescan is triggered
* RPC: Hint for importmulti in help output of importpubkey and importaddress
* parameterize hard coded numbers referring to miner conf window
* depends: switch to secure download of all dependencies
* mempool: remove unused magic number from consistency check
* Make --setup command independent
* depends: add patch to common dependencies
* doc: fix/improve analyzepsbt in doc/psbt.md
* Do not show list for the only recipient.
* Batch writes for importmulti
* Have WalletBatch automatically flush every 1000 updates
* Add AddWatchOnlyWithDB, AddKeyOriginWithDB, AddCScriptWithDB functions
* Fix gitian-build.py --verify option
* Set/unset USE_LXC, USE_VBOX, USE_DOCKER explicitly
* Fix Docker related issues for gitian-build.py
* test: Speed up cache creation
* test: Bump MAX_NODES to 12
* scripted-diff: Rename LockAnnotation to LockAssertion
* Make sure the compile-time locking promises given via LockAnnotation:s hold also in practice at runtime (ifdef DEBUG_LOCKORDER)
* Move LockAnnotation to make it reflect the truth
* Move LockAnnotation from threadsafety.h (imported code) to sync.h (our code)
* Add a \'logpath\' field to getrpcinfo
* rpc: bugfix: Properly use iswitness in converttopsbt
* Remove temporary method assumeLocked(). Remove LockingStateImpl. Remove redundant cs_main locks.
* wallet: Use chain.lock() instead of temporary chain.assumeLocked()
* rpc: Switch touched RPCs to IsValidNumArgs
* Run all lint scripts
* refactoring: IsInitialBlockDownload -> CChainState
* refactoring: FlushStateToDisk -> CChainState
* refactoring: introduce ChainstateActive()
* move-only: make the CChainState interface public
* build with -fstack-reuse=none
* tests: Fail if RPC has been added without tests
* netaddress: Update CNetAddr for ORCHIDv2
* docs: Add productivity notes for \"dummy rebases\"
* [doc] rpcwallet: Only fail rescan when blocks have been pruned
* validation: Hold cs_main when reading chainActive in RewindBlockIndex
* [rpc] deriveaddresses: Correct descriptor checksum in RPCExamples
* Disallow extended encoding for non-witness transactions (take 3)
* Add option to create an encrypted wallet
* [refactor] interfaces: Add missing LockAnnotation for cs_main
* init: Remove dead code in LoadChainTip
* doc: Mention blocksonly in reduce-traffic.md, unhide option
* test: Add test for p2p_blocksonly
* QA: add test for HKDF HMAC_SHA256 L32
* Add HKDF HMAC_SHA256 L=32 implementations
* Add support for descriptors to utxoupdatepsbt
* Abstract out UpdatePSBTOutput from FillPSBT
* Abstract out EvalDescriptorStringOrObject from scantxoutset
* Abstract out IsSegWitOutput from utxoupdatepsbt
* [docs] Update release-notes.md
* [docs] Update release-process.md
* rpc: faster getblockstats using BlockUndo data
* test: Format predicate source as multiline on error
* Give WalletModel::UnlockContext move semantics
* [tests] Make random seed logged and settable
* net: Rename ::fRelayTxes to ::g_relay_txes
* tests: Make msg_block a witness block
* doc: Remove win32 from the release process
* test: Remove True argument to CBlock::serialize
* Show loaded wallets as disabled in open menu instead of nothing
* Add LOCKS_EXCLUDED(cs_main) to LimitValidationInterfaceQueue(...) which does AssertLockNotHeld(cs_main)
* .gitignore: Don\'t ignore depends patches
* Add test for ArgsManager::GetChainName
* Add unit test NextString, ForEachNoDup functions
* util_SettingsMerge test cleanup
* fix static_assert for macro HAVE_THREAD_LOCAL
* Fix portability issue with pthreads
* Document strenghtening
* Add hash strengthening to the RNG
* Do not construct out-of-bound pointers in SHA512/SHA1/RIPEMD160 code
* scripted-diff: Bump copyright headers in wallet
* wallet: Only fail rescan when blocks have actually been pruned
* Add ChaCha20 bench
* test_runner: Move pruning back to extended
* refactoring: remove unused chainActive
* scripted-diff: replace chainActive -> ::ChainActive()
* refactoring: introduce unused ChainActive()
* rename: CChainState.chainActive -> m_chain
* Add ChaCha20 encryption option (XOR)
* rpc: Deprecate getunconfirmedbalance and getwalletinfo balances
* Remove Windows 32 bit build
* [tests] Comment for why logging config is set as command-line args.
* Install bitcoin-wallet manpage.
* [depends] boost: update to 1.70
* Separate reason for premature spends (coinbase/locktime)
* Assert validation reasons are contextually correct
* [refactor] Update some comments in validation.cpp as we arent doing DoS there
* [refactor] Drop unused state.DoS(), state.GetDoS(), state.CorruptionPossible()
* scripted-diff: Remove DoS calls to CValidationState
* [refactor] Prep for scripted-diff by removing some \
s which annoy sed.
* Allow use of state.Invalid() for all reasons
* Fix handling of invalid headers
* [refactor] Use Reasons directly instead of DoS codes
* CorruptionPossible -> BLOCK_MUTATED
* CorruptionPossible -> TX_WITNESS_MUTATED
* LookupBlockIndex -> CACHED_INVALID
* [refactor] Drop redundant nDoS, corruptionPossible, SetCorruptionPossible
* [refactor] Add useful-for-dos \"reason\" field to CValidationState
* rpc: Add lock annotations to block{,header}ToJSON
* Ban all peers for all block script failures
* Clean up banning levels
* [refactor] drop IsInvalid(nDoSOut)
* [refactor] Refactor misbehavior ban decisions to MaybePunishNode()
* [refactor] rename stateDummy -> orphan_state
* Drop obsolete sigops comment
* rpc: Add getbalances RPC
* doc: Add historical release notes for 0.18.0
* rpcwallet: Make helper methods const on CWallet
* Silence GCC 7 warning \"control reaches end of non-void function\" (-Wreturn-type) in psbt.cpp
* GUI: Move QRImageWidget to its own file-pair
* doc: Add release notes for 15730
* rpc: Show scanning details in getwalletinfo
* wallet: Track current scanning progress
* doc: Explain how to pass in non-fundamental types into functions
* [docs] Add doxygen comment for CReserveKey
* [docs] Add doxygen comment for CKeyPool
* rpc: Serialize in getblock without cs_main
* rpc: Use IsValidNumArgs in getblock
* wallet: Use IsValidNumArgs in getwalletinfo rpc
* GUI: Refactor actual QR code rendering into new QRImageWidget::setQR
* [tests] log thread names by default in functional tests
* test: Add reorg test to wallet_balance
* test: Check that wallet txs not in the mempool are untrusted
* test: Add getunconfirmedbalance test with conflicts
* test: Add wallet_balance test for watchonly
* [qa] test_runner: Move feature_pruning to base tests
* Replace deprecated Boost Filesystem function
* [tests] fix block time in feature_pruning.py
* Remove dead code for walletFile check
* threads: add thread names to deadlock debugging message
* threads: prefix log messages with thread names
* tests: add threadutil tests
* threads: introduce util/threadnames, refactor thread naming
* GetKeyBirthTimes should return key ids, not destinations
* Replace CScriptID and CKeyID in CTxDestination with dedicated types
* add missing debian contrib files to tarball
* Remove unused OpenSSL includes to make it more clear where OpenSSL is used
* wallet: Avoid logging no_such_file_or_directory error
* lint: Check that all wallet args are hidden
* wallet: Track scanning duration
* Bugfix: dummywallet: Add -ignorepartialspends to list of ignored wallet options
* dummywallet: Reformat ignored wallet options list
* remove extraneous scope
* wallet: log on rescan completion
* Include bitcoin_config.h in release process
* Align MSVC build options with Linux build ones
* disable HAVE_THREAD_LOCAL on unreliable platforms
* appveyor: Write AATTPACKAGE_NAMEAATT to config
* doc: explain AcceptToMemoryPoolWorker\'s coins_to_uncache
* Remove NOTFOUND transactions from in-flight data structures
* Add an explicit memory bound to m_tx_process_time
* Improve NOTFOUND comment
* Add test for superfluous witness record in deserialization
* Fix missing input template by making minimal tx
* QA/mininode: Send all headers upfront in send_blocks_and_test to avoid sending an unconnected one
* QA: feature_filelock, interface_bitcoin_cli: Use PACKAGE_NAME in messages rather than hardcoding Bitcoin Core
* QA: Avoid re-reading config.ini unnecessarily
* Doc: remove text about txes always relayed from -whitelist
* Align code example with clang-format
* Show recipient list as detailedText of QMessageBox
* Make SendConfirmationDialog fully fledged
* doc: Fix -dustrelayfee= argument docs grammar
* refactor: replace isPotentialtip/waitForNotifications by higher method
* Resolve the qt/guiutil <-> qt/optionsmodal CD
* wallet: add cachable amounts for caching credit/debit values
* test: Add missing syncwithvalidationinterfacequeue to wallet_import_rescan
* Add settings merge test to prevent regresssions
* rpc: Speedup getaddressesbylabel
* Ensure repos are up-to-date
* Add WITH_LOCK macro: run code while locking a mutex
* wallet: Remove unused import checkpoints.h
* Add comments to Python ECDSA implementation
* [POLICY] Make sending to future native witness outputs standard
* Pure python EC
* [wallet] Move maxTxFee to wallet
* tests: fix outdate include in blockfilter_index_tests
* [test] combine_logs: append node stderr and stdout if it exists
* contrib: gh-merge: Use pagination to fetch all review comments
* refactor: Add handleNotifications method to wallet
* Filter IPv6 by ASN
* rpc: Remove dependency on interfaces::Chain in SignTransaction
* test: Add test that addmultisigaddress fails for watchonly addresses
* test: Fixup creatmultisig documentation and whitespace
* doc: Remove upgrade note in release notes from EOL versions
* qt: update request payment button text and tab description
* bench: Add wallet_balance benchmarks
* remove out-of-date comment on pay-to-witness support
* doc: Clarify RPC versioning
* [wallet] move-only: move CReserveKey to be next to CKeyPool
* Include cstring for sanity_test_fdelt if required
* [moveonly] Split glibc sanity_test_fdelt out
* Extract ParseDescriptorRange
* gitignore: add
*.plist (clang-check)
* gitignore: add
*.dat
* doc: mention creating application support bitcoin folder on OSX
* GUI: Options: Remove the upper-bound limit from pruning size setting
* GUI: Options: Set the range of pruning size before loading its value
* [rpc] Remove the addresses field from the getaddressinfo return object
* travis: Bump second timeout to 33 minutes, Add rationale
* scripted-diff: Bump copyright headers in test, bench
* docs: Clarify PR guidelines w/re documentation
* scripted-diff: Rename test_bitcoin to test/setup_common
* doc: describe onlynet option in doc/tor.md
* wallet_bumpfee.py: add test for change key preservation
* add functional tests for feerate bumpfee with adding inputs
* generalize bumpfee to add inputs when needed
* test: Use test_bitcoin setup in bench, Add test utils
* test: Have segwit always active in (Basic)TestingSetup
* docs: Improve netaddress comments
* [cleanup] Remove unused CReserveKey
* [rpc] simplify generate RPC
* bitcoin-wallet tool: Drop libbitcoin_server.a dependency
* Remove access to node globals from wallet-linked code
* bitcoin-wallet tool: Drop MakeChain calls
* [wallet] Refactor CWalletTx::RelayWalletTransaction()
* Avoid redefine warning
* [build] Move AnalyzePSBT from psbt.cpp to node/psbt.cpp
* [docs] Document src subdirectories and different libraries
* [build] Move wallet load functions to wallet/load unit
* [build] Add several util units
* [build] Move several units into common libraries
* [build] Move rpc rawtransaction util functions to rpc/rawtransaction_util.cpp
* [build] Move rpc utility methods to rpc/util
* [build] Move policy settings to new src/policy/settings unit
* [build] Move CheckTransaction from lib_server to lib_consensus
* test: Remove unused imports
* scripted-diff: use self.sync_
* methods
* test: Pass self to test_simple_bumpfee_succeeds
* test: Add BitcoinTestFramework::sync_
* methods
* test: Pass at most one node group to sync_all
* [wallet] Remove unnecessary Chain::Lock parameter from ResendWalletTransactions
* [wallet] Schedule tx rebroadcasts in wallet
* [wallet] Keep track of the best block time in the wallet
* qa: Prevent concurrency issues reading .cookie file
* scripted-diff: Rename sync_blocks to send_blocks to avoid name collisions and confusion
* test: Properly log named args in authproxy
* rpc: Validate maxfeerate with AmountFromValue
* doc: correct bitcoinconsensus_version in shared-libraries
* Upgrade gitian image before signing
* doc: Clarify sendrawtransaction::maxfeerate==0 help
* blockfilter: Update BIP 158 test vectors.
* rpc: Add getblockfilter RPC method.
* init: Add CLI option to enable block filter index.
* index: Access functions for global block filter indexes.
* test: Unit test for block filter index reorg handling.
* test: Unit tests for block index filter.
* index: Implement lookup methods on block filter index.
* index: Implement block filter index with write operations.
* serialize: Serialization support for big-endian 32-bit ints.
* blockfilter: Functions to translate filter types to/from names.
* index: Ensure block locator is not stale after chain reorg.
* index: Allow atomic commits of index state to be extended.
* Take non-importing keys into account for spendability warning in descriptor import
* Update bips.md for 0.18.0
* Mention new descriptor RPCs in descriptors.md
* travis: Properly cache and error on timeout
* Mention new PSBT RPCs in psbt.md
* Remove unused var
* rpc: getrpcinfo docs
* qa: Make swap_magic_bytes in p2p_invalid_messages atomic
* Speed up deriveaddresses for large ranges
* Import all origin info in importmulti; even for non-importing pubkeys
* Keep full pubkeys in FlatSigningProvider::origins
* wallet: Get all balances in one call
* rpc: RPCHelpMan: Always push_name when outer type is an object
* rpc: Add some doxygen comments to utils
* change default Python block serialization to witness
* [qa] Overhaul p2p_compactblocks.py
* [wallet] Remove ResendWalletTransactionsBefore
* gui: Generate bech32 addresses by default
* Squashed \'src/secp256k1/\' changes from 0b70241850..b19c000063
* qa: Check unconfirmed balance after loadwallet
* wallet: Update transactions with current mempool after load
* interfaces: Add Chain::requestMempoolTransactions
* [rpc] remove resendwallettransactions RPC
* Disconnect BlockNotifyGenesisWait and RPCNotifyBlockChange properly. Remove no-op CClientUIInterface::[signal_name]_disconnect.
* [tests] make pruning test faster
* [tests] style fixes in feature_pruning.py
* travis: Switch to ubuntu keyserver to avoid timeouts
* Silence \"Test case [...] did not check any assertions\" warnings when running \"test_bitcoin --log_level=test_suite\"
* Avoid repeated log messages in tests by connecting to signal handlers (ThreadSafeMessageBox, etc.) only once
* tests: Reduce noise level in test_bitcoin output
* Comment for seemingly duplicate LIBBITCOIN_SERVER
* doc: rpc-mining: Clarify error messages
* doc/dependencies: Fix typo libsrvg->librsvg
* rpc: Fix help text for signtransactionwithXXX
* release: Update the Windows Codesigning certificate
* refactor: combine Chain::findFirstBlockWithTime/findFirstBlockWithTimeAndHeight
* wallet: Move CWallet::ReacceptWalletTransactions locks to callers
* [tests] Add test for wallet rebroadcasts
* QA: add test for CKey::Negate()
* CKey: add method to negate the key
* Add documentation of struct PSBTAnalysis et al
* Refactor analyzepsbt for use outside RPC code
* Move PSBT decoding functions from core_io to psbt.cpp
* Poly1305: tolerate the intentional unsigned wraparound in poly1305.cpp
* Add Poly1305 bench
* Add Poly1305 implementation
* [docs] fix comment: the return value of findFork is _not_ an ancestor when the specified block is on the active chain
* Remove unused AES-128 code
* depends: latest rapidcheck, use INSTALL_ALL_EXTRAS
* rpc: Rename size to vsize in mempool related calls
* Handle the result of posix_fallocate system call
* Resolve the checkpoints <-> validation CD.
* net: Remove unused unsanitized user agent string CNode::strSubVer
* torcontrol: Use the default/standard network port for Tor hidden services, even if the internal port is set differently
* Interrupt orphan processing after every transaction
* [MOVEONLY] Move processing of orphan queue to ProcessOrphanTx
* Simplify orphan processing in preparation for interruptibility
* docs: Add more tips to productivity.md
* [docs] remove reference to signrawtransaction in the developer docs.
* doc: Fix all typos reported by codespell
* contrib: gh-merge: Include review comments in merge commit
* [rpc] Remove deprecated functionality message from validateaddress help
* [rpc] Remove signrawtransaction warning
* gui: Defer removeAndDeleteWallet when no modal widget is active
* Move g_is_mempool_loaded into CTxMemPool::m_is_loaded
* rpc: Expose g_is_mempool_loaded via getmempoolinfo and /rest/mempool/info.json
* doc: Add release notes for 15629
* qa: Add test for missing testnet section in conf file
* doc: documents how to calculate m_assumed_blockchain_size and m_assumed_chain_state_size on the release process.
* doc: Add release notes for 15596
* Doc: update ACK description in CONTRIBUTING.md
* refactor: Remove unused function
* qa: mininode: Clearer error message on invalid magic bytes
* doc: Add release notes for 15620
* init: Throw error when network specific config is ignored
* rpc: Mention all output types in decodescript doc
* refactor: Expose UndoReadFromDisk in header
* rpc: Uncouple rpcs from maxTxFee global
* rpc: Use IsValidNumArgs over hardcoded size checks
* refactor: Remove unused function
* depends: qt: Don\'t hardcode pwd path
* depends: tar: Always extract as yourself
* depends: Defer to Python detected by autoconf
* Do not relay banned IP addresses
* rpc: decodescript use IsValidNumArgs over hardcoded check
* rpc: Clarify decodescript RPCResult doc
* Add Gitian key for droark
* Set \'distro\' explicitly
* [docs] release note for disabling reject messages by default
* wallet: Improve log output for errors during load
* wallet: Remove unused GetLegacyBalance
* scripted-diff: wallet: Rename pcoin to wtx
* build: depends: Switch to python3
* Generate log entry when blocks messages are received unexpectedly.
* wallet/rpc: add maxfeerate parameter to sendrawtransaction
* wallet/rpc: add maxfeerate parameter to testmempoolaccept
* wallet: Log and ignore errors in ListWalletDir and IsBerkeleyBtree
* rpc: Document that minconf is an ignored dummy value
* rpc: return a number for estimated_feerate in analyzepsbt
* doc: correct analysepsbt rpc doc
* Fix overflow bug in analyzepsbt fee: CAmount instead of int
* depends: native_protobuf: avoid system zlib
* Enable TLS in link to chris.beams.io
* dead code: Remove dead option in HexStr conversion
* cli: remove duplicate wallet fields from -getinfo
* cli: replace testnet with chain and return network name as per BIP70.
* doc: remove release note fragments
* doc: correct path in build-windows.md
* rest/rpc: Make mempoolinfo atomic
* rpc: Speedup getrawmempool when verbose=true
* build: use full version string in setup.exe
* gitian: Improve error handling
* Remove remaining wallet accesses to node globals
* test: Refactor vout fetches in rpc_rawtransaction
* tests: Print remaining jobs in test_runner.py
* wallet_bumpfee.py: Make sure coin selection produces change
* Remove use of CCoinsViewMemPool::GetCoin in wallet code
* Remove use of CRPCTable::appendCommand in wallet code
* Remove use CValidationInterface in wallet code
* Document assumptions about C++ compiler
* Remove sharp edge (uninitialized m_filter_type) when using the compiler-generated constructor for BlockFilter
* In lint-format-strings, open files sequentially
* test: .style.yapf: Set column_limit=160
* test: Remove python3.4 workaround in feature_dbcrash
* doc: Move wallet lock annotations to header
* Suggested interfaces::Chain cleanups from #15288
* contrib: Bump gitian descriptors for 0.19
* doc: Remove pr release notes file in wrong dir
* Add sizeof(size_t) assumptions
* Fixup whitespace
* scripted-diff: Rename CPubKey and CKey::
*_KEY_SIZE and COMPRESSED_
*_KEY_SIZE
* Make SignatureExtractorChecker private to its own file
* Make last disconnected block BLOCK_FAILED_VALID, even when aborted
* doc: Remove ppa from linux build instructions
* .python-version: Specify full version 3.5.6
* scripted-diff: Update copyright in ./test
* scripted-diff: test: Remove brackets after assert
* build: Require python 3.5
* scripted-diff: test: Use py3.5 bytes::hex() method
* build: Bump version to 0.18.99
* docs: Update Transifex links
* docs: add \"sections\" info to example bitcoin.conf
* [addrman] Improve collision logging and address nits
* modify test for memory locked in case locking pages failed at some point
* [rpc] deriveaddresses: add range to CRPCConvertParam
* [wallet] remove unused GetScriptForMining
* Add regtests for HTTP status codes.
* Make deriveaddresses use stop/[start,stop] notation for ranges
* test: Bump timeout on tests that timeout on windows
* appveyor: Don\'t build debug libraries instead of \"build and delete\"
* Optimization: don\'t add txn back to mempool after 10 invalidates
* Prevent callback overruns in InvalidateBlock and RewindBlockIndex
* Release cs_main during InvalidateBlock iterations
* Use stop/[start,stop] notation in importmulti desc range
* Add support for stop/[start,stop] ranges to scantxoutset
* Support ranges arguments in RPC help
* Add ParseRange function to parse args of the form int/[int,int]
* fuzz: Link BasicTestingSetup (shared with unit tests)
* test: Move main_tests to validation_tests
* test: Remove useless test_bitcoin_main.cpp
* test: Add missing LIBBITCOIN_ZMQ to test_test_bitcoin_LDADD
* msvc: Use a single file to specify the include path
* [addrman] Ensure collisions eventually get resolved
* [rpc] remove deprecated generate method
* [net] feeler connections can be made to outbound peers in same netgroup
* doc: Update release process for snap package
* test: Add .style.yapf
* add rpc_misc.py, mv test getmemoryinfo, add test mallocinfo
* [addrman] Improve tried table collision logging
* refactor: Use RPCHelpMan::IsValidNumArgs in getrawtransaction
* doc: Remove misleading hint in getrawtransaction
* test: Simplify create_cache
* bench: Benchmark MempoolToJSON
* rpc: Pass mempool into MempoolToJSON
* rpc/gui: Remove \'Unknown block versions being mined\' warning
* 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
* Call InvalidateBlock without cs_main held
* Make RewindBlockIndex interruptible
* Call RewindBlockIndex without cs_main held
* Release cs_main during RewindBlockIndex operation
* Merge the disconnection and erasing loops in RewindBlockIndex
* Move erasure of non-active blocks to a separate loop in RewindBlockIndex
* Abstract EraseBlockData out of RewindBlockIndex
* wallet: Use fsbridge::ifstream to fix Windows path issue
* gui: Fix async open wallet call order
* Style cleanup.
* flatfile: Unit tests for FlatFileSeq methods.
* scripted-diff: Rename CBlockDiskPos to FlatFilePos.
* Move CDiskBlockPos from chain to flatfile.
* validation: Refactor file flush logic into FlatFileSeq.
* validation: Refactor block file pre-allocation into FlatFileSeq.
* validation: Refactor OpenDiskFile into method on FlatFileSeq.
* validation: Extract basic block file logic into FlatFileSeq class.
* util: Move CheckDiskSpace to util.
* Change brace formatting
* Remove use of IsInitialBlockDownload in wallet code
* Remove use of uiInterface.LoadWallet in wallet code
* circular-dependencies: Avoid treating some .h/.cpp files as a unit
* Remove use of AcceptToMemoryPool in wallet code
* Remove uses of InitMessage/Warning/Error in wallet code
* Remove uses of GetAdjustedTime in wallet code
* Remove use of g_connman / PushInventory in wallet code
* Remove uses of g_connman in wallet code
* Remove uses of fPruneMode in wallet code
* Remove uses of fee globals in wallet code
* Remove use of CalculateMemPoolAncestors in wallet code
* Remove use of GetTransactionAncestry in wallet code
* Remove use of GetCountWithDescendants in wallet code
* Remove use of IsRBFOptIn in wallet code
* Remove uses of CheckFinalTx in wallet code
* gui: Drop unused return values in WalletFrame
* Remove travis_wait from lint script
* refactor: Drop redundant wallet reference
* rpc: Actually throw help when passed invalid number of params
* rpc: Add RPCHelpMan::IsValidNumArgs()
* depends: Add commands for each package for each stage
* depends: Preprocessing doesn\'t care about deps
* qa: Fix wallet_txn_doublespend issue
* qa: Always refresh stale cache to be out of ibd
* [doc] productivity: more advanced git range-diff
* [doc] devtools: mention clang-format dependency
* qa: Remove mocktime unless required
* [doc] productivity: fix broken link
* [test] functional: set cwd of nodes to tmpdir
* tests: remove byte.hex() to keep compatibility
* Fix lack of warning of unrecognized section names
* Add missing #include.
* Address test todos by removing -txindex to nodes. Originally added when updating getrawtransaction to stop searching unspent utxos.
* Use a single wallet batch for UpgradeKeyMetadata
* appveyor: Remove unused NDEBUG removal
* scripted-diff: Remove NDEBUG pre-define
* Update assumevalid, minimumchainwork, and getchaintxstats to height 563378.
* [Doc] importmulti: add missing description of keypool option
* [Doc] add missing newline to witnessScript in listunspent help
* Implement analyzepsbt RPC and tests
* Add checksums to descriptors.md
* Make descriptor checksums mandatory in deriveaddresses and importmulti
* Add getdescriptorinfo to compute checksum
* Descriptor checksum
* Move PSBT UTXO fetching to a separate method
* Figure out what is missing during signing
* Implement joinpsbts RPC and tests
* Implement utxoupdatepsbt RPC and tests
* doc: update FreeBSD build guide for 12.0
* tests: Add missing cs_main locks required when accessing pcoinsdbview, pcoinsTip or pblocktree
* tests: Add script checking for deterministic line coverage
* Import public keys in order
* Test pubkey import to keypool
* Add option to importmulti add an imported pubkey to the keypool
* Fetch keys from keypool when private keys are disabled
* Add a method to add a pubkey to the keypool
* Add release notes for importing key origin info change
* Test importing descriptors with key origin information
* Import KeyOriginData when importing descriptors
* Implement a function to add KeyOriginInfo to a wallet
* Store key origin info in key metadata
* Move all PID file stuff to init.cpp
* fuzz: test_runner: Better error message when built with afl
* travis: Combine --disable-bip70 into existing job
* test: txindex: interrupt threadGroup before calling destructor
* Remove hdmasterkeyid
* Add a method to CWallet to write just CKeyMetadata
* Add WriteHDKeypath function and move
*HDKeypath to util/bip32.{h,cpp}
* Refactor keymetadata writing to a separate method
* Remove unused TransactionError constants
* [build] AppVeyor: clean cache when build configuration changes
* [build] Makefile.am: add rule for src/bitcoin-wallet
* Add compile time verification of assumptions we\'re currently making implicitly/tacitly
* fixes m_assumed_blockchain_size variables values:
* msvc: Fix silent merge conflict between #13926 and #14372 part II
* Bump minimum Qt version to 5.5.1
* qa: Add test/fuzz/test_runner.py
* fuzz: Script validation flags
* fuzz: Move deserialize tests to test/fuzz/deserialize.cpp
* Remove manual byte editing in wallet_tx_clone func test
* Add release note for listunspent P2WSH change
* Add test for P2SH-P2WSH in signrawtransactionwithkey and listunspent
* Make listunspent and signrawtransaction RPCs support witnessScript
* Log full paths for wallets
* gui: Add close wallet action
* gui: Add closeWallet to WalletController
* interfaces: Add remove to Wallet
* Replace script name with special parameter
* Remove unnecessary const_cast
* [wallet] Close bdb when flushing wallet.
* [rpc] mining: Omit uninitialized currentblockweight, currentblocktx
* tests: Added missing tests for RPC wallet errors
* Factor out combine / finalize / extract PSBT helpers
* Remove op== on PSBTs; check compatibility in Merge
* Switch away from exceptions in refactored tx code
* appveyor: Remove outdated libraries
* tests: accept unicode characters on Windows
* Move PSBT definitions and code to separate files
* Factor BroadcastTransaction out of sendrawtransaction
* Split DecodePSBT into Base64 and Raw versions
* Add pf_invalid arg to std::string DecodeBase{32,64}
* Travis: Add test without BIP70 (but still full wallet + tests)
* GUI: If BIP70 is disabled, give a proper error when trying to open a payment request file
* GUI: If BIP70 is disabled, attempt to fall back to BIP21 parsing
* RPCHelpMan: Check default values are given at compile-time
* trivial: correct parameter name in comments
* [wallet] Support creating a blank wallet
* gui: Uppercase bech32 addresses in qr codes
* Move ParseConfirmTarget from rpc/mining to rpc/util
* Move maxTxFee initialization to init.cpp
* qa: Add tool-prefix to functional test readme
* A few textual improvements
* test_runner: Remove unused --force option
* Avoid triggering undefined behaviour (std::memset(nullptr, 0, 0)) if an invalid string is passed to DecodeSecret(...)
* wallet: Add lock annotation for mapAddressBook
* Change in transaction pull scheduling to prevent InvBlock-related attacks
* util: Add SetupHelpOptions()
* doc: Add missing wallet-tool manpages
* contrib: Add missing wallet tool to gen-manpages.sh
* Update linearize-hashes.py
* qa: Drop RPC connection if --usecli
* travis: Only exit early if compilation took longer than 30 min
* doc: Add separate productivity notes document
* Add release notes for importmulti descriptor support
* Add test for importing via descriptor
* [wallet] Allow descriptor imports with importmulti
* [wallet] Refactor ProcessImport() to call ProcessImportLegacy()
* [wallet] Add ProcessImportLegacy()
* [wallet] Refactor ProcessImport()
* rpc: Fix for segfault if combinepsbt called with empty inputs
* Fix issue #9683 \"gui, wallet: random abort (segmentation fault) running master/HEAD\".
* Fix build after pr 15266 merged
* qa: Test .walletlock file is closed
* netaddress: Make IPv4 loopback comment more descriptive
* netaddress: Fix indentation in IsLocal
* net: Correct comparison of addr count
* [Docs] Small updates to getrawtransaction description
* remove deprecated mentions of signrawtransaction from fundraw help
* qt: Pre-0.18 split-off translations update
* init: Modify docs and add release note for 12255
* msvc: add rapid check property tests
* gui: Show indeterminate progress dialog while opening walllet
* gui: Add OpenWalletActivity
* wallet: Close wallet env lock file
* wallet: Close dbenv error file db.log
* interfaces: Avoid interface instance if wallet is null
* gui: Add thread to run background activity in WalletController
* gui: Add Open Wallet menu
* gui: Add openWallet and getWalletsAvailableToOpen to WalletController
* interfaces: Add loadWallet to Node
* wallet: Factor out LoadWallet
* Use RdSeed when available, and reduce RdRand load
* Check m_internals in UnregisterValidationInterface
* gui: Fix m_node.startShutdown() order
* gui: Expose BitcoinGUI::unsubscribeFromCoreSignals
* gui: Fix WalletController deletion
* cirrus ci: Inital config
* speed up Unserialize_impl for prevector
* tests: Make updatecoins_simulation_test deterministic
* test: Fix race in p2p_invalid_messages
* travis: Revert \"Run extended tests once daily\"
* test: Make bloom tests deterministic
* Make PID file creating errors fatal
* Improve PID file removing errors logging
* msvc: Fix silent merge conflict between #13926 and #14372
* Rename Chain getLocator -> getTipLocator
* Drop redundant get_value_or
* Fix ScanForWalletTransactions start_block comment
* wallet: Add missing cs_db lock
* Document rescanblockchain returned stop_height being null
* doc: Add cs_main lock annotations for mapBlockIndex
* travis: Save cache when compilation took very long
* Add suggested rescanblockchain comments
* Update ScanForWalletTransactions result comment
* Rename ScanResult stop_block field
* Update release notes through to cb35f1d3
* Release notes: integrate detached & rm backports
* travis: Document whether functional tests are run in the job name
* Revert \"travis: Compile trusty with depends for now\"
* Prefer boost::optional#get_value_or over #value_or
* Piecewise construct to avoid invalid construction
* Do not import private keys to wallets with private keys disabled
* Refactor importwallet to extract data from the file and then import
* Slight tweak to the verify-commits script directions
* tests: unify RPC argument to cli argument conversion and handle dicts and lists
* travis: Remove unused FUNCTIONAL_TESTS_CONFIG
* msvc: build leveldb locally
* msvc: build secp256k1 locally
* Fix assertion in CKey::SignCompact
* gdb attaching to process during tests has non-sudo solution
* Explain that unused mempool memory is added to -dbcache
* [tests] Add wallet-tool test
* [tools] Add wallet inspection and modification tool
* Remove \'boost::optional\'-related gcc warnings
* build: prefer python3.4 even if newer versions are present on the system
* Correct units for \"-dbcache\" and \"-prune\"
* test: Build fuzz targets into seperate executables
* log: Construct global logger on first use
* wallet: Fixup rescanblockchain result doc
* [rpc] util: add deriveaddresses method
* [doc] descriptor: explain GetPubKey() usage with cached public key
* scripted-diff: rename DescriptorImpl m_script_arg to m_subdescriptor_arg
* doc: correct logging rpc return type and example
* Fix UB with bench on genesis block
* travis: Compile trusty with depends for now
* travis: Compile once on trusty
* Add gitian PGP key for hebasto
* rpc: Compile on GCC4.8
* qa: Use wallet to retrieve raw transactions
* [RPC] Update getrawtransaction interface
* Squashed \'src/leveldb/\' changes from 524b7e36a8..f545dfabff
* build: Remove WINVER pre define in Makefile.leveldb.inlcude
* [test] fuzz: make test_one_input return void
* Trivial: Doxygenize existing CBufferedFile and VectorReader comments
* RPCHelpMan: Pass through Result and Examples
* Descriptor expansions only need pubkey entries for PKH/WPKH
* qa: Style-only fixes in touched files
* Add warning messages to the debug window
* Scripts and tools: Drop no-longer-relevant copyright holder names
* Scripts and tools: Fix devtools/copyright_header.py to always honor exclusions
* Prevent mutex lock fail even if --enable-debug
* Trivial: fixup a few doxygen comments
* Docs: Update python docs to reflect that wildcard imports are disallowed
* Drop defunct Windows compat fixes
* qa: Add tests for invalid message headers
* tests: unify RPC argument to cli argument conversion and handle dicts and lists
* [doc] add notes on release notes
* submitheader: more directly test missing prev block header
* remove some magic mining constants in functional tests
* Doc: add information about security to the JSON-RPC doc
* Move non-linux source tarball to bitcoin-binaries
* Notify the GUI that the keypool has changed to set the receive button
* Added some factors that affect the dependency list
* windows: Call SetProcessDEPPolicy directly
* windows: Set _WIN32_WINNT to 0x0601 (Windows 7)
* Allow connections from misbehavior banned peers.
* Default -whitelistforcerelay to off
* docs: add perf section to developer docs
* tests: add utility to easily profile node performance with perf
* Fix macOS launch-at-startup memory issue
* Qt: remove macOS launch-at-startup option when compiled with > macOS 10.11
* Check for more than private keys disabled to show receive button
* [Docs] add short documentation for /rest/blockhashbyheight
* [QA] add rest tests for /rest/blockhashbyheight/.
* REST: add \"blockhashbyheight\" call, fetch blockhash by height
* Delete README_osx.md and move its contents into build-osx.md
* lint: Enable python linters via an array
* Remove errant past from walletcreatefundedpsbt for nLocktime replaceability
* gui: Fix window title update
* Add locking annotation for vNodes. vNodes is guarded by cs_vNodes.
* zmq: log outbound message high water mark when reusing socket
* Update all subprocess.check_output functions in CI scripts to be Python 3.4 compatible
* Update zmq to 4.3.1
* rpc: remove duplicate solvable field from getaddressinfo
* doc: Clarify -blocksdir usage
* gui: Refactor to use WalletController
* gui: Add WalletController
* gui: Use AutoConnection for WalletModel::unload signal
* Add comment describing fDisconnect behavior
* docs: Spelling error fix on fuzzing.md
* Document RNG design in random.h
* Use secure allocator for RNG state
* Encapsulate RNGState better
* DRY: Implement GetRand using FastRandomContext::randrange
* Sprinkle some sweet noexcepts over the RNG code
* Remove hwrand_initialized.
* Switch all RNG code to the built-in PRNG.
* Integrate util/system\'s CInit into RNGState
* Abstract out seeding/extracting entropy into RNGState::MixExtract
* Add thread safety annotations to RNG state
* Rename some hardware RNG related functions
* Automatically initialize RNG on first use.
* Don\'t log RandAddSeedPerfmon details
* build: Drop macports support
* scripted-diff: batch-recase BanMan variables
* banman: Add, use CBanEntry ctor that takes ban reason
* banman: reformulate nBanUtil calculation
* banman: add thread annotations and mark members const where possible
* scripted-diff: batch-rename BanMan members
* net: move BanMan to its own files
* banman: pass in default ban time as a parameter
* banman: pass the banfile path in
* banman: create and split out banman
* net: split up addresses/ban dumps in preparation for moving them
* tests: remove member connman/peerLogic in TestingSetup
* net: Break disconnecting out of Ban()
* Remove no longer needed shellcheck suppressions
* Fix warnings introduced in shellcheck v0.6.0
* Remove repeated suppression. Fix indentation.
* Pin shellcheck version to v0.6.0
* qa: Improve tests of /rest/headers and /rest/block
* doc: /rest/block responds with 404 if block does not exist
* qa: Remove race between connecting and shutdown on separate connections
* Improve \"help-console\" message
* doc: Explain empty result of /rest/headers
* [docs] Expand help text for importmulti changes
* Fix remaining compiler warnings (MSVC). Move disabling of specific warnings from /nowarn to project file.
* [doc] explain what .python-version does
* Remove remaining chainActive references from CWallet
* Convert CWallet::ScanForWalletTransactions and SyncTransaction to the new Chain apis
* Add findFork and findBlock to the Chain interface
* Add time methods to the Chain interface
* Add height, depth, and hash methods to the Chain interface
* gui: Show current wallet name in window title
* gui: Keep network style in BitcoinGUI
* gui: Remove unused return type in some BitcoinGUI methods
* refactor/lint: Add ignored suggestions to an array
* doc: Add release notes for unloadwallet change to synchronous call
* rpc: Make unloadwallet wait for complete wallet unload
* Add workaround for QProgressDialog bug on macOS
* Fix wallet selector size adjustment
* contrib: Allow use of github API authentication in github-merge
* contrib: Add support for http[s] URLs in github-merge
* contrib: Detailed reporting for http errors in github-merge
* qa: Ignore shellcheck warning SC2236
* Drop IsLimited in favor of IsReachable
* Use FRC::randbytes instead of reading >32 bytes from RNG
* Replace remaining 0 with nullptr in Qt code
* Don\'t use zero as null pointer constant (-Wzero-as-null-pointer-constant)
* configure: bitcoin-tx doesn\'t need libevent, so don\'t pull it in
* Use C++11 default member initializers
* util: Make ToLower and ToUpper take a char
* util: remove unused [U](BEGIN|END) macros
* Replace use of BEGIN and END macros on uint256
* Remove redundant stopExecutor() signal
* Remove redundant stopThread() signal
* Add checksum in gitian build scripts for ossl
* Do not deselect peer when switching away from tab
* Improve Peers tab layout
* docs: Clarifying testing instructions
* Fail if either disk space check fails
* Error if rpcpassword contains hash in conf sections
* docs: Add FreeBSD build notes link to doc/README.md
* Fix download link
* Fix out-of-bounds write in case of failing mmap(...) in PosixLockedPageAllocator::AllocateLocked
* Show addresses for \"SendToSelf\" transactions
* build: Allow to configure --with-sanitizers=fuzzer
* Use C++11 default member initializers
* test: Run invalid_txs.InputMissing test in feature_block
* Fix the build problem in libbitcoin_server
* init: Use systemd automatic directory creation
* [tests] move wallet util functions to wallet_util.py
* [tests] tidy up wallet_importmulti.py
* Qt: Fix update headers-count
* Qt: update header count regardless of update delay
* Fix minimized window bug on Linux
* qt: Use WalletModel
* instead of wallet name in console window
* qt: Use WalletModel
* instead of wallet name in main window
* qt: Factor out WalletModel::getDisplayName()
* rpc: Avoid permanent cs_main lock in getblockheader
* Add BitcoinApplication & RPCConsole tests
* Move BitcoinApplication to header so it can be tested
* Use std::vector API for construction of test data.
* test: Correct ineffectual WithOrVersion from transactions_tests
* Add names to Travis jobs
* rpc: Document bytessent_per_msg and bytesrecv_per_msg
* gui: Fix for Incorrect application name when passing -regtest
* Release notes: integrate detached release notes
* Release notes: update notes through fb52d0684
* Don\'t label transactions \"Open\" while catching up
* doc: Add getrpcinfo release notes
* qa: Add tests for getrpcinfo
* rpc: Add getrpcinfo command
* rpc: Track active commands
* test: Fix rpc_net.py \"pong\" race condition
* [rpc] Correct reconsiderblock help text, add test
* Botbot.me (IRC logs) not available anymore
* [Trivial] Update license year range to 2019
* test: Add basic test for BIP34
* Bump manpages
* Update copyright headers to 2018
* IsReachable is the inverse of IsLimited (DRY). Includes unit tests
* Increase timeout of featuer_assumevalid test to fix flaky tests
* If tests are ran with (ASan + LSan), Docker needs access to ptrace
* Update Travis base OS to Xenial
* wallet: Avoid leaking locktime fingerprint when anti-fee-sniping
* Get more info about GUI-related issue on Linux
* [test] wallet_txn_clone: Correctly clone txin sequence
* doc: Add historical release notes for 0.17.1
* whitespace: Split ~300 char line into multiple ones
* scripted-diff: Rename rpc_timewait to rpc_timeout
* scripted-diff: Remove unused \'split\' parameter to setup_network
* validation: Add cs_main locking annotations
* blockfilter: Remove default clause in switch statement.
* GUI: Restore RPC Console to non-wallet tray icon menu
* test: Avoid racy test p2p_timeouts
* Fix minor grammar error in doc
* Remove misplaced Q_UNUSED and others enhancements
* doc: Add comment to cs_main and mempool::cs
* test: Bump timeout to run tests in travis thread sanitizer
* Fix broken notificator on GNOME
* rpc: Fix data race (UB) in InterruptRPC()
* Add suppression for InterruptRPC (fRPCRunning) data race
* Modify build instructions to work with Command Prompt as well as PowerShell; other minor changes
* Made expicit constructor CTransaction(const CMutableTransaction &tx).
* Minimal changes to comply with explicit CMutableTransaction -> CTranaction conversion.
* wallet: Initialize stop_block to nullptr in CWallet::ScanForWalletTransactions
* test: Add missing validation locks
* test: Add comment to g_insecure_rand_ctx
* clarifying getrawtransaction[time] get help text
* test: Undo thread_local g_insecure_rand_ctx
* Making supported operating systems more clear
* travis: Use trap and set -e errtrace
* build: Enable functional tests in the ThreadSanitizer (TSan) build job
* [Qt] Restore < Qt5.6 compatibility for addAction
* Refactoring with QString::toNSString
* [net] add dnsseed.emzy.de to DNS seeds
* Fix cuckoocache_tests TSAN failure introduced in #14935. Fixes #14967.
* fix testmempoolaccept CLI syntax
* test: Fix race in mempool_accept
* sync: Add RecursiveMutex type alias
* rpc: Remove unused PreCommand signal
* lint/format-strings: Correctly exclude escaped percent symbols
* Select orphan transaction uniformly for eviction
* test: add_nodes can only be called once after set_test_params
* test: Make g_insecure_rand_ctx thread_local
* Revert \"tests: Support calling add_nodes more than once\"
* Remove Python 2 import workarounds
* docs: add NSIS setup/install steps to windows docs
* Revert \"travis: Save cache on build error\"
* tests: Test for expected return values when calling functions returning a success code
* doc: update NetBSD build instructions for 8.0
* Add release notes
* Overhaul importmulti logic
* Do not permit copying FastRandomContexts
* Simplify testing RNG code
* Make unit tests use the insecure_rand_ctx exclusively
* Bugfix: randbytes should seed when needed (non reachable issue)
* Use a FastRandomContext in LimitOrphanTxSize
* Introduce a Shuffle for FastRandomContext and use it in wallet and coinselection
* Use a local FastRandomContext in a few more places in net
* Make addrman use its local RNG exclusively
* test: Add tests for truncated scripts
* depends: disable unused qt features
* depends: qt 5.9.7
* depends: expat 2.2.6
* [test] functional framework: add CScript hex() for Python 3.4
* [test] Travis: enforce Python 3.4 support in functional tests
* Removed implicit CTransaction conversion from benchmaks
* Removed implicit CTransaction constructor from tests
* test: mempool_persist: Verify prioritization is dumped correctly
* test: pruning: Check that verifychain can be called when pruned
* Add nice table to files.md
* test: consensus: Check that final transactions are valid
* test: Correctly deserialize without witness
* qt: Remove ellipsis from sending/receiving addresses
* qt: Add Window menu
* qt: Allow to inspect RPCConsole tabs
* [docs] add release note for change to GBT
* [mining] segwit option must be set in GBT
* [tests] Add docstring for wallet_importmulti.py
* [tests] add test_address method to wallet_import.py
* [tests] add test_importmulti method to wallet_import.py
* [tests] add get_multisig function to wallet_importmulti.py
* [tests] add get_key function to wallet_importmulti.py
* Add E711 to flake8 check
* Compare to None with is/is not
* RPCHelpMan: Support required arguments after optional ones
* doc: Update minimum required qt
* Change \'== None\' to \'is None\'
* Handle exception as ImportError
* threads: fix unitialized members in sched_param
* rpc: Document default values for optional arguments
* rpc: Assert named arguments are unique in RPCHelpMan
* rpc: Avoid creating non-standard raw transactions
* [tests] tidy up imports in wallet_importmulti.py
* [tests] fix flake8 warnings in wallet_importmulti.py
* Fix start with the `-min` option
* Improve documentation for running verify-commits.py script
* Include util/strencodings.h which is required for IsSpace(...)
* [doc] developer-notes.md: point out that UniValue deviates from upstream
* add `--retry 5` to curl opts in install_db4.sh
* doc: Fix PSBT howto and example parameters
* RPCHelpMan: Add space after colons in extended description
* Use std::numeric_limits::max()) instead of (UNSIGNED)-1
* rpc: Add description to fundrawtransaction vout_index
* scripted-diff: Run scripted-diff in subshell
* validation: Add and use HaveTxsDownloaded where appropriate
* scripts: Add trusted key for Samuel Dobson
* Increase maxconnections limit when using poll.
* Implement poll() on systems which support it properly.
* tests: Modify rpc_bind to conform to #14532 behaviour.
* wallet_keypool_topup.py: Test for all keypool address types
* Add locking annotations to feeStats, shortStats and longStats
* scripted-diff: Rename from cs_feeEstimator to m_cs_fee_estimator
* policy: Add Clang thread safety annotations for variables guarded by cs_feeEstimator
* Scripts and tools & Docs: Used #!/usr/bin/env bash instead of obsolete #!/bin/bash, added linting for .sh files shebang and updated the Developer Notes.
* Cleanup SplashScreen class
* Test coinbase category in wallet rpcs
* Add all category options to wallet rpc help
* Move SocketEvents logic to private method.
* Move GenerateSelectSet logic to private method.
* Introduce and use constant SELECT_TIMEOUT_MILLISECONDS.
* [tests] Add wallet_balance.py
* Improve blocksdir functional test.
* Fix broken Gmane URLs
* Use const in COutPoint class
* Move CheckBlock() call to critical section
* tests: have combine_logs default to most recent test dir
* make peertimeout a debug argument, remove error message translation
* docs: Add more Doxygen information to Developer Notes
* Add CScriptNum decode python implementation in functional suite
* Remove duplicate libconsensus linking in test make
* qt: Remove hidden columns in coin control dialog
* validation: assert that pindexPrev is non-null when required
* p2p: allow p2ptimeout to be configurable, speed up slow test
* Add comments to descriptor tests
* Add descriptor expansion cache
* [refactor] Combine the ToString and ToPrivateString implementations
* [refactor] Use DescriptorImpl internally, permitting access to new methods
* [refactor] Add a base DescriptorImpl with most common logic
* Add missing lock in CNode::copyStats(...)
* Add missing locking annotations
* test: add invalid tx templates for use in functional tests
* bench: Destroy wallet txs instead of leaking their memory
* Replace CAffectedKeysVisitor with descriptor based logic
* Fix descriptor_tests not checking ToString output of public descriptors
* rpc: Pass argument descriptions to RPCHelpMan
* Bugfix: test/functional/mempool_accept: Ensure oversize transaction is actually oversize
* Bugfix: test/functional/rpc_psbt: Correct test description comment
* Bugfix: test/functional/rpc_psbt: Remove check for specific error message that depends on uncertain assumptions
* Add LSan suppression warnings
* Add ASan Travis build
* Make test p2p_invalid_messages.py pass: Allow for expected Travis ASAN memory increase
* qa: Add wallet_encryption error tests
* qa: clean up assert_memory_usage_stable utility
* qa: fix p2p_invalid_messages on macOS
* Trivial: add doxygen-compatible comments relating to BerkeleyEnvironment
* Tests: add unit tests for GetWalletEnv
* Free BerkeleyEnvironment instances when not in use
* clarify RPC rawtransaction documentation
* Less confusing documentation for `torpassword`
* Use window() instead of obsolete topLevelWidget()
* Make SafeDbt DB_DBT_MALLOC on default initialization
* Add Benchmark to test input de-duplication worst case
* squashme: connect thru node interface
* Indicate -rpcauth option password hashing alg
* http -> https
* tests: check readability of cookie file
* test: allows test_runner command line to receive parameters for each test
* qa: Test bitcond shutdown
* http: Remove timeout to exit event loop
* http: Remove unnecessary event_base_loopexit call
* http: Unlisten sockets after all workers quit
* http: Send \"Connection: close\" header if shutdown is requested
* rpc: Add wait argument to stop
* Fix detection of copyright holders
* Remove UBSan suppression
* streams: Remove unused seek(size_t)
* Correct misleading \"overridden options\" label
* Allow running rpc_bind.py --nonloopback test without IPv6
* qt: Call noui_connect to prevent boost::signals2::no_slots_error in early calls to InitWarning
* test: Move UBSAN suppressions to test/sanitizer_suppressions/ubsan
* travis: --disable-hardening for xenial thread sanitizer
* travis: Run thread sanitizer
* A few minor formatting fixes and clarifications to descriptors.md
* rpcbind: Warn about exposing RPC to untrusted networks
* CNetAddr: Add IsBindAny method to check for INADDR_ANY
* net: Always default rpcbind to localhost, never \"all interfaces\"
* rpcauth: Improve by using argparse and getpass modules
* Add regtest for JSON-RPC batch calls.
* tests: Support calling add_nodes more than once
* Convert comments to thread safety annotations
* test: Add BOOST_REQUIRE to getters returning optional
* Do not specify sudo in .travis
* Warn unrecognized sections in the config file
* revert removal of fstream.hpp header in fs.h
* Log env path in BerkeleyEnvironment::Flush
* Properly generate salt in rpcauth.py, update tests
* Fix running individually through test_runner.py, as suggested by AATTMarcoFalke (#14732)
* Remove unreferenced boost headers
* fix an undefined behavior in uint::SetHex
* Improve scripted-diff developer docs
* fix uninitialized read when stringifying an addrLocal
* add test demonstrating addrLocal UB
* rpc: Documentation fixups
* Add release notes
* Add matching descriptors to scantxoutset output + tests
* Add descriptors to listunspent and getaddressinfo + tests
* Use RPCHelpMan for all RPCs
* Implement prevector::fill once
* Drop defunct IS_TRIVIALLY_CONSTRUCTIBLE handling from prevector.h
* lint: Must use RPCHelpMan to generate the RPC docs
* Bump the minimum Qt version to 5.2
* Rename ListTransactions filter variable
* [wallet] Restore ability to list incoming transactions by label
* disallow oversized CBlockHeaderAndShortTxIDs
* fix a deserialization overflow edge case
* add a test demonstrating an overflow in a deserialization edge case
* rpc: Correctly name arguments
* Add stop_block out arg to ScanForWalletTransactions
* qa: Check specific reject reasons in feature_block
* GetPubKey: make sigdata const
* util.h: explicitly include required QString header
* Return a status enum from ScanForWalletTransactions
* Make CWallet::ScanForWalletTransactions args and return value const
* Introduce SafeDbt to handle DB_DBT_MALLOC raii-style
* remove redundant KeyOriginInfo access, already done in CreateSig
* CreateTransaction: Assume minimum p2sh-p2wpkh spend size for unknown change
* Remove stale comment in CalculateMaximumSignedInputSize
* rpc: Add RPCHelpMan for machine-generated help
* Release notes: integrate detached release notes
* Release notes: update notes through to 11e1ac3ae08
* Adjust configure so that only bip70 is disabled when protobuf is missing instead of the GUI
* qa: Raise ci test_runner timeout to 40 mins
* travis: Avoid timeout on verify-commits check
* doc: add detached release notes for #14060
* build: Add CLIENT_VERSION_BUILD to CFBundleGetInfoString
* Better error message for user when corrupt wallet unlock fails
* qa: Avoid race in p2p_invalid_block by waiting for the block request
* tests: Make feature_block pass on centos
* rpc: Include rpc/util.h where needed for RPCHelpMan
* build: Add bitcoin-tx.exe into Windows installer
* test_node: get_mem_rss fixups
* Throw error if CPubKey is invalid during PSBT keypath serialization
* Require a public key to be retrieved when signing a P2PKH input
* wallet: Create IsDatabaseLoaded function
* build: Fix windows build error if `--disable-bip70`
* importmulti: Don\'t add internal addresses to address book
* [doc] conf: Remove deprecated options from docs, Other cleanup
* tests: Add Python dead code linter (vulture)
* tests: Remove unused testing code
* blockfilter: Additional constructors for BlockFilter.
* blockfilter: Refactor GCS params into struct.
* Add llvm-symbolizer directory to PATH. Needed to get symbolized stack traces from the sanitizers.
* Update KNOWN_VIOLATIONS: Remove fixed violations
* Use IsSpace(...) instead of boost::is_space
* Use ToLower(...) instead of std::tolower
* Use IsDigit(...) instead of std::isdigit
* Send fewer spam messages in p2p_invalid_messages
* Pass chain locked variables where needed
* Remove uses of cs_main in wallet code
* Remove direct node->wallet calls in init.cpp
* Pass chain and client variables where needed
* Add skeleton chain and client classes
* Add UBSan suppressions needed to pass test suite
* Add UBSan options: print_stacktrace + halt_on_error
* doc: Add historical release notes for 0.17.0.1
* Add metavar to match var name in help text + Change wording for better readability
* appveyor: Script improvement part II
* wallet: Add trailing wallet.dat when detecting duplicate wallet if it\'s a directory.
* Refactor: Move m_db pointers into BerkeleyDatabase
* Add test for rpcpassword hash error
* Error if rpcpassword in conf contains a hash character
* Enable functional tests in UBSAN job. Enable -fsanitize=integer (part of UBSAN). Merge UBSAN Travis job with no depends.
* example_test.py: fixup coinbase height argument, derive number clearly
* blockfilter: Use unordered_set instead of set in blockfilter.
* Extract CSipHasher to it\'s own file in crypto/ directory.
* qa: Add test to ensure node can generate all help texts at runtime
* Add NODISCARD to all {Decode,Parse}[...](...) functions returning bool. Sort includes.
* tests: Explicitly ignore the return value of DecodeBase58(...)
* tests: Check return value of ParseParameters(...)
* miner: Default to DEFAULT_BLOCK_MIN_TX_FEE if unable to parse -blockmintxfee
* trivial: Don\'t translate in help text
* Add SAFE_CHARS[SAFE_CHARS_URI]: Chars allowed in URIs (RFC 3986)
* rpc: Make HTTP RPC debug logging more informative
* scripted-diff: Rename misleading \'defaultPort\' to \'http_port\'
* Fix `bitcoin-qt -version` output formatting
* Make blockdir always net specific
* qt: All tray menu actions call showNormalIfMinimized
* qt: Use GUIUtil::bringToFront where possible
* qt: Add GUIUtil::bringToFront
* scripted-diff: Move util files to separate directory.
* warnings: Compiler warning on memset usage for non-trivial type
* Remove obj_c for macOS Dock icon menu
* Use Qt signal for macOS Dock icon click event
* build: Remove illegal spacing in darwin.mk
* test_runner: Remove travis specific code
* Add regression test for PSBT signing bug #14473
* Refactor PSBTInput signing to enforce invariant
* Simplify arguments to SignPSBTInput
* Add bool PSBTInputSigned
* New PartiallySignedTransaction constructor from CTransction
* Remove redundant txConst parameter to FillPSBT
* More concise conversion of CDataStream to string
* tests: add tests for invalid P2P messages
* tests: add P2PConnection.send_raw_message
* tests: add utility to assert node memory usage hasn\'t increased
* Avoid using numeric_limits for sequence numbers and lock times
* Remove duplicated code
* Replace platform dependent type with proper const
* [tests] Move deterministic address import to setup_nodes
* Tests: Fix a comment
* Update release-process.md to include RC version bumping
* macOS: disable AppNap during sync
* Make clear function argument case in dev notes
* Remove obj_c for macOS Dock icon setting
* FreeBSD: Document Python 3 requirement for \'gmake check\'
* doc: Add external interface consistency guarantees
* build: include rc number in version number
* build: if VERSION_BUILD is non-zero, include it in the package version
* align items in contrib init
* qt: Remove \"Pay only required fee\" checkbox
* tests: Print dots by default
* qt: Improve BitcoinAmountField class
* added details about commit messages
* Bugfix: RPC: Add address_type named param for createmultisig
* gui: explicitly disable \"Dark Mode\" appearance on macOS
* Remove unused `adjustedTime` parameter
* Various textual improvements in build docs
* travis: Save cache on build error
* Don\'t rely on locale dependent functions in base_blob::SetHex(...) (uint256), DecodeBase58(...), ParseMoney(...) and ParseHex(...)
* Add tests for InferDescriptor and Descriptor::IsSolvable
* Add Descriptor::IsSolvable() to distinguish addr/raw from others
* Add support for inferring descriptors from scripts
* [tests] Test that nodes respond to getdata with notfound
* Remove fs::relative call and fix listwalletdir tests
* build: Fix Qt link order for Windows build
* wallet: Refactor to use WalletLocation
* wallet: Add WalletLocation utility class
* Add segwit address tests for importmulti
* Make getaddressinfo return solvability
* Add release notes for importmulti segwit change
* Fix typo in test_framework/blocktools
* Add SegWit support to importmulti with some ProcessImport cleanup
* appveyor: Enable multiwallet test
* tests: add test case for loading copied wallet twice
* wallet: Fix duplicate fileid
* [rpc] add \'getnewaddress\' hint to \'generatetoaddress\' help text.
* minor p2p_sendheaders fix of height in coinbase
* Removed explicit mention of storage requirement (squashed)
* Don\'t link SSL_LIBS with GUI unless BIP70 is enabled
* Add BIP70 deprecation warning
* qt: cleanup: Move BIP70 functions together in paymentserver
* show the progress of functional test
* Update documentation to incude origin information
* Add tests for key origin support
* Add key origin support to descriptors
* [macOS] Remove DS_Store WindowBounds bytes object
* travis: Compile once on xenial
* rpc: Prevent concurrent savemempool
* qa: Ensure wallet unload during walletpassphrase timeout
* Revert \"Make qt wallet test compatible with qt4\"
* docs: Document lint tests
* Fix typo
* scripted-diff: Replace boost::bind with std::bind
* refactor: Use boost::scoped_connection in signal/slot, also prefer range-based loop instead of std::transform
* rpc: Always throw in getblockstats if -txindex is required
* ZMQ: add options to configure outbound message high water mark, aka SNDHWM
* doc: Update OpenBSD build guide for 6.4
* gitignore contents of db4 folder
* rpc: Fix wallet unload during walletpassphrase timeout
* docs: Add release notes for listwalletdir RPC
* qa: Add tests for listwalletdir RPC
* rpc: Add listwalletdir RPC
* interfaces: Add getWalletDir and listWalletDir to Node
* wallet: Add ListWalletDir utility
* Add `doc/bitcoin-conf.md`
* [wallet] Deprecate the generate RPC method
* [tests] Add generate method to TestNode
* Avoid 1 << 31 (UB) in calculation of SEQUENCE_LOCKTIME_DISABLE_FLAG
* utils: Fix broken Windows filelock
* Textual improvements
* Avoid triggering undefined behaviour in base_uint::bits()
* [docs] Add release note for removing getwitnessaddress
* descriptors.md: Refer to descriptors as describing instead of matching
* doc: add comment explaining recentRejects-DoS behavior
* [tests] Small fixups before deprecating generate
* build: Pin to specific versions of Python packages we install from PyPI in Travis
* Add ignored word: mut
* Revert \"qa: Fix codespell error and have lint-spelling error instead of warn\"
* refactor: Drop boost::this_thread::interruption_point and boost::thread_interrupted in main thread
* Fix listreceivedbyaddress not taking address as a string
* tests: add test for \'getaddressinfo\' RPC result \'ischange\' field
* rpcwallet: add \'ischange\' field to \'getaddressinfo\' response
* Fix QCompleter popup regression
* bitcoin-tx: Use constant for n pubkeys check
* [doc] getblocktemplate: use SegWit in example
* tests: Stop node before removing the notification file
* Improve CAmount tests
* Add compile time checking for cs_main locks which we assert at run time
* test: forward timeouts properly in send_blocks_and_test
* Fix CLEAN_BITCOIN_TEST to remove .log files for all BITCOIN_TESTS files
* clarify rpcwallet flag url change
* [rpc] Descriptions: Textual consistency fixes
* Add GUARDED_BY(cs_wallet) for setExternalKeyPool, mapKeyMetadata, m_script_metadata and setLockedCoins
* Add GUARDED_BY(cs_wallet) for encrypted_batch, nWalletMaxVersion, m_max_keypool_index and nOrderPosNext
* wallet: Add Clang thread safety analysis annotations
* wallet: Add missing locks
* qt: Revert \"Force TLS1.0+ for SSL connections\"
* build: Add --disable-bip70 configure option
* Add missing locks and locking annotations for CAddrMan
* Add tooltips for both datadir and blocksdir
* Stop requiring imported pubkey to sign non-PKH schemes
* tests: Allow closed http server in assert_start_raises_init_error
* Fix macOS files description
* implements different disk sizes for different networks on intro
* [docs] path to descriptors.md fixed
* [tests] Remove rpc_zmq.py
* Clean systray icon menu for -disablewallet mode
* Add \"Blocksdir\" to Debug window
* rpc: creates possibility to preserve labels on importprivkey
* Don\'t access out of bounds array entry array[sizeof(array)]
* appveyor: trivial build cache modifications
* Fix typos
* doc: miss install
* doc: RPC documentation
* travis: set codespell version to avoid breakage
* depends: qt: avoid system harfbuzz and bz2
* doc: Remove \"temporary file\" notice from 0.17.0 release notes
* tests: Make appveyor run with --usecli
* doc: Add historical release notes for 0.17.0
* test: Add missing call to skip_if_no_cli()
* check that a separator is found for psbt inputs, outputs, and global map
* Include some files currently missed by \'make distclean\'.
* utils: Convert Windows args to utf-8 string
* fix converttopsbt permitsigdata arg, add basic test
* doc: Add historical release notes for 0.14.3 and 0.15.2
* depends: fix bitcoin-qt back-compat with older freetype versions at runtime
* Don\'t use systray icon on inappropriate systems
* Document fixed attribute behavior in critical test framework classes.
* Check for specific tx acceptance failures based on script signature
* Strictly enforce instance attrs in critical functional test classes.
* [docs] Add release notes for removing `-usehd`
* doxygen: Fix member comments
* Set C locale for amountWidget
* [gitian] use versioned unsigned tarballs instead of generically named ones
* Make MSVC compiler read the source code using utf-8
* tests: Add test case for std::ios_base::ate
* Move boost/std fstream to fsbridge
* utils: Add fsbridge fstream function wrapper
* qa: Run more tests with wallet disabled
* tests: exclude all tests with difference parameters
* Consolidate redundant implementations of ParseHashStr
* [wallet] remove redundand restart node
* AppVeyor: Move AppVeyor YAML to dot-file-style YAML
* test: allow arguments to be forwarded to flake8 in lint-python.sh
* Move SocketHandler logic to private method.
* Move InactivityCheck logic to private method.
* tests: write the notification to different files to avoid race condition
* Move DisconnectNodes logic to private method.
* Move NotifyNumConnectionsChanged logic to private method.
* [wallet] Ensure wallet is unlocked before signing
* validation: Pass chainparams in AcceptToMemoryPoolWorker(...)
* Fix for incorrect version attr set on functional test segwit block.
* Don\'t edit Chainparams after initialization
* MOVEONLY: Move versionbits info out of versionbits.o
* test: Fix broken segwit test
* [REST] improve performance for JSON calls
* [wallet] Remove deprecated addwitnessaddress RPC method
* [test] Remove deprecated addwitnessaddress from feature_segwit.py
* [test] Remove deprecated addwitnessaddress from wallet_bumpfee.py
* [test] Remove deprecated addwitnessaddress from p2p_compactblocks.py
* [tests] Remove deprecated addwitnessaddress call from wallet_dump.py
* [tests] Remove deprecated addwitnessaddress call from feature_nulldummy
* [test] Fix flake8 warnings in tests
* doc: Add GitHub pr template
* [RPC] Remove warning for removed estimatefee RPC
* Make fs::path::string() always return utf-8 string
* Add test for conversion from non-witness to witness UTXO
* Convert non-witness UTXOs to witness if witness sig created
* [wallet] Remove -usehd
* lcov: filter /usr/lib/ from coverage reports
* Add autogen.sh in ARM Cross-compilation
* init: Remove deprecated args from hidden args
* tests: Use MakeUnique to construct objects owned by unique_ptrs
* doc: Split build linux dependencies
* wallet: Avoid potential use of unitialized value bnb_used in CWallet::CreateTransaction(...)
* Drop unused setRange arg to BerkeleyBatch::ReadAtCursor
* Lift prevector default vals to the member declaration
* doc: Split depends installation instructions per arch
* doc: Add historical release notes for 0.16.3
* uint256: Remove unnecessary crypto/common.h use
* gui: Show watch-only eye instead of HD disabled
* [rpc] Add getnodeaddresses RPC command
* [qa] Test for duplicate inputs within a transaction
* Fix crash bug with duplicate inputs within a transaction
* amount: Move CAmount CENT to unit test header
* appveyor: Run functional tests on appveyor
* Changed functional tests which do not require wallets to run without
* tests: Make it possible to run functional tests on Windows
* travis: Run feature_dbcrash functional tests in cron job
* tests: Reorder tests and move most of extended tests up to normal tests
* use integer division instead of double conversion and multiplication for computing amounts
* doc: Document -checklevel levels
* [qa] Use correct python index slices in example test
* build: Remove libssl from LDADD unless gui
* convert C-style (void) parameter lists to C++ style ()
* Fix reference to lint-locale-dependence.sh
* [build] remove #ifdef ENABLE_WALLET from interfaces/node
* qa: Remove unneded import_deterministic_coinbase_privkeys overwrite, add comments
* qa: Fix codespell error and have lint-spelling error instead of warn
* Bugfix: Only run bitcoin-tx tests when bitcoin-tx is enabled
* configure: Make it possible to build only one of bitcoin-cli or bitcoin-tx
* Pass export privkey DER compression flag correctly
* doc: `-help-debug` implies `-help`
* wallet: Remove trailing separators from -walletdir arg
* wallet: Add walletdir arg unit tests
* logging: Replace LogPrint macros with regular functions
* build: Move interfaces/
* to libbitcoin_server
* [depends, zmq, doc] upgrade zeromq to 4.2.5 and avoid deprecated zeromq api functions
* Pass tx pool reference into CheckSequenceLocks
* Remove redundant BIP174 test from rpc_psbt.json
* Call unicode API on Windows
* Drop minor GetSerializeSize template
* Drop unused GetType() from CSizeComputer
* qa: Run all tests even if wallet is not compiled
* qa: Premine to deterministic address with -disablewallet
* utils: Convert fs error messages from multibyte to utf-8
* [build] remove ENABLE_WALLET ifdef from httprpc.cpp
* qa: Fix silent merge conflict in wallet_importmulti
* don\'t translate command line options
* travis: avoid timeout without saving caches, also enable all qt
* depends: Remove unused Qt 4 dependencies
* doc: release notes for -enablebip61 default change
* rpc: Remove cs_main lock from blockToJSON and blockHeaderToJSON
* rpc: Specify chain tip instead of chain in GetDifficulty
* rpc: Fix SoftForkMajorityDesc and SoftForkDesc signatures
* Scripts and tools: increased timeout downloading
* [build] Move dummy wallet into its own .cpp file.
* tx pool: Use class methods to hide raw map iterator impl details
* Squashed \'src/univalue/\' changes from 51d3ab34ba..7890db99d6
* p2p: Disable BIP 61 by default
* qt: Also log and print messages or questions like bitcoind
* noui: Move handlers to header file
* doc/descriptors.md tweaks
* test: Add test for config file parsing errors
* Remove reference to deprecated RPC call in build instructions
* Docs: Add disable-wallet section to OSX build instructions
* Replace duplcate reference with reference to reference doc
* Adjust TODO link
* Add descriptor reference documentation
* doc: Change documentation for =0 for non-boolean options
* doxygen: Remove misleading checkpoints comment in CMainParams
* lint: Add spell check linter (codespell)
* Fix typos reported by codespell
* Explain GetAncestor check for m_failed_blocks in AcceptBlockHeader
* Increase signal to noise in appveyor build output by reducing the MSVC warning count from 12 to 4 (12 is assuming the changes in #14086 are also implemented).
* appveyor: Use clcache to speed up build
* wallet: Set encrypted_batch to nullptr after delete. Avoid double free in the case of NDEBUG.
* doc: correct GetDifficulty doc after #13288
* gui: Favor macOS show / hide action in dock menu
* lint: Make sure we read the command line inputs using utf-8 decoding in python
* Trivial: update clang thread-safety docs url
* build: avoid getifaddrs when unavailable
* Test rpc_help.py failed: Check whether ZMQ is enabled or not.
* Switch nPrevNodeCount to vNodesSize.
* qa: Read reject reasons from debug log, not p2p messages
* scripted-diff: Small locking rename
* added note that control port must be enabled and how to do that in torrc config file
* utils: Use _wfopen and _wreopen on Windows
* Add EXCLUSIVE_LOCKS_REQUIRED to CWallet::ListCoins
* macOS fix: Check for correct version of flake8 to avoid spurious warnings. The brew installed flake8 version is Python 2 based and does not work.
* macOS fix: Add excludes for checks added in the newer shellcheck version installed by brew
* macOS fix: Work around empty (sub)expression error when using BSD grep
* macOS fix: Avoid mapfile due to ancient version of bash shipped with macOS
* tests: Dry run bench_bitcoin (-evals=1 -scaling=0: <1 second running time) as part \"make check\" to allow for quick identification of assertion/sanitizer failures in benchmarking code
* Remove RUN_BENCH logic
* Only log \"Using PATH_TO_bitcoin.conf\" message on startup if conf file exists.
* tests: Add missing locking annotations and locks
* [wallet] Kill accounts
* util: Report parse errors in configuration file
* Fix potential deadlock
* Add lock annotations (cs_args)
* Add missing locks (cs_args)
* qa: Use named args in some tests
* scripted-diff: Use named arguments in feature_block
* scripted-diff: Pass node into p2p_segwit acceptance tests
* Remove unused fsbridge::freopen
* Don\'t close old debug log file handle prematurely when trying to re-open (on SIGHUP)
* validation: Log FormatStateMessage on ConnectBlock error in ConnectTip
* blockfilter: Omit empty scripts from filter contents.
* Removes the Boost case_conv.hpp dependency.
* Implements custom tolower and toupper functions.
* Implements ParseNetwork unit test.
* tests: Fix accidental trunction from int to bool
* Add regression test: Don\'t assert(...) with side effects
* Don\'t assert(...) with side effects
* index: Fix for indexers skipping genesis block.
* Add README.md to linux release tarballs
* Hide spendable label if priveate key is disabled
* [rpc] Remove deprecated sigrawtransaction rpc method.
* [RPC] Remove warning about wallet addresses in createmultisig()
* [rpc] Remove deprecated validateaddress usage.
* test padding non micro timestamps
* travis: add CXXFLAGS=-Wnopsabi at ARM job
* add unicode compatible file_lock for Windows
* Explicitly initialize prevector _union
* Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations.
* [doc] Add release notes for \'account\' API removal
* [wallet] Re-sort wallet RPC commands
* [wallet] Remove wallet account RPCs
* fix missing differentiation between UNIT and FUNCTIONAL tests in travis build
* Integration of property based testing into Bitcoin Core
* [tests] Remove wallet accounts test
* contrib: Adjust output to current test format
* Report minfeefilter value in getpeerinfo rpc
* use export LC_ALL=C.UTF-8
* make script exit if a command fails
* move remaining travis build steps into individual files
* number .travis/ script according to build lifecycle and add README to explain
* move lint stage up to resemble travis build ui
* abort script in END_FOLD on non-zero exit code
* move script sections info individual files and comply with shellcheck
* utils: run commands using utf-8 string on Windows
* auto generate MSVC project files
* travis: Run unit tests --with-sanitizers=undefined
* qa: Stop txindex thread before calling destructor
* Use assert when running from multithreaded code as BOOST_CHECK_
* are not thread safe
* Move cs_main locking annotations from .cpp to .h
* Add compile time checking for all cs_main runtime locking assertions
* bench: Benchmark GCS filter creation and matching.
* blockfilter: Optimization on compilers with int128 support.
* blockfilter: Unit test against BIP 158 test vectors.
* blockfilter: Additional helper methods to compute hash and header.
* blockfilter: Serialization methods on BlockFilter.
* blockfilter: Construction of basic block filters.
* blockfilter: Simple test for GCSFilter construction and Match.
* blockfilter: Implement GCSFilter Match methods.
* blockfilter: Implement GCSFilter constructors.
* blockfilter: Declare GCSFilter class for BIP 158 impl.
* streams: Unit tests for BitStreamReader and BitStreamWriter.
* streams: Implement BitStreamReader/Writer classes.
* streams: Unit test for VectorReader class.
* streams: Create VectorReader stream interface for vectors.
* [contrib] Support ARM and RISC-V symbol check
* Docs: Fix help message typo optiona -> optional
* fix walletcreatefundedpsbt deriv paths, add test
* qa: Add some actual witness in rpc_rawtransaction
* qa: Add TestNode::assert_debug_log
* [Tests] Make combine_logs.py handle multi-line logs
* util: Replace boost::signals2 with std::function
* depends: Enable unicode support on dbd for Windows
* Disallow extended encoding for non-witness transactions
* depends: allow CC/CXX to be overridden during configure
* Make IS_TRIVIALLY_CONSTRUCTIBLE consistent on GCC < 5
* qa: Remove unused deserialization code in msg_version
* Skip stale tip checking if outbound connections are off or if reindexing.
* Remove default argument to prevector constructor to remove ambiguity
* Add new regtest ports in doc following #10825 ports reattributions
* rpc: Avoid locking cs_main in some wallet RPC
* test: Add tests for RPC help
* p2p: Remove dead code for nVersion=10300
* Bugfix: NSIS: Exclude Makefile
* from docs
* test: Add lint to prevent SIGNAL/SLOT connect style
* qt: Use new Qt5 connect syntax
* test: Check RPC settxfee errors
* Disable wallet and address book Qt tests on macOS minimal platform
* RPCTypeCheck bip32derivs arg in walletcreatefunded
* QA: add basic walletcreatefunded optional arg test
* walletcreatefundedpsbt: remove duplicate replaceable arg
* Preserve a format of RPC command definitions
* http: Add const modifier to HTTPRequest methods
* depends: fix qt determinism
* appveyor: fetch the latest port data
* Add checks for settxfee reasonableness
* Fix typo in feature_blocksdir.py log message
* rpc: Return more specific reject reason for submitblock
* refactor: use fs:: over boost::filesystem::
* [trivial] Fix typo in CDiskBlockPos struct\'s ToString
* Use wildcard path in test_bitcoin.vcxproj
* Add PSBT documentation
* Allow ConstructTransaction to not throw error with 0-input txn
* don\'t report minversion wallet entry as unknown
* Import CInv from correct module
* ci: Add appveyor.yml to build on MSVC
* Make macro compatible with MSVC
* tests: Replace usage of tostring() with tobytes()
* Remove unused dummy_tx variable from FillPSBT
* Serialize non-witness utxo as a non-witness tx but always deserialize as witness
* Fix PSBT deserialization of 0-input transactions
* qa: Add tests for submitheader
* rpc: Expose ProcessNewBlockHeaders
* Make SignPSBTInput operate on a private SignatureData object
* Pass HD path data through SignatureData
* Implement key origin lookup in CWallet
* [MOVEONLY] Move ParseHDKeypath to utilstrencodings
* Generalize PublicOnlySigningProvider into HidingSigningProvider
* Make SigningProvider expose key origin information
* Introduce KeyOriginInfo for fingerprint + path
* More tests of signer checks
* Test that a non-witness script as witness utxo is not signed
* Additional sanity checks in SignPSBTInput
* Only wipe wrong UTXO type data if overwritten by wallet
* gitian: bump descriptors for (0.)18
* build: bump version to 0.17.99
* contrib: fix GetDesirableServiceFlags typo in seeds/README.md
* tests: Use explicit imports
* fix deprecation in bitcoin-util-test.py
* net: Update hardcoded seeds
* contrib: in makeseeds, add 0.16.x to PATTERN_AGENT, remove 0.13.x
* doc: move-only release notes of individual prs
* docs: fixed bitcoin-cli -help output for help2man
* qt: Translations update before 0.17 branch
* Removes unsed `CBloomFilter` constructor.
* p2p: Clarify control flow in ProcessMessage()
* Ported usage of deprecated optparse module to argparse module
* Replace median fee rate with feerate percentiles
* Cleanup StartRest()
* Speed up knapsack_solver_test by not recreating wallet 100 times.
* qa: Add p2p_invalid_locator test
* Make format string linter understand basic template parameter syntax
* Visual Studio build configuration for Bitcoin Core
* Use 72 byte dummy signatures when watching only inputs may be used
* Use 71 byte signature for DUMMY_SIGNATURE_CREATOR
* Always create 70 byte signatures with low R values
* wallet: shuffle coins before grouping, where warranted
* Introduce a maximum size for locators.
* No longer shutdown after encrypting the wallet
* After encrypting the wallet, reload the database environment
* Add function to close all Db\'s and reload the databae environment
* Move BerkeleyEnvironment deletion from internal method to callsite
* qa: blocktools enforce named args for amount
* Use pushKV in some new PSBT RPCs.
* Squashed \'src/leveldb/\' changes from 64052c76c5..524b7e36a8
* Simplify comparison in rpc_blockchain.py.
* [Tests] Cleanup feature_block.py, remove unnecessary PreviousSpendableOutput object
* [Tests] Cleanup extra instances of create_transaction
* [Tests] Rename create_tx and move to blocktools.py
* qa: wait_for_verack by default
* Fix incorrect Doxygen comments
* Add risc-v 64-bit to gitian
* [depends] Add riscv qt depends support for cross compiling bitcoin-qt
* qa: Remove redundant checkmempool/checkblockindex extra_args
* Trivial: Revert translated string change, clarify wallet log messages
* Log progress while verifying blocks at level 4.
* [Docs] upgrade rescan time warning from minutes to >1 hour
* Consistently use ParseHashV to validate hash inputs in rpc
* ui: Compile boost:signals2 only once
* Add linting of WalletLogPrintf(...) format strings
* build: Add format string linter
* Remove redundant extern
* Enable -Wredundant-decls (gcc) if available
* Remove redundant redeclaration of rescanblockchain(...) in same scope
* Docs: fix GetWarnings docs to reflect behavior
* shutdown: Stop threads before resetting ptrs
* [RPC] Remove getinfo deprecation warning
* wallet: Catch filesystem_error and raise InitError
* [docs] Reformat -help output for help2man
* qa: Raise feature_help timeout to 5s
* qa: Use files for stdout/stderr to support Windows
* qa: Run gen_rpcauth with sys.executable
* [trivial] add doxygen-compatible comments to CAffectedKeysVisitor
* gui: get special folder in unicode
* qa: Close stdout and stderr file when node stops
* Drop boost::scoped_array
* qa: Create unicode tempdir in test_runner
* Use LOCK macros for non-recursive locks
* Make LOCK, LOCK2, TRY_LOCK work with CWaitableCriticalSection
* MOVEONLY Move AnnotatedMixin declaration
* Add unit test for DEBUG_LOCKORDER code
* test: Add testing of value_ret for SelectCoinsBnB
* doc: correct versions in dependencies.md
* Docs: Improve \"of\" grammar
* [wallet] Add wallet name to log messages
* use only travis jobs: instead of mix of jobs+matrix
* trivial: correct typos
* trivial: Fixed typos and cleaned up language
* fix locale for lint-shell
* Remove unused variable
* Remove redundant assignments (dead stores)
* qa: Quote wallet name for rpc path
* gui: Pull initial 017x translations from transifex
* tx: Update transifex slug 016x→017x
* Allow quicker shutdowns during LoadBlockIndex()
* -prune option -help output aligned with code
* qa: Extract rpc_timewait as test param
* [qt] TransactionView: highlight replacement tx after fee bump
* [trivial,doc] Fix memory consistency model in comment
* travis: Run bench_bitcoin once
* doc: Remove outdated net comment
* bench: Make CoinSelection output groups pass eligibility filter
* contrib: Support github pull request gitian-build
* Ignore unknown config file options for now
* Update ValidationInterface() documentation to explicitly specify threading and memory model
* Update documentation for SingleThreadedSchedulerClient() to specify the memory model
* gui: Reject options dialog when key escape is pressed
* gui: Reject edit address dialog when key escape is pressed
* gui: Add GUIUtil::ItemDelegate with keyEscapePressed signal
* Add BIP174 to list of implemented BIPs
* wallet: sum ancestors rather than taking max in output groups
* doc: Fix chainTxData comment
* use travis:fold in test script steps
* contrib: Remove debian and rpm subfolders
* [qa] Add test for too-large wallet output groups
* Acquire cs_main before ATMP call in block_assemble bench
* doc: add note to contributor docs about warranted PR\'s
* Fix osslsigncode compile issue in gitian-build
* [wallet] correctly limit output group size
* scripted-diff: Remove unused first argument to addUnchecked
* tx pool: Use the entry\'s hash instead of the one passed to addUnchecked
* Mark CTxMemPoolEntry members that should not be modified const
* Report when unknown config file options are ignored
* Add CMerkleTx::IsImmatureCoinBase method
* chainparams: Update with data from assumed valid chain
* doc: Add historical release notes for 0.16.2
* Add aarch64 qt depends support for cross compiling bitcoin-qt
* refactor: Avoid locking tx pool cs thrice
* configure: Initialise assembly enable_
* variables
* configure: Skip assembly support checks, when assembly is disabled
* configure: Invert --enable-asm help string since default is now enabled
* Support h instead of \' in hardened descriptor paths
* Add experimental warning to scantxoutset
* [QA] Extend tests to more combinations
* [QA] Add xpub range tests in scantxoutset tests
* Swap in descriptors support into scantxoutset
* Descriptor tests
* Output descriptors module
* Add simple FlatSigningProvider
* Add more methods to Span class
* Fix accidental use of the addition assignment operator (\"+=\"). Remove newlines from error message.
* Return void instead of bool for functions that cannot fail
* qt: Set BLOCK_CHAIN_SIZE = 220
* Regenerate manpages
* Update copyright headers to 2018
* make .travis/yml a bit more readable
* net: Add missing verification of IPv6 address in CNetAddr::GetIn6Addr(...)
* wallet: Fix accidental use of the comma operator
* travis: Retry to fetch docker image
* Mark single-argument constructors \"explicit\"
* contrib: Fix test-security-check fail in Ubuntu 18.04
* Fix Qt\'s rcc determinism for depends/gitian
* [net_processing] Add thread safety annotations
* Annotate AssertLockHeld() with ASSERT_CAPABILITY() for thread safety analysis
* scripted-diff: prefer MAC_OSX over __APPLE__
* gui: remove macOS ProgressBar workaround
* gui: remove SubstituteFonts
* doc: mention that macOS 10.10 is now required
* release: bump minimum required macOS to 10.10
* depends: set OSX_MIN_VERSION to 10.10
* [gui] Make proxy icon from statusbar clickable
* scripted-diff: Remove trailing whitespaces
* depends: use MacOS friendly sed syntax in qt.mk
* doc: Add release notes for -avoidpartialspends
* clean-up: Remove no longer used ivars from CInputCoin
* wallet: Remove deprecated OutputEligibleForSpending
* test: Add basic testing for wallet groups
* wallet: Switch to using output groups instead of coins in coin selection
* wallet: Add output grouping
* Add -avoidpartialspends and m_avoid_partial_spends
* wallet: Add input bytes to CInputCoin
* moveonly: CoinElegibilityFilter into coinselection.h
* utils: Add insert() convenience templates
* qt: Update translation source messages
* Skip is_closing() check when not available.
* Return the script type from Solver
* Removes Boost predicate.hpp dependency
* doc: Adjust bitcoincore.org links
* trivial: remove unneeded include
* tiny refactor for ArgsManager
* Avoid locking mutexes that are already held by the same thread
* Use the Travis python language feature on the lint build
* Don\'t unnecessarily install shellcheck on the lint build
* trivial: Replace CPubKey::operator[] with CPubKey::vch where possible
* Removes the boost/algorithm/string/join dependency
* Avoid unnecessarily setting env variables on the lint build
* [contrib] Add automatic setup for Ubuntu Bionic
* Fix bitcoin-cli --version
* [bench] Add benchmark for unserialize prevector
* Fix merging of global unknown data in PSBTs
* Check that PSBT keys are the correct length
* Avoid creating a temporary vector for size-prefixed elements
* docs: Specify preferred Python string formatting technique
* docs: Link to python style guidelines from developer notes
* wallet: Add error handling. Check return value of ParseUInt32(...) in ParseHDKeypath(...).
* wallet: Add tests for ParseHDKeypath(...)
* [travis] Don\'t store debug info if --enable-debug is set
* Tests: add usage note to check-rpc-mappings.py
* tests: fixes mininode\'s P2PConnection sending messages on closing transport
* doc: Improve command to generate list of authors for release notes
* doc: Update broken links to now point to gitian-build.py
* lint: Add linter for circular dependencies
* contrib: correct version check
* Remove redundant statement
* Remove redundant unused variables
* Remove redundant forward declaration
* Remove program options from build system
* Replace boost program_options
* contrib: Clone core repo in gitian-build
* depends: disable Werror for zmqlib release, causes ndk build to break
* Extract MakeUnique into utilmemory.h
* qa: Temporarily disable test that reads the default datadir location
* travis: Check that ~/.bitcoin is never created
* wallet: Avoid potential null pointer dereference in CWalletTx::GetAvailableCredit(...)
* bench: Remove unused variable
* Tests for PSBT
* Create wallet RPCs for PSBT
* Create utility RPCs for PSBT
* [doc] Remove outdated comment about mining code ignoring CPFP
* Initialize m_next_send_inv_to_incoming
* Migrate gitian-build.sh to python
* Change gitian-descriptors to use bionic instead
* Modified in_addr6 cast in CConman class to work with msvc.
* scripted-diff: Fix references to share/rpcuser (now share/rpcauth)
* [QA] Add scantxoutset test
* scantxoutset: mention that scanning by address will miss P2PK txouts
* scantxoutset: support legacy P2PK script type
* scantxoutset: add support for scripts
* Blockchain/RPC: Add scantxoutset method to scan UTXO set
* wallet: Fix backupwallet for multiwallets
* [moveonly] Extract RescanWallet to handle a simple rescan
* Explain when reindex-chainstate can be used instead of reindex
* bench_bitcoin: Avoid read/write to default datadir
* test_bitcoin: Avoid read/write to default datadir
* Bucket for inbound when scheduling invs to hide tx time
* SignPSBTInput wrapper function
* Refactor transaction creation and transaction funding logic
* Methods for interacting with PSBT structs
* Add pubkeys and whether input was witness to SignatureData
* Implement PSBT Structures and un/serialization methods per BIP 174
* bitcoinconsensus: invalid flags should be set to bitcoinconsensus_error type, add test cases covering bitcoinconsensus error codes
* build: add missing leveldb defines
* Privatize CWallet::AddToWalletIfInvolvingMe
* Extract CWallet::MarkInputsDirty
* qa: Fix some TODOs in p2p_segwit
* wallet: assert to ensure accuracy of CMerkleTx::GetBlocksToMaturity
* Fix that CWallet::AbandonTransaction would only traverse one level
* Drop dead code from Stacks
* QA: Fix bug in -usecli logic that converts booleans to non-lowercase strings
* [QA] add createwallet disableprivatekey test
* [Qt] Disable creating receive addresses when private keys are disabled
* Add disable privatekeys option to createwallet
* Add option to disable private keys during internal wallet creation
* Add FindScriptPubKey() to search the UTXO set
* [tests] skip rpc_zmq functional test when python3 zmq lib is not present
* Tools: fix BIND_NOW check in security-check.py
* Add facility to store wallet flags (64 bits)
* Use common SetDataDir method to create temp directory in tests.
* Add depends 32-bit arm support for bitcoin-qt
* Refactors `keystore.h` type aliases.
* doc: Add release notes for -printtoconsole and -debuglogfile changes
* tests: Use MAX_SCRIPT_ELEMENT_SIZE from script.py
* Remove dead service bits code
* Drop unused pindexRet arg to CMerkleTx::GetDepthInMainChain
* Remove unused argument to WitnessSigOps(...)
* Remove unused argument to DefaultOptions(...)
* Remove unused argument to ThreadHTTP(...)
* Make g_enable_bip61 a member variable of PeerLogicValidation
* Remove useless mapRequest tracking that just effects Qt display.
* Corrected text to reflect new[er] process of specifying fingerprints instead of individual keys.
* depends: Mention RISC-V known compilation issue with gcc-7.3.x
* [tests] functional test for createmultisig RPC
* segwit support for createmultisig RPC
* Move AddAndGetDestinationForScript from wallet to outputype module
* Add outputtype module
* depends: update zmq config.guess/config.sub for riscv support
* depends: latest config.sub
* depends: latest config.guess
* Remove unused argument to ProcessGetBlockData(...)
* net: Remove unused interrupt from SendMessages
* Fix command line help for -printtoconsole and -debuglogfile
* Use __cpuid_count for gnu C to avoid gitian build fail.
* bitcoin-tx: Stricter check for valid integers
* Don\'t assert(foo()) where foo has side effects
* Upgrade Qt depends to 5.9.6
* Fix depends Qt5.9.4 mac build
* Ugrade Qt depends to Qt5.9.4
* fix bench/prevector.cpp
* RPC: Add new getzmqnotifications method.
* Docs: Modify policy to not translate command-line help
* Remove CombineSignatures and replace tests
* Replace CombineSignatures with ProduceSignature
* Make SignatureData able to store signatures and scripts
* Add simple bech32 benchmarks
* Docs: Improve doc of options addnode, connect, seednode
* scripted-diff: Replace NET_TOR with NET_ONION
* Delete double semicolon in wallet.cpp and misc.cpp
* Detect if char equals int8_t
* logging: avoid nStart may be used uninitialized in AppInitMain warning
* Inline Sign1 and SignN
* [RPC] [wallet] allow getbalance to use min_conf and watch_only without accounts.
* [tests] p2p_segwit: sync_blocks in subtest wrapper.
* [tests] p2p_segwit: remove unnecessary arguments from subtests.
* [tests] p2p_segwit: log and assert segwit status in subtest wrapper.
* [tests] p2p_segwit: Make sure each subtest leaves utxos for the next.
* [tests] p2p_segwit: wrap subtests with subtest wrapper.
* [tests] p2p_segwit: re-order function definitions.
* [tests] p2p_segwit: standardise comments/docstrings.
* [tests] p2p_segwit: Fix flake8 warnings.
* Make ZMQ notification interface instance global.
* [wallet] GetBalance can take a min_depth argument.
* [wallet] factor out GetAvailableWatchOnlyBalance()
* [wallet] deduplicate GetAvailableCredit logic
* [wallet] Factor out GetWatchOnlyBalance()
* [wallet] GetBalance can take an isminefilter filter.
* Fix AreInputsStandard test to reference the proper scriptPubKey
* [wallet] loadwallet shouldn\'t create new wallets.
* bench: Simplify CoinSelection
* tests: Fix incorrect documentation for test case cuckoocache_hit_rate_ok
* [tests] Check signrawtransaction
* errors on missing prevtx info
* Error on missing amount in signrawtransaction
*
* Remove boost dependency (boost/assign/std/vector.hpp)
* depends: Update Qt download url
* Fix incorrect tests
* depends: Add RISC-V support
* Docs: More precise explanation of parameter \"onlynet\"
* Show symbol for inbound/outbound in peer table
* Use immintrin.h everywhere for intrinsics
* Add SHA256 implementation using using Intel SHA intrinsics
* qa: Avoid start/stop of the network thread mid-test
* [qa] wallet_basic: Specify minimum required amount for listunspent
* qt: Move BitcoinGUI initializers to class, fix initializer order warning
* [qt] coincontrol: Remove unused qt4 workaround
* Break circular dependency: init ->
* -> init by extracting shutdown.h
* Drop unused init.h includes
* Log warning message when deprecated network name \'tor\' is used (e.g. option onlynet=tor)
* doc: Clarify that mempool txiter is const_iterator
* travis: Build with --enable-debug (x86_64-unknown-linux-gnu)
* Add -ftrapv to DEBUG_CXXFLAGS when --enable-debug is used
* [Refactor] CPU feature detection logic for SHA256
* bench: Add missing pow.h header
* policy: Remove promiscuousmempoolflags
* [qa] mininode: Expose connection state through is_connected
* [tests] Fix p2p_sendheaders race
* [qa] Add a test for merkle proof malleation
* Net: Fixed a race condition when disabling the network.
* Document FreeBSD quirk. Fix FreeBSD build.
* Restrict as much as possible in net_processing to translation unit
* bugfix: Delete walletView in WalletFrame::removeWallet
* Obsolete #!/bin/bash shebang
* Fix parameter count check for importpubkey.
* Qt: load wallet in UI after possible init aborts
* [move-only] Move things only referenced in net_processing out of header file
* Rescope g_enable_bip61 to net_processing
* Decouple wallet version from client version
* For AVX2 code, also check for AVX, XSAVE, and OS support
* [tests] Remove accounts from wallet_importprunedfunds.py
* [wallet] Don\'t use accounts when checking balance in sendmany
* [wallet] deprecate sendfrom RPC method.
* Test: Harden lint-filenames.sh
* doc: Rewrite some validation doc as lock annotations
* bugfix: Remove dangling wallet env instance
* ui: Support wallets unloaded dynamically
* doc: Add release notes for unloadwallet RPC
* test: Wallet methods are disabled when no wallet is loaded
* test: Add functional tests for unloadwallet RPC
* rpc: Add unloadwallet RPC
* Follow-up to #13454: Fix broken build by exporting LC_ALL=C
* doc: Remove mention of Qt4 from build docs
* test: Update travis to not test Qt4 anymore
* gui: Remove QT_VERSION fallbacks for Qt < 5
* Move rpc/util.cpp from libbitcoin-util to libbitcoin-server
* Add P2WSH destination helper and use it instead of manual hashing
* Add additional unit tests for invalid IsMine combinations
* Do not expose invalidity from IsMine
* Docs: Improve readability of \"Squashing commits\"
* Fix CVE-2018-12356 by hardening the regex.
* build: add warning to detect hidden copies in range-for loops
* cleanup: avoid hidden copies in range-for loops
* doc: Add historical release notes for 0.16.1
* Fix incorrect shell quoting in FreeBSD build instructions.
* validation: count blocks correctly for check level < 3
* Add linter: Enforce the source code file naming convention described in the developer notes
* Avoid concurrency issue
* ScanforWalletTransactions should mark input txns as dirty
* have verifytxoutproof check the number of txns in proof structure
* Add linter: Make sure all shell scripts opt out of locale dependence using \"export LC_ALL=C\"
* Add \"export LC_ALL=C\" to all shell scripts
* doc: Remove note to install all boost dev packages
* build: Build system changes to support only Qt5
* expose CBlockIndex::nTx in getblock(header)
* tests: Drop variadic macro
* travis: Change Mac goal to all deploy so that travis can build all executables for Mac.
* Add unavailable options to hidden options category
* Add linter: Make sure we explicitly open all text files using UTF-8 or ASCII encoding in Python
* tests: Fix lock-order-inversion (potential deadlock) in DoS_tests. Reported by TSAN.
* Explicitly specify encoding when opening text files in Python code
* Improve coverage of SHA256 SelfTest code
* travis: Increase travis_wait time while verifying commits
* rpc: Extract GetWalletNameFromJSONRPCRequest from GetWalletForJSONRPCRequest
* Use python instead of slow shell script on verify-commits
* Reset default -g -O2 flags when enable debug
* [build] Tune wildcards for LIBSECP256K1 target
* Only set fNewBlock to true in AcceptBlock when we write to disk
* When build fails due to lib missing, indicate which one
* qa: Log as utf-8
* scripted-diff: Avoid temporary copies when looping over std::map
* rpc: Avoid \"duplicate\" return value for invalid submitblock
* wallet: Erase wtxOrderd wtx pointer on removeprunedfunds
* test: Add MempoolAncestryTests
* mempool: Calculate descendant maximum thoroughly
* wallet: Switch to using ancestor/descendant limits
* wallet: Strictly greater than for ancestor caps
* Remove deprecated TransactionWithinChainLimit
* Switch to GetTransactionAncestry() in OutputEligibleForSpending
* Add GetTransactionAncestry to CTxMemPool for general purpose chain limit checking
* mempool: Fix max descendants check
* mempool: Add explicit max_descendants
* validation: check the specified number of blocks (off-by-one)
* Removed unused == operator from CMutableTransaction.
* Fix compiler warnings emitted when compiling under stock OpenBSD 6.3
* Drop ParseHashUV in favor of calling ParseHashStr
* qa: Remove portseed_offset from test runner
* Make ReceivedBlockTransactions return void
* crypto: cleanup sha256 build
* speed up of tx_validationcache_tests by reusing of CTransaction.
* lint: Add linter to error on #include <
*.cpp>
* Clarify include recommendation
* Enforce the use of bracket syntax includes (\"#include \")
* Use bracket syntax includes (\"#include \")
* docs: Mention lint-locale-dependence.sh in developer-notes.md
* build: Add linter for checking accidental locale dependence
* Document validationinterace callback blocking deadlock potential.
* utils: checking for bitcoin addresses in translations
* Drop uint 256 not operator
* index: Move index DBs into index/ directory.
* index: Remove TxIndexDB from public interface of TxIndex.
* MOVEONLY: Move BaseIndex to its own file.
* index: Generalize logged statements in BaseIndex.
* index: Extract logic from TxIndex into reusable base class.
* db: Make reusable base class for index databases.
* db: Remove obsolete methods from CBlockTreeDB.
* cli: Ignore libevent warnings
* Enable double-SHA256-for-64-byte code on 32-bit x86
* Rename “OS X” to the newer “macOS” convention
* build: Guard against accidental introduction of new Boost dependencies
* bench: Use non-throwing ParseDouble(...) instead of throwing boost::lexical_cast(...)
* Add stdin, stdout, stderr to ignored export list
* Use IN6ADDR_ANY_INIT instead of in6addr_any
* GCC-7 and glibc-2.27 compat code
* [docs] update transifex doc link
* doc: split FreeBSD build instructions out of build-unix.md
* Add option to use docker for gitian-build.sh
* qa: Increase includeconf test coverage
* [wallets] [docs] Add release notes for createwallet RPC.
* [wallet] [tests] Add tests for `createwallet` RPC.
* Fix \"gmake check\" under OpenBSD 6.3 (probably
*BSD): Avoid using GNU grep specific regexp handling
* bench: Don\'t return a bool from main
* qa: Fixup setting of PATH env var
* qa: Avoid checking reject code for now
* wallet: Prevent segfault when sending to unspendable witness
* [tests] Add logging to provide anchor points when debugging failures.
* Test gArgs erroring on unknown args
* Give an error and exit if there are unknown parameters
* Use a struct for arguments and nested map for categories
* Generic TransactionSignatureCreator works with both CTransaction and CMutableTransaction
* travis: Skip cache for lint stage
* Stop translating command line options
* doc: update bitcoin-dot-org links in release-process.md
* refactor: add a function for determining if a block is pruned or not
* Remove template matching and pseudo opcodes
* [MOVEONLY] Move unused Merkle branch code to tests
* 8-way AVX2 implementation for double SHA256 on 64-byte inputs
* 4-way SSE4.1 implementation for double SHA256 on 64-byte inputs
* Use SHA256D64 in Merkle root computation
* Specialized double sha256 for 64 byte inputs
* policy: Treat segwit as always active
* Ensure gitian-build.sh uses bash
* doc: remove leftover check-doc documentation
* [wallet] [rpc] Add `createwallet` RPC
* test: Output should be unlocked when spent
* wallet: Unlock spent outputs
* Travis: Build tests on Ubuntu 18.04 with docker
* Make handling of invalid in IsMine more uniform
* test: Move linters to test/lint, add readme
* Fix FreeBSD build by including utilstrencodings.h
* Do not use uppercase characters in source code filenames
* docs: Add a note about the source code filename naming convention
* qa: Fix wallet_listreceivedby race
* Report progress in ReplayBlocks while rolling forward
* build: split warnings out of CXXFLAGS
* Tests: Add data file
* Tests: Test new getblockstats RPC
* RPC: Introduce getblockstats
* wallet: Use shared pointer to retain wallet instance
* qa: Initialize lockstack to prevent null pointer deref
* Update functional RBF test to check replaceable flag
* docs: Update OpenBSD build instructions for OpenBSD 6.3
* Declare TorReply parsing functions in torcontrol_tests
* [wallet] Fix incorrect comment for DeriveNewSeed.
* Drop the chain argument to GetDifficulty
* trivial: Mark overrides as such.
* Increased max width of amount field to prevent number overflow bug.
* [docs] Add release notes for HD master key -> HD seed rename
* [rpc] [wallet] Add \'hdmasterkeyid\' alias return values.
* [refactor] manually change remaining instances of master key to seed.
* scripted-diff: Rename master key to seed
* Qt: use [default wallet] as name for wallet with no name
* Drop UpdateTransaction in favor of UpdateInput
* Qt/Bugfix: fix handling default wallet with no name
* Add Unit Test for SingleThreadedSchedulerClient
* fixup! ui: Support wallets loaded dynamically
* wallet: Exit SyncMetaData if there are no transactions to sync
* [qt] Added satoshi unit \"Satoshi (sat)\" will be displayed in dropdowns and status bars. \"sat\" will be used when appended to numbers.
* [qt] BitcoinUnits::format with zero decimals Formatting with zero decimals will now result in 123 instead of 123.0
* doc: Bump to Ubuntu Bionic 18.04 in build-windows.md
* break circular dependency: random/sync -> util -> random/sync
* Wallet: Refactor ReserveKeyFromKeyPool for safety
* RPCAuth Detection in Logs
* Revert \"Merge #12870: make clean removes src/qt/moc_ files\"
* GUI: Allow generating Bech32 addresses with a legacy-address default
* GUI: Rephrase Bech32 checkbox text/tooltip
* Add circular dependencies script
* [wallet] [docs] Update release notes for removing `getlabeladdress`
* [wallet] [rpc] Remove getlabeladdress RPC
* ui: Support wallets loaded dynamically
* ui: Remove unnecessary variable fFirstWallet
* [docs] Add release notes for `loadwallet` RPC.
* [wallet] [tests] Test loadwallet
* [wallet] [rpc] Add loadwallet RPC
* [wallet] Pass error message back from CWallet::Verify()
* [wallet] Add CWallet::Verify function
* Add unit tests for signals generated by ProcessNewBlock()
* [gui] Add proxy icon in statusbar
* [wallet] setup wallet background flushing in WalletInit directly
* [wallet] Fix potential memory leak in CreateWalletFromFile
* [qt] OptionsDialog: add prune setting
* net: Serve blocks directly from disk when possible
* Break circular dependency: chain -> pow -> chain
* Add compile time checking for all cs_wallet runtime locking assertions
* doc: Mention disabling BIP61 in bips.md
* net: Add option `-enablebip61` to configure sending of BIP61 notifications
* bench: Add block assemble benchmark
* travis: Rename the build stage \"check_doc\" to \"lint\"
* Bump wallet version for pre split keypool
* Use a keypool of presplit keys after upgrading to hd chain split
* Allow -upgradewallet to upgradewallets to HD
* Test sethdseed
* Add \'sethdseed\' RPC to initialize or replace HD seed
* Fix concurrency-related bugs in ActivateBestChain
* Do not unlock cs_main in ABC unless we\'ve actually made progress.
* Enable Travis checking for two Python linting rules we are currently not violating
* Enable W191 and W291 flake8 checks. Remove trailing whitespace from Python files. Convert tabs to spaces.
* test: Ensure that recursive -includeconf produces appropriate warnings
* util: warn about recursive -includeconf arguments in configuration files
* [tests] Remove spurious error log in p2p_segwit.py
* [qa] Handle disconnect_node race
* [qa] Avoid printing to console during cache creation
* Make gArgs aware of the arguments
* Bugfix: ensure consistency of m_failed_blocks after reconsiderblock
* [tests] Allow stderr to be tested against specified string
* [Tests] Use LIBC_FATAL_STDERR_=1 in tests
* [Tests] Write stdout/stderr to datadir instead of temp file.
* wallet: Improve logging when BerkeleyDB environment fails to close
* [bitcoin-11004] creating another jobs for the CHECK_DOC=1, separated from the core jobs
* [tests] Fixed intermittent failure in p2p_sendheaders.py.
* [qt]: changes sendcoinsdialog\'s box layout for improved readability.
* qa: Remove unused option --srcdir
* Refactor SHA256 code
* Benchmark Merkle root computation
* Bugfix: the end of a reorged chain is invalid when connect fails
* RPC Docs: gettxout
*: clarify bestblock and unspent counts
* Fix typos
* Refactor: RPC: Separate GetBlockChecked() from getblock()
* Remove enum specifier (to avoid re-declare scoped enum as unscoped)
* replace modulus with FastMod
* Add Clang thread safety analysis annotations
* Fix missing locking in CTxMemPool::setSanityCheck(double dFrequency)
* Fix missing locking in CTxMemPool::check(const CCoinsViewCache
*pcoins)
* Add compile time checking for all ::mempool.cs runtime locking assertions
* Separate HaveKey function that checks whether a key is in a keystore
* Cache witness hash in CTransaction
* Make CMutableTransaction constructor explicit
* qa: Pad scriptPubKeys to get minimum sized txs
* Policy to reject extremely small transactions
* Add transaction tests for constant scriptCode
* Add constant scriptCode policy in non-segwit scripts
* Fix MAX_STANDARD_TX_WEIGHT check
* doc: Mention good first issue list in CONTRIBUTING.md
* Make it clear which functions that are intended to be translation unit local
* Add some checks for invalid recursion in IsMine
* Simplify IsMine logic
* Make IsMine stop distinguishing solvable/unsolvable
* Make coincontrol use IsSolvable to determine solvability
* [logging] Don\'t incorrectly log that REJECT messages are unknown.
* Fix rescanblockchain rpc to property report progress
* wallet: Reset BerkeleyDB handle after connection fails
* Print a log message if we fail to shrink the debug log file
* refactor: Avoid extra lookups of mapAddressBook in listunspent RPC
* rpc: Reduce cs_main lock in listunspent
* [tests] Remove \'account\' API from wallet functional tests
* Trivial: s/SetBestChain/ChainStateFlushed in comments after #13106
* devtools: Make linter check LogPrint calls
* Add missing newlines to LogPrint debug logging
* Make sure initialization occurs in the constructor
* wallet: Interrupt rescan on shutdown request
* Handle unsuccessful fseek(...):s
* logging: remove unused return value from LogPrintStr
* logging: Fix potential use-after-free in LogPrintStr(...)
* doc: Add release notes for -includeconf
* test: Test includeconf parameter.
* rpcauth: Make it possible to provide a custom password
* [doc] qt: fixes broken link on readme
* [tests] Fix flake8 warnings in several wallet functional tests
* Revert #12769: Add systemd service to bitcoind in debian package
* Add Windows shutdown handler
* Remove python2 from configure.ac
* [Docs] Add version footnote to tor.md
* [tests] Fix race in rpc_deprecated.py
* wallet: Add Clang thread safety annotations for variables guarded by cs_db
* nit: descendent should be spelled descendant even in the release-notes
* scheduler: Add Clang thread safety annotations for variables guarded by m_cs_callbacks_pending
* nit: fix typo for entry description string
* Remove script to clean up datadirs
* util: Store debug log file path in BCLog::Logger member.
* scripted-diff: Rename BCLog::Logger member variables.
* util: Refactor GetLogCategory.
* Add Clang thread safety annotations for variables guarded by cs_warnings
* Add Clang thread safety annotations for variables guarded by cs_nTimeOffset
* Add Clang thread safety annotations for variables guarded by cs_rpcWarmup
* Add missing cs_KeyStore lock
* Add locking annotations for variables guarded by cs_KeyStore
* util: Encapsulate logCategories within BCLog::Logger.
* util: Move debug file management functions into Logger.
* util: Establish global logger object.
* Use --failfast when running functional tests on Travis
* Add --failfast option to functional test runner
* Simplify semantics of ChainStateFlushed callback
* scripted-diff: Rename SetBestChain callback ChainStateFlushed
* Remove \"rpc\" category from GetWarnings
* rpc: Move RPC_FORBIDDEN_BY_SAFE_MODE code to reserved section
* tests: Add test for 64-bit PE, modify 32-bit test results
* build: sync ax_boost_chrono/unit_test
* Remove Safe mode
* -includeconf= support in config handler, for including external configuration files
* Don\'t test against min relay fee information in mining_prioritisetransaction.py
* Add compile time checking for all cs_KeyStore runtime locking assertions
* [doc] Include txindex changes in the release notes.
* [test] Simple unit test for TxIndex.
* [rpc] Public interfaces to GetTransaction block until synced.
* [index] Move disk IO logic from GetTransaction to TxIndex::FindTx.
* [validation] Replace tx index code in validation code with TxIndex.
* [init] Initialize and start TxIndex in init code.
* [index] TxIndex method to wait until caught up.
* [index] Allow TxIndex sync thread to be interrupted.
* [index] TxIndex initial sync thread.
* [index] Create new TxIndex class.
* [db] Migration for txindex data to new, separate database.
* [db] Create separate database for txindex.
* [wallet] [rpc] Fix importaddress help text
* Add \"bip125-replaceable\" flag to mempool RPCs
* [tests] [qt] Add tests for address book manipulation via EditAddressDialog
* [tests] [qt] Introduce qt/test/util with a generalized ConfirmMessage
* [qt] Display more helpful message when adding a send address has failed
* Add purpose arg to Wallet::getAddress
* test: add rpcauth-test to AC_CONFIG_LINKS to fix out-of-tree make check
* [tests] Make rpcauth.py testable and add unit tests
* qa: Clarify documentation for send_txs_and_test
* wallet: Make vpwallets usage thread safe
* List support for BIP173 in bips.md
* Make tests pass after 2020
* wallet: Make fee settings non-static members
* Add logging and error handling for file syncing
* qt: Don\'t log to console by default
* test: Add rpcauth pair that generated by rpcauth
* trivial: Fix relevent typo
* qa: Normalize executable location
* [tests] Fix feature_block flakiness
* [tests] tidy up blocktools.py
* [tests] Fix flake8 warnings in blocktools.py
* [doc][trivial] no retargeting in regtest mode
* Add systemd service for bitcoind
* Sync contrib/debian from Matt Corallo\'s PPA
* Use anonymous namespace instead of static functions
* Mention removal of bare multisig IsMine in release notes
* Do not treat bare multisig as IsMine
* Optimization: only test for witness scripts at top level
* Track difference between scriptPubKey and P2SH execution in IsMine
* Switch to a private version of SigVersion inside IsMine
* Do not expose SigVersion argument to IsMine
* Output values for \"min relay fee not met\" error
* Fix for utiltime to compile with msvc.
* [wallet] [tests] Test disallowed multiwallet params
* [wallet] Fix zapwallettxes/multiwallet interaction.
* [qa] Attach node index to test_node AssertionError and print messages
* trivial: Improve include comment in src/interfaces/wallet.h
* node: Removed unused wallet-related methods from the Node interface.
* benchmark: Removed bench/perf.cpp
* Remove unused IsMine overload
* Make CScript -> CScriptID conversion explicit
* Consistently log CValidationState on failure
* wallet: Add HasWallets
* wallet: Add AddWallet, RemoveWallet, GetWallet and GetWallets
* MOVEONLY: Move logging code from util.{h,cpp} to new files.
* refactor: Drop CWalletRef typedef
* scripted-diff: Rename CChainState::g_failed_blocks to m_failed_blocks
* Add new fee structure with all sub-fields denominated in BTC
* bench: Amend mempool_eviction test for witness txs
* bench: Move constructors out of mempool_eviction hot loop
* [doc] Add comments for chainparams.h, validation.cpp
* [docs] Add release notes for deprecated \'account\' API
* [wallet] [tests] Add tests for accounts/labels APIs
* test: Fix dangling wallet pointer in vpwallets
* [wallet] [rpc] Deprecate wallet \'account\' API
* [wallet] [rpc] Deprecate account RPC methods
* Make --enable-debug to pick better options
* Print to console by default when not run with -daemon
* qa: Add test for orphan handling
* Hold cs_main while calling UpdatedBlockTip() and ui.NotifyBlockTip
* net: Minor accumulated cleanups
* [tests] Set -deprecatedrpc=accounts in tests
* [tests] Rename rpc_listtransactions.py to wallet_listtransactions.py
* [wallet] [rpc] Remove duplicate entries in rpcwallet.cpp\'s CRPCCommand table
* qt:Show the entire Window when double clicking on taskbar
* Default to defining endian-conversion DECLs in compat w/o config
* [doc] build-windows: Switch to Artful, since Zesty is EOL
* tests: Remove redundant bytes²
* Enable additional flake8 rules
* Minor Python cleanups to make flake8 pass with the new rules enabled
* tests: Remove compatibility code not needed now when we\'re on Python 3
* correcting the array name from pnSeeds6 to pnSeed6
* Avoid launching as admin when NSIS installer ends.
* Fix inconsistent namespace formatting guidelines
* Note new weight field in release-notes.
* Test new weight field in p2p_segwit
* Expose a transaction\'s weight via RPC
* [contrib] convert test-security-check to python3
* add lint tool to check python3 shebang
* [MOVEONLY] Turn CScript::GetOp2 into a function and move to cpp
* [MOVEONLY] Move CSCript::FindAndDelete to interpreter
* Delete unused non-const-iterator CSCript::GetOp overloads
* Make iterators in CScript::FindAndDelete const
* [qa] Test that v0 segwit outputs can\'t be spent pre-activation
* Always enforce SCRIPT_VERIFY_WITNESS with P2SH
* [qa] Remove some pre-activation segwit tests
* Separate NULLDUMMY enforcement from SEGWIT enforcement
* Use P2SH consensus rules for all blocks
* wallet: Refactor g_wallet_init_interface to const reference
* wallet: Make WalletInitInterface members const
* test: Add rpc_bind test to default-run tests
* Avoid std::locale/imbue in DateTimeStrFormat
* Drop dead code CScript::Find
* macOS: Prevent Xcode 9.3 build warnings
* Tighten up bech32::Decode(); add tests.
* logging: bypass timestamp formatting when not logging
* Give an error when rescan is aborted by the user
* Add cancel button to rescan progress dialog
* Add assertion to guide static analyzers. Clang Static Analyzer needs this guidance.
* Fix dead stores. Values were stored but never read. Limit scope.
* [doc] Fix comment in FindForkInGlobalIndex
* tests: Avoid copies of CTransaction
* bitcoin-tx: Remove unused for loop
* speed up wallet_hd.py and clarify/augment checks
* debug log number of unknown wallet records on load
* depends: Fix Qt build with XCode 9.3
* Add AssertLockHeld assertions in CWallet::ListCoins
* Add shell script linting: Check for shellcheck warnings in shell scripts
* Add config changes to release notes
* [tests] Unit tests for -testnet/-regtest in [test]/[regtest] sections
* ArgsManager: special handling for -regtest and -testnet
* [tests] Unit tests for network-specific config entries
* ArgsManager: Warn when ignoring network-specific config setting
* ArgsManager: limit some options to only apply on mainnet when in default section
* [tests] Use regtest section in functional tests configs
* [tests] Unit tests for config file sections
* ArgsManager: support config file sections
* ArgsManager: drop m_negated_args
* depends: Add \'make clean\' and \'make clean-all\' rules
* Document how FlushStateMode::NONE is handled
* Call FlushStateToDisk(...) regardless of fCheckForPruning
* rpc: Drop redundant testing of signrawtransaction prevtxs args
* Remove redundant initializations from the constructor
* Ignore macOS daemon() depracation warning
* ArgsManager: keep command line and config file arguments separate
* test: Fix sign for expected values
* Extract consts for WITNESS_V0 hash sizes
* [docs] Add release notes for wallet \'label\' API.
* [wallet] [rpc] introduce \'label\' API for wallet
* Fix illegal default `addProxy` and `addrSeparateProxyTor` settings.
* Refine travis check for duplicate includes
* Make DummySignatureCreator a singleton
* Make BaseSignatureCreator a pure interface
* wallet: Remove redundant lambda function arg in handleTransactionChanged
* Increase entropy in test temp directory name
* Reorder travis builds
* tests: run tests in parallel
* tests: split up actual tests and helper files
* Initialize non-static class members where they are defined
* Initialize editStatus and autoCompleter. Previously not initialized where defined or in constructor.
* Docs: fixed link, replaced QT with Qt
* added logging line back that was accidentally removed with #10762
* [qa] Delete cookie file before starting node
* Logprint the start of a rescan
* util: Remove designator initializer from ScheduleBatchPriority
* util: Pass pthread_self() to pthread_setschedparam instead of 0
* [doc] devtools: Setup ots git integration
* Add Travis check for duplicate includes
* Remove duplicate includes
* test: Assert on correct variable
* Introduce BigEndian wrapper and use it for netaddress ports
* qa: Windows fixups for functional tests
* [qa] Ensure bitcoind processes are cleaned up when tests end
* Use std::bind instead of boost::bind to re-lock the wallet
* [rpcwallet] Clamp walletpassphrase value at 100M seconds
* list the types of scripts we should consider for a witness program
* Add m_ prefix to WalletBatch::m_batch
* Update walletdb comment after renaming.
* scripted-diff: Rename wallet database classes
* [logging] add lint-logs.sh to check for newline termination.
* [logging] Comment all continuing logs.
* doc: add qrencode to brew install instructions
* scripted-diff: Avoid `interface` keyword to fix windows gitian build
* Asserts that the tx version number is a signed 32-bit integer.
* tests: Add check for test suite name uniqueness in lint-tests.sh
* tests: Add note about uniqueness requirement for test suite names
* tests: Avoid test suite name collision in wallet crypto_tests
* build: Show enabled sanitizers in configure output
* [test] fundrawtransaction: lock watch-only shared address
* docs: Fix conflicting statements about initialization in developer notes
* wallet: Refactor to WalletInitInterface
* const g_wallet_init_interface
* wallet: Make WalletInitInterface and DummyWalletInit private
* [tests] Add additional unit tests for -nofoo edge cases
* [tests] Check GetChainName works with config entries
* [tests] Add unit tests for ReadConfigStream
* ReadConfigStream: assume the stream is good
* Separate out ReadConfigStream from ReadConfigFile
* [tests] Add unit tests for GetChainName
* Move ChainNameFromCommandLine into ArgsManager and rename to GetChainName
* Get rid of ambiguous OutputType::NONE value
* Support serializing Span and use that instead of FLATDATA
* Add Slice: a (pointer, size) array view that acts like a container
* wallet: Initialize m_last_block_processed to nullptr. Initialize fields where defined.
* doc: Use bitcoind in Tor documentation
* Tests: Add Metaclass for BitcoinTestFramework
* Add developer notes about blocking GUI code
* Use WalletBalances struct in Qt
* Remove direct bitcoin calls from qt/sendcoinsdialog.cpp
* Remove direct bitcoin access from qt/guiutil.cpp
* Remove direct bitcoin calls from qt transaction table files
* Remove direct bitcoin calls from qt/paymentserver.cpp
* Remove direct bitcoin calls from qt/addresstablemodel.cpp
* Remove direct bitcoin calls from qt/coincontroldialog.cpp
* Remove most direct bitcoin calls from qt/walletmodel.cpp
* Remove direct bitcoin calls from qt/optionsdialog.cpp
* Remove direct bitcoin calls from qt/rpcconsole.cpp
* Remove direct bitcoin calls from qt/bantablemodel.cpp
* Remove direct bitcoin calls from qt/peertablemodel.cpp
* Remove direct bitcoin calls from qt/intro.cpp
* Remove direct bitcoin calls from qt/clientmodel.cpp
* Remove direct bitcoin calls from qt/splashscreen.cpp
* Remove direct bitcoin calls from qt/utilitydialog.cpp
* Remove direct bitcoin calls from qt/bitcoingui.cpp
* Remove direct bitcoin calls from qt/optionsmodel.cpp
* Remove direct bitcoin calls from qt/bitcoin.cpp
* [trivial] Add newlines to end of log messages.
* Modernize best block mutex/cv/hash variable naming
* Fix csBestBlock/cvBlockChange waiting in rpc/mining
* Add src/interface/README.md
* make clean removes src/qt/moc_ files
* [tests] simplify binary and hex response parsing in interface_rest.py
* [tests] only use 2 nodes in interface_rest.py
* [tests] refactor interface_rest.py to avoid code repetition
* [tests] Make json request building more consistent in interface_rest.py
* [tests] improve logging and documentation in interface_rest.py
* [tests] fix flake8 warnings in interface_rest.py test
* [wallet] [rpc] [doc] importprivkey: hint about importmulti
* Adding logging for loop iteration level in p2p_sendheaders.py
* [moveonly] Extract HelpRequested to dry up the help options testing
* [tests] Stop feature_block.py from blowing up memory.
* Bugfix: Include for std::unique_ptr
* [tests] Remove Comparison Test Framework
* [tests] Remove bip9-softforks.py
* doc: Add testmempoolaccept to release-notes
* Avoid travis lint-include-guards error
* Add P2P, Network, and Qt categories to the desktop icon
* qa: Match full plain text by default
* travis: Run verify-commits only on cron jobs
* rpc: fix type mistmatch in listreceivedbyaddress
* [tests] Test starting bitcoind with -h and -version
* test: Remove travis checkout depth
* Enable flake8 warning F841 (\"local variable \'foo\' is assigned to but never used\")
* Remove assigned but never used local variables
* [verify-commits] Add some additional useful documentation.
* Increase LevelDB max_open_files unless on 32-bit Unix.
* Bugfix: RPC: savemempool: Don\'t save until LoadMempool() is finished
* [contrib] fixup symbol-check.py Python3 support
* [contrib] fixup security-check.py Python3 support
* adapt bumpfee change discard test to be more strict and add note on p2sh discrep
* [tests] Fix intermittent rpc_net.py failure.
* Add --with-sanitizers option to configure
* Improve formatting of developer notes
* Add Marco-expired-key-signed-commits to allow-revsig-commits
* Revert \"test: Update trust git root\".
* init: Remove help text for non-existent -fuzzmessagestest arg
* contrib: Remove unused import string
* contrib: Fix check-doc script regexes
* [Tests] fix a typo in TestNode.assert_start_raises_init_error()
* test: List any failed tests at the end of test_runner output
* Make base58 python contrib code work with python3
* test: Make summary row bold-red if any test failed
* Track negated arguments in the argument paser.
* Add additional tests for GetBoolArg()
* qa: Fix function names in feature_blocksdir
* Fix error in memory usage calculation (unintended integer division)
* [wallet] Add dummy wallet init class
* [wallet] Use global g_wallet_init_interface to init/destroy the wallet.
* doc: Add note about our preference for scoped enumerations (\"enum class\")
* Set SCHED_BATCH priority on the loadblk thread.
* Use explicit casting in cuckoocache\'s compute_hashes(...) to clarify integer conversion
* doc: Refer to witness reserved value as spec. in the BIP
* init: Fix help message for checkblockindex
* Change all python files to use Python3
* do not truncate .dat extension for wallets in gui
* qt: Avoid resetting on resetguisettigs=0
* [wallet] Create wallet init interface.
* [wallet] Move wallet init functions into WalletInit class.
* [Tests] Use blockmaxweight where tests previously had blockmaxsize
* rpc: Adjust ifdef to avoid unreachable code
* Qt: hide RPCConsole wallet selector when no wallets are present
* Qt: show wallet name in request dlg in case of multiwallet
* Qt: show wallet name in send confirmation dlg in case of multiwallet
* GUI: RPCConsole: Log wallet changes
* Qt: Get wallet name from WalletModel rather than passing it around
* Qt: When multiple wallets are used, include in notifications the name
* Qt: QComboBox::setVisible doesn\'t work in toolbars, so defer adding it at all until needed
* Qt: Add wallet selector to debug console
* Reduce variable scopes
* [RPC] Remove field in getblocktemplate help that has never been used
* Introduce interface for signing providers
* Qt: Remove unused method setupAmountWidget(...)
* Add username and ip logging for RPC method requests
* [REST] Handle UTXO retrieval when ignoring the mempool
* Make CTxMemPool::isSpent() const
* rpc: Add testmempoolaccept
* Move CKeyStore::cs_KeyStore to CBasicKeyStore
* Inline CKeyStore::AddKey(const CKey &) in CBasicKeyStore
* [CI]: bump travis timeout for make check to 50m
* add release note for sendmany output shuffling
* shuffle sendmany recipients ordering to shuffle tx outputs
* Docs: Improve documentation on standard communication channels
* Add lint-include-guards.sh which checks include guard consistency
* Fix missing or inconsistent include guards
* Document include guard convention
* [config] Remove blockmaxsize option
* [tests] Change feature_csv_activation.py to use BitcoinTestFramework
* [tests] Move utility functions in feature_csv_activation.py out of class.
* [tests] Remove nested loops from feature_csv_activation.py
* Move compressor utility functions out of class
* Add native support for serializing char arrays without FLATDATA
* Replace boost::call_once with std::call_once
* feebumper: discard change outputs below discard rate
* shuffle selected coins before transaction finalization
* Qt: Warn users about invalid-BIP21 URI bitcoin://
* Fix typos
* tests: Remove unused argument max_invalid from check_estimates(...)
* Fix typos
* Make FastRandomContext support standard C++11 RNG interface
* use base58 map instead of strchr()
* Support serialization as another type without casting
* Remove unnecessary NONNEGATIVE_SIGNED
* -blocksdir: keep blockindex leveldb database in datadir
* tests: Test connecting with non-existing RPC cookie file
* tests: Test connecting to a non-existing server
* qa: Allow for partial_match when checking init error
* scripted-diff: rename TestNode to TestP2PConn in tests
* [tests] Improve assert message when wait_until() fails
* [tests] Change feature_block.py to use BitcoinTestFramework
* qa: Use node.datadir instead of tmpdir in test framework
* Rename wallet_accounts.py test
* Rename account to label where appropriate
* Remove unreachable help conditions
* [tests] Add logging to feature_block.py
* [tests] Tidy up feature_block.py
* [tests] Fix flake8 warnings in feature_block.py
* tests: Add lint-tests.sh which checks the test suite naming convention
* tests: Rename test suits not following the test suite naming convention
* tests: Add note about test suite naming convention
* Qt: remove \"new\" button during receive-mode in addressbook
* Avoiding \'file\' function name from python2 with more descriptive variable naming
* [tests] improve logging in feature_csv_activation.py
* [tests] fix flake8 nits in feature_csv_activation.py
* [Tests] Require exact match in assert_start_raises_init_eror()
* [Tests] Move assert_start_raises_init_error method to TestNode
* QA: Add -blocksdir test
* wallet: Change output type globals to members
* Append scripts to new test_list array to fix bad assignment
* [Trivial] Simplify if-else blocks and more descriptive variable naming
* Make verify-commits.sh test that merges are clean
* test: Use os.path.join consistently in feature_pruning tests
* test: Use wait_until in tests where time was used for polling
* Add static_assert to prevent VARINT()
* Document RPC method aliasing
* Test that BnB is not used when there are preset inputs
* Remove redundant checks for MSG_
* from configure.ac
* Do not check for main() in libminiupnpc
* ax_boost_{chrono,unit_test_framework}.m4: take changes from upstream
* Actually disable BnB when there are preset inputs
* Remove unused variable in SortForBlock
* Provide relevant error message if datadir is not writable.
* Polish interfaces around PeerLogicValidation
* Apply hardening measurements in bitcoind systemd service file
* Support deserializing into temporaries
* Merge READWRITEMANY into READWRITE
* Fix ComputeTimeSmart test failure with -DDEBUG_LOCKORDER
* travis: Clone depth 1 unless $CHECK_DOC
* Add a test to make sure that negative effective values are filtered
* Benchmark BnB in the worst case where it exhausts
* Have SelectCoinsMinConf and SelectCoins use BnB or Knapsack and use it
* Add a GetMinimumFeeRate function which is wrapped by GetMinimumFee
* Move original knapsack solver tests to coinselector_tests.cpp
* Move current coin selection algorithm to coinselection.{cpp,h}
* Add tests for the Branch and Bound algorithm
* Remove coinselection.h -> wallet.h circular dependency
* Use a struct for output eligibility
* Move output eligibility to a separate function
* Implement Branch and Bound coin selection in a new file
* [qa] util: Remove unused sync_chain
* qt: Avoid querying unnecessary model data when filtering transactions
* rpc: Update createrawtransaction examples
* Split up and sanitize CAccountingEntry serialization
* Ubuntu xenial first dependencies
* Increase signal-to-noise ratio in debug.log by adjusting log level when logging failed non-manual connect():s
* Allow to optional specify the directory for the blocks storage
* configure: UniValue 1.0.4 is required for pushKV(, bool)
* Log fatal LevelDB errors more verbosely
* Store effective value, fee, and long term fee in CInputCoin
* Calculate and store the number of bytes required to spend an input
* Split up and sanitize CWalletTx serialization
* scripted-diff: Convert 11 enums into scoped enums (C++11)
* Format timestamps using ISO 8601 formatting (e.g. \"2018-02-28T12:34:56Z\")
* bitcoin-cli: Provide a better error message when bitcoind is not running
* [wallet] Get rid of CWalletTx default constructor
* [wallet] Construct CWalletTx objects in CommitTransaction
* qa: Cache only chain and wallet for regtest datadir
* [rpc] createrawtransaction: Accept sorted outputs
* CheckMinimalPush comments are prescriptive
* Simplify Base32 and Base64 conversions
* [gitian] Add kallewoof key for signing
* [gitian] Re-order keys by owner first name alphabetic order
* Add tests of listreceivedbyaddress address filtering
* Add address filtering to listreceivedbyaddress
* qt: Remove TransactionTableModel::TxIDRole
* Generalize ConvertBits
* qa: Fix some tests to work on native windows
* Limit the number of IPs we use from each DNS seeder
* depends: biplist 1.0.3
* Give hint about gitian not able to download
* [tests] bind functional test nodes to 127.0.0.1
* p2wpkh, p2wsh and p2sh-nested scripts in decodescript
* doc: Mention configure without wallet in FreeBSD instructions
* net: Correct addrman logging
* Add LookupBlockIndex function
* Add documentation to PeerLogicValidation interface and related functions
* Add missing cs_lock in CreateWalletFromFile
* Fix cs_main lock in LoadExternalBlockFile
* Lock cs_main while loading block index in AppInitMain
* Assert cs_main is held when accessing mapBlockIndex
* Add test-before-evict discipline to addrman
* gui: Show messages as text not html
* depends: Remove ccache
* qt: Set modal overlay hide button as default
* doc: SIGNER can contains space inside now.
* test: Update trust git root
* Add DynamicMemoryUsage() to LevelDB
* Bugfix: RPC: Add missing UnregisterHTTPHandler for /wallet/
* Qt: Ensure UI updates only come from the currently selected walletView
* Qt: Add a combobox to toolbar to select from multiple wallets
* Qt: Load all wallets into WalletModels
* depends: patch pthread_set_name_np out of zeromq
* depends: zeromq 4.2.3
* [Depends] Fix Qt build with Xcode 9.2
* depends: Only use D_DARWIN_C_SOURCE when building miniupnpc on darwin
* Shut down if trying to connect a corrupted block
* Add a test for large tx output scripts with segwit input.
* Create new wallet databases as directories rather than files
* Allow wallet files not in -walletdir directory
* Allow wallet files in multiple directories
* Remove deprecated PyZMQ call from Python ZMQ example
* docs: Update osx brew install instruction
* Fix typos and cleanup
* Fix ListCoins test failure due to unset g_wallet_allow_fallback_fee
* Show a transaction\'s virtual size in its details dialog.
* gitian-build.sh: fix signProg being recognized as two parameters
* [qt] Improved \"custom fee\" explanation in tooltip
* [qt] navigate to transaction history page after send
* Consensus: Fix bug when compiler do not support __builtin_clz
*
* [script] lint-whitespace: improve print linenumber
* Add tests for HexStr std::reverse_iterator cases
* Add tests for HexStr corner cases
* [test] Add tests for self usage in arith_uint256
* [arith_uint256] Do not destroy
*this content if passed-in operator may reference it
* Allow dustrelayfee to be set to zero
* [arith_uint256] Avoid unnecessary this-copy using prefix operator
* Remove redundant includes. Conform to header include guidelines.
* Use memset() to optimize prevector::resize()
* Reduce redundant code of prevector and speed it up
* Add new prevector benchmarks.
* fix version typo
* Add build support for \'gprof\' profiling.
* [docs] Minor improvements to Compatibility Notes
* test: Use wait_until to ensure ping goes out
* Fix typos
* doc: Add historical release notes for 0.16.0
* [Tests] Check output of parent/child tx list from getrawmempool, getmempooldescendants, getmempoolancestors, and REST interface
* [RPC] Add list of child transactions to verbose output of getrawmempool
* [QA] add wallet-rbf test
* Disable wallet fallbackfee by default on mainnet
* Avoid unintentional unsigned integer wraparounds in tests
* rpc: Allow typeAny in RPCTypeCheck
* Don\'t test against the mempool min fee information in mempool_limit.py
* test: Plug memory leaks and stack-use-after-scope
* Let wallet importmulti RPC accept labels for standard scriptPubKeys
* createmultisig no longer takes addresses
* Declare CMutableTransaction a struct in rawtransaction.h
* [depends] Allow depends system to support armv7l
* Bugfix: respect user defined configuration file (-conf) when open conf. file from QT settings
* init: Remove translation for `-blockmaxsize` option help
* [test] Round target fee to 8 decimals in assert_fee_amount
* Split off key_io_tests from base58_tests
* Split key_io (address/key encodings) off from base58
* Stop using CBase58Data for ext keys
* Replace CBitcoinSecret with {Encode,Decode}Secret
* qa: Fix python TypeError in script.py
* docs: clarified systemd installation instructions in init.md for Ubuntu users.
* Add test for signrawtransaction
* scripted-diff: change signrawtransaction to signrawtransactionwithwallet in tests
* Split signrawtransaction into wallet and non-wallet
* Add setter for g_initial_block_download_completed
* fixes #12465 added missing terminating newline character in log message
* Revert \"[tests] bind functional test nodes to 127.0.0.1\"
* Assert CPubKey::ValidLength to the pubkey\'s header-relevent size
* [doc] dev-notes: Members should be initialized
* test: Fix bip68 sequence test to reflect updated rpc error message
* scripted-diff: validateaddress to getaddressinfo in tests
* Create getaddressinfo RPC and deprecate parts of validateaddress
* [rpc] Move DescribeAddressVisitor to rpc/util
* Only call NotifyBlockTip when the active chain changes
* [tests] Add a (failing) test for waitforblockheight
* rpc: Interrupt block generation on shutdown request
* test: Add missing signal.h header
* [rpc] split wallet and non-wallet parts of DescribeAddressVisitor
* gitian: bump descriptors for (0.)17
* travis: Full clone for git subtree check
* qa: Improve getchaintxstats functional test
* rpc: Refactor blockhash parse in getchaintxstats
* devtools: Exclude patches from lint-whitespace
* qa: Move common args to bitcoin.conf
* Fix overly eager BIP30 bypass
* test: Add unit test for LockDirectory
* util: Fix multiple use of LockDirectory
* fixme: depends: Add D_DARWIN_C_SOURCE to miniupnpc CFLAGS
* [depends] latest config.guess and config.sub
* [depends] miniupnpc 2.0.20180203
* [depends] ccache 3.4.1
* [depends] expat 2.2.5
* Fix typo in test_runner.py causing error
* [qt] send: Clear All also resets coin control options
* Make signrawtransaction accept P2SH-P2WSH redeemscripts
* Update mac_alias to 2.0.7
* Delete mac_alias patch
* [tests] Change invalidblockrequest to use BitcoinTestFramework
* [tests] Fix flake8 warnings in invalidblockrequest
* [test] Fix nits leftover from 11771
* qt: Initialize members in WalletModel
* Remove useless string initialization.
* Add some script tests related to BOOL ops and odd values like negative 0.
* Fix rescan test failure due to unset g_address_type, g_change_type
* fix possible shutdown assertion with -reindex-shutdown
* Fix Windows build errors introduced in #10498
* Interrupt loading thread after shutdown request
* Reset pblocktree before deleting LevelDB file
* Fix a-vs-an typos
* rpc: Reject deprecated reserveChangeKey in fundrawtransaction
* Improve \"Turn Windows Features On or Off\" step
* scripted-diff: Use UniValue.pushKV instead of push_back(Pair())
* Squashed \'src/univalue/\' changes from 07947ff2da..51d3ab34ba
* [scripts] gitian-builder.sh: fix --setup doc, LXC is default
* [QA] add NODE_NETWORK_LIMITED address relay and sync test
* [QA] fix mininode CAddress ser/deser
* [QA] Allow addrman loopback tests (add debug option -addrmantest)
* Connect to peers signaling NODE_NETWORK_LIMITED when out-of-IBD
* Accept addresses with NODE_NETWORK_LIMITED flag
* Fix ignoring tx data requests when fPauseSend is set on a peer
* Refactor: One CBaseChainParams should be enough
* boost: drop boost threads for [alert|block|wallet]notify
* boost: drop boost threads from torcontrol
* boost: remove useless threadGroup parameter from Discover
* boost: drop boost threads for upnp
* [wallet] Indent only change of CWallet::AvailableCoins
* [wallet] Make CWallet::ListCoins atomic
* Consistently use FormatStateMessage in RPC error output
* Add test for \'mempool min fee not met\' rpc error
* Fix \'mempool min fee not met\' debug output
* [RPC] Remove deprecated addmultisigaddress return format
* [RPC] Remove deprecated createmultisig object
* [tests] Remove test for deprecated createmultsig option
* qt: Poll ShutdownTimer after init is done
* qt: Clarify some comments
* qt: Make sure splash screen is freed on AppInitMain fail
* http: Remove numThreads and ThreadCounter
* Bech32 addresses in dumpwallet
* Add gitian PGP key: akx20000
* Fix fast-shutdown crash if genesis block was not loaded
* Fix fast-shutdown hang on ThreadImport+GenesisWait
* Add braces to meet code style on line-after-the-one-changed.
* http: Remove WaitExit from WorkQueue
* http: Join worker threads before deleting work queue
* Hold mempool.cs for the duration of ATMP.
* add fivepiece key fingerprint
* wallet: Disallow abandon of conflicted txes
* [tests] Update README after filename change
* Add AbsPathForConfigVal to consolidate datadir prefixing for path args
* Clarify help messages for path args to mention datadir prefix
* [rpc] Remove deprecated getmininginfo RPC option
* [rpc] remove deprecated estimatefee RPC
* Use ptrdiff_t type to more precisely indicate usage and avoid compiler warnings.
* Extend #11583 to include the most common message generated by non-contributing peers (port scanners?) 37% of the log default log entries for a node that has been up for ~24hrs was \"version handshake timeout...\"
* [tests] Remove estimatefee from rpc_deprecated.py test
* [tests] Remove tests for deprecated estimatefee RPC
* [tests] Fix style warnings in feature_fee_estimation.py
* Document method for reviewers to verify chainTxData
* Properly alphabetize output of CLI --help option.
* [rpc] Reduce scope of cs_main and cs_wallet locks in listtransactions
* [gui] Defer coin control instancing
* net: don\'t retry failed oneshot connections forever
* net: initialize socket to avoid closing random fd\'s
* Remove suggestion to make cloned repository world-writable for Windows build.
* QA: segwit.py: s/find_unspent/find_spendable_utxo/
* doc: Explain how to update chainTxData in release process
* contrib: Add support for out-of-tree builds in gen-manpages.sh
* Fix missing cs_main lock for GuessVerificationProgress()
* Organise Linux build instructions to be categorised by distro
* Add NetBSD build instruction links
* test: Make ua_comment test pass on 0.16.0
* [tests] Change invalidtxrequest to use BitcoinTestFramework
* [tests] Fix flake8 warnings in invalidtxrequest
* [tests] Add P2PDataStore class
* doc: Update manpages to 0.16.99
* build: Bump version to 0.16.99
* [tests] Require all tests to follow naming convention
* Refactor HaveKeys to early return on false result
* feebumper: Use PreconditionChecks to determine bump eligibility
* Enable flake8 warnings for all currently non-violated rules
* tests: Fix accidental redefinition of previously defined variable via list comprehension
* Enable flake8 warning for \"list comprehension redefines \'foo\' from line N\" (F812)
* [net] add seed.bitcoin.sprovoost.nl to DNS seeds
* [tests] Reduce NodeConn connection logging from info to debug
* Remove redundant code in MutateTxSign(CMutableTransaction&, const std::string&)
* Fix typos
* Avoid leaking prioritization information when relaying transactions
* fee estimator: avoid sorting mempool on shutdown
* Build: Add a makefile target for Doxygen documentation
* qa: Prepare functional tests for Windows
* [Trivial] link mentioned scripted-diff-commit
* net: Move misbehaving logging to net logging category
* move more bumpfee prechecks to feebumper::PreconditionChecks
* Correct mempool mapTx comment
* [tests] bind functional test nodes to 127.0.0.1
* Make segwit failure due to CLEANSTACK violation return a SCRIPT_ERR_CLEANSTACK error code.
* [scripts] lint-whitespace: check last N commits or unstaged changes
* fix nits: variable naming, typos
* [scripts] lint-whitespace: use perl instead of grep -P
* [qt] Add support to search the address book
* Implements a virtual destructor on the BaseRequestHandler class.
* Use best-fit strategy in Arena, now O(log(n)) instead O(n)
* [Doc] Clarify the meaning of fee delta not being a fee rate in prioritisetransaction RPC
* Improve readability by removing redundant casts to same type (on all platforms)
* clientversion: Use full commit hash for commit-based version descriptions
* [docs] initial QT documentation, move Qt Creator instructions
* contrib: Remove xpired 522739F6 key
* contrib: Replace developer keys with list of pgp fingerprints
* Use std::thread::hardware_concurrency, instead of Boost, to determine available cores
* simplify CheckMinimalPush checks, add safety assert
* Drop extra script variable in ProduceSignature
* Stop special-casing phashBlock handling in validation for TBV
* Do not un-mark fInMempool on wallet txn if ATMP fails.
* Remove redundant locks
* During IBD, when doing pruning, prune 10% extra to avoid pruning again soon after
* Use static_cast instead of C-style casts for non-fundamental types
* Sun May 30 2021 marecAATTdetebe.org- Update to version 0.10.1:
* Corrected romanian letters and errors (#580)
* version bump
* sync checkpoints purge
* Delete SECURITY.md
* Update build-unix.md
* network format does not match disk format unfortunately
* Wed May 12 2021 marecAATTdetebe.org- Update to version 0.10.0:
* change default window sizes
* allow header sync
* Rm rbf (#573)
* Rm maxtxfee (#572)
* drop seed by 7server.net
* rm some stub files
* rm bitcoin release notes
* cleanup seeds
* Develop (#569)
* Update build.yml
* Update README.md
* don\'t ask for witness before witness
* fix java exclusion
* Update sonar-project.properties
* sonar-project.properties
* Added build.yml for Sonarcloud
* Update README.md
* update readme
* Update README.md
* drop seed by 7server.net
* rm some stub files
* rm bitcoin release notes
* cleanup seeds
* only PKHash can mint at the moment, so don\'t show other outputs in minting views
* default address type is legacy
* lets remember nflags of header
* Github Actions auto build (#554)
* remove that silly staked button in overview
* implement requested UX changes
* removing checkpoint handling remains from the UX
* dynamically compute coin age
* Update of copyright year to 2021
* Update copyright headers to 2021
* more test
* test addition of unknown segwit spends to txid reject filter
* Add txids with non-standard inputs to reject filter
* doc: Update 0.20.1 release notes with psbt changes
* build: Bump version to 0.20.1-final
* [0.20] lint: fix shellcheck URL in CI install
* doc: Add changelog and authors to release notes for 0.20.1
* doc: Regenerate man pages for 0.20.1rc1
* build: Bump version to 0.20.1rc1
* qt: Fix QFileDialog for static builds
* Increment input value sum only once per UTXO in decodepsbt
* Remove cached directories and associated script blocks from appveyor CI configuration.
* appveyor: Remove clcache
* doc: move-only release notes for 0.20.1
* doc: Clear release notes for minor release
* Clean up separated ban/discourage interface
* Replace automatic bans with discouragement filter
* test: remove Cirrus CI FreeBSD job
* qa: Test concurrent wallet loading
* wallet: Handle concurrent wallet loading
* tests: Check that segwit inputs in psbt have both UTXO types
* psbt: always put a non_witness_utxo and don\'t remove it
* psbt: Allow both non_witness_utxo and witness_utxo
* rpc: show both UTXOs in decodepsbt
* trivial: Suggested cleanups to surrounding code
* wallet: Minimal fix to restore conflicted transaction notifications
* Fix WSL file locking by using flock instead of fcntl
* gui: update Qt base translations for macOS release
* build: improved output of configure for build OS
* util: Don\'t reference errno when pthread fails.
* fix qt dpi scaling attribute complaint
* test hell
* Remove testing in README.md
* scarab is here
* remove bitcoin residue
* more translation updates
* translate missing minting messages
* return reservebalance
* return backupWallet functionality
* croatian fixes
* fix list minting
* fix russian
* fix translation and strings
* updated strings
* remove pruning residue
* fix russian translation
* Hardened checkpoint update for v0.10.0 mainnet
* sign only if requested
* 10.14 osx
* windows gitian fix
* 10.14 for macosx
* peercoin-wallet
* gitian build fixes
* add missing icon
* get rid of checkpointsync residue
* fix version generation
* build openssl
* return of openssl
* remove icons for professional look
* move locks around, clearing up log files
* fix stake labels and amounts
* coinstake can be orphaned
* fix fee calculation when sending
* remove warnings
* fix rpc amounts
* remove prune residue
* return the lock and bnb for normal transactions
* make it mint
* make it
* compilation fixes
* more fixes for god of fixes
* remove util.h
* new transaction
* more fixes
* fix syncing
* more fixes
* fix validation
* fix miner and consensus
* more fixes
* make it compile
* bring back crypto 2
* bring back crypto
* more fixes
* revert fail squash
* fix alert logging
* Squashed \'src/secp256k1/\' changes from 0b70241850..b19c000063
* configure fixes
* Add missing QPainterPath include
* QA: feature_segwit: Check that template \"rules\" includes \"!segwit\" as appropriate
* Bugfix: Include \"csv\",\"!segwit\" in \"rules\"
* doc: Manpages update pre-final
* build: Set rc to 0 for -final
* doc: Merge 0.20.0 release notes from wiki
* build: Bump RC to rc2
* qt: Pre-rc2 translations update
* test: disable script fuzz tests
* fuzz: Remove enumeration of expected deserialization exceptions in ProcessMessage(...) fuzzer
* [net processing] Only send a getheaders for one block in an INV
* test: Remove const to work around compiler error on xenial
* miner: Avoid stack-use-after-return in validationinterface
* test: Add unregister_validation_interface_race test
* gui: Fix manual coin control with multiple wallets loaded
* test: Add test for conflicted wallet tx notifications
* rpc: Relock wallet only if most recent callback
* rpc: Add mutex to guard deadlineTimers
* [docs] Improve commenting in ProcessGetData()
* [test] test that an invalid GETDATA doesn\'t prevent processing of future messages
* [net processing] ignore unknown INV types in GETDATA messages
* [net processing] ignore tx GETDATA from blocks-only peers
* gui: Fix itemWalletAddress leak when not tree mode
* travis: Remove s390x
* travis: Remove valgrind
* build: Ensure source tarball has leading directory name
* rpc: Do not advertise dumptxoutset as a way to flush the chainstate
* Fix naming of macOS SDK and clarify version
* Do not expose and consider -logthreadnames when it does not work
* build: fix ASLR for bitcoin-cli on Windows
* build: Set libevent minimum version to 2.0.21
* Avoid non-trivial global constants in SHA-NI code
* gitian: Add missing automake package to gitian-win-signer.yml
* qt: Update translations pre-rc1
* doc: Update manpages pre-rc1
* build: Bump version to 0.20.0
* rpc: Make verifychain default values static, not depend on global args
* Remove PID file at the very end
* test: Add basic addr relay test
* net: Pass connman const when relaying address
* net: Make addr relay mockable
* Correct scripted-diff example link
* scripts: add MACHO lazy bindings check to security-check.py
* Reorder the test instructions by number
* Merge and generalize case 3 and case 6
* Only run sanity check once at the end
* Assert immediately rather than caching failure
* Make a fuzzer-based copy of the prevector randomized test
* test: Properly raise FailedToStartError when rpc shutdown before warmup finished
* ci: Rename RUN_CI_ON_HOST to DANGER_RUN_CI_ON_HOST
* ci: Add native s390x
* test: Set -use_value_profile=1 when merging fuzz inputs
* ci: Run unit tests sequential once
* appveyor: Enable minimal unit test logging to aid debugging
* tests: Add fuzzing harness for HTTPRequest, libevent\'s evhttp and related functions
* fuzz: Add process_messages harness
* scripted-diff: Replace strCommand with msg_type
* tests: Add coverage of {,Incremental}DynamicUsage(const std::set& s) to existing fuzzer
* tests: Add fuzzing harness for classes/functions in cuckoocache.h
* tests: Add fuzzing harness for classes/functions in checkqueue.h
* tests: Add coverage of GetVirtualTransactionSize(...) to existing fuzzer
* tests: Add fuzzing harness for AdditionOverflow(...)
* tests: Add fuzzing harness for FeeFilterRounder
* Fix unregister_all_during_call cleanup
* build: Update ax_boost_mase.m4 to the latest serial
* Add test for UnregisterAllValidationInterfaces bug
* Do not clear validationinterface entries being executed
* rpc: Avoid initialization-order-fiasco on static CRPCCommand tables
* Wallet: Change IsMine check in CWallet::DelAddressBook from assert to failure
* Wallet: Replace CAddressBookData.name with GetLabel() method
* QA: Test that change doesn\'t turn into non-change when spent in an avoid-reuse wallet
* qt: Fix Window -> Minimize menu item
* test: Use one node to avoid a race due to missing sync in rpc_signrawtransaction
* Wallet: Add warning comments and assert to CWallet::DelAddressBook
* Wallet: Avoid unnecessary/redundant m_address_book lookups
* Wallet: Avoid treating change-in-the-addressbook as non-change everywhere
* Wallet: New FindAddressBookEntry method to filter out change entries (and skip ->second everywhere)
* Wallet: Add CAddressBookData::IsChange which returns true iff label has never been set
* Wallet: Require usage of new CAddressBookData::setLabel to change label
* scripted-diff: Wallet: Rename mapAddressBook to m_address_book
* net: Add missing cs_vNodes lock
* rpc: Fix rpcRunLater race in walletpassphrase
* test: wallet_bumpfee assertion fixup
* Correctly compute redeemScript from witnessScript for signrawtransaction
* test: relax bumpfee dust_to_fee txsize an extra vbyte
* refactor: drop boost::signals2 in validationinterface
* test: skip backwards compat tests if not compiled with wallet
* net: Hardcoded seeds update for 0.20
* test: remove rapidcheck integration and tests
* test: add BIP37 remote crash bug [CVE-2013-5700] test to p2p_filter.py
* build: create test_fuzz library from src/test/fuzz/fuzz.cpp
* fuzz: Add CScriptNum::getint coverage
* test: remove redundant sync_with_ping after add_p2p_connection
* fuzz: Extend descriptor fuzz test
* fuzz: Extend script fuzz test
* test: remaining replacements of (send_message+sync_with_ping) with send_and_ping
* fuzz: Avoid running over all inputs after merging them
* tests: Add proof-of-work fuzzing harness
* rpc: Make rpc documentation not depend on rpc args
* Bugfix: RPC: JSON null is not \"None\"
* Bugfix: RPC: Don\'t use a continuation elipsis after an elision elipsis
* Bugfix: RPC: Add missing commas and correct indentation of explicit ELISION
* [doc] fix git add argument
* init: Replace URL_WEBSITE with PACKAGE_URL
* doc: note the costs of fetching all pull requests
* [scripts] previous_release: improve failed download error message
* Check for overflow when calculating sum of outputs
* doc: block-relay-only is not blocksonly
* test: replace (send_message + sync_with_ping) with send_and_ping
* gui: Delete progress dialog instead of hidding it
* wallet: Handle duplicate fileid exception
* build: Detect gmtime_
* definitions via configure
* qt: Translations update pre-branch
* ci: Use Focal for fuzzers
* test: Remove redundant sync_with_ping after add_p2p_connection
* test: Wait for both veracks in add_p2p_connection
* doc: Explain new test logging
* test: check that peer is connected when calling sync_
*
* test: Remove unsafe BOOST_TEST_MESSAGE
* test: add BIP37 \'filterclear\' test to p2p_filter.py
* gui: Handle WalletModel::unload asynchronous
* Fix wallet unload race condition
* gui: Avoid Wallet::GetBalance in WalletModel::pollBalanceChanged
* test: listsinceblock block height checks
* test: Add basic test for BIP 37
* serialization: prevent int overflow for big Coin::nHeight
* tests: Add fuzzing harness for functions/classes in random.h
* tests: Add fuzzing harness for LimitedString (serialize.h)
* tests: Add fuzzing harness for functions/classes in span.h
* tests: Add fuzzing harness for functions/classes in merkleblock.h
* tests: Add fuzzing harness for functions/classes in flatfile.h
* Update -blocksonly documentation
* rpc: remove unused getbalances() code
* Bugfix: RPC: Remove final comma for last entry of fixed-size Arrays and Objects in RPCResult
* util: Replace i64tostr with ToString
* util: Remove unused itostr
* scripts: rename test_64bit_PE to test_PE
* scripts: add MACHO NX check to security-check.py
* scripts: add MACHO tests to test-security-check.py
* refactor: Work around GCC 9 `-Wredundant-move` warning
* net: Fail instead of truncate command name in CMessageHeader
* test: add coverage for script parse error in ParseScript
* build: Add cov_fuzz target
* build: link fuzz/test_runner.py for out-of-tree builds
* build: Remove unused USE_COVERAGE
* rpc: fix broken RPCExamples for waitforblock(height)
* Limit decimal range of numbers ParseScript accepts
* Make VerifyWitnessProgram use a Span stack
* tests: Add fuzzing harness for functions/classes in chain.h
* tests: Add fuzzing harness for functions/classes in protocol.h
* util: Fail to parse space-only strings in ParseMoney(...) (instead of parsing as zero)
* ci: Remove misplaced comments from folded block scalar
* wallet: remove totalfee from createBumpTransaction()
* rpc: remove deprecated totalFee arg from RPC bumpfee
* test: delete wallet_bumpfee_totalfee_deprecation.py
* test: update bumpfee testing from totalFee to fee_rate
* script: fix SCRIPT_ERR_SIG_PUSHONLY error string
* lockedpool: When possible, use madvise to avoid including sensitive information in core dumps
* ci: Use Homebrew addon on native macOS
* ci: Fix brew in Travis
* build: remove double LIBBITCOIN_SERVER from bench-Makefile
* build: Fix typo in EVENT_CFLAGS variable
* build: Fix libevent linking for bench_bitcoin binary
* Replace std::to_string with locale-independent alternative
* ci: Only clone bitcoin-core/qa-assets when fuzzing
* Update with new Windows code signing certificate
* scripts: add PE dylib checking to symbol-check.py
* gui: avoid QT Designer/Form Editor re-formatting
* gui: display Mapped AS in peers info window
* build: Drop needless EXTRA_DIST content
* build: Drop SOURCEDIST reordering
* build: Use git archive as source tarball
* tests: Add fuzzing harness for classes/functions in blockfilter.h
* tests: Add integer serialization/deserialization fuzzing harness
* doc: Add fuzzing quickstart guides for libFuzzer and afl-fuzz. Simplify instructions.
* tests: Add fuzzing harness for functions in net_permissions.h
* tests: Add fuzzing harness for functions in timedata.h
* tests: Add fuzzing harness for functions in addrdb.h
* test: add unit test for non-standard \"scriptsig-not-pushonly\" txs
* doc: Add internal interface conventions to developer notes
* refactor: Change createWallet, fillPSBT argument order
* refactor: Change Chain::broadcastTransaction param order
* refactor: Rename Chain::Notifications methods to be consistent with other interfaces methods
* refactor: Rename Node::disconnect methods
* refactor: Get rid of Wallet::IsWalletFlagSet method
* tests: Don\'t assume presence of __builtin_mul_overflow in MultiplicationOverflow(...) fuzzing harness
* ci: Run feature_block and feature_abortnode in valgrind
* test: Remove ci timeout restriction in test_runner
* test: add executable flag for rpc_estimatefee.py
* rpc: add missing HelpExampleRpc for getblockfilter
* [mempool] Remove NotifyEntryAdded and NotifyEntryRemoved callbacks
* [validation] Remove pool member from ConnectTrace
* [validation] Remove NotifyEntryRemoved callback from ConnectTrace
* [validation] Remove conflictedTxs from PerBlockConnectTrace
* [validation interface] Remove vtxConflicted from BlockConnected
* [wallet] Notify conflicted transactions in TransactionRemovedFromMempool
* doc: mention MAKE=gmake workaround when building on a BSD
* build: fix sysctl() detection on macOS
* Add bn2vch test to functional tests
* Simplify bn2vch using int.to_bytes
* net: fix use-after-free in tests
* fuzz: Remove option --export_coverage from test_runner
* fuzz: Add option to merge input dir to test runner
* doc: Remove --disable-ccache from docs
* tests: Add harness which fuzzes EvalScript and VerifyScript using a fuzzed signature checker
* Update merkle.cpp
* test: use fs namespace in dbwrapper unicodepath test
* refactor: move DUMP_BANS_INTERVAL to banman.h
* scheduler: Make schedule
* methods type safe
* scheduler: Use C++11 member initialization, add shutdown assert
* Fix UB with bench on genesis block
* [tests] remove bignum.py
* [tests] remove bn2bin()
* [tests] remove bn_bytes() function
* [tests] remove mpi2vch() function
* [tests] don\'t encode the integer size in bignum
* [tests] add function comments to bignum
* [tests] fix flake8 warnings in script.py and bignum.py
* tests: Add fuzzing harness for various functions taking std::string as input
* tests: Add fuzzing harness for MultiplicationOverflow(...)
* tests: Add fuzzing harness for CFeeRate
* tests: Add fuzzing harness for CBlockHeader
* tests: Add fuzzing harness for count_seconds(...)
* doc: fix GetTimeMicros() comment in random.cpp
* rand: remove getentropy() fallback for macOS < 10.12
* tests: simplify next_block() function in feature_block
* Fix mining to an invalid target + ensure that a new block has the correct hash internally in Python tests
* rpc: Document an RPCResult for all calls; Enforce at compile time
* rpc: Add missing newline in RPCResult description
* refactor: Remove mempool global from net
* Fix nit in getblockchaininfo
* Fix missing header in sync.h
* tx: Bump transifex slug to 020x
* qt: Periodical translations update
* test: Bump timeouts to avoid valgrind failures
* Implement O(1) OP_IF/NOTIF/ELSE/ENDIF logic
* [refactor] interpreter: define interface for vfExec
* Benchmark script verification with 100 nested IFs
* Cache parent xpub inside of BIP32PubkeyProvider
* Only cache xpubs that have a hardened last step
* Cache the immediate derivation parent xpub
* Add DescriptorCache
* read_cache and DescriptorCache
* write_cache to Expand and GetPubKey
* Rename BIP32PubkeyProvider.m_extkey to m_root_extkey
* Track the index of the key expression in PubkeyProvider
* Introduce DescriptorCache struct which caches xpubs
* [REFACTOR] Abstract out script execution out of VerifyWitnessProgram()
* util: HelpExampleRpc formatting fixup
* test: Add missing syncwithvalidationinterfacequeue
* test: Fix race in p2p_segwit
* guix: Remove now-unnecessary gcc make flag
* test: Bump rpc timeout in feature_assumevalid to avoid valgrind timeouts
* test: Bump walletpassphrase timeouts in wallet_createwallet to avoid valgrind timeouts
* fuzz: Add missing ECC_Start to key_io test
* [test] Add coverage to estimaterawfee and estimatesmartfee
* Remove redundant type information from rpc docs
* tests: Add fuzzing of CSubNet, CNetAddr and CService related functions
* tests: Fuzz HasAllDesirableServiceFlags(...) and MayHaveUsefulAddressDB(...)
* tests: Fuzz DecodeBase64PSBT(...)
* tests: Simplify code by removing unwarranted use of unique_ptr:s
* tests: Fuzz DecodeHexBlk(...)
* tests: Fuzz RecursiveDynamicUsage(const std::shared_ptr& p)
* tests: Fuzz operator!= of CService
* tests: Increase fuzzing coverage of DecompressScript(...)
* tests: Fuzz currently uncovered code path in TxToUniv(...)
* tests: Re-arrange test cases in parse_univalue to increase coverage
* tests: Remove unit test from fuzzing harness
* tests: Add deserialization fuzzing of SnapshotMetadata (utxo_snapshot), uint160 and uint256
* Change example addresses to bech32
* test: Add bad-txns-
*-toolarge test cases to invalid_txs
* build: Set minimum Automake version to 1.13
* test: Check that wait_until returns if time point is in the past
* doc: Explain rebase/squash policy in CONTRIBUTING.md
* doc: Warn about wallet.dat re-use and backups
* doc: Minor grammatical changes and flow improvements
* doc: Added running functional tests in valgrind
* doc: Add a note about backporting
* doc: asmap release note
* tests: Add one specialized ProcessMessage(...) fuzzing binary per message type for optimal results when using coverage-guided fuzzing
* tests: Add fuzzing harness for ProcessMessage(...)
* ci: Enable all functional tests in valgrind
* bumpfee test: exit loop at proper time with new fee value being compared
* Add some test logging to wallet_bumpfee.py
* test: Explain why test logging should be used
* doc: remove Boost Chrono from install docs
* test: remove Boost Chrono installation from CI
* build: remove Boost Chrono detection from build system
* build: remove chrono package from depends Boost
* qa: Add getdescriptorinfo functional test
* Make lifetime correctness easier to see (avoid reference lifetime extension)
* tests: Add fuzzing harness for CScriptNum operations
* tests: Add fuzzing harness for CScript operations
* tests: Add common Consume
* fuzzing functions
* test: add logging to wallet_listsinceblock.py
* Clear any input_errors for an input after it is signed
* Replace GetSigningProvider with GetSolvingProvider
* Move direct calls to MessageSign into new SignMessage functions in CWallet and ScriptPubKeyMan
* Move key and script filling and signing from CWallet::FillPSBT to ScriptPubKeyMan::FillPSBT
* Move FillPSBT to be a member of CWallet
* Use CWallet::SignTransaction in CreateTransaction and signrawtransactionwithwallet
* Implement CWallet::SignTransaction using ScriptPubKeyMan::SignTransaction
* Add SignTransaction function to ScriptPubKeyMan and LegacyScriptPubKeyMan
* Refactor rawtransaction\'s SignTransaction into generic SignTransaction function
* doc: Add historical release notes for 0.19.1
* tests: Remove FUZZERS_MISSING_CORPORA
* tests: Add basic fuzzing harness for CNetAddr/CService/CSubNet related functions (netaddress.h)
* fuzz: Add assert(script == decompressed_script)
* tests: Reset FUZZERS_MISSING_CORPORA to enable regression fuzzing for more harnesses
* rpc/wallet: initialize nFeeRequired to avoid using garbage value on failure
* tests: Fuzz additional functions in the script fuzzing harness
* tests: Fuzz additional functions in the transaction fuzzing harness
* tests: Fuzz additional functions in the integer fuzzing harness
* tests: Fuzz additional functions in the hex fuzzing harness
* tests: Add key_io fuzzing harness
* build: Add locale fuzzer to FUZZERS_MISSING_CORPORA
* wallet: use constant CWallets in rpcwallet.cpp
* wallet: make ReserveDestination pwallet ivar const
* wallet: make BackupWallet() const
* wallet: make getters const
* wallet/spkm: make GetOldestKeyPoolTime() const
* wallet: use constant CWallets in rpcdump.cpp
* wallet/db: make IsDummy() const
* wallet/db: make Backup() const
* wallet: make CanGetAddresses() const
* wallet: make KeypoolCountExternalKeys() const
* wallet: make CanGenerateKeys() const
* make BlockUntilSyncedToCurrentChain() const
* lint-cppcheck: Remove -DHAVE_WORKING_BOOST_SLEEP_FOR
* scheduler_tests: re-enable mockforward test
* Drop unused reverselock.h
* scheduler: switch from boost to std
* sync.h: add REVERSE_LOCK
* scheduler: don\'t rely on boost interrupt on shutdown
* tests: Add fuzzing harness for locale independence testing
* util: Remove unused MilliSleep
* scripted-diff: Replace MilliSleep with UninterruptibleSleep
* util: Add UnintrruptibleSleep
* tests: Add fuzzing harness for CKey related functions
* tests: Add float to FUZZERS_MISSING_CORPORA (temporarily)
* tests: Add serialization/deserialization fuzzing for integral types
* tests: Add fuzzing harness for functions taking floating-point types as input
* Add missing includes
* compressor: Make the domain of CompressAmount(...) explicit
* tests: Add amount compression/decompression fuzzing to existing fuzzing harness: test compression round-trip
* tests: Avoid hitting some known minor tinyformat issues when fuzzing strprintf(...)
* Convert blockencodings.h to new serialization framework
* Add CustomUintFormatter
* Add DifferenceFormatter
* Make VectorFormatter support stateful formatters
* Convert CCompactSize to proper formatter
* refactor: Cast ping values to double before output
* refactor: Convert ping wait time from double to int64_t
* refactor: Convert min ping time from double to int64_t
* refactor: Convert ping time from double to int64_t
* [rpc] changed MineBlocksOnDemand to IsMockableChain
* ci: Check for submodules
* init: move asmap code earlier in init process
* rpc: fix getpeerinfo RPCResult `mapped_as` type
* net: extract conditional to bool CNetAddr::IsHeNet
* logging: asmap logging and #include fixups
* test: add functional test for an empty, unparsable asmap
* config: separate the asmap finding and parsing checks
* config: enable passing -asmap an absolute file path
* config: use default value in -asmap config
* test: add feature_asmap functional tests
* test: Bump timeouts to accomodate really slow disks
* doc: Merge release notes for 0.20.0 release
* rpc: Auto-format RPCResult
* rpc: Move OuterType enum to header
* doc: Correct spelling errors in comments
* httpserver: use own HTTP status codes
* Make AnalyzePSBT next role calculation simple, correct
* Templatize ValidationState instead of subclassing
* Remove ValidationState\'s constructor
* Refactor FormatStateMessage into ValidationState
* Drop unused mach time headers
* util: Fail to parse empty string in ParseMoney
* util: Remove unused ParseMoney that takes a c_str
* Refactor message transport packaging
* random: don\'t special case clock usage on macOS
* refactor: test/bench: dedup SetupDummyInputs()
* test: check specific reject reasons in feature_csv_activation.py
* build: add --enable-determinism configure flag
* test: Add cost_of_change parameter assertions to bnb_search_test
* test: eliminiated magic numbers in feature_csv_activation.py
* test: check for OP_CSV empty stack fail reject reason in feature_csv_activation.py
* test: test OP_CSV empty stack fail in feature_csv_activation.py
* test: Reduce unneeded whitelist permissions in tests
* Add missing step in win deployment instructions
* test: check custom descendant limit in mempool_packages.py
* tests: Add fuzzing harness for V1TransportDeserializer (P2P transport)
* test: Disable mockforward scheduler unit test for now
* Add static_asserts to ser_X_to_Y() methods
* Fix a violation of C++ standard rules that unions cannot be switched.
* net: Remove forcerelay of rejected txs
* tests: Add fuzzing harness for rolling bloom filter class CRollingBloomFilter
* tests: Add fuzzing harness for bloom filter class CBloomFilter
* [test] PSBT RPC: check that bip32_derivs are present by default
* [rpc] set default bip32derivs to true for psbt methods
* Refactor message hashing into a utility function
* Deduplicate the message signing code
* Deduplicate the message verifying code
* util: Avoid potential uninitialized read in FormatISO8601DateTime(int64_t nTime) by checking gmtime_s/gmtime_r return value
* scripted-diff: Wallet: Rename incorrectly named
*UsedDestination
* test: Remove incorrect assumptions in validation_flush_tests
* test: Tabs to spaces in all tests
* test: Set catch_system_errors=no on boost unit tests
* Get the OutputType for a descriptor
* add: test that transactions expire from mempool
* doc: link to homebrew\'s troubleshooting page
* rpc: update validateaddress RPCExamples to bech32
* tests: Improve test runner output in case of target errors
* tests: Add --exclude integer,parse_iso8601 (temporarily) to make Travis pass until uninitialized read issue in FormatISO8601DateTime is fixed
* tests: Add support for excluding fuzz targets using -x/--exclude
* tests: Remove -detect_leaks=0 from test/fuzz/test_runner.py - no longer needed
* ci: Run fuzz testing test cases under valgrind
* Revert \"Store p2sh scripts in AddAndGetDestinationForScript\"
* [test] check for addmultisigaddress regression
* wallet: Improve LegacyScriptPubKeyMan::CanProvide script recognition
* [rpc] expose ability to mock scheduler via the rpc
* [lib] add scheduler to node context
* [test] add chainparams property to indicate chain allows time mocking
* [test] unit test for new MockForward scheduler method
* [util] allow scheduler to be mocked
* build: pass -fno-ident in Windows gitian descriptor
* test: Check wallet name in -walletnotify script
* wallet: Replace %w by wallet name in -walletnotify script
* scripted-diff: Add missing spaces in RPCResult, Fix type names
* tests: Add --valgrind option to test/fuzz/test_runner.py for running fuzzing test cases under valgrind
* ci: use --enable-werror on more hosts
* build: add Wreturn-type to Werror flags
* Ignore only auto-generated .vcxproj files
* Specify ignored bitcoin-qt file precisely
* refactor: rpc: Remove vector copy from listtransactions
* gui: Throttle GUI update pace when -reindex
* gui: Fix race in WalletModel::pollBalanceChanged
* test: Remove ubsan alignment suppressions
* prevector: avoid misaligned member accesses
* doc: remove PPA note from release-process.md
* [test] add 0.19 backwards compatibility tests
* [test] add v0.17.1 wallet upgrade test
* [tests] add wallet backwards compatility tests
* [scripts] support release candidates of earlier releases
* [tests] check v0.17.1 and v0.18.1 backwards compatibility
* [scripts] build earlier releases
* build: don\'t embed a build-id when building libdmg-hfsplus
* build: Skip i686 build by default in guix and gitian
* depends: Remove reference to win32
* Get rid of VARINT default argument
* build: Fix behavior when ALLOW_HOST_PACKAGES unset
* test: add unit test for non-standard txs with too large tx size
* Convert undo.h to new serialization framework
* Make std::vector and prevector reuse the VectorFormatter logic
* Add custom vector-element formatter
* Add a constant for the maximum vector allocation (5 Mbyte)
* test: set a name for CI Docker containers
* test: Disable s390 build on travis
* Squashed \'src/univalue/\' changes from 5a58a46671..98261b1e7b
* qt: Fix deprecated QCharRef usage
* Qt: pass clientmodel changes from walletframe to walletviews
* logging: enable thread_local usage on macOS
* test: Add ubsan surpression for crc32c
* build: Disable msvc warning 4722 for leveldb build
* build: MSVC changes for leveldb update
* build: CRC32C build system integration
* build: Add LCOV exception for crc32c
* test: Add crc32c exception to various linters and generation scripts
* test: Add crc32c to subtree check linter
* doc: Add crc32c subtree to developer notes
* build: Update build system for new leveldb
* Squashed \'src/crc32c/\' content from commit 224988680f7673cd7c769963d4035cb315aa3388
* Squashed \'src/leveldb/\' changes from f545dfabff4c2e9836efed094dba99a34fbc6b88..f8ae182c1e5176d12e816fb2217ae33a5472fdd7
* Output a descriptor in createmultisig and addmultisigaddress
* gui: Fix unintialized WalletView::progressDialog
* build: remove --large-address-aware linker flag
* util: Disallow network-qualified command line options
* doc: Use proper RPC help syntax in importmulti
* doc: Remove duplicate \"comment\" from listsinceblock RPC help
* doc: Properly document proxy_randomize_credentials as bool in getnetworkinfo
* doc: Fix syntax error (trailing square bracket) in finalizepsbt
* doc: Fix syntax error (trailing square bracket) in walletprocesspsbt
* Remove false positive GCC warning
* build: use macOS 10.14 SDK
* depends: native_cctools 921, ld64 409.12, libtapi 1000.10.8
* depends: clang 6.0.1
* build: remove deprecated key from macOS Info.plist
* Make asmap Interpret tolerant of malicious map data
* Use ASNs for mapped IPv4 addresses correctly
* Mark asmap const in statistics code
* Avoid asmap copies in initialization
* test: replace \'regtest\' leftovers by self.chain
* tests: Add fuzzer asmap to FUZZERS_MISSING_CORPORA (temporarily)
* tests: Add fuzzing harness for AS-mapping (asmap)
* build: add additional attributes to Win installer
* Add search for first blk file with pruned node
* Tests: Use self.chain instead of \'regtest\' in almost all current tests
* gui: Drop PeerTableModel dependency to ClientModel
* Walk pindexBestHeader back to ChainActive().Tip() if it is invalid
* Make UpdateTransactionsFromBlock use Epochs
* Add Epoch Guards to CTXMemPoolEntry and CTxMemPool
* net: reference instead of copy in BlockConnected range loop
* doc: update release notes with getaddressinfo label deprecation
* test: getaddressinfo label deprecation test
* rpc: deprecate getaddressinfo label field
* test: remove getaddressinfo label tests
* doc: address pr17578 review feedback
* gui: Remove WalletView and BitcoinGUI circular dependency
* gui: Add transactionClicked and coinsSent signals to WalletView
* gui: Drop ShutdownWindow dependency to BitcoinGUI
* gui: Drop BanTableModel dependency to ClientModel
* Use rolling bloom filter of recent block tx\'s for AlreadyHave() check
* Add missing supported rpcs to doc/descriptors.md
* Remove GitHub Actions CI workflow.
* on startup, write config options to debug.log
* test: Add p2p test for forcerelay permission
* test: Fix whitespace in p2p_permissions.py
* test: Make msg_tx a witness tx
* tests: Add fuzzing harness for strprintf(...)
* tests: Add fuzzer strprintf to FUZZERS_MISSING_CORPORA (temporarily)
* tests: Update FuzzedDataProvider.h from upstream (LLVM)
* tests: reset fIsBareMultisigStd after bare-multisig tests
* psbt_wallet_tests: use unique_ptr for GetSigningProvider
* Refactor: Replace SigningProvider pointers with unique_ptrs
* Cleanup: Drop unused GUI learnRelatedScripts method
* Refactor: Copy CWallet signals and print function to LegacyScriptPubKeyMan
* Box the wallet: Add multiple keyman maps and loops
* refactor: define a UINT256_ONE global constant
* HD Split: Avoid redundant upgrades
* Make UpgradeKeyMetadata work only on LegacyScriptPubKeyMan
* Store p2sh scripts in AddAndGetDestinationForScript
* Always try to sign for all pubkeys in multisig
* List output types in an array in order to be iterated over
* Refactor: Allow LegacyScriptPubKeyMan to be null
* Locking: Lock cs_KeyStore instead of cs_wallet in legacy keyman
* build: Fix appveyor test_bitcoin build of
*.raw
* Document better -keypool as a look-ahead safety mechanism
* Convert compression.h to new serialization framework
* Add FORMATTER_METHODS, similar to SERIALIZE_METHODS, but for formatters
* doc: Improve fuzzing docs for macOS users
* Add extra logging of asmap use and bucketing
* Return mapped AS in RPC call getpeerinfo
* Integrate ASN bucketing in Addrman and add tests
* Add asmap utility which queries a mapping
* test: only declare a main() when fuzzing with AFL
* refactor: Remove redundant conditional
* psbt: check output index is within bounds before accessing
* Don\'t calculate tx fees for PSBTs with invalid money values
* Fix benchmarks filters
* test: rename test suite name \"tx_validationcache_tests\" to match filename
* guix: Update documentation for time-machine
* guix: Pin Guix using `guix time-machine`
* gui: Make Intro consistent with prune checkbox
* gui: Add Intro::UpdateFreeSpaceLabel()
* refactor: Add Intro::UpdatePruneLabels()
* refactor: Replace static variable with data member
* util: Add PruneGBtoMiB() function
* util: Add PruneMiBtoGB() function
* Bugfix: GUI: Hide the HD/encrypt icons earlier so they get re-shown if another wallet is open
* gui: renamed \'debug window\' to \'node window\'
* gui: Shortcut to close ModalOverlay
* Updated appveyor job to checkout a specific vcpkg commit ID.
* bump test timeouts so that functional tests run in valgrind
* build: remove configure checks for win libraries we don\'t link against
* src/init: correct a typo
* build: remove linking librt for backwards compatibility
* ci: Set LC_ALL=C when running in qemu-s390x
* ci: Use debian to avoid apt install 404 errors
* ci: Install needed gcc and qemu-user iff cross-compiling
* ci: Fix QEMU_USER_CMD parse issues
* ci: Move wrap-qemu into separate script
* scripts: add MACHO dylib checking to symbol-check.py
* tests: Avoid using C-style NUL-terminated strings as arguments
* tests: Add tests to make sure lookup methods fail on std::string parameters with embedded NUL characters
* net: Avoid using C-style NUL-terminated strings as arguments in the netbase interface
* bug-fix macos: give free bytes to F_PREALLOCATE
* Revert \"refactor: Remove never used default parameter\"
* Revert \"refactor: Simplify connection syntax\"
* scripted-diff: Set gitian arch back to amd64
* init: Stop indexes on shutdown after ChainStateFlushed callback.
* test: add missing #include to fix compiler errors
* QT: bump fee returns PSBT on clipboard for watchonly-only wallets
* windows: remove call to SetProcessDEPPolicy
* windows: Enable heap terminate-on-corruption
* build: Sort fuzzing harnesses to avoid future merge conflicts
* tests: Add fuzzing harness for DecodeHexTx(...)
* Fix doxygen errors
* contrib: makeseeds: Read suspicious hosts from a file instead of hardcoding
* Convert chain to new serialization
* Convert VARINT to the formatter/Using approach
* Add a generic approach for (de)serialization of objects using code in other classes
* refactor: Simplify connection syntax
* refactor: Remove never used default parameter
* gui: Remove warning \"unused variable \'wallet_model\'\"
* depends: Consistent use of package variable
* wallet: Improve CWallet:MarkDestinationsDirty
* scripted-diff: Add missed copyright headers
* script: Update EXLUDE list in copyright_header.py
* script: Add empty line after C++ copyright
* script: Add ability to insert copyright to
*.sh
* ci: Combine 32-bit build with CentOS 7 build
* test: add functional test for non-standard bare multisig txs
* doc: developer notes guideline on RPCExamples addresses
* Don\'t allow implementers to think ScriptHash(Witness
*()) results in nesting computation
* IsUsedDestination shouldn\'t use key id as script id for ScriptHash
* gui: hide HD & encryption icons when no wallet loaded
* Replace coroutine with async def in p2p_invalid_messages.py
* wallet: Reset reused transactions cache
* bitcoin-wallet: Use PACKAGE_NAME in usage help
* GUI: Use PACKAGE_NAME in modal overlay
* scripted-diff: Bump copyright of files changed in 2020
* scripted-diff: Replace CCriticalSection with RecursiveMutex
* doc: Add to Doxygen documentation guidelines
* gui: Set CConnman byte counters earlier to avoid uninitialized reads
* tests: add tests for GetCoinsCacheSizeState
* refactoring: introduce CChainState::GetCoinsCacheSizeState
* build: remove double LIBBITCOIN_SERVER linking
* Fix improper Doxygen inline comments
* qa: Fix double-negative arg test
* Ignore msvc linker warning and update to msvc build instructions.
* Add logging for CValidationInterface events
* Refactor FormatStateMessage for clarity
* Format CValidationState properly in all cases
* Add VALIDATION to BCLog::LogFlags
* gui: Fix duplicate wallet showing up
* Drop signal CClientUIInterface::LoadWallet
* zmq: Fix due to invalid argument and multiple notifiers
* qt: Rename SetPrune() to InitializePruneSetting()
* refactor: Drop `bool force\' parameter
* qt: Force set nPruneSize in QSettings after intro
* util: Replace magics with DEFAULT_PRUNE_TARGET_GB
* test: Show debug log on unit test failure
* build: add Wdate-time to Werror flags
* qt: Add LogQtInfo() function
* Restore English translation option
* gitignore: ignore fuzz binaries, remove test_bitcoin_fuzzy
* Activate no-privkey -> ISMINE_WATCH_ONLY behavior for LegacySPKM only
* doc: update release notes
* test: getaddressinfo labels purpose deprecation test
* rpc: simplify getaddressinfo labels, deprecate previous behavior
* rpc: incorporate review feedback from PR 17283
* Test watchonly wallet bumpfee with PSBT return
* IsUsedDestination should count any known single-key address
* scripts: fix check-symbols & check-security argument passing
* doc: Added regtest config for linearize script
* refactor: Remove unused defines in bitcoinunits.h
* Convert addrdb/addrman to new serialization
* Introduce new serialization macros without casts
* build: Add default configure cache to .gitignore
* doc: Add ci prefix to CONTRIBUTING.md
* tests: Add std::to_string to list of locale dependent functions
* rpc: Remove mempool global from miner
* test: Properly document blockinfo size in miner_tests
* Add missing typeinfo includes
* net: Log to net category for exceptions in ProcessMessages
* ci: Fix brew python link
* [validation] fix comments in CheckInputScripts()
* scripted-diff: [validation] Rename CheckInputs to CheckInputScripts
* scripts: add MACHO NOUNDEFS check to security-check.py
* scripts: add MACHO PIE check to security-check.py
* doc: Update dependencies.md
* scripted-diff: Bump copyright of files changed in 2019
* Moved the include of the system projects to before the build depends on task. Otherwise it doesn\'t get run.
* Included test_bitcoin-qt in msvc build.
* doc: Update license year range to 2020
* test: Change filemode of rpc_whitelist.py
* ci: Update vcpkg cache on MSBuild update
* ci: Update Qt binaries for GitHub Actions
* use preferred shebang approach for documentation
* refactor: Remove null setting check in GetSetting()
* scripted-diff: Remove unused ArgsManager type flags in tests
* refactor: Add util_CheckValue test
* refactor: Add ArgsManager::GetSettingsList method
* refactor: Get rid of ArgsManagerHelper class
* refactor: Replace FlagsOfKnownArg with GetArgFlags
* refactor: Clean up includeconf comments
* refactor: Clean up long lines in settings code
* doc: Mention PR Club in CONTRIBUTING.md
* build: set AC_PREREQ to 2.69
* doc: Add formatting to the good first issue template
* build: add -bind_at_load to hardened LDFLAGS
* build: remove WINDOWS_BITS from build system
* keypool: Add comment about TopUp and when to use it
* keypool: Move opportunistic TopUps from LegacyScriptPubKeyMan to CWallet and ReserveDestination
* keypool: Remove superfluous topup from CWallet::GetNewChangeDestination
* ci: Add valgrind run
* ci-s390x: Add qemu and depends support in the ci script
* test: add IsRFC2544 tests
* CNetAddr: fix IsRFC2544 comment
* tests: Add fuzzing harness for various hex related functions
* tests: Add fuzzing harness for various Base{32,58,64} related functions
* util: Move TrimString(...). Introduce default pattern (trims whitespace). Add NODISCARD.
* tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus
* [test] move wallet helper functions into test library
* [test] move mining helper functions into test library
* [test] move string helper functions into test library
* [style] Code style fixups in GetWarnings()
* util: change GetWarnings parameter to bool
* [qt] remove unused parameter from getWarnings()
* rest: Use mempool from node context instead of global
* node: Use mempool from node context instead of global
* rpc: Use mempool from node context instead of global
* fix directory path for secp256k1 subtree in developer-notes
* tests: Add fuzzing harness for CheckBlock(...) and other CBlock related functions
* tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus
* tests: Add tests for decoding/parsing of base32, base64 and money strings containing NUL characters
* util: Don\'t allow DecodeBase32(...) of strings with embedded NUL characters
* util: Don\'t allow DecodeBase64(...) of strings with embedded NUL characters
* util: Don\'t allow ParseMoney(...) of strings with embedded NUL characters
* depends: disable unused qt networking features
* depends: -optimized-qmake is now -optimized-tools
* depends: skip building qt proxies
* doc: Add release note for RPC Whitelist
* rpc: require second argument only for scantxoutset start action
* wallet: unbreak with boost 1.72
* test: Add test for rpc_whitelist
* Add RPC Whitelist Feature from #12248
* util: Don\'t allow base58-decoding of std::string:s containing non-base58 characters
* tests: Add tests for base58-decoding of std::string:s containing non-base58 characters
* doc: update developer notes wrt unix epoch time
* qa: unify unix epoch time descriptions
* Update msvc build for Visual Studio 2019 v16.4
* build: fix typo
* cli: fix Fatal LevelDB error when specifying -blockfilterindex=basic twice
* doc: Update release process with latest changes
* ci: Use python 3.7 on Windows Github Actions
* Replace LegacyScriptPubKeyMan::IsCrypted with LegacyScriptPubKeyMan::HasEncryptionKeys
* Remove SetCrypted() and fUseCrypto; Change IsCrypted()\'s implementation
* Rename EncryptKeys to Encrypt and pass in the encrypted batch to use
* Clear mapKeys before encrypting
* Move fDecryptionThoroughlyChecked from CWallet to LegacyScriptPubKeyMan
* Move Unlock implementation to LegacyScriptPubKeyMan
* Replace LegacyScriptPubKeyMan::vMasterKey with GetDecryptionKey()
* Add GetEncryptionKey() and HasEncryptionKeys() to WalletStorage
* Add bounds checks in key_io before DecodeBase58Check
* Pass a maximum output length to DecodeBase58 and DecodeBase58Check
* test: re-enable CLI test support by using EncodeDecimal in json.dumps()
* GUI: Refactor formatServicesStr to warn when a ServicesFlag is missing
* Bugfix: GUI: Recognise NETWORK_LIMITED in formatServicesStr
* tests: Add fuzzing harnesses for various JSON/univalue parsing functions
* tests: Add fuzzing harnesses for various number parsing functions
* tests: Add ParseScript(...) (core_io) fuzzing harness
* tests: Add ParseHDKeypath(...) (bip32) fuzzing harness
* tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus
* doc: Add release notes for 17447
* rpc: add missing newline in analyzepsbt rpcresult
* Adds GitHub Action workflow which duplicates AppVeyor job.
* depends: don\'t configure xcb_proto
* tests: Add option --valgrind to run nodes under valgrind in the functional tests
* build: Use dnl for all comments in configure.ac, rather than #
* build: Remove backticks from configure.ac
* doc: Changed MiniUPnPc link to https in dependencies.md
* test: add unit test for non-standard bare multisig txs
* Mark PSBTs spending unspendable outputs as invalid in analysis
* Have a PSBTAnalysis state that indicates invalid PSBT
* tests: Add fuzzing harness for various functions consuming only integrals
* tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus
* tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus
* tests: Add fuzzing harness for various CTxOut related functions
* tests: Add fuzzing harness for various CTxIn related functions
* tests: Test serialisation as part of deserialisation fuzzing. Test round-trip equality where possible. Avoid code repetition.
* util: Update tinyformat to upstream
* tests: Use a default of supports_cli=True (instead of supports_cli=False)
* tests: Mark functional tests not supporting bitcoin-cli (--usecli) as such
* qt: Normalize placeholder to avoid using \"address book\" in sendcoinsentry
* gui: Move static placeholder texts to forms
* depends: Support for S390X targets
* depends: Support for 64-bit POWER targets
* gitian: fixed SC2001 regex
* ui: disable 3rd-party tx-urls when wallet disabled
* gui: disable File->CreateWallet during startup
* lcov: filter /usr/lib64 from coverage report
* lcov: filter depends from coverage report
* depends: don\'t use OpenGL in Qt on macOS
* Make env data logging optional
* tests: Fix fuzzing harness for descriptor parsing (descriptor_parse)
* Fixed wget call in gitian-build.py
* depends: add ability to skip building qrencode
* ci: Remove trusty build
* ci: Add CentOS 7 build
* Key pool: Fix omitted pre-split count in GetKeyPoolSize
* Key pool: Change ReturnDestination interface to take address instead of key
* Key pool: Move LearnRelated and GetDestination calls
* Add OutputType and CPubKey parameters to KeepDestination
* Rename Keep/ReturnKey to Keep/ReturnDestination and remove the wrapper
* Key pool: Move CanGetAddresses call
* pubkey: Assert CPubKey\'s ECCVerifyHandle precondition
* tests: Add deserialization fuzzing harnesses
* tests: Add corpora suppression (FUZZERS_MISSING_CORPORA) for fuzzers missing in https://github.com/bitcoin-core/qa-assets/tree/master/fuzz_seed_corpus
* build: pass -dead_strip_dylibs to ld on macOS
* tests: Add initialization order fiasco detection in Travis
* Move events_hasher into RNGState()
* test: Wait until mempool is loaded in wallet_abandonconflict
* random: mark RandAddPeriodic and SeedPeriodic as noexcept
* doc: correct random.h docs after #17270
* util: remove unwanted fields from bitcoin-cli -getinfo
* ci: Remove unparseable lines from supp file for old xenial clang tsan
* ci: ubsan report_error_type=1 and add suppressions
* test: Print stderr when subprocess fails
* test: Use char instead of unsigned char
* ci: Bump to clang-8 for asan build to avoid segfaults on ppc64le
* Seed RNG with precision timestamps on receipt of net messages.
* doc: rename wallet-tool references to bitcoin-wallet
* build: Fix configure report about qr
* script: Add Keyserver to verify-commits README
* test: add unit test for non-standard txs with wrong nVersion
* Add unit test for DB creation with unicode path
* ci: Remove use of cd
* ci: Remove unmaintained extended_lint
* scripted-diff: Use ci DEPENDS_DIR, remove BASE_BUILD_DIR
* ci: Add DEPENDS_DIR variable, Add documentation for folders
* scripted-diff: Move various folders to ci scratch dir
* ci: Print free disk space
* test: Properly deserialize integers in little-endian
* ci: Run functional tests on s390x
* Fix origfee return for bumpfee with feerate arg
* Use correct C++11 header for std::swap()
* Fix comparison function signature
* tests: Add a test for funding with sufficient preset inputs and subtractFeeFromOutputs
* Default to bnb_used = false as there are many cases where BnB is not used
* depends: only use dbus with qt on linux
* [gui] send: show watch-only balance in send screen
* [test] qt: add send screen balance test
* net: Fix uninitialized read in ProcessMessage(...)
* util: make ScheduleBatchPriority advisory only
* script: Enable SC2001 rule for Gitian scripts
* script: Enable SC2155 rule for Gitian scripts
* script: Enable SC2006 rule for Gitian scripts
* script: Lint Gitian descriptors with ShellCheck
* test: add rpc getaddressinfo labels test coverage
* test: add listlabels test in wallet_labels.py
* rpc: add getaddressinfo code documentation
* rpc: update getaddressinfo RPCExamples to bech32
* rpc: clarify label vs labels in getaddressinfo RPCHelpman
* rpc: improve getaddressinfo RPCHelpman content
* rpc: improve getaddressinfo RPCHelpman formatting
* gui: remove macOS start on login code
* qt: Use proper class for Ui::ReceiveCoinsDialog
* qt: Fix class name of Ui::ModalOverlay
* wallet: replace raw pointer with const reference in AddrToPubKey
* Add s390x tests to travis
* Add ci script to install on s390x
* Appveyor install libevent[thread] vcpkg
* build: Add NX workaround for RV64
* build: Allow export of environ symbols
* doc: add glibc 2.17 requirement to release-notes
* build: Bump minimum versions in symbol checker
* build: Disallow dynamic linking against c++ library
* doc: Add historical release notes for 0.19.0.1
* Put bounds on the number of CPUID leaves explored
* Fix CPUID subleaf iteration
* refactor: Nuke coincontrol circular dependency
* Added libtest_util library to msvc build configuration.
* doc: Update and improve Developer Notes
* wallet: Make -walletdir network only
* wallet_importmulti: use addresses of the same type as being imported
* build: set minimum supported macOS to 10.12
* Remove out of date comments for CalculateMaximumSignedTxSize
* wallet: LearnRelatedScripts only if KeepDestination
* wallet: Lock address type in ReserveDestination
* [gui] watch-only wallet: copy PSBT to clipboard
* [wallet] add fillPSBT to interface
* [gui] send: include watch-only
* [wallet] ListCoins: include watch-only for wallets without private keys
* Refactor: Require scriptPubKey to get wallet SigningProvider
* Accumulate result UniValue in SignTransaction
* Allow BnB when subtract fee from outputs
* Use BnB when preset inputs are selected
* Fire TransactionRemovedFromMempool from mempool
* build: remove libanl.so.1 from ALLOWED_LIBRARIES
* build: Create test utility library from src/test/util/
* refactor: Remove unused COINBASE_FLAGS
* refactor: Cleanup headers from walletmodel.h
* refactor: Nuke walletmodel circular dependency
* refactor: Nuke walletmodeltransaction circular dep
* refactor: Nuke guiutil circular dependency
* refactor: Move SendCoinsRecipient in own header
* scripted-diff: Replace ::mempool with m_node.mempool in tests
* test: Replace recursive lock with locking annotations
* node: Add reference to mempool in NodeContext
* test: Use proper MAX_SCRIPT_ELEMENT_SIZE
* refactor: Use proper MAX_SCRIPT_ELEMENT_SIZE const
* wallet: Avoid showing GUI popups on RPC errors (take 2)
* ci: Extend docs
* ci: Make ci system read-only on the git work tree
* ci: Remove git from required packages on host
* ci: Make all filesystem operations inside docker
* travis: Rework CACHE_ERR_MSG
* test: add functional test for non-standard txs with too large scriptSig
* Fix segfault in allocator_tests/arena_tests
* Define ARENA_DEBUG in Travis test runs
* Fix compilation errors in support/lockedpool.cpp
* Changed tooltips of receive form to highlight difference between Label and Message
* Fixup whitespace
* scripted-diff: Rename CPubKey and CKey::
*_KEY_SIZE and COMPRESSED_
*_KEY_SIZE
* bump libevent to 2.1.11 in depends
* test: Remove libssl-dev packages from CI scripts
* test: remove lsan suppression for libcrypto
* build: remove libcrypto as internal dependency in libbitcoinconsensus.pc
* doc: Remove ssl as a required dependency from build-unix
* test: skip tool_wallet test when bitcoin-wallet isn\'t compiled
* test: skip wallet_listreceivedby test when the cli isn\'t compiled
* test: skip bitcoin_cli test when the cli isn\'t compiled
* doc: Add some better examples for scripted diff
* doc: add OpenSSL removal to release-notes.md
* ci: remove OpenSSL installation
* doc: remove OpenSSL from build instructions and licensing info
* depends: remove OpenSSL package
* build: remove OpenSSL detection and libs
* random: Remove remaining OpenSSL calls and locking infrastructure
* random: stop retrieving random bytes from OpenSSL
* random: stop feeding RNG output back into OpenSSL
* tests: Add fuzzing harness for various PSBT related functions
* doc: Remove bitness from bitcoin-qt help message and manpage
* build: use osslsigncode 2.0 in gitian
* test: fix bitcoind already running warnings on macOS
* GuessVerificationProgress: cap the ratio to 1
* fuzz: Bump timeout in test_runner to accomodate for slow arm64 CPUs
* ci: Use clang-8 for fuzzing to run on aarch64 ci systems
* Report amount of data gathered from environment
* Use thread-safe atomic in perfmon seeder
* Run background seeding periodically instead of unpredictably
* Add information gathered through getauxval()
* Feed CPUID data into RNG
* Use sysctl for seeding on MacOS/BSD
* Gather additional entropy from the environment
* Seed randomness with process id / thread id / various clocks
* [MOVEONLY] Move cpuid code from random & sha256 to compat/cpuid
* [MOVEONLY] Move perfmon data gathering to new randomenv module
* doc: minor corrections in random.cpp
* depends: qt: Fix C{,XX} pickup
* Add TheCharlatan\'s pgp key
* refactor: Remove unused signal
* [build] ./configure --enable-werror: add unused-variable
* tests: Update valgrind suppressions
* test: add unit test for non-standard txs with too large scriptSig
* Fix input size assertion in wallet_bumpfee.py
* test: Remove fragile assert_memory_usage_stable
* doc: Explain $LIB in LD_PRELOAD in gitian descriptors
* scripted-diff: Avoid hardcoded libfaketime dir in gitian
* test: check custom ancestor limit in mempool_packages.py
* rpc: Expose block height of wallet transactions
* util: Add missing headers to util/fees.cpp
* fix Typo: \"merkelRoot\" -> \"merkleRoot\"
* Moves vcpkg list to a text file and updates the appveyor job and readme to use it.
* refactor: Styling w/ clang-format, comment update
* qt: Fix missing qRegisterMetaType for size_t
* Remove unnecessary forward declaration
* doc: Add relase note for db→walletdb rename
* scripted-diff: Change `BCLog::DB` to `BCLog::WALLETDB`
* Rename `db` log category to `walletdb` (like `coindb`)
* Add settings_tests
* Deduplicate settings merge code
* Add util::Settings struct and helper functions.
* Remove includeconf nested scope
* Rename includeconf variables for clarity
* Clarify emptyIncludeConf logic
* doc: add historical 0.19.0 release notes
* ci: Guess the native host when not cross compiling
* ci: Run non-cross-compile builds natively
* ci: Run CI_WAIT only on travis
* wallet: Remove unused boost::this_thread::interruption_point
* wallet: Reuse existing batch in CWallet::SetUsedDestinationState
* wallet: Avoid recursive lock in CWallet::SetUsedDestinationState
* Remove getBlockDepth method from Chain::interface
* Remove locked_chain from GetDepthInMainChain and its callers
* Use CWallet::m_last_block_processed_height in GetDepthInMainChain
* Only return early from BlockUntilSyncedToCurrentChain if current tip is exact match
* Add block_height field in struct Confirmation
* Replace CWalletTx::SetConf by Confirmation initialization list
* Add m_last_block_processed_height field in CWallet
* Pass block height in Chain::BlockConnected/Chain::BlockDisconnected
* Remove redundant class file includes from test_bitcoin project.
* test: speed up wallet_avoidreuse.py
* test: add logging to wallet_avoidreuse.py
* test: Seed test RNG context for each test case, print seed
* [refactor] Replace global int nScriptCheckThreads with bool
* [tests] Don\'t use TestingSetup in the checkqueue_tests
* 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.
* doc: Add documentation for new test/lib
* scripted-diff: test: Move setup_common to test library
* [tests] Don\'t stop-start unnecessarily in rpc_fundrawtransaction.py
* [tests] Use -whitelist in rpc_fundrawtransaction.py
* [tests] Speed up rpc_fundrawtransaction.py
* Add missing SetupGeneration error handling in EncryptWallet
* Clean up nested scope in GetReservedDestination
* Get rid of confusing LegacyScriptPubKeyMan::TopUpKeyPool method
* Pass CTxDestination to ScriptPubKeyMan::GetMetadata
* Add EnsureLegacyScriptPubKeyMan and use in rpcwallet.cpp
* Add util_ArgParsing test
* doc: Add template for good first issues
* build: Remove install command samples
* doc: Add ShellCheck to lint tests dependencies
* cli: fix -getinfo output when compiled with no wallet
* Add missing newline in util_ChainMerge test
* rpc: Remove unused boost::this_thread::interruption_point
* logs: add timing information to FlushStateToDisk()
* logs: add BCLog::Timer and related macros
* test: Add ASSERT_DEBUG_LOG to unit test framework
* logging: Add member for arbitrary print callbacks
* test: add dumptxoutset RPC test
* devtools: add utxo_snapshot.sh
* rpc: add dumptxoutset
* coinstats: add coins_count
* add unused SnapshotMetadata class
* remove old bootstrap relevant code
* test: add \"diamond\" unit test to MempoolAncestryTests
* tests: Add fuzzing harness for Bech32 encoding/decoding
* tests: Move CaseInsensitiveEqual to test/util/str
* [tools] update nNextInvSend to use mockable time
* [tools] add PoissonNextSend method that returns mockable time
* TestShell: Return self from setup()
* TestShell: Simplify default setting of num_nodes
* Doc: Remove backticks in test-shell.md code block
* TestShell: Fix typo in TestShell warning printout
* depends: move README.md Android instructions to a separate section
* depends: update README.md with working Android targets and API levels
* Expand on wallet_balance.py comment from https://github.com/bitcoin/bitcoin/pull/16766\\#issuecomment-527563982
* Update release notes to mention changes to IsTrusted and impact on wallet
* Systematize style of IsTrusted single line if
* update variable naming conventions for IsTrusted
* Update comment in test/functional/wallet_balance.py
* Update wallet_balance.py test to reflect new behavior
* Reuse trustedParents in looped calls to IsTrusted
* Cache tx Trust per-call to avoid DoS
* Make IsTrusted scan parents recursively
* Fix issue with conflicted mempool tx in listsinceblock
* Add documentation for test_shell submodule
* Add TestShell class
* Move argparse() to init()
* Move assert num_nodes is set into main()
* Clear TestNode objects after shutdown
* Add closing and flushing of logging handlers
* Refactor TestFramework main() into setup/shutdown
* Remove network_event_loop instance in close()
* test: Reset global args between test suites
* replace asserts in RPC code with CHECK_NONFATAL and add linter
* test: use default address type (bech32) for wallet_bumpfee tests
* Minor refactoring to remove implied m_addr_relay_peer.
* added asserts to check m_addr_known when it\'s used
* p2p: Avoid allocating memory for addrKnown where we don\'t need it
* Refactor: Move nTimeFirstKey accesses out of CWallet
* Refactor: Move GetKeypoolSize code out of CWallet
* Refactor: Move RewriteDB code out of CWallet
* Refactor: Move SetupGeneration code out of CWallet
* Refactor: Move HavePrivateKeys code out of CWallet::CreateWalletFromFile
* Refactor: Move Upgrade code out of CWallet::CreateWalletFromFile
* Refactor: Move MarkUnusedAddresses code out of CWallet::AddToWalletIfInvolvingMe
* Refactor: Move GetMetadata code out of getaddressinfo
* Refactor: Move LoadKey LegacyScriptPubKeyMan method definition
* Refactor: Move SetAddressBookWithDB call out of LegacyScriptPubKeyMan::ImportScriptPubKeys
* refactor: Replace UnsetWalletFlagWithDB with UnsetBlankWalletFlag in ScriptPubKeyMan
* Refactor: Remove UnsetWalletFlag call from LegacyScriptPubKeyMan::SetHDSeed
* Remove SetWalletFlag from WalletStorage
* Refactor: Move SetWalletFlag out of LegacyScriptPubKeyMan::UpgradeKeyMetadata
* Refactor: Move SetAddressBook call out of LegacyScriptPubKeyMan::GetNewDestination
* Refactor: Add new ScriptPubKeyMan virtual methods
* Refactor: Declare LegacyScriptPubKeyMan methods as virtual
* MOVEONLY: Reorder LegacyScriptPubKeyMan methods
* bench: Remove redundant copy constructor in mempool_stress
* refactor: Remove redundant PSBT copy constructor
* travis: Run unit and functional tests on native arm
* ci: Remove ccache requirement on the host
* test: Add RegTestingSetup to setup_common
* test: move-only ComputeFilter to src/test/lib/blockfilter
* doc: Fix some misspellings
* Android: add all arch support
* depends: export dynamic JNI symbols from static qtforandroid.a
* Qt: patch androidjnimain.cpp to make sure JNI is initialised when statically compiled
* builds: remove superfluous config_opts_aarch64_android
* Patch libevent when building for Android (fix arc4random_addrandom)
* Update bitcoin_qt.m4
* Define TARGET_OS when host is android
* Fix Android zlib cross compilation issue (https://stackoverflow.com/questions/21396988/zlib-build-not-configuring-properly-with-cross-compiler-ignores-ar)
* Add full Android build example command and instructions on getting SDK/NDK
* Add config opts and patch for aarch64_android build of Qt
* Add ranlib to android.mk hosts file (fix OSX Android NDK build)
* Add example Android host-platform-triplet and options
* Add support for building Android dependencies
* refactor: Remove addrdb.h dependency from node.h
* doc: Remove explicit network name references
* wallet: Remove left-over BIP70 comment
* Add assertion to randrange that input is not 0
* Add new mempool benchmarks for a complex pool
* test: fix script_p2sh_tests OP_PUSHBACK2/4 missing
* doc: compiling with Visual Studio is now supported on Windows
* doc: update MSVC instructions to remove Qt configuration
* test: Do not instantiate CAddrDB for static call
* QA: Add wallet_implicitsegwit to test the ability to transform keys between address types
* build: update retry to current version
* test: rm ascii art in rpc_fundrawtransaction
* test: add rpc_fundrawtransaction logging
* Replace the LogPrint function with a macro
* Squashed \'src/univalue/\' changes from 7890db99d6..5a58a46671
* Fix incorrect help-debug for -checkpoints
* log: Fix log message for -par=1
* [qa] Add shrinkdebugfile=0 to regtest bitcoin.conf
* [linter] Strip trailing / in path for git-subtree-check
* Fix missing strFailReason in CreateTransaction
* Fix misplaced AssertLockHeld
* doc: Clarify WalletStorage / Wallet relation
* Add back mistakenly removed AssertLockHeld
* Refactor: Add GetLegacyScriptPubKeyMan helper
* tests: Add fuzzer initialization (hold ECCVerifyHandle)
* nsis: Write to correct filename in first place
* refactor: Replace all uses of boost::optional with our own Optional type
* doc: Add developer note on c_str()
* [validation] Remove fMissingInputs from AcceptToMemoryPool()
* [validation] Remove unused first_invalid parameter from ProcessNewBlockHeaders()
* [validation] Remove useless ret parameter from Invalid()
* [validation] Remove error() calls from Invalid() calls
* [validation] Tidy Up ValidationResult class
* [validation] Add CValidationState subclasses
* rpc: Add generatetodescriptor
* docs: Add undefined to --with-sanitizers=fuzzer,address
* tests: Add fuzzing harness for ISO-8601 related functions
* cli: Add \"headers\" and \"verificationprogress\" to -getinfo
* Avoid using g_rpc_node global in wallet code
* scripted-diff: Remove g_connman, g_banman globals
* Pass NodeContext, ConnMan, BanMan references more places
* MOVEONLY: Move NodeContext struct to node/context.h
* scripted-diff: Rename InitInterfaces to NodeContext
* Chainparams: Use name constants in chainparams initialization
* contrib: remove accounts from bash completion
* Fix occurences of c_str() used with size() to data()
* test: add reason checks for non-standard txs in test_IsStandard
* Refactor: Split up CWallet and LegacyScriptPubKeyMan and classes
* MOVEONLY: Move key handling code out of wallet to keyman file
* Move wallet enums to walletutil.h
* refactor: Remove redundant c_str() calls in formatting
* Add roundtrip and more tests to ParseISO8601DateTime and FormatISO8601DateTime
* Rename DecodeDumpTime to ParseISO8601DateTime and move to time.cpp
* doc: Doxygen-friendly CuckooCache comments
* Add override/final modifiers to V1TransportDeserializer
* Make resetting implicit in TransportDeserializer::Read()
* Remove oversized message detection from log and interface
* Force CNetMessage::m_recv to use std::move
* Use adapter pattern for the network deserializer
* Remove transport protocol knowhow from CNetMessage / net processing
* Refactor: split network transport deserializing from message container
* bench: Fix negative values and zero for -evals flag
* Avoid unused call to GuessVerificationProgress in NotifyHeaderTip
* util: Add CHECK_NONFATAL and use it in src/rpc
* gui: disable font antialiasing for QR image address
* gui: Fix start timer from non QThread
* http: add missing header bootlegged by boost < 1.72
* gui: Make polling in ClientModel asynchronous
* compat: remove bswap_
* check on macOS
* build: skip building OpenSSL lib_ssl
* build: remove OpenSSL from Qt build
* build: remove EVP_MD_CTX_new detection
* build: remove SSL lib detection
* gui: Update BIP70 support message
* build: remove BIP70 entries from macOS Info.plist
* gui: remove payment request file handling from OpenURI dialog
* Remove BIP70 Support
* docs: remove protobuf from docs
* build: remove protobuf from depends
* [net] SocketHandler: log peer id for close and disconnect
* tests: Add fuzzing harness for various CScript related functions
* [validation] Remove unused cacheSigStore from CheckInputsFromMempoolAndCache
* Add unit testing for the CompressScript functions
* consensus: Explain why fCheckDuplicateInputs can not be skipped and remove it
* depends: fix boost mac cross build with clang 9+
* Continue relaying transactions after they expire from mapRelay
* refactor: Remove unused CExt{Pub,}Key (de)serialization methods
* ci: Disable functional tests on mac host
* doc: Changed miniupnp links to https
* tests: Remove Cygwin WinMain workaround
* tests: Skip unnecessary fuzzer initialisation. Hold ECCVerifyHandle only when needed.
* gui: Fix payAmount tooltip in SendCoinsEntry
* [docs] Add release notes for removal of REJECT reasons
* [validation] Fix REJECT message comments
* [validation] Remove REJECT code from CValidationState
* [logging] Don\'t log REJECT code when transaction is rejected
* [validation] Fix peer punishment for bad blocks
* [wallet] Remove `state` argument from CWallet::CommitTransaction
* [wallet] Remove return value from CommitTransaction()
* [wallet] Add doxygen comment to CWallet::CommitTransaction()
* [wallet] Fix whitespace in CWallet::CommitTransaction()
* Add testcase to simulate bitcoin schema in leveldb
* tests: Add Parse(...) (descriptor) fuzzing harness
* tests: Allow for using non-default fuzzing initialization
* refactor: test/bench: dedup Build{Crediting,Spending}Transaction()
* Only check the hash of transactions loaded from disk
* static tooltip
* tests: Add test for loadblock option
* tests: Remove no longer needed UBSan suppressions (issues fixed). Add documentation.
* ci: Enable address sanitizer (ASan) stack-use-after-return checking
* wallet: Avoid showing GUI popups on RPC errors
* Send amount shows minimum amount placeholder
* ci: Remove redundant check for TRAVIS_OS_NAME
* doc: Document that GNU tools are required for linters
* ci: Cleanup macOS runs
* random: remove call to RAND_screen() (Windows only)
* wallet: Remove unused GetLabelName
* doc: Added instructions for how to add an upsteam to forked repo
* util: Filter out macOS process serial number
* build: pass --enable-option-checking to applicable packages
* build: only pass --disable-dependency-tracking to packages that understand it
* gui: remove OpenSSL PRNG seeding (Windows, Qt only)
* Add tests for util/vector.h\'s Cat and Vector
* Add some general std::vector utility functions
* gui: Add placeholder text to the sign message field
* gui: don\'t disable the sync overlay when wallet is disabled
* chain: Set all CBlockIndex members to null, remove SetNull helper
* doc: Describe log files + consistent paths in test READMEs
* travis: run tests on macOS native
* [rpc] Fix broken bitcoin-cli examples
* doc: correct function name in ReportHardwareRand()
* test: Fix bug in blockfilter_index_tests.
* Remove unused includes
* util: Filter control characters out of log messages
* rpc: fix -rpcclienttimeout 0 option
* tests: Add fuzzing harness for descriptor Span-parsing helpers
* [build] depends macOS: point --sysroot to SDK
* gui: Make RPCConsole::TabTypes an enum class
* [wallet] Remove pruning check for -rescan option
* [wallet] Remove package limit config access from wallet
* change wallet pointers to references in feebumper
* gui: Added label & tooltip for Verify Message labels
* [test] rename SegwitVersion1SignatureHash()
* Update macdeploy README to include correctly named `.dmg` file produced from `make deploy`
* github: Add warning for bug reports
* Disable _FORTIFY_SOURCE when enable-debug
* tests: Fix fs_tests for unknown locales
* doc: Add switch on enum example
* util: Add AllowShortCaseLabelsOnASingleLine option
* test: speed up wallet_address_types by whitelisting peers (immediate tx relay)
* test: fix \"tx-size-small\" errors after default address change
* tests: Add EvalScript(...) fuzzing harness
* tests: Add FuzzedDataProvider fuzzing helper from the Chromium project
* build: remove mingw linker workaround from win gitian descriptor
* depends: pull upstream libdmg-hfsplus changes
* depends: latest config.guess & config.sub
* test: speedup wallet_backup by whitelisting peers (immediate tx relay)
* doc: Doxygen-friendly descriptor.h comments
* build: Add README.md to DIST target
* doc: Add missing indexes/blockfilter/basic/ to doc/files.md
* doc: Add detailed info about Bitcoin Core files
* test: Fix combine_logs.py for AppVeyor build
* test: add unit tests for Span-parsing helpers
* Add documenting comments to spanparsing.h
* Abstract out some of the descriptor Span-parsing helpers
* test: add unit test for wallet watch-only methods involving PubKeys
* Add missing fields in TransactionDescriptionString and others
* MOVEONLY : move RPC wallets helpers to TransactionDescriptionString
* tests: Remove TRANSACTION_DESERIALIZE (replaced by transaction fuzzer)
* tests: Add fuzzing harness for CheckTransaction(...), IsStandardTx(...) and other CTransaction related functions
* init: Change fallback locale to C.UTF-8
* gui: Add shortcuts for tab tools
* GUI: Restore RPC Console to non-wallet tray icon menu
* build: Add variable printing target to Makefiles
* lint: Install grep and git via brew on mac for --perl-regexp
* lint: Fix shellcheck SC2155
* lint: Run the linters against Mac OS on Travis
* Show addresses for \"SendToSelf\" transactions
* ci: Run tests on arm
* [doc] fix Makefile target in benchmarking.md
* Fix bug where duplicate PSBT keys are accepted
* build: Fix #include sys/poll.h to just poll.h (without sys/)
* p2p: Remove BIP61 reject messages
* Added double quotes
* gitian: Put things in the right place to begin with
* gitian: Eliminate rename dependency
* gitian: Smaller diff with gitian-linux.yml
* gitian: Fix README inclusion in archives
* gitian: Use split-debug.sh for Win builds
* Add release note
* Update descriptors.md to include sortedmulti
* Test sortedmulti descriptor using BIP 67 tests
* Add sortedmulti descriptor and unit tests
* Always generate `bitcoinstrings.cpp` on `make translate`
* build: Remove workaround for ancient libtool
* build: Ensure a minimal version of libtool
* util: Simplify path argument for CBlockTreeDB ctor
* Set init stop timeout to 10 min
* ci: Use busybox utils for one build
* refactor: consolidate PASTE macros
* scripts: search for next position of magic bytes rather than fail
* Fix Python Docstring to include all Args.
* tests: Pass fuzzing inputs as constant references
* build: Bump gitian descriptor versions
* scripts: update copyright_header script to include additional files
* modify p2p_feefilter test to catch rounding error
* Disallow implicit conversion for CFeeRate constructor
* feefilter: Compute the absolute fee rather than stored rate to match mempool acceptance logic
* doc: Fix amount typo in release notes
* doc: move-only release notes fragments for 0.20.0
* Prevent processing duplicate payment requests
* contrib: fix minor typos in makeseeds.py
* doc: move-only: Steps for \"before major release branch-off\"
* Don\'t rename main thread at process level
* ci: Make apt-get more verbose, to debug travis timeouts
* Truly decouple wallet from chainparams for -fallbackfee
* add newline after -stdin
*
* cli: add -stdinwalletpassphrase for (slightly more) secure CLI
* add stdin helpers for password input support
* Add release note for bech32 by default in wallet
* Revert \"gui: Generate bech32 addresses by default (take 2, fixup)\"
* Change default address type to bech32
* txmempool: Make entry time type-safe (std::chrono)
* util: Add count_seconds time helper
* test: mempool entry time is persisted
* Change sendcoins dialogue Yes to Send
* doc: reset release notes after 0.19 split-off
* build: 0.19 release updates on master
* test bumpfee fee_rate argument
* make sure to update the UI when deleting a transaction
* Enable UBSan for Travis fuzzer job
* Fix block index inconsistency in InvalidateBlock()
* contrib: Remove invalid nodes from seeds list
* net: 0.19 hardcoded seeds update
* contrib: makeseeds: More fancy output
* contrib: makeseeds: Limit per network, instead of total
* contrib: makeseeds: dedup by ip,port
* contrib: makeseeds: Factor out ASN lookup
* contrib: makeseeds: Improve logging and filtering
* Make SignatureExtractorChecker private to its own file
* doc: Consolidate release notes before 0.19.0
* doc: Add missing release notes for 16383
* chainparams: Bump assumed chain params
* qa: Do not force overwrite of QT_QPA_PLATFORM on windows for gui tests
* doc: Explain QT_QPA_PLATFORM for gui tests
* util: Make thread names shorter
* doc: Remove mention of renamed mapBlocksUnlinked
* build: Installed Qt version only appears if being built
* When BIP70 is disabled, get PaymentRequest merchant using string search
* doc: Bump version in bips.md, mention bumping in release process
* refactor: Remove Qt function to disable menu icons on macOS
* Correct docstring param name.
* qa: Fix service flag comparison check in rpc_net test
* test: Avoid whitespace linting in qt translations
* qt: Periodic translations update
* doc: documents how to calculate m_assumed_blockchain_size and m_assumed_chain_state_size on the release process.
* Clarify includeWatching for fundrawtransaction
* Refresh ZeroMQ 4.3.1 patch
* Add OpenSSL termios fix for musl libc
* qt: Change default size of intro frame
* doc: Put PR template in comments
* make SaltedOutpointHasher noexcept
* build: Factor out qt translations from build system
* doc: Improve test READMEs
* Ignore old versionbit activations
* [RPC] Fix casing in getblockchaininfo to be inline with the rest of the response
* doc: Remove MSVC update step from translation process
* util: CBufferedFile fixes
* depends: qt: Fix LDFLAGS pickup
* depends: qt: Fix C{,XX}FLAGS pickup
* validation: Make GetWitnessCommitmentIndex public
* test: Remove python dead code linter
* gui: Rename address checkbox back to bech32
* ci: Remove TRAVIS env vars
* ci: Set $HOST before setting fallback values
* test: use named args for sendrawtransaction calls
* doc: improve rawtransaction code/test docs
* test: fix incorrect value in rpc_rawtransaction.py
* doc: replace outdated OpenSSL comment in test README
* doc: Improve doxygen readme navigation section
* doc: Move doxygen intro to file for USE_MDFILE_AS_MANPAGE
* travis: Disable feature_block in tsan run
* Do not query all DNS seed at once
* test: Make PORT_MIN in test runner configurable
* build: update boost macros to latest upstream
* test: Fix extra_args in wallet_import_rescan.py
* tests: Add information on how to add Vulture suppressions
* Test: Move common function assert_approx() into util.py
* [doc] update brew instruction for doxygen
* doc: Fix doxygen comment for SignTransaction in rpc/rawtransaction_util
* refactoring: move ReplayBlocks under CChainState
* refactoring: move LoadChainTip to CChainState method
* doc: fix CChainState::ActivateBestChain doc
* Update tx-size-small comment with relevant CVE disclosure
* test: Remove unused connect_nodes_bi
* scripted-diff: test: Replace connect_nodes_bi with connect_nodes
* test: Use connect_nodes when connecting nodes in the test_framework
* test: Reformat python imports to aid scripted diff
* test: lint: Add DisabledOpcodeTemplates to whitelist
* test: Add test for default maxfeerate in sendrawtransaction
* wallet/rpc: Use the default maxfeerate value as BTC/kB
* Include cstring for sanity_test_fdelt if required
* [moveonly] Split glibc sanity_test_fdelt out
* Test that joinpsbts randomly shuffles the inputs
* Shuffle inputs and outputs after joining psbts
* [refactor] Rewrite AcceptToMemoryPoolWorker() using smaller parts
* New regression testing for CVE-2018-17144, CVE-2012-2459, and CVE-2010-5137.
* Added comments referencing multiple CVEs in tests and production code.
* depends: zlib: Move toolchain options to configure
* build: remove unnecessary qt xcb patching
* build: remove unnecessary macOS qt patching
* test: add some unit tests for merkle.cpp
* Add python bech32 impl round-trip test
* test: Bump timeouts in slow running tests
* doc: Fix whitespace errs in .md files, bitcoin.conf, Info.plist.in, and find_bdb48.m4
* qt: Run \"make translate\" in ./src
* test: Add notes on how to generate data/wallets/high_minversion
* test: Establish only one connection between nodes in rpc_invalidateblock
* doc: add comments clarifying how local services are advertised
* doc: move-only ActivateBestChain doxygen comment to header
* doc: ActivateBestChainStep return value
* build: make protobuf optional in depends
* doc: clarify protobuf build requirements
* gui: fix autofocus in CreateWalletActivity::askPassphrase()
* gui: fix passphrase labels/tooltip in createwalletdialog/askpassphrasedialog
* gui: rename encrypt(), blank(), and askPasshprase()
* bitcoin-wallet: Add a missing closing parenthesis in the help
* test: improve gettransaction test coverage
* rpc: fix regression in gettransaction
* Qt: advise users not to switch wallets when opening a BIP70 URI.
* [wallet] Rename \'decode\' argument in gettransaction method to \'verbose\'
* Prevent UpdateTip log message from being broken up
* doc: specify protobuf as optional in build docs
* build: disable BIP70 support by default
* Elaborate on the need to re-login on Debian-based systems to use tor following usermod
* [gui] intro: enable pruning by default unless disk is big
* [gui] intro: add prune preference
* [gui] intro: inform caller if intro was shown
* [gui] add explicit prune setter
* [node] add forceSetArg to interface
* test: Test that low difficulty chain fork is rejected
* test: Pass down correct chain name in tests
* tests: rename \'test_getnetworkinginfo\' in \'test_getnetworkinfo\'
* tests: add a test for the \'servicesnames\' RPC field
* Added libbitcoin_qt and bitcoin-qt to the msbuild configuration.
* signrawtransaction
*: improve error for partial signing
* signrawtransactionwithkey: better error messages for bad redeemScript/witnessScript
* depends: Bump QT to LTS release 5.9.8
* Testchains: Qt: Simplify network/chain styles
* Testchains: Generic selection with -chain= in addition of -testnet and -regtest
* doc: add a release note for the new field in \'getpeerinfo\' and \'getnetworkinfo\'
* rpc/net: decode the services flags in a new entry
* scripts: filter more qt plugins we don\'t use in macdeployqtplus
* scripts: misc cleanups in macdeployqtplus
* scripts: use format() in macdeployqtplus
* scripts: add type annotations to macdeployqtplus
* log: harmonize bitcoind server logging
* Don\'t show addresses or P2PK in decoderawtransaction
* wallet: Fix segmentation fault in CreateWalletFromFile
* test: Print both messages on failure in assert_raises_message
* wallet: Fix documentation around WalletParameterInteraction
* doc: Add issue templates for bug and feature request
* Escape ampersands (&) in wallet names in Open Wallet menu
* HTML escape address labels in more dialogs and notifications
* HTML escape the wallet name in more dialogs and notifications
* qa: Check scantxoutset result against gettxoutsetinfo
* rpc: Improve scantxoutset response and help message
* refactor: Cleanup walletinitinterface.h
* GUI: Remove unused menu items for Windows and Linux
* Disconnect peers violating blocks-only mode
* doc: improve comments relating to block-relay-only peers
* Don\'t relay addr messages to block-relay-only peers
* Add 2 outbound block-relay-only connections
* Add comment explaining intended use of m_tx_relay
* Check that tx_relay is initialized before access
* [refactor] Change tx_relay structure to be unique_ptr
* [refactor] Move tx relay state to separate structure
* Remove unused variable
* Add Create Wallet menu action
* Expose wallet creation to the GUI via WalletController
* Add CreateWalletDialog to create wallets from the GUI
* Optionally allow AskPassphraseDialog to output the passphrase
* gui: Refactor OpenWalletActivity
* contrib: guix: Remove ssp spec file hack
* contrib: guix: More robust search paths, add checks
* Conservatively accept RBF bumps bumping one tx at the package limits
* Refactor rawtransaction_util\'s SignTransaction to have previous tx parsing be separate
* refactor: Avoid locking cs_main in ProcessNewBlockHeaders
* Add a test wallet_reorgsrestore
* Modify wallet tx status if has been reorged out
* Remove SyncTransaction for conflicted txn in CWallet::BlockConnected
* Encapsulate tx status in a Confirmation struct
* Assert that the HRP is lowercase in Bech32::Encode
* test: Remove incorrect and unused try-block in assert_debug_log
* devtools: Accomodate block-style copyright blocks
* lint: Bump flake8 to 3.7.8
* lint: Disable flake8 W504 warning
* test/contrib: Fix invalid escapes in regex strings
* Make lint-includes.sh work from any directory
* Avoid unnecessary \"Synchronizing blockheaders\" log messages
* wallet: Translate all initErrors in CreateWalletFromFile
* util: Make util/error bilingual_str (refactor)
* gui: Update English source translation
* gui: Update transifex slug for 0.19
* doc: Add release note for the new gettransaction argument
* tests: Add a new functional test for gettransaction
* gettransaction: add an argument to decode the transaction
* Remove unused fScriptChecks parameter from CheckInputs
* qt: Replace objc_msgSend with native syntax
* Check for codespell in lint-spelling.sh
* wallet: Use wallet name instead of pointer on unload/release
* [qt] Change uninstall icon on Windows
* qt: Replace QFontMetrics::width() with TextWidth()
* wallet: extract PubKey from P2PK script with Solver
* [doc] chain: Declare BLOCK_VALID_HEADER reserved
* qt: Remove obsolete QModelIndex::child()
* Add window final block height to getchaintxstats
* qt: Remove QSignalMapper from TransactionView
* qt: Remove QSignalMapper from RPCConsole
* Add log output during initial header sync
* qt: Replace obsolete functions of QDesktopWidget
* qt: Add TextWidth() wrapper
* Added the bench_bitcoin project to the list automatically produced by the msvc-autogen python script.
* doc: Delete stale URL in test README
* Replace obsolete functions of QSslSocket
* ci: Move CCACHE_DIR and test_runner tmp dir into ./ci/scratch/
* ci: Pass down $MAKEJOBS to test_runner.py
* Unrecommend making config file owned by bitcoin
* Set ProtectHome in systemd service file
* Chgrp config dir to bitcoin in systemd service
* Improve clarity of systemd service file comments
* doc: add default bitcoin.conf locations
* doc: Tidy up shadowing section
* 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.
* Add warning messages to the debug window
* lint: Catch use of [] or {} as default parameter values in Python functions
* Avoid using mutable default parameter values
* qa: Relax so that the subscriber is ready before publishing zmq messages
* test: add executable flag for wallet_watchonly.py
* move-only: move coins statistics utils out of RPC
* doc: Add spacing to command in translation_process.md
* doc: Update labels in CONTRIBUTING.md
* Support serialization of std::vector
* [Doc] Add documentation for the new whitelist permissions
* qa: Test ZMQ notification after chain reorg
* qa: Refactor ZMQ test
* doc: Add note regarding ZMQ block notification
* scripts: move update-translations.py to maintainer-tools repo
* depends: zeromq: disable draft classes and methods
* depends: xproto: configure flags cleanup
* depends: qrencode: configure flags cleanup
* depends: fontconfig: configure flags cleanup
* depends: libxcb: configure flags cleanup
* depends: libXau: configure flags cleanup
* Release notes: add previously undocumented changes
* Release notes: edit previously-detached notes
* Doc: move detached release notes into release-notes.md
* gui: Ensure tx send error highlight is visible
* packages.md: document depends build targets
* Clarify need to specify --prefix with depends
* gui: remove unused PlatformStyle::TextColorIcon
* build: update RapidCheck Makefile
* Make descriptor test deterministic
* rpc: Use Join helper in rpc/util
* util: Add Join helper to join a list of strings
* refactor: replace qLowerBound & qUpperBound with std:: upper_bound & lower_bound
* refactor: replace qSort with std::sort
* refactor: replace qStableSort with std::stable_sort
* QA: fix rpc_setban.py race
* Fix Char as Bool in interfaces
* build: ignore macOS make deploy artefacts & add them to clean-local
* doc: add release-notes for getmempoolentry weight field addition
* qa: Add RPC tests for weight in mempool entry
* RPC: add weight to mempool entry output
* build: Remove src/obj directory from repository
* doc: initial RapidCheck property-based testing documentation
* Enable all tests in feature_config_args.py
* Use CheckDataDirOption() for code uniformity
* Fix datadir handling in bitcoin-cli
* Fix datadir handling in bitcoin-qt
* Fix datadir handling in bitcoind
* Add CheckDataDirOption() function
* Return absolute path early in AbsPathForConfigVal
* ci: Add environment files for all settings
* [doc] mention whitelist is inbound, and applies to blocksonly
* scripts: remove github-merge.py
* Bugfix: QA: Run tests with UPnP disabled
* Reformat p2p_permissions.py
* [Fix] The default whitelistrelay should be true
* doc: Add ZMQ dependencies to Fedora build
* Additional tests for other failure cases
* Check error messages in descriptor tests
* Give more errors for specific failure conditions
* Return an error from descriptor Parse that gives more information about what failed
* build: echo prop tests status during build
* Add unmodified-but-with-checksum to getdescriptorinfo
* Factor out checksum checking from descriptor parsing
* Add test for setban
* [Fix] Allow connection of a noban banned peer
* ci: Set --ansi in test_runner
* util: Move ResolveErrMsg to util/error
* qt: Remove menu icons
* tests: functional watch-only wallet tests
* doc: add release note for include_watchonly default changes
* rpcwallet: document include_watchonly default for watchonly wallets
* rpcwallet: default include_watchonly to true for watchonly wallets
* Fix spelling error chache -> cache.
* [docs] Add release notes for burying bip 9 soft fork deployments
* [tests] Add coverage for the content of getblockchaininfo.softforks
* [Consensus] Bury segwit deployment
* [Consensus] Bury CSV deployment height
* [rpc] Tidy up reporting of buried and ongoing softforks
* ci: Add note that this assumes a fresh git clone
* ci: Use ./ci/ on non-travis host
* ci: Remove dependence on travis, use it as fallback env
* ci: Add retry
* ci: Rename .travis/ to ./ci/
* Cover UTXO set access with lock annotations
* refactor: have CCoins
* data managed under CChainState
* refactor: pcoinsTip -> CChainState::CoinsTip()
* lint: Add false positive to python dead code linter
* test: Test p2sh-witness and bech32 in wallet_import_rescan
* test: Replace fragile \"rng\" with call to random()
* test: Generate one block for each send in wallet_import_rescan
* 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
* Give QApplication dummy arguments
* doc: Fix typos in COPYRIGHT
* autoconf: Sane --enable-debug defaults.
* Add functional tests for flexible whitebind/list
* Replace the use of fWhitelisted by permission checks
* Do not disconnect peer for asking mempool if it has NO_BAN permission
* Make whitebind/whitelist permissions more flexible
* Add test for AddTimeData
* rpc: Fix getblocktemplate CLI example (#16594)
* descriptor: fix missed m_script_arg arg renaming in #14934
* [doc] descriptor: explain GetPubKey() usage with cached public key
* scripted-diff: rename DescriptorImpl m_script_arg to m_subdescriptor_arg
* Add missing contributor to release notes
* build: disable libxcb extensions
* travis: Bump timeout from 50 minutes to 90
* Moved and renamed hash256 from util.py to zmq_interface.py
* doc: Mention other ways to conserve memory on compilation
* util: refactor upper/lowercase functions
* [wallet] Restore confirmed/conflicted tx check in SubmitMemoryPoolAndRelay()
* [wallet] restore coinbase check in SubmitMemoryPoolAndRelay()
* sipsorcery gitian key.
* Remove redundant WalletController::addWallet slot
* doc: Update Markdown syntax for bdb packages
* build: disable libsecp256k1 benchmarks
* Remove p2pEnabled from Chain interface
* doc: Add historical release notes for 0.18.1
* test: only include and init openSSL where it\'s actually used
* test: Explain why -whitelist is used in feature_fee_estimation
* test: Format feature_fee_estimation with pep8
* doc: Fix grammar and punctuation in developer notes
* gui: Generate bech32 addresses by default (take 2, fixup)
* test: Add test for BIP30 duplicate tx
* test: Properly serialize BIP34 coinbase height
* test: Avoid hardcoding the chain name in combine_logs
* test: Adapt test framework for chains other than \"regtest\"
* test: Fix “local variable \'e\' is assigned to but never used”
* [qa] Test that getdata requests work as expected
* net: Use mockable time for tx download
* [doc] Update and extend benchmarking.md
* test: Add missing sync_blocks to feature_pruning
* [build] .gitignore add Qt Creator Makefile.am.user
* test: Make tests arg type specific
* Revamp option negating policy
* Replace IsArgKnown() with FlagsOfKnownArg()
* Use ArgsManager::NETWORK_ONLY flag
* Remove unused m_debug_only member from Arg struct
* scripted-diff: Use ArgsManager::DEBUG_ONLY flag
* scripted-diff: Use Flags enum in AddArg()
* Add Flags enum to ArgsManager
* Refactor InterpretNegatedOption() function
* refactoring: Check IsArgKnown() early
* Tidy up BroadcastTransaction()
* Remove unused submitToMemoryPool and relayTransactions Chain interfaces
* Remove duplicate checks in SubmitMemoryPoolAndRelay
* Introduce CWalletTx::SubmitMemoryPoolAndRelay
* Add BroadcastTransaction utility usage in Chain interface
* [test] walletcreatefundedpsbt: check RBF is disabled when -walletrbf=0
* [doc] rpc: remove \"fallback to\" from RBF default help
* [rpc] walletcreatefundedpsbt: use wallet default RBF
* Test: Set -acceptnonstdtxn in feature_fee_estimation
* test: Add -acceptnonstdtxn to self.extra_args[3]
* test: Bump rpc_timeout in feature_dbcrash
* Suppress output in test_bitcoin for expected errors
* test: Fail early on disconnect in mininode.wait_for_
*
* gui: Remove unused RPCConsole::tabFocus
* Allow createwallet to take empty passwords to make unencrypted wallets
* wallet: Drop unused OldKey
* doc: add note on precedence of options in bitcoin.conf
* test: Split fundrawtx test into subtests
* test: Make local symbols in run_test members
* refactor : use RelayTransaction in BroadcastTransaction utility
* doc: Add release note for the deprecated totalFee option of bumpfee
* 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.
* extract min & max depth onto coin control
* [wallet] Remove CMerkleTx serialization logic
* [wallet] Flatten CWalletTx class hierarchy
* [wallet] Move CMerkleTx functions into CWalletTx
* txmempool: Remove unused default value MemPoolRemovalReason::UNKNOWN
* tests: Switch one of the Travis jobs to an unsigned char environment (-funsigned-char)
* Specify AM_CPPFLAGS for ZMQ.
* Updated python command in readme so it will work on systems that have both python2 and 3 installed.
* Add setting as known type
* doc: update labels in CONTRIBUTING.md
* wallet: Rename CWalletKey to OldKey
* wallet: Enumerate walletdb keys
* qa: fix deprecated log.warn in feature_dbcrash test
* [mempool] log correct messages when CPFP fails
* wallet: Recognize -disablewallet option early
* Update configure to reject unsafe miniUPnPc API ver
* doc: Add release notes for 15993
* Align formatting with clang-format
* Use PACKAGE_NAME in UPnP description
* Drop support of insecure miniUPnPc versions
* Use switch on status in RpcWallet
* Return error for ignored passphrase through disable private keys option
* Use strong enum for WalletCreationStatus
* Place out args at the end for CreateWallet
* doc: remove line numbers from qt package links
* doc: fix typo in bitcoin_qt.m4 comment
* build: remove jpeg lib check from bitcoin_qt.m4
* build: disable libjpeg in qt
* rpc: sendrawtransaction unconditionality/privacy note
* build: Treat -Wswitch as error when --enable-werror
* Trivial: add missing space
* [qa] Ensure we don\'t generate a too-big block in p2sh sigops test
* Exclude depends/Makefile in .gitignore
* Remove ReadVersion and WriteVersion
* Log the actual wallet file version
* Remove nFileVersion from CWalletScanState
* Get rid of PendingWalletTx class.
* Remove wallet settings from chainparams
* Add RPC bumpfee totalFee deprecation test
* deprecate totalFee argument in bumpfee RPC call
* Have importwallet use ImportPrivKeys and ImportScripts
* Optionally allow ImportScripts to set script creation timestamp
* Have importaddress use ImportScripts and ImportScriptPubKeys
* Have importpubkey use CWallet\'s ImportScriptPubKeys and ImportPubKeys functions
* Have importprivkey use CWallet\'s ImportPrivKeys, ImportScripts, and ImportScriptPubKeys
* Log when an import is being skipped because we already have it
* Change ImportScriptPubKeys\' internal to apply_label
* depends: disable unused Qt features
* [qa] Fix race condition in example_test.py
* doc: Remove downgrading warning in release notes, per 0.18 branch
* [qa] Test disconnect block failure -> shutdown
* [validation] Crash if disconnecting a block fails
* scripted-diff: Make translation bilingual
* Add bilingual message type
* Refactor out translation.h
* test: Skip flaky p2p_invalid_messages test on macOS
* Call node->initError instead of InitError from GUI code
* init: Use InitError for all errors in bitcoind/qt
* depends: qt: Patch to remove dep on libX11
* gitignore: Actually pay attention to depends patches
* symbol-check: Disallow libX11-
*.so.
* shared libraries
* depends: libXext isn\'t needed by anyone
* build-aux: Remove check for x11-xcb
* depends: libX11: Make package headers-only
* depends: qt: Explicitly stop using Xlib/libX11
* depends: xproto is only directly needed by libXau
* move-onlyish: move CCoinsViewErrorCatcher out of init.cpp
* travis: Print memory and number of cpus
* [mempool] Allow one extra single-ancestor transaction per package
* net: Make poll in InterruptibleRecv only filter for POLLIN events. poll should block until there is data to be read or the timeout expires.
* test: remove redundant setup in addrman_tests
* Add release notes for DEFAULT_BLOOM change
* Move DEFAULT_PEERBLOOMFILTERS from validation.h to net_processing.h
* Disable bloom filtering by default.
* QA: Fix race condition in wallet_encryption test
* Fix autostart filenames on Linux
* fix: tor: Call event_base_loopbreak from the event\'s callback
* doc: describe how to pass wildcard names to test runner
* test: enable passing wildcards with path to test runner
* Restrict lifetime of ReserveDestination to CWallet::CreateTransaction
* CreateTransaction calls KeepDestination on ReserveDestination before success
* test: Require standard txs in regtest
* test: Add test that mainnet requires standard txs
* chainparams: Remove unused fMineBlocksOnDemand
* refactoring: remove mapBlockIndex global
* refactoring: make pindexBestInvalid internal to validation.cpp
* refactoring: add block_index_candidates arg to LoadBlockIndex
* refactoring: move block metadata structures into BlockManager
* qa: Add --filter option to test_runner.py
* Remove unused bits from the service flags enum
* docs: Improve netbase comments
* TEST: Replace hard-coded hex tx with classes
* test: rpc_users: Make variable names more clear.
* test: rpc_users: Also test rpcauth.py with specified password.
* test: rpc_users: Add function for testing auth params.
* test: rpc_users: Add function for auth\'d requests.
* contrib: guix: Additional clarifications re: substitutes
* contrib: guix: Various improvements.
* contrib: guix: Clarify SOURCE_DATE_EPOCH.
* contrib: Add deterministic Guix builds.
* Move WatchOnly stuff from SigningProvider to CWallet
* Remove CCryptoKeyStore and move all of it\'s functionality into CWallet
* Move various SigningProviders to signingprovider.{cpp,h}
* Move KeyOriginInfo to its own header file
* scripted-diff: rename CBasicKeyStore to FillableSigningProvider
* Move HaveKey static function from keystore to rpcwallet where it is used
* Remove CKeyStore and squash into CBasicKeyStore
* Add HaveKey and HaveCScript to SigningProvider
* Add ChaCha20Poly1305AATTBitcoin AEAD benchmark
* Add ChaCha20Poly1305AATTBitcoin tests
* Add ChaCha20Poly1305AATTBitcoin AEAD implementation
* Move wallet creation out of the createwallet rpc into its own function
* Remove redundant pre-TopUpKeypool checks
* test: Add test for maxtxfee option
* wallet: Remove unreachable code in CreateTransaction
* wallet: Fix -maxtxfee check by moving it to CWallet::CreateTransaction
* depends: expat 2.2.7
* Update doc and CI config
* Disable other targets when enable-fuzz is set
* Add GetNewChangeDestination for getting new change Destinations
* Replace CReserveKey with ReserveDestinatoin
* Add GetNewDestination to CWallet to fetch new destinations
* rpc: switch to using RPCHelpMan.Check()
* Make the RPCHelpMan aware of JSONRPCRequest and add Check() helper
* rpc: migrate JSONRPCRequest functionality into request.cpp
* rpc: fix RPC help requirements for getblocktemplate
* qt: Assert QMetaObject::invokeMethod result
* gui: Fix missing qRegisterMetaType(WalletModel
*)
* Delete error-prone CScript constructor
* Add Travis check for single parameter constructors not marked \"explicit\"
* bench: Benchmark blockToJSON
* util: No translation of `Bitcoin Core` in the copyright
* qt: Run «make translate» in ./src/
* scripted-diff: Avoid passing PACKAGE_NAME for translation
* build: Stop translating PACKAGE_NAME
* refactor: Rename getWallets to getOpenWallets in WalletController
* gui: Sort wallets in open wallet menu
* test: Tool wallet test coverage for unexpected writes to wallet
* test: Split tool_wallet.py test into subtests
* test: Add log messages to test/functional/tool_wallet.py
* build: prune dbus from depends
* Add logpath description for getrpcinfo
* doc: Include static members in Doxygen
* docs: add reduce-memory.md
* Remove unused guard
* [build]: use #if HAVE_SYSTEM instead of defined(HAVE_SYSTEM)
* [docs] Add release notes for PR 15427
* [RPC] add new utxoupdatepsbt arguments to the CRPCCommand and CPRCConvertParam tables
* [build]: check std::system for -[alert|block|wallet]notify
* [build] MSVC: set HAVE_SYSTEM for desktop apps
* [build] detect std::system or ::wsystem
* [MSVC] Copy build output to src/ automatically after build
* Enable ShellCheck rules
* Use placeholder instead of key expiration date
* test: Add tests for getblockchaininfo.softforks
* bench: Move generated data to a dedicated translation unit
* rpc: Clarify that block count means height excl genesis
* Add a \'logpath\' field to getrpcinfo
* fix an undefined behavior in uint::SetHex
* qt: test: Create at most one testing setup
* Improve documentation of memory_cleanse()
* Clean up logic in memory_cleanse() for MSVC
* rpc: Allow shutdown while in generateblocks
* signrawtransactionwithkey: report error when missing redeemScript/witnessScript param
* Add antialiasing to traffic graph widget
* Fix: \"Bitcoin Core\" -> \"The Bitcoin Core\"
* Drop no-longer-relevant copyright holder name
* Include Objective-C source files
* Add support for descriptors to utxoupdatepsbt
* Abstract out UpdatePSBTOutput from FillPSBT
* Abstract out EvalDescriptorStringOrObject from scantxoutset
* Abstract out IsSegWitOutput from utxoupdatepsbt
* [test] Add test to check mempool consistency in case of reorgs
* validation: Add missing mempool locks
* txpool: Make nTransactionsUpdated atomic
* wallet_bumpfee.py: Make sure coin selection produces change
* addrdb: Remove temporary files created in SerializeFileDB. Fixes non-determinism in unit tests.
* [wallet] abort when attempting to fund a transaction above maxtxfee
* [MSVC] allow user level project customization
* build: dont compile rapidcheck with -Wall
* test: Add missing sync_all to wallet_balance test
* doc: Fix broken link in doc/build-osx.md
* Improve build-osx formatting
* [MSVC] Enable Fuzz for functional tests
* [MSVC]: Create the config.ini as part of bitcoind build
* util: Explain why the path is cached
* tests: Reduce compilation time and unneccessary recompiles by removing unused includes in tests
* Add missing ECC_Stop(); in GUI rpcnestedtests.cpp
* Remove extra CBlockIndex declaration
* Fix GCC 7.4.0 warning
* Make AbortNode() aware of MSG_NOPREFIX flag
* Add MSG_NOPREFIX flag for user messages
* Prepend the error/warning prefix for GUI messages
* test: Log to debug.log in all tests
* test: use common setup in gui tests
* test: Create data dir in BasicTestingSetup
* depends: xtrans: Configure flags cleanup.
* net: Document what happens to getdata of unknonw type
* devtools: Fetch and display ACKs at sign-off time in github-merge
* Set AA_EnableHighDpiScaling attribute early
* Use qInfo() if no error occurs
* gui: Fix open wallet menu initialization order
* docs: release note wording
* wallet/rpc: use static help text
* wallet/rpc/getbalances: add entry for \'mine.used\' balance in results
* doc: remove orphaned header in developer notes
* Change ismine to take a CWallet instead of CKeyStore
* Move ismine to wallet module
* Make and get the multisig redeemscript and destination in one function instead of two
* MSVC: Fix error in debug mode (Fix #16245)
* Failing functional tests stop lcov
* test: Add test for unknown args
* ci: Run extended tests
* doc: Remove travis badge from readme
* docs: add rapidcheck to vcpkg install list
* Cleaned up and consolidated msvc build files to allow faster builds and easier migration to vs2019.
* bitcoind: update -avoidpartialspends description to account for auto-enable for avoid_reuse wallets
* doc: release notes for avoid_reuse
* wallet: enable avoid_partial_spends by default if avoid_reuse is set
* test: add test for avoidreuse feature
* wallet/rpc: add \'avoid_reuse\' option to RPC commands
* wallet/rpc: add setwalletflag RPC and MUTABLE_WALLET_FLAGS
* wallet: enable avoid_reuse feature
* wallet: avoid reuse flags
* wallet: make IsWalletFlagSet() const
* wallet: rename g_known_wallet_flags constant to KNOWN_WALLET_FLAGS
* test: Suppress false positive leak in secure_allocator
* test: Log output even if fuzzer failed
* Don\'t use global (external) symbols for symbols that are used in only one translation unit
* logging: Add threadsafety comments
* Log early messages with -printtoconsole
* Replace OpenDebugLog() with StartLogging()
* torcontrol: Use the default/standard network port for Tor hidden services, even if the internal port is set differently
* speed up Unserialize_impl for prevector
* rpc: bugfix: Properly use iswitness in converttopsbt
* rpc: Switch touched RPCs to IsValidNumArgs
* tests: Make coins_tests/updatecoins_simulation_test deterministic
* Add example 2nd arg to signrawtransactionwithkey
* tests: Make msg_block a witness block
* test: Remove True argument to CBlock::serialize
* getrawtransaction: inform about blockhash argument when lookup fails
* Replace remaining fprintf with tfm::format manually
* scripted-diff: Replace fprintf with tfm::format
* tinyformat: Add doc to Bitcoin Core specific strprintf
* doc: Add release notes for 14897 & 15834
* doc: Rework section on ACK
* Fix spelling errors identified by codespell 1.15.0
* doc: Remove explicit mention of version from SECURITY.md
* travis: Use absolute paths for cache dirs
* travis: Fix caching issues
* devtools: Always use unabbreviated commit IDs in github-merge.py
* fixup: Fix prunning test
* gui: Enable open wallet menu on setWalletController
* Fix bug around transaction requests
* Expire old entries from the in-flight tx map
* Remove NOTFOUND transactions from in-flight data structures
* Add an explicit memory bound to m_tx_process_time
* Improve NOTFOUND comment
* scripted-diff: gitian: Use REFERENCE_DATETIME directly.
* tests: Mark unit test blockfilter_index_initial_sync as non-deterministic
* doc: update release process with SECURITY.md
* doc: clarify support in SECURITY.md
* scripts: add key for fanquake to trusted keys list
* Add test for dumping the private key imported from descriptor
* Extend importmulti descriptor tests
* Import private keys from descriptor with importmulti if provided
* Add private key derivation functions to descriptors
* depends: remove usage of TAR_OPTIONS
* build: remove export GZIP from gitian descriptors
* Include core_io.h from core_read.cpp
* Make reasoning about dependencies easier by not including unused dependencies
* [depends] boost: update to 1.70
* Do not show list for the only recipient.
* Show recipient list as detailedText of QMessageBox
* Make SendConfirmationDialog fully fledged
* Don\'t GPG sign intermediate commits with github-merge tool
* netaddress: Update CNetAddr for ORCHIDv2
* depends: libX
*: --disable-malloc0returnsnull in conf
* depends: libXext: Bump to 1.3.3 to fix _XEatDataWords
* depends: Purge libtool archives
* depends: Build secondary deps statically.
* docs: create security policy
* Add test for GCC bug 90348
* wallet: do not encrypt wallets with disabled private keys
* refactoring: IsInitialBlockDownload -> CChainState
* refactoring: FlushStateToDisk -> CChainState
* refactoring: introduce ChainstateActive()
* move-only: make the CChainState interface public
* Add riscv64 to outputs list in release-process.md
* Limit Python linting to files in the repo
* qt: fix opening bitcoin.conf via Preferences on macOS; see #15409
* Add vertical spacer
* gui: Enable console line edit on setClientModel
* gui: Set progressDialog to nullptr
* contrib: use newer config.guess & config.sub in install_db4.sh
* docs: add release note for 14954
* Squashed \'src/secp256k1/\' changes from 0b70241850..b19c000063
* util: Add type safe GetTime
* depends: add ability to skip building zeromq
* mempool: remove unused magic number from consistency check
* doc: fix/improve analyzepsbt in doc/psbt.md
* gui: move coin control OK to the right
* wallet: Pass WalletBatch to CWallet::UnsetWalletFlag
* Apply the batch treatment to CWallet::SetAddressBook via ImportScriptPubKeys
* Move some of ProcessImport into CWallet::Import
*
* Batch writes for importmulti
* Have WalletBatch automatically flush every 1000 updates
* Add AddWatchOnlyWithDB, AddKeyOriginWithDB, AddCScriptWithDB functions
* contrib: add curl as a required program in gitian-build.py
* Exceptions should be caught by reference, not by value.
* Remove global symbols: Avoid using the global namespace if possible
* configure: Add flag for enabling thread_local.
* test: Speed up cache creation
* test: Bump MAX_NODES to 12
* remove parameters -addresstype=legacy in rpc_rawtransaction test
* replace tx hash with txid in test rawtransaction
* doc: add bitcoin_config.h PACKAGE updates to release process
* build: bump bitcoin_config.h packages to v0.18
* scripted-diff: Rename LockAnnotation to LockAssertion
* Make sure the compile-time locking promises given via LockAnnotation:s hold also in practice at runtime (ifdef DEBUG_LOCKORDER)
* Move LockAnnotation to make it reflect the truth
* Move LockAnnotation from threadsafety.h (imported code) to sync.h (our code)
* [rpc] deriveaddresses: Correct descriptor checksum in RPCExamples
* wallet_balance.py: Prevent edge cases
* rpc: Mention getwalletinfo where a rescan is triggered
* refactor: Improve CRollingBloomFilter::reset by using std::fill
* bench: Add benchmark for CRollingBloomFilter::reset
* validation: Hold cs_main when reading chainActive in RewindBlockIndex
* depends: switch to secure download of all dependencies
* RPC: Hint for importmulti in help output of importpubkey and importaddress
* parameterize hard coded numbers referring to miner conf window
* Make --setup command independent
* Fix gitian-build.py --verify option
* Set/unset USE_LXC, USE_VBOX, USE_DOCKER explicitly
* Fix Docker related issues for gitian-build.py
* Filter IPv6 by ASN
* Disallow extended encoding for non-witness transactions (take 3)
* depends: add patch to common dependencies
* Give WalletModel::UnlockContext move semantics
* Allow quicker shutdowns during LoadBlockIndex()
* Show loaded wallets as disabled in open menu instead of nothing
* Document strenghtening
* Add hash strengthening to the RNG
* Ensure repos are up-to-date
* doc: Explain how to pass in non-fundamental types into functions
* init: Remove dead code in LoadChainTip
* Remove temporary method assumeLocked(). Remove LockingStateImpl. Remove redundant cs_main locks.
* wallet: Use chain.lock() instead of temporary chain.assumeLocked()
* fix static_assert for macro HAVE_THREAD_LOCAL
* docs: Add productivity notes for \"dummy rebases\"
* QA: add test for HKDF HMAC_SHA256 L32
* Add HKDF HMAC_SHA256 L=32 implementations
* QA: add test for CKey::Negate()
* CKey: add method to negate the key
* doc: Mention blocksonly in reduce-traffic.md, unhide option
* test: Add test for p2p_blocksonly
* test: Format predicate source as multiline on error
* net: Rename ::fRelayTxes to ::g_relay_txes
* Add option to create an encrypted wallet
* [doc] rpcwallet: Only fail rescan when blocks have been pruned
* scripted-diff: Bump copyright headers in wallet
* wallet: Only fail rescan when blocks have actually been pruned
* Run all lint scripts
* Do not construct out-of-bound pointers in SHA512/SHA1/RIPEMD160 code
* Fix portability issue with pthreads
* build with -fstack-reuse=none
* tests: Fail if RPC has been added without tests
* rpc: Speedup getrawmempool when verbose=true
* [docs] Add doxygen comment for CReserveKey
* [docs] Add doxygen comment for CKeyPool
* [wallet] move-only: move CReserveKey to be next to CKeyPool
* [tests] Make random seed logged and settable
* Add test for ArgsManager::GetChainName
* Add unit test NextString, ForEachNoDup functions
* util_SettingsMerge test cleanup
* [refactor] interfaces: Add missing LockAnnotation for cs_main
* doc: Clarify -blocksdir usage
* [docs] Update release-notes.md
* [docs] Update release-process.md
* rpc: faster getblockstats using BlockUndo data
* Extract ParseDescriptorRange
* Move non-linux source tarball to bitcoin-binaries
* Add ChaCha20 bench
* Add ChaCha20 encryption option (XOR)
* doc: Remove win32 from the release process
* Remove Windows 32 bit build
* GetKeyBirthTimes should return key ids, not destinations
* Replace CScriptID and CKeyID in CTxDestination with dedicated types
* docs: Clarify PR guidelines w/re documentation
* Upgrade gitian image before signing
* Doc: remove text about txes always relayed from -whitelist
* change default Python block serialization to witness
* Add LOCKS_EXCLUDED(cs_main) to LimitValidationInterfaceQueue(...) which does AssertLockNotHeld(cs_main)
* .gitignore: Don\'t ignore depends patches
* Replace deprecated Boost Filesystem function
* Remove dead code for walletFile check
* refactoring: remove unused chainActive
* scripted-diff: replace chainActive -> ::ChainActive()
* refactoring: introduce unused ChainActive()
* rename: CChainState.chainActive -> m_chain
* Lift prevector default vals to the member declaration
* [tests] Comment for why logging config is set as command-line args.
* [tests] log thread names by default in functional tests
* doc: Add release notes for 15730
* rpc: Show scanning details in getwalletinfo
* wallet: Track current scanning progress
* wallet: Track scanning duration
* rpc: Deprecate getunconfirmedbalance and getwalletinfo balances
* rpc: Add getbalances RPC
* rpcwallet: Make helper methods const on CWallet
* wallet: Use IsValidNumArgs in getwalletinfo rpc
* Install bitcoin-wallet manpage.
* GUI: Move QRImageWidget to its own file-pair
* GUI: Refactor actual QR code rendering into new QRImageWidget::setQR
* Separate reason for premature spends (coinbase/locktime)
* Assert validation reasons are contextually correct
* [refactor] Update some comments in validation.cpp as we arent doing DoS there
* [refactor] Drop unused state.DoS(), state.GetDoS(), state.CorruptionPossible()
* scripted-diff: Remove DoS calls to CValidationState
* [refactor] Prep for scripted-diff by removing some \
s which annoy sed.
* Allow use of state.Invalid() for all reasons
* Fix handling of invalid headers
* [refactor] Use Reasons directly instead of DoS codes
* CorruptionPossible -> BLOCK_MUTATED
* CorruptionPossible -> TX_WITNESS_MUTATED
* LookupBlockIndex -> CACHED_INVALID
* [refactor] Drop redundant nDoS, corruptionPossible, SetCorruptionPossible
* [refactor] Add useful-for-dos \"reason\" field to CValidationState
* Ban all peers for all block script failures
* Clean up banning levels
* [refactor] drop IsInvalid(nDoSOut)
* [refactor] Refactor misbehavior ban decisions to MaybePunishNode()
* [refactor] rename stateDummy -> orphan_state
* Drop obsolete sigops comment
* test_runner: Move pruning back to extended
* rpc: Add lock annotations to block{,header}ToJSON
* rpc: Serialize in getblock without cs_main
* rpc: Use IsValidNumArgs in getblock
* doc: Add historical release notes for 0.18.0
* Silence GCC 7 warning \"control reaches end of non-void function\" (-Wreturn-type) in psbt.cpp
* Handle the result of posix_fallocate system call
* refactor: replace isPotentialtip/waitForNotifications by higher method
* Add WITH_LOCK macro: run code while locking a mutex
* Move g_is_mempool_loaded into CTxMemPool::m_is_loaded
* rpc: Expose g_is_mempool_loaded via getmempoolinfo and /rest/mempool/info.json
* [test] combine_logs: append node stderr and stdout if it exists
* test: Add reorg test to wallet_balance
* test: Check that wallet txs not in the mempool are untrusted
* test: Add getunconfirmedbalance test with conflicts
* test: Add wallet_balance test for watchonly
* threads: add thread names to deadlock debugging message
* threads: prefix log messages with thread names
* tests: add threadutil tests
* threads: introduce util/threadnames, refactor thread naming
* disable HAVE_THREAD_LOCAL on unreliable platforms
* Add settings merge test to prevent regresssions
* [qa] test_runner: Move feature_pruning to base tests
* [tests] fix block time in feature_pruning.py
* QA/mininode: Send all headers upfront in send_blocks_and_test to avoid sending an unconnected one
* Include bitcoin_config.h in release process
* Align MSVC build options with Linux build ones
* lint: Check that all wallet args are hidden
* Remove unused OpenSSL includes to make it more clear where OpenSSL is used
* add missing debian contrib files to tarball
* Bugfix: dummywallet: Add -ignorepartialspends to list of ignored wallet options
* dummywallet: Reformat ignored wallet options list
* wallet: Avoid logging no_such_file_or_directory error
* gui: Uppercase bech32 addresses in qr codes
* remove extraneous scope
* wallet: log on rescan completion
* [wallet] Move maxTxFee to wallet
* [POLICY] Make sending to future native witness outputs standard
* rpc: Remove dependency on interfaces::Chain in SignTransaction
* Align code example with clang-format
* appveyor: Write AATTPACKAGE_NAMEAATT to config
* doc: explain AcceptToMemoryPoolWorker\'s coins_to_uncache
* configure: Initialise assembly enable_
* variables
* configure: Skip assembly support checks, when assembly is disabled
* configure: Invert --enable-asm help string since default is now enabled
* QA: feature_filelock, interface_bitcoin_cli: Use PACKAGE_NAME in messages rather than hardcoding Bitcoin Core
* QA: Avoid re-reading config.ini unnecessarily
* Add test for superfluous witness record in deserialization
* Fix missing input template by making minimal tx
* Disallow extended encoding for non-witness transactions
* Bugfix: test/functional/rpc_psbt: Correct test description comment
* Bugfix: test/functional/rpc_psbt: Remove check for specific error message that depends on uncertain assumptions
* qa: Make swap_magic_bytes in p2p_invalid_messages atomic
* Disconnect BlockNotifyGenesisWait and RPCNotifyBlockChange properly. Remove no-op CClientUIInterface::[signal_name]_disconnect.
* Resolve the qt/guiutil <-> qt/optionsmodal CD
* rpc: Speedup getaddressesbylabel
* wallet: add cachable amounts for caching credit/debit values
* test: Add missing syncwithvalidationinterfacequeue to wallet_import_rescan
* Add comments to Python ECDSA implementation
* Pure python EC
* refactor: combine Chain::findFirstBlockWithTime/findFirstBlockWithTimeAndHeight
* wallet: Remove unused import checkpoints.h
* Resolve the checkpoints <-> validation CD.
* doc: Remove upgrade note in release notes from EOL versions
* contrib: gh-merge: Use pagination to fetch all review comments
* qt: update request payment button text and tab description
* remove out-of-date comment on pay-to-witness support
* GUI: Options: Remove the upper-bound limit from pruning size setting
* GUI: Options: Set the range of pruning size before loading its value
* tests: fix outdate include in blockfilter_index_tests
* blockfilter: Update BIP 158 test vectors.
* rpc: Add getblockfilter RPC method.
* init: Add CLI option to enable block filter index.
* index: Access functions for global block filter indexes.
* test: Unit test for block filter index reorg handling.
* test: Unit tests for block index filter.
* index: Implement lookup methods on block filter index.
* index: Implement block filter index with write operations.
* serialize: Serialization support for big-endian 32-bit ints.
* blockfilter: Functions to translate filter types to/from names.
* index: Ensure block locator is not stale after chain reorg.
* index: Allow atomic commits of index state to be extended.
* refactor: Add handleNotifications method to wallet
* bench: Add wallet_balance benchmarks
* test: Add test that addmultisigaddress fails for watchonly addresses
* test: Fixup creatmultisig documentation and whitespace
* rest/rpc: Make mempoolinfo atomic
* Silence \"Test case [...] did not check any assertions\" warnings when running \"test_bitcoin --log_level=test_suite\"
* Avoid repeated log messages in tests by connecting to signal handlers (ThreadSafeMessageBox, etc.) only once
* tests: Reduce noise level in test_bitcoin output
* rpc: Validate maxfeerate with AmountFromValue
* scripted-diff: Bump copyright headers in test, bench
* scripted-diff: Rename test_bitcoin to test/setup_common
* test: Use test_bitcoin setup in bench, Add test utils
* test: Have segwit always active in (Basic)TestingSetup
* doc: Clarify RPC versioning
* [rpc] Remove the addresses field from the getaddressinfo return object
* doc: mention creating application support bitcoin folder on OSX
* doc: describe onlynet option in doc/tor.md
* Speed up deriveaddresses for large ranges
* gitignore: add
*.plist (clang-check)
* gitignore: add
*.dat
* wallet_bumpfee.py: add test for change key preservation
* add functional tests for feerate bumpfee with adding inputs
* generalize bumpfee to add inputs when needed
* [cleanup] Remove unused CReserveKey
* [rpc] simplify generate RPC
* travis: Bump second timeout to 33 minutes, Add rationale
* test: Remove unused imports
* scripted-diff: use self.sync_
* methods
* test: Pass self to test_simple_bumpfee_succeeds
* test: Add BitcoinTestFramework::sync_
* methods
* test: Pass at most one node group to sync_all
* scripted-diff: Rename sync_blocks to send_blocks to avoid name collisions and confusion
* docs: Improve netaddress comments
* Avoid redefine warning
* bitcoin-wallet tool: Drop libbitcoin_server.a dependency
* Remove access to node globals from wallet-linked code
* bitcoin-wallet tool: Drop MakeChain calls
* [wallet] Refactor CWalletTx::RelayWalletTransaction()
* [build] Move AnalyzePSBT from psbt.cpp to node/psbt.cpp
* [docs] Document src subdirectories and different libraries
* [build] Move wallet load functions to wallet/load unit
* [build] Add several util units
* [build] Move several units into common libraries
* [build] Move rpc rawtransaction util functions to rpc/rawtransaction_util.cpp
* [build] Move rpc utility methods to rpc/util
* [build] Move policy settings to new src/policy/settings unit
* [build] Move CheckTransaction from lib_server to lib_consensus
* [docs] fix comment: the return value of findFork is _not_ an ancestor when the specified block is on the active chain
* rpc: getrpcinfo docs
* rpc: RPCHelpMan: Always push_name when outer type is an object
* rpc: Add some doxygen comments to utils
* doc: Fix all typos reported by codespell
* doc: Add release notes for 15629
* qa: Add test for missing testnet section in conf file
* init: Throw error when network specific config is ignored
* [wallet] Remove unnecessary Chain::Lock parameter from ResendWalletTransactions
* [wallet] Schedule tx rebroadcasts in wallet
* [wallet] Keep track of the best block time in the wallet
* travis: Properly cache and error on timeout
* travis: Switch to ubuntu keyserver to avoid timeouts
* qa: Prevent concurrency issues reading .cookie file
* test: Properly log named args in authproxy
* Take non-importing keys into account for spendability warning in descriptor import
* Import all origin info in importmulti; even for non-importing pubkeys
* Keep full pubkeys in FlatSigningProvider::origins
* wallet: Get all balances in one call
* doc: correct bitcoinconsensus_version in shared-libraries
* Mention new descriptor RPCs in descriptors.md
* Mention new PSBT RPCs in psbt.md
* doc: Clarify sendrawtransaction::maxfeerate==0 help
* gui: Generate bech32 addresses by default
* depends: Add commands for each package for each stage
* depends: Preprocessing doesn\'t care about deps
* Add regtests for HTTP status codes.
* [qa] Overhaul p2p_compactblocks.py
* Add documentation of struct PSBTAnalysis et al
* Refactor analyzepsbt for use outside RPC code
* Move PSBT decoding functions from core_io to psbt.cpp
* Remove unused var
* net: Remove unused unsanitized user agent string CNode::strSubVer
* doc: Add release notes for 15596
* wallet: Remove unused GetLegacyBalance
* scripted-diff: wallet: Rename pcoin to wtx
* rpc: Document that minconf is an ignored dummy value
* doc: rpc-mining: Clarify error messages
* depends: latest rapidcheck, use INSTALL_ALL_EXTRAS
* [wallet] Remove ResendWalletTransactionsBefore
* [rpc] remove resendwallettransactions RPC
* qa: Check unconfirmed balance after loadwallet
* wallet: Update transactions with current mempool after load
* interfaces: Add Chain::requestMempoolTransactions
* wallet: Move CWallet::ReacceptWalletTransactions locks to callers
* Interrupt orphan processing after every transaction
* [MOVEONLY] Move processing of orphan queue to ProcessOrphanTx
* Simplify orphan processing in preparation for interruptibility
* rpc: Fix help text for signtransactionwithXXX
* test: .style.yapf: Set column_limit=160
* Comment for seemingly duplicate LIBBITCOIN_SERVER
* [tests] make pruning test faster
* [tests] style fixes in feature_pruning.py
* Remove travis_wait from lint script
* Remove unused AES-128 code
* rpc: Mention all output types in decodescript doc
* rpc: decodescript use IsValidNumArgs over hardcoded check
* rpc: Clarify decodescript RPCResult doc
* doc/dependencies: Fix typo libsrvg->librsvg
* release: Update the Windows Codesigning certificate
* [tests] Add test for wallet rebroadcasts
* doc: Add release notes for 15620
* rpc: Uncouple rpcs from maxTxFee global
* rpc: Use IsValidNumArgs over hardcoded size checks
* contrib: gh-merge: Include review comments in merge commit
* Poly1305: tolerate the intentional unsigned wraparound in poly1305.cpp
* Add Poly1305 bench
* Add Poly1305 implementation
* rpc: Rename size to vsize in mempool related calls
* docs: Add more tips to productivity.md
* [docs] remove reference to signrawtransaction in the developer docs.
* [rpc] Remove deprecated functionality message from validateaddress help
* [rpc] Remove signrawtransaction warning
* qa: mininode: Clearer error message on invalid magic bytes
* gui: Defer removeAndDeleteWallet when no modal widget is active
* refactor: Remove unused function
* Remove remaining wallet accesses to node globals
* Remove use of CCoinsViewMemPool::GetCoin in wallet code
* Remove use of CRPCTable::appendCommand in wallet code
* Remove use CValidationInterface in wallet code
* Generate log entry when blocks messages are received unexpectedly.
* Doc: update ACK description in CONTRIBUTING.md
* refactor: Expose UndoReadFromDisk in header
* Do not relay banned IP addresses
* refactor: Remove unused function
* wallet/rpc: add maxfeerate parameter to testmempoolaccept
* wallet/rpc: add maxfeerate parameter to sendrawtransaction
* test: Refactor vout fetches in rpc_rawtransaction
* depends: qt: Don\'t hardcode pwd path
* depends: tar: Always extract as yourself
* depends: Defer to Python detected by autoconf
* tests: Print remaining jobs in test_runner.py
* wallet: Improve log output for errors during load
* build: depends: Switch to python3
* Add Gitian key for droark
* Document assumptions about C++ compiler
* Add sizeof(size_t) assumptions
* [docs] release note for disabling reject messages by default
* Set \'distro\' explicitly
* depends: native_protobuf: avoid system zlib
* Enable TLS in link to chris.beams.io
* [doc] productivity: more advanced git range-diff
* [doc] devtools: mention clang-format dependency
* [doc] productivity: fix broken link
* wallet: Log and ignore errors in ListWalletDir and IsBerkeleyBtree
* rpc: return a number for estimated_feerate in analyzepsbt
* dead code: Remove dead option in HexStr conversion
* build: use full version string in setup.exe
* cli: remove duplicate wallet fields from -getinfo
* cli: replace testnet with chain and return network name as per BIP70.
* doc: remove release note fragments
* doc: correct path in build-windows.md
* [addrman] Improve collision logging and address nits
* [addrman] Ensure collisions eventually get resolved
* [net] feeler connections can be made to outbound peers in same netgroup
* [addrman] Improve tried table collision logging
* gitian: Improve error handling
* Remove sharp edge (uninitialized m_filter_type) when using the compiler-generated constructor for BlockFilter
* contrib: Bump gitian descriptors for 0.19
* gui: Drop unused return values in WalletFrame
* Make last disconnected block BLOCK_FAILED_VALID, even when aborted
* Optimization: don\'t add txn back to mempool after 10 invalidates
* Prevent callback overruns in InvalidateBlock and RewindBlockIndex
* Release cs_main during InvalidateBlock iterations
* Call InvalidateBlock without cs_main held
* Make RewindBlockIndex interruptible
* Call RewindBlockIndex without cs_main held
* Release cs_main during RewindBlockIndex operation
* Merge the disconnection and erasing loops in RewindBlockIndex
* Move erasure of non-active blocks to a separate loop in RewindBlockIndex
* Abstract EraseBlockData out of RewindBlockIndex
* doc: Move wallet lock annotations to header
* bench: Benchmark MempoolToJSON
* rpc: Pass mempool into MempoolToJSON
* fuzz: Link BasicTestingSetup (shared with unit tests)
* test: Move main_tests to validation_tests
* test: Remove useless test_bitcoin_main.cpp
* test: Add missing LIBBITCOIN_ZMQ to test_test_bitcoin_LDADD
* In lint-format-strings, open files sequentially
* Suggested interfaces::Chain cleanups from #15288
* test: Remove python3.4 workaround in feature_dbcrash
* .python-version: Specify full version 3.5.6
* scripted-diff: Update copyright in ./test
* scripted-diff: test: Remove brackets after assert
* build: Require python 3.5
* scripted-diff: test: Use py3.5 bytes::hex() method
* docs: add \"sections\" info to example bitcoin.conf
* doc: Remove pr release notes file in wrong dir
* test: Add .style.yapf
* Change brace formatting
* Remove use of IsInitialBlockDownload in wallet code
* Remove use of uiInterface.LoadWallet in wallet code
* circular-dependencies: Avoid treating some .h/.cpp files as a unit
* Remove use of AcceptToMemoryPool in wallet code
* Remove uses of InitMessage/Warning/Error in wallet code
* Remove uses of GetAdjustedTime in wallet code
* Remove use of g_connman / PushInventory in wallet code
* Remove uses of g_connman in wallet code
* Remove uses of fPruneMode in wallet code
* Remove uses of fee globals in wallet code
* Remove use of CalculateMemPoolAncestors in wallet code
* Remove use of GetTransactionAncestry in wallet code
* Remove use of GetCountWithDescendants in wallet code
* Remove use of IsRBFOptIn in wallet code
* Remove uses of CheckFinalTx in wallet code
* doc: Remove ppa from linux build instructions
* Style cleanup.
* flatfile: Unit tests for FlatFileSeq methods.
* scripted-diff: Rename CBlockDiskPos to FlatFilePos.
* Move CDiskBlockPos from chain to flatfile.
* validation: Refactor file flush logic into FlatFileSeq.
* validation: Refactor block file pre-allocation into FlatFileSeq.
* validation: Refactor OpenDiskFile into method on FlatFileSeq.
* validation: Extract basic block file logic into FlatFileSeq class.
* util: Move CheckDiskSpace to util.
* Fix lack of warning of unrecognized section names
* cirrus ci: Inital config
* tests: Add script checking for deterministic line coverage
* [wallet] remove unused GetScriptForMining
* [rpc] remove deprecated generate method
* docs: Update Transifex links
* build: Bump version to 0.18.99
* [rpc] deriveaddresses: add range to CRPCConvertParam
* modify test for memory locked in case locking pages failed at some point
* add rpc_misc.py, mv test getmemoryinfo, add test mallocinfo
* appveyor: Don\'t build debug libraries instead of \"build and delete\"
* Make deriveaddresses use stop/[start,stop] notation for ranges
* Use stop/[start,stop] notation in importmulti desc range
* Add support for stop/[start,stop] ranges to scantxoutset
* Support ranges arguments in RPC help
* Add ParseRange function to parse args of the form int/[int,int]
* test: Bump timeout on tests that timeout on windows
* msvc: Use a single file to specify the include path
* doc: Update release process for snap package
* refactor: Use RPCHelpMan::IsValidNumArgs in getrawtransaction
* doc: Remove misleading hint in getrawtransaction
* wallet: Use fsbridge::ifstream to fix Windows path issue
* gui: Fix async open wallet call order
* rpc/gui: Remove \'Unknown block versions being mined\' warning
* test: Simplify create_cache
* qa: Fix wallet_txn_doublespend issue
* qa: Always refresh stale cache to be out of ibd
* qa: Remove mocktime unless required
* 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
* rpc: Actually throw help when passed invalid number of params
* rpc: Add RPCHelpMan::IsValidNumArgs()
* Add missing #include.
* Remove unused TransactionError constants
* refactor: Drop redundant wallet reference
* Slight tweak to the verify-commits script directions
* Explain that unused mempool memory is added to -dbcache
* Added some factors that affect the dependency list
* doc: update FreeBSD build guide for 12.0
* Move all PID file stuff to init.cpp
* Make PID file creating errors fatal
* Improve PID file removing errors logging
* tests: remove byte.hex() to keep compatibility
* Address test todos by removing -txindex to nodes. Originally added when updating getrawtransaction to stop searching unspent utxos.
* [test] functional: set cwd of nodes to tmpdir
* Use a single wallet batch for UpgradeKeyMetadata
* doc: Add separate productivity notes document
* Remove manual byte editing in wallet_tx_clone func test
* Use RdSeed when available, and reduce RdRand load
* appveyor: Remove unused NDEBUG removal
* scripted-diff: Remove NDEBUG pre-define
* [Doc] add missing newline to witnessScript in listunspent help
* [Doc] importmulti: add missing description of keypool option
* msvc: add rapid check property tests
* Add checksums to descriptors.md
* Make descriptor checksums mandatory in deriveaddresses and importmulti
* Add getdescriptorinfo to compute checksum
* Descriptor checksum
* Implement analyzepsbt RPC and tests
* Move PSBT UTXO fetching to a separate method
* Figure out what is missing during signing
* Implement joinpsbts RPC and tests
* Implement utxoupdatepsbt RPC and tests
* test: txindex: interrupt threadGroup before calling destructor
* fuzz: Script validation flags
* fuzz: Move deserialize tests to test/fuzz/deserialize.cpp
* Add compile time verification of assumptions we\'re currently making implicitly/tacitly
* [rpc] mining: Omit uninitialized currentblockweight, currentblocktx
* [build] AppVeyor: clean cache when build configuration changes
* tests: Add missing cs_main locks required when accessing pcoinsdbview, pcoinsTip or pblocktree
* Import public keys in order
* Test pubkey import to keypool
* Add option to importmulti add an imported pubkey to the keypool
* Fetch keys from keypool when private keys are disabled
* Add a method to add a pubkey to the keypool
* Add release notes for importing key origin info change
* Test importing descriptors with key origin information
* Import KeyOriginData when importing descriptors
* Implement a function to add KeyOriginInfo to a wallet
* Store key origin info in key metadata
* Remove hdmasterkeyid
* Add a method to CWallet to write just CKeyMetadata
* Add WriteHDKeypath function and move
*HDKeypath to util/bip32.{h,cpp}
* Refactor keymetadata writing to a separate method
* build: prefer python3.4 even if newer versions are present on the system
* fuzz: test_runner: Better error message when built with afl
* qa: Add test/fuzz/test_runner.py
* travis: Combine --disable-bip70 into existing job
* Add release note for listunspent P2WSH change
* Add test for P2SH-P2WSH in signrawtransactionwithkey and listunspent
* Make listunspent and signrawtransaction RPCs support witnessScript
* Select orphan transaction uniformly for eviction
* gui: Add close wallet action
* gui: Add closeWallet to WalletController
* interfaces: Add remove to Wallet
* Bump minimum Qt version to 5.5.1
* Travis: Add test without BIP70 (but still full wallet + tests)
* GUI: If BIP70 is disabled, give a proper error when trying to open a payment request file
* GUI: If BIP70 is disabled, attempt to fall back to BIP21 parsing
* [build] Makefile.am: add rule for src/bitcoin-wallet
* msvc: Fix silent merge conflict between #13926 and #14372 part II
* Factor out combine / finalize / extract PSBT helpers
* Remove op== on PSBTs; check compatibility in Merge
* Switch away from exceptions in refactored tx code
* Move PSBT definitions and code to separate files
* Factor BroadcastTransaction out of sendrawtransaction
* Split DecodePSBT into Base64 and Raw versions
* Add pf_invalid arg to std::string DecodeBase{32,64}
* Log full paths for wallets
* [wallet] Close bdb when flushing wallet.
* Remove unnecessary const_cast
* RPCHelpMan: Check default values are given at compile-time
* submitheader: more directly test missing prev block header
* remove some magic mining constants in functional tests
* Replace script name with special parameter
* tests: Added missing tests for RPC wallet errors
* gui: Show indeterminate progress dialog while opening walllet
* gui: Add OpenWalletActivity
* interfaces: Avoid interface instance if wallet is null
* gui: Add thread to run background activity in WalletController
* gui: Add Open Wallet menu
* gui: Add openWallet and getWalletsAvailableToOpen to WalletController
* interfaces: Add loadWallet to Node
* wallet: Factor out LoadWallet
* appveyor: Remove outdated libraries
* tests: accept unicode characters on Windows
* minor p2p_sendheaders fix of height in coinbase
* util: Add SetupHelpOptions()
* A few textual improvements
* Move ParseConfirmTarget from rpc/mining to rpc/util
* trivial: correct parameter name in comments
* rpc: Fix for segfault if combinepsbt called with empty inputs
* [wallet] Support creating a blank wallet
* Move maxTxFee initialization to init.cpp
* Update release notes through to cb35f1d3
* Release notes: integrate detached & rm backports
* qa: Add tool-prefix to functional test readme
* test_runner: Remove unused --force option
* wallet: Add lock annotation for mapAddressBook
* Add locking annotation for vNodes. vNodes is guarded by cs_vNodes.
* Avoid triggering undefined behaviour (std::memset(nullptr, 0, 0)) if an invalid string is passed to DecodeSecret(...)
* Change in transaction pull scheduling to prevent InvBlock-related attacks
* Add release notes for importmulti descriptor support
* Add test for importing via descriptor
* [wallet] Allow descriptor imports with importmulti
* [wallet] Refactor ProcessImport() to call ProcessImportLegacy()
* [wallet] Add ProcessImportLegacy()
* [wallet] Refactor ProcessImport()
* [rpc] util: add deriveaddresses method
* qa: Drop RPC connection if --usecli
* netaddress: Make IPv4 loopback comment more descriptive
* netaddress: Fix indentation in IsLocal
* doc: Add cs_main lock annotations for mapBlockIndex
* doc: Add missing wallet-tool manpages
* contrib: Add missing wallet tool to gen-manpages.sh
* Qt: Fix update headers-count
* Qt: update header count regardless of update delay
* travis: Only exit early if compilation took longer than 30 min
* Update linearize-hashes.py
* docs: add perf section to developer docs
* tests: add utility to easily profile node performance with perf
* [Docs] Small updates to getrawtransaction description
* tests: Make updatecoins_simulation_test deterministic
* Fix issue #9683 \"gui, wallet: random abort (segmentation fault) running master/HEAD\".
* qa: Test .walletlock file is closed
* wallet: Close wallet env lock file
* wallet: Close dbenv error file db.log
* build: Remove WINVER pre define in Makefile.leveldb.inlcude
* Drop defunct Windows compat fixes
* windows: Call SetProcessDEPPolicy directly
* windows: Set _WIN32_WINNT to 0x0601 (Windows 7)
* remove deprecated mentions of signrawtransaction from fundraw help
* Rename Chain getLocator -> getTipLocator
* Drop redundant get_value_or
* Fix ScanForWalletTransactions start_block comment
* Document rescanblockchain returned stop_height being null
* Add suggested rescanblockchain comments
* Update ScanForWalletTransactions result comment
* Rename ScanResult stop_block field
* Fix build after pr 15266 merged
* log: Construct global logger on first use
* net: Correct comparison of addr count
* init: Modify docs and add release note for 12255
* init: Use systemd automatic directory creation
* qt: Pre-0.18 split-off translations update
* travis: Revert \"Run extended tests once daily\"
* msvc: Fix silent merge conflict between #13926 and #14372
* wallet: Add missing cs_db lock
* test: Make bloom tests deterministic
* Check m_internals in UnregisterValidationInterface
* gui: Fix m_node.startShutdown() order
* gui: Expose BitcoinGUI::unsubscribeFromCoreSignals
* gui: Fix WalletController deletion
* test: Fix race in p2p_invalid_messages
* Descriptor expansions only need pubkey entries for PKH/WPKH
* travis: Save cache when compilation took very long
* travis: Remove unused FUNCTIONAL_TESTS_CONFIG
* travis: Document whether functional tests are run in the job name
* Revert \"travis: Compile trusty with depends for now\"
* Prefer boost::optional#get_value_or over #value_or
* Piecewise construct to avoid invalid construction
* qa: Use wallet to retrieve raw transactions
* qa: Style-only fixes in touched files
* Do not import private keys to wallets with private keys disabled
* Refactor importwallet to extract data from the file and then import
* tests: unify RPC argument to cli argument conversion and handle dicts and lists
* msvc: build leveldb locally
* msvc: build secp256k1 locally
* Fix assertion in CKey::SignCompact
* Trivial: add doxygen-compatible comments relating to BerkeleyEnvironment
* Tests: add unit tests for GetWalletEnv
* Free BerkeleyEnvironment instances when not in use
* [tests] Add wallet-tool test
* [tools] Add wallet inspection and modification tool
* gdb attaching to process during tests has non-sudo solution
* Notify the GUI that the keypool has changed to set the receive button
* Check for more than private keys disabled to show receive button
* qa: Add tests for invalid message headers
* doc: correct logging rpc return type and example
* Delete README_osx.md and move its contents into build-osx.md
* Add gitian PGP key for hebasto
* Remove \'boost::optional\'-related gcc warnings
* travis: Compile trusty with depends for now
* travis: Compile once on trusty
* test: Build fuzz targets into seperate executables
* [test] fuzz: make test_one_input return void
* Correct units for \"-dbcache\" and \"-prune\"
* wallet: Fixup rescanblockchain result doc
* [RPC] Update getrawtransaction interface
* [doc] add notes on release notes
* Squashed \'src/leveldb/\' changes from 524b7e36a8..f545dfabff
* Remove remaining chainActive references from CWallet
* Convert CWallet::ScanForWalletTransactions and SyncTransaction to the new Chain apis
* Add findFork and findBlock to the Chain interface
* Add time methods to the Chain interface
* Add height, depth, and hash methods to the Chain interface
* Allow connections from misbehavior banned peers.
* RPCHelpMan: Pass through Result and Examples
* rpc: Compile on GCC4.8
* Trivial: Doxygenize existing CBufferedFile and VectorReader comments
* Trivial: fixup a few doxygen comments
* Scripts and tools: Drop no-longer-relevant copyright holder names
* Scripts and tools: Fix devtools/copyright_header.py to always honor exclusions
* Docs: Update python docs to reflect that wildcard imports are disallowed
* Prevent mutex lock fail even if --enable-debug
* Default -whitelistforcerelay to off
* Doc: add information about security to the JSON-RPC doc
* Update all subprocess.check_output functions in CI scripts to be Python 3.4 compatible
* [Docs] add short documentation for /rest/blockhashbyheight
* [QA] add rest tests for /rest/blockhashbyheight/.
* REST: add \"blockhashbyheight\" call, fetch blockhash by height
* Fix macOS launch-at-startup memory issue
* Qt: remove macOS launch-at-startup option when compiled with > macOS 10.11
* lint: Enable python linters via an array
* Made expicit constructor CTransaction(const CMutableTransaction &tx).
* Minimal changes to comply with explicit CMutableTransaction -> CTranaction conversion.
* Document RNG design in random.h
* Use secure allocator for RNG state
* Encapsulate RNGState better
* DRY: Implement GetRand using FastRandomContext::randrange
* Sprinkle some sweet noexcepts over the RNG code
* Remove hwrand_initialized.
* Switch all RNG code to the built-in PRNG.
* Integrate util/system\'s CInit into RNGState
* Abstract out seeding/extracting entropy into RNGState::MixExtract
* Add thread safety annotations to RNG state
* Rename some hardware RNG related functions
* Automatically initialize RNG on first use.
* Don\'t log RandAddSeedPerfmon details
* Use FRC::randbytes instead of reading >32 bytes from RNG
* [net] add dnsseed.emzy.de to DNS seeds
* scripted-diff: batch-recase BanMan variables
* banman: Add, use CBanEntry ctor that takes ban reason
* banman: reformulate nBanUtil calculation
* banman: add thread annotations and mark members const where possible
* scripted-diff: batch-rename BanMan members
* net: move BanMan to its own files
* banman: pass in default ban time as a parameter
* banman: pass the banfile path in
* banman: create and split out banman
* net: split up addresses/ban dumps in preparation for moving them
* tests: remove member connman/peerLogic in TestingSetup
* net: Break disconnecting out of Ban()
* Fix wallet selector size adjustment
* qa: Improve tests of /rest/headers and /rest/block
* doc: /rest/block responds with 404 if block does not exist
* doc: Explain empty result of /rest/headers
* Update zmq to 4.3.1
* Remove errant past from walletcreatefundedpsbt for nLocktime replaceability
* zmq: log outbound message high water mark when reusing socket
* gui: Fix window title update
* Add comment describing fDisconnect behavior
* rpc: remove duplicate solvable field from getaddressinfo
* Improve \"help-console\" message
* build: Drop macports support
* gui: Refactor to use WalletController
* gui: Add WalletController
* gui: Use AutoConnection for WalletModel::unload signal
* Add workaround for QProgressDialog bug on macOS
* Remove no longer needed shellcheck suppressions
* Fix warnings introduced in shellcheck v0.6.0
* Remove repeated suppression. Fix indentation.
* Pin shellcheck version to v0.6.0
* docs: Spelling error fix on fuzzing.md
* Remove redundant stopExecutor() signal
* Remove redundant stopThread() signal
* threads: fix unitialized members in sched_param
* [docs] Expand help text for importmulti changes
* Make SafeDbt DB_DBT_MALLOC on default initialization
* Introduce SafeDbt to handle DB_DBT_MALLOC raii-style
* Drop unused setRange arg to BerkeleyBatch::ReadAtCursor
* Fix remaining compiler warnings (MSVC). Move disabling of specific warnings from /nowarn to project file.
* Improve blocksdir functional test.
* Make blockdir always net specific
* qa: Remove race between connecting and shutdown on separate connections
* Do not deselect peer when switching away from tab
* Improve Peers tab layout
* contrib: Allow use of github API authentication in github-merge
* contrib: Add support for http[s] URLs in github-merge
* contrib: Detailed reporting for http errors in github-merge
* refactor/lint: Add ignored suggestions to an array
* [doc] explain what .python-version does
* gui: Show current wallet name in window title
* gui: Keep network style in BitcoinGUI
* gui: Remove unused return type in some BitcoinGUI methods
* validation: Add cs_main locking annotations
* doc: Add comment to cs_main and mempool::cs
* test: Add missing validation locks
* sync: Add RecursiveMutex type alias
* Add checksum in gitian build scripts for ossl
* Don\'t label transactions \"Open\" while catching up
* Fix minimized window bug on Linux
* doc: Add release notes for unloadwallet change to synchronous call
* rpc: Make unloadwallet wait for complete wallet unload
* doc: Add getrpcinfo release notes
* qa: Add tests for getrpcinfo
* rpc: Add getrpcinfo command
* rpc: Track active commands
* rpc: Remove unused PreCommand signal
* qa: Ignore shellcheck warning SC2236
* Replace remaining 0 with nullptr in Qt code
* Don\'t use zero as null pointer constant (-Wzero-as-null-pointer-constant)
* Use C++11 default member initializers
* Drop IsLimited in favor of IsReachable
* configure: bitcoin-tx doesn\'t need libevent, so don\'t pull it in
* implements different disk sizes for different networks on intro
* build: Allow to configure --with-sanitizers=fuzzer
* util: Make ToLower and ToUpper take a char
* util: remove unused [U](BEGIN|END) macros
* Replace use of BEGIN and END macros on uint256
* wallet: Avoid leaking locktime fingerprint when anti-fee-sniping
* [test] wallet_txn_clone: Correctly clone txin sequence
* docs: Add FreeBSD build notes link to doc/README.md
* docs: Clarifying testing instructions
* [tests] move wallet util functions to wallet_util.py
* [tests] tidy up wallet_importmulti.py
* Fix start with the `-min` option
* Fix download link
* Include util/strencodings.h which is required for IsSpace(...)
* Update KNOWN_VIOLATIONS: Remove fixed violations
* Use IsSpace(...) instead of boost::is_space
* Use ToLower(...) instead of std::tolower
* Use IsDigit(...) instead of std::isdigit
* IsReachable is the inverse of IsLimited (DRY). Includes unit tests
* Fix out-of-bounds write in case of failing mmap(...) in PosixLockedPageAllocator::AllocateLocked
* Fail if either disk space check fails
* Error if rpcpassword contains hash in conf sections
* Use C++11 default member initializers
* index: Fix for indexers skipping genesis block.
* Add BitcoinApplication & RPCConsole tests
* Move BitcoinApplication to header so it can be tested
* test: Add basic test for BIP34
* rpc: Avoid permanent cs_main lock in getblockheader
* [rpc] Correct reconsiderblock help text, add test
* rpc: Document bytessent_per_msg and bytesrecv_per_msg
* Fix the build problem in libbitcoin_server
* test: Run invalid_txs.InputMissing test in feature_block
* qt: Use WalletModel
* instead of wallet name in console window
* qt: Use WalletModel
* instead of wallet name in main window
* qt: Factor out WalletModel::getDisplayName()
* Remove UBSan suppression
* streams: Remove unused seek(size_t)
* Use std::vector API for construction of test data.
* rpc: Remove cs_main lock from blockToJSON and blockHeaderToJSON
* rpc: Specify chain tip instead of chain in GetDifficulty
* rpc: Fix SoftForkMajorityDesc and SoftForkDesc signatures
* test: Correct ineffectual WithOrVersion from transactions_tests
* Log progress while verifying blocks at level 4.
* docs: Add more Doxygen information to Developer Notes
* Remove misplaced Q_UNUSED and others enhancements
* gui: Fix for Incorrect application name when passing -regtest
* depends: Enable unicode support on dbd for Windows
* Get more info about GUI-related issue on Linux
* Add names to Travis jobs
* Correct misleading \"overridden options\" label
* Release notes: integrate detached release notes
* Release notes: update notes through fb52d0684
* Fix broken notificator on GNOME
* test: add invalid tx templates for use in functional tests
* Allow running rpc_bind.py --nonloopback test without IPv6
* Increase maxconnections limit when using poll.
* Implement poll() on systems which support it properly.
* Move SocketEvents logic to private method.
* Move GenerateSelectSet logic to private method.
* Introduce and use constant SELECT_TIMEOUT_MILLISECONDS.
* test: Fix rpc_net.py \"pong\" race condition
* Botbot.me (IRC logs) not available anymore
* Making supported operating systems more clear
* Bump manpages
* Update copyright headers to 2018
* [Trivial] Update license year range to 2019
* whitespace: Split ~300 char line into multiple ones
* scripted-diff: Rename rpc_timewait to rpc_timeout
* scripted-diff: Remove unused \'split\' parameter to setup_network
* Fix running individually through test_runner.py, as suggested by AATTMarcoFalke (#14732)
* Increase timeout of featuer_assumevalid test to fix flaky tests
* If tests are ran with (ASan + LSan), Docker needs access to ptrace
* Update Travis base OS to Xenial
* scripted-diff: Replace boost::bind with std::bind
* refactor: Use boost::scoped_connection in signal/slot, also prefer range-based loop instead of std::transform
* fix testmempoolaccept CLI syntax
* clarifying getrawtransaction[time] get help text
* doc: update NetBSD build instructions for 8.0
* Modify build instructions to work with Command Prompt as well as PowerShell; other minor changes
* Fix minor grammar error in doc
* test: pruning: Check that verifychain can be called when pruned
* doc: Add historical release notes for 0.17.1
* Add release notes
* Overhaul importmulti logic
* Explain GetAncestor check for m_failed_blocks in AcceptBlockHeader
* lint/format-strings: Correctly exclude escaped percent symbols
* blockfilter: Remove default clause in switch statement.
* blockfilter: Additional constructors for BlockFilter.
* blockfilter: Refactor GCS params into struct.
* test: Avoid racy test p2p_timeouts
* [docs] add release note for change to GBT
* [mining] segwit option must be set in GBT
* test: Bump timeout to run tests in travis thread sanitizer
* Test coinbase category in wallet rpcs
* Add all category options to wallet rpc help
* rpc: Fix data race (UB) in InterruptRPC()
* RPCHelpMan: Support required arguments after optional ones
* test: Add comment to g_insecure_rand_ctx
* test: Undo thread_local g_insecure_rand_ctx
* Add suppression for InterruptRPC (fRPCRunning) data race
* travis: Use trap and set -e errtrace
* build: Enable functional tests in the ThreadSanitizer (TSan) build job
* docs: add NSIS setup/install steps to windows docs
* Refactoring with QString::toNSString
* wallet: Initialize stop_block to nullptr in CWallet::ScanForWalletTransactions
* test: Fix race in mempool_accept
* [Qt] Restore < Qt5.6 compatibility for addAction
* Fix cuckoocache_tests TSAN failure introduced in #14935. Fixes #14967.
* qt: Remove ellipsis from sending/receiving addresses
* qt: Add Window menu
* qt: Allow to inspect RPCConsole tabs
* tests: Test for expected return values when calling functions returning a success code
* test: mempool_persist: Verify prioritization is dumped correctly
* test: add_nodes can only be called once after set_test_params
* Revert \"tests: Support calling add_nodes more than once\"
* Replace CAffectedKeysVisitor with descriptor based logic
* test: Make g_insecure_rand_ctx thread_local
* Remove Python 2 import workarounds
* Revert \"travis: Save cache on build error\"
* tests: Support calling add_nodes more than once
* validation: assert that pindexPrev is non-null when required
* depends: disable unused qt features
* depends: qt 5.9.7
* depends: expat 2.2.6
* test: consensus: Check that final transactions are valid
* test: Correctly deserialize without witness
* test: Add tests for truncated scripts
* Do not permit copying FastRandomContexts
* Simplify testing RNG code
* Make unit tests use the insecure_rand_ctx exclusively
* Bugfix: randbytes should seed when needed (non reachable issue)
* Use a FastRandomContext in LimitOrphanTxSize
* Introduce a Shuffle for FastRandomContext and use it in wallet and coinselection
* Use a local FastRandomContext in a few more places in net
* Make addrman use its local RNG exclusively
* doc: Fix PSBT howto and example parameters
* Indicate -rpcauth option password hashing alg
* [test] functional framework: add CScript hex() for Python 3.4
* [test] Travis: enforce Python 3.4 support in functional tests
* Add E711 to flake8 check
* Compare to None with is/is not
* Change \'== None\' to \'is None\'
* Handle exception as ImportError
* Removed implicit CTransaction conversion from benchmaks
* Removed implicit CTransaction constructor from tests
* Add nice table to files.md
* build: Add CLIENT_VERSION_BUILD to CFBundleGetInfoString
* doc: Update minimum required qt
* Add stop_block out arg to ScanForWalletTransactions
* Return a status enum from ScanForWalletTransactions
* Make CWallet::ScanForWalletTransactions args and return value const
* Add comments to descriptor tests
* Add descriptor expansion cache
* [refactor] Combine the ToString and ToPrivateString implementations
* [refactor] Use DescriptorImpl internally, permitting access to new methods
* [refactor] Add a base DescriptorImpl with most common logic
* [tests] Add docstring for wallet_importmulti.py
* [tests] add test_address method to wallet_import.py
* [tests] add test_importmulti method to wallet_import.py
* [tests] add get_multisig function to wallet_importmulti.py
* [tests] add get_key function to wallet_importmulti.py
* [tests] tidy up imports in wallet_importmulti.py
* [tests] fix flake8 warnings in wallet_importmulti.py
* wallet_keypool_topup.py: Test for all keypool address types
* add `--retry 5` to curl opts in install_db4.sh
* rpc: Document default values for optional arguments
* rpc: Assert named arguments are unique in RPCHelpMan
* Improve documentation for running verify-commits.py script
* http -> https
* Use window() instead of obsolete topLevelWidget()
* tests: check readability of cookie file
* test: allows test_runner command line to receive parameters for each test
* rpc: Avoid creating non-standard raw transactions
* Cleanup SplashScreen class
* refactor: Drop boost::this_thread::interruption_point and boost::thread_interrupted in main thread
* validation: Add and use HaveTxsDownloaded where appropriate
* squashme: connect thru node interface
* qt: Call noui_connect to prevent boost::signals2::no_slots_error in early calls to InitWarning
* Adjust configure so that only bip70 is disabled when protobuf is missing instead of the GUI
* qa: Test bitcond shutdown
* http: Remove timeout to exit event loop
* http: Remove unnecessary event_base_loopexit call
* http: Unlisten sockets after all workers quit
* http: Send \"Connection: close\" header if shutdown is requested
* rpc: Add wait argument to stop
* [doc] developer-notes.md: point out that UniValue deviates from upstream
* scripts: Add trusted key for Samuel Dobson
* Scripts and tools & Docs: Used #!/usr/bin/env bash instead of obsolete #!/bin/bash, added linting for .sh files shebang and updated the Developer Notes.
* Use std::numeric_limits::max()) instead of (UNSIGNED)-1
* Use const in COutPoint class
* scripted-diff: Run scripted-diff in subshell
* RPCHelpMan: Add space after colons in extended description
* rpc: Add description to fundrawtransaction vout_index
* rpc: Pass argument descriptions to RPCHelpMan
* Remove duplicate libconsensus linking in test make
* tests: Modify rpc_bind to conform to #14532 behaviour.
* make peertimeout a debug argument, remove error message translation
* p2p: allow p2ptimeout to be configurable, speed up slow test
* Fix broken Gmane URLs
* Log env path in BerkeleyEnvironment::Flush
* Less confusing documentation for `torpassword`
* Add CScriptNum decode python implementation in functional suite
* qt: Remove hidden columns in coin control dialog
* travis: Save cache on build error
* gui: Show watch-only eye instead of HD disabled
* Hide spendable label if priveate key is disabled
* Move CheckBlock() call to critical section
* uint256: Remove unnecessary crypto/common.h use
* [tests] Add wallet_balance.py
* CreateTransaction: Assume minimum p2sh-p2wpkh spend size for unknown change
* Remove stale comment in CalculateMaximumSignedInputSize
* tests: have combine_logs default to most recent test dir
* bench: Destroy wallet txs instead of leaking their memory
* Add missing lock in CNode::copyStats(...)
* Add missing locking annotations
* Bugfix: test/functional/mempool_accept: Ensure oversize transaction is actually oversize
* Add LSan suppression warnings
* Add ASan Travis build
* Make test p2p_invalid_messages.py pass: Allow for expected Travis ASAN memory increase
* Add release notes
* Add matching descriptors to scantxoutset output + tests
* Add descriptors to listunspent and getaddressinfo + tests
* Add tests for InferDescriptor and Descriptor::IsSolvable
* Add Descriptor::IsSolvable() to distinguish addr/raw from others
* Add support for inferring descriptors from scripts
* Fix descriptor_tests not checking ToString output of public descriptors
* qa: Add wallet_encryption error tests
* Convert comments to thread safety annotations
* qa: clean up assert_memory_usage_stable utility
* qa: fix p2p_invalid_messages on macOS
* clarify RPC rawtransaction documentation
* Add Benchmark to test input de-duplication worst case
* Fix detection of copyright holders
* test: Move UBSAN suppressions to test/sanitizer_suppressions/ubsan
* travis: --disable-hardening for xenial thread sanitizer
* travis: Run thread sanitizer
* Fix `bitcoin-qt -version` output formatting
* GetPubKey: make sigdata const
* remove redundant KeyOriginInfo access, already done in CreateSig
* Update release-process.md to include RC version bumping
* build: include rc number in version number
* build: if VERSION_BUILD is non-zero, include it in the package version
* clarify rpcwallet flag url change
* fix uninitialized read when stringifying an addrLocal
* add test demonstrating addrLocal UB
* rpc: Documentation fixups
* Use RPCHelpMan for all RPCs
* lint: Must use RPCHelpMan to generate the RPC docs
* A few minor formatting fixes and clarifications to descriptors.md
* Add regtest for JSON-RPC batch calls.
* test: Add BOOST_REQUIRE to getters returning optional
* rpcauth: Improve by using argparse and getpass modules
* rpcbind: Warn about exposing RPC to untrusted networks
* CNetAddr: Add IsBindAny method to check for INADDR_ANY
* net: Always default rpcbind to localhost, never \"all interfaces\"
* Implement prevector::fill once
* Drop defunct IS_TRIVIALLY_CONSTRUCTIBLE handling from prevector.h
* Warn unrecognized sections in the config file
* qa: Check specific reject reasons in feature_block
* Properly generate salt in rpcauth.py, update tests
* Do not specify sudo in .travis
* wallet: Create IsDatabaseLoaded function
* wallet: Add trailing wallet.dat when detecting duplicate wallet if it\'s a directory.
* Refactor: Move m_db pointers into BerkeleyDatabase
* revert removal of fstream.hpp header in fs.h
* Remove unreferenced boost headers
* disallow oversized CBlockHeaderAndShortTxIDs
* fix a deserialization overflow edge case
* add a test demonstrating an overflow in a deserialization edge case
* Improve scripted-diff developer docs
* Add NODISCARD to all {Decode,Parse}[...](...) functions returning bool. Sort includes.
* tests: Explicitly ignore the return value of DecodeBase58(...)
* tests: Check return value of ParseParameters(...)
* Rename ListTransactions filter variable
* [wallet] Restore ability to list incoming transactions by label
* Better error message for user when corrupt wallet unlock fails
* doc: add detached release notes for #14060
* Release notes: integrate detached release notes
* Release notes: update notes through to 11e1ac3ae08
* Bump the minimum Qt version to 5.2
* build: Add bitcoin-tx.exe into Windows installer
* rpc: Correctly name arguments
* importmulti: Don\'t add internal addresses to address book
* rpc: Add RPCHelpMan for machine-generated help
* rpc: Include rpc/util.h where needed for RPCHelpMan
* qa: Raise ci test_runner timeout to 40 mins
* travis: Avoid timeout on verify-commits check
* qa: Avoid race in p2p_invalid_block by waiting for the block request
* tests: Make feature_block pass on centos
* util.h: explicitly include required QString header
* Throw error if CPubKey is invalid during PSBT keypath serialization
* qt: Remove \"Pay only required fee\" checkbox
* qt: Improve BitcoinAmountField class
* rpc: creates possibility to preserve labels on importprivkey
* fix converttopsbt permitsigdata arg, add basic test
* Add test for rpcpassword hash error
* Error if rpcpassword in conf contains a hash character
* Don\'t use systray icon on inappropriate systems
* test_node: get_mem_rss fixups
* qt: All tray menu actions call showNormalIfMinimized
* qt: Use GUIUtil::bringToFront where possible
* qt: Add GUIUtil::bringToFront
* Remove obj_c for macOS Dock icon menu
* Use Qt signal for macOS Dock icon click event
* Remove obj_c for macOS Dock icon setting
* warnings: Compiler warning on memset usage for non-trivial type
* macOS: disable AppNap during sync
* Require a public key to be retrieved when signing a P2PKH input
* Add regression test for PSBT signing bug #14473
* Refactor PSBTInput signing to enforce invariant
* Simplify arguments to SignPSBTInput
* Add bool PSBTInputSigned
* New PartiallySignedTransaction constructor from CTransction
* Remove redundant txConst parameter to FillPSBT
* More concise conversion of CDataStream to string
* Pass chain locked variables where needed
* Remove uses of cs_main in wallet code
* Remove direct node->wallet calls in init.cpp
* Pass chain and client variables where needed
* Add skeleton chain and client classes
* [doc] conf: Remove deprecated options from docs, Other cleanup
* build: Fix windows build error if `--disable-bip70`
* doc: add comment explaining recentRejects-DoS behavior
* tests: Add Python dead code linter (vulture)
* tests: Remove unused testing code
* Avoid using numeric_limits for sequence numbers and lock times
* Remove duplicated code
* align items in contrib init
* appveyor: Script improvement part II
* Add llvm-symbolizer directory to PATH. Needed to get symbolized stack traces from the sanitizers.
* Add UBSan suppressions needed to pass test suite
* Add UBSan options: print_stacktrace + halt_on_error
* Send fewer spam messages in p2p_invalid_messages
* Add metavar to match var name in help text + Change wording for better readability
* blockfilter: Use unordered_set instead of set in blockfilter.
* Extract CSipHasher to it\'s own file in crypto/ directory.
* qa: Add test to ensure node can generate all help texts at runtime
* tests: add tests for invalid P2P messages
* tests: add P2PConnection.send_raw_message
* tests: add utility to assert node memory usage hasn\'t increased
* doc: Add historical release notes for 0.17.0.1
* Enable functional tests in UBSAN job. Enable -fsanitize=integer (part of UBSAN). Merge UBSAN Travis job with no depends.
* example_test.py: fixup coinbase height argument, derive number clearly
* trivial: Don\'t translate in help text
* Tests: Fix a comment
* tests: Dry run bench_bitcoin (-evals=1 -scaling=0: <1 second running time) as part \"make check\" to allow for quick identification of assertion/sanitizer failures in benchmarking code
* Remove RUN_BENCH logic
* ZMQ: add options to configure outbound message high water mark, aka SNDHWM
* Add SAFE_CHARS[SAFE_CHARS_URI]: Chars allowed in URIs (RFC 3986)
* rpc: Make HTTP RPC debug logging more informative
* doc: Update OpenBSD build guide for 6.4
* gitignore contents of db4 folder
* scripted-diff: Rename misleading \'defaultPort\' to \'http_port\'
* wallet: Refactor to use WalletLocation
* wallet: Add WalletLocation utility class
* Remove unused `adjustedTime` parameter
* build: Remove illegal spacing in darwin.mk
* scripted-diff: Move util files to separate directory.
* tests: add test for \'getaddressinfo\' RPC result \'ischange\' field
* rpcwallet: add \'ischange\' field to \'getaddressinfo\' response
* travis: Compile once on xenial
* test_runner: Remove travis specific code
* [tests] Move deterministic address import to setup_nodes
* check that a separator is found for psbt inputs, outputs, and global map
* Make clear function argument case in dev notes
* doc: Add external interface consistency guarantees
* Add test for conversion from non-witness to witness UTXO
* Convert non-witness UTXOs to witness if witness sig created
* FreeBSD: Document Python 3 requirement for \'gmake check\'
* tests: Print dots by default
* gui: explicitly disable \"Dark Mode\" appearance on macOS
* added details about commit messages
* Add segwit address tests for importmulti
* Make getaddressinfo return solvability
* Add release notes for importmulti segwit change
* Fix typo in test_framework/blocktools
* Add SegWit support to importmulti with some ProcessImport cleanup
* Bugfix: RPC: Add address_type named param for createmultisig
* Don\'t rely on locale dependent functions in base_blob::SetHex(...) (uint256), DecodeBase58(...), ParseMoney(...) and ParseHex(...)
* Various textual improvements in build docs
* Pass tx pool reference into CheckSequenceLocks
* [tests] Test that nodes respond to getdata with notfound
* travis: avoid timeout without saving caches, also enable all qt
* build: Fix Qt link order for Windows build
* Remove fs::relative call and fix listwalletdir tests
* rpc: Always throw in getblockstats if -txindex is required
* [macOS] Remove DS_Store WindowBounds bytes object
* appveyor: Enable multiwallet test
* tests: add test case for loading copied wallet twice
* wallet: Fix duplicate fileid
* show the progress of functional test
* qa: Ensure wallet unload during walletpassphrase timeout
* rpc: Fix wallet unload during walletpassphrase timeout
* Don\'t link SSL_LIBS with GUI unless BIP70 is enabled
* Add BIP70 deprecation warning
* qt: cleanup: Move BIP70 functions together in paymentserver
* build: Add --disable-bip70 configure option
* rpc: Prevent concurrent savemempool
* [docs] Add release note for removing getwitnessaddress
* [wallet] Remove deprecated addwitnessaddress RPC method
* [test] Remove deprecated addwitnessaddress from feature_segwit.py
* [test] Remove deprecated addwitnessaddress from wallet_bumpfee.py
* [test] Remove deprecated addwitnessaddress from p2p_compactblocks.py
* [tests] Remove deprecated addwitnessaddress call from wallet_dump.py
* [tests] Remove deprecated addwitnessaddress call from feature_nulldummy
* [test] Fix flake8 warnings in tests
* Add GUARDED_BY(cs_wallet) for setExternalKeyPool, mapKeyMetadata, m_script_metadata and setLockedCoins
* Add GUARDED_BY(cs_wallet) for encrypted_batch, nWalletMaxVersion, m_max_keypool_index and nOrderPosNext
* wallet: Add Clang thread safety analysis annotations
* wallet: Add missing locks
* Add compile time checking for cs_main locks which we assert at run time
* Fix listreceivedbyaddress not taking address as a string
* [rpc] add \'getnewaddress\' hint to \'generatetoaddress\' help text.
* [wallet] Deprecate the generate RPC method
* [tests] Add generate method to TestNode
* [tests] Small fixups before deprecating generate
* Update documentation to incude origin information
* Add tests for key origin support
* Add key origin support to descriptors
* descriptors.md: Refer to descriptors as describing instead of matching
* doc/descriptors.md tweaks
* docs: Document lint tests
* validation: Pass chainparams in AcceptToMemoryPoolWorker(...)
* Revert \"Make qt wallet test compatible with qt4\"
* Add `doc/bitcoin-conf.md`
* test: forward timeouts properly in send_blocks_and_test
* Textual improvements
* Improve CAmount tests
* Disable wallet and address book Qt tests on macOS minimal platform
* bitcoin-tx: Use constant for n pubkeys check
* utils: Fix broken Windows filelock
* Avoid 1 << 31 (UB) in calculation of SEQUENCE_LOCKTIME_DISABLE_FLAG
* Fix typo
* tests: Stop node before removing the notification file
* docs: Add release notes for listwalletdir RPC
* qa: Add tests for listwalletdir RPC
* rpc: Add listwalletdir RPC
* interfaces: Add getWalletDir and listWalletDir to Node
* wallet: Add ListWalletDir utility
* Avoid triggering undefined behaviour in base_uint::bits()
* Add tooltips for both datadir and blocksdir
* Add \"Blocksdir\" to Debug window
* Set C locale for amountWidget
* wallet: Remove trailing separators from -walletdir arg
* wallet: Add walletdir arg unit tests
* Make MSVC compiler read the source code using utf-8
* tests: Add test case for std::ios_base::ate
* Move boost/std fstream to fsbridge
* utils: Add fsbridge fstream function wrapper
* [doc] getblocktemplate: use SegWit in example
* Fix QCompleter popup regression
* build: Pin to specific versions of Python packages we install from PyPI in Travis
* Add ignored word: mut
* Revert \"qa: Fix codespell error and have lint-spelling error instead of warn\"
* Move SocketHandler logic to private method.
* Move InactivityCheck logic to private method.
* Move DisconnectNodes logic to private method.
* Move NotifyNumConnectionsChanged logic to private method.
* qt: Revert \"Force TLS1.0+ for SSL connections\"
* Clean systray icon menu for -disablewallet mode
* Stop requiring imported pubkey to sign non-PKH schemes
* [rpc] Descriptions: Textual consistency fixes
* Fix CLEAN_BITCOIN_TEST to remove .log files for all BITCOIN_TESTS files
* Add missing locks and locking annotations for CAddrMan
* depends: qt: avoid system harfbuzz and bz2
* test: allow arguments to be forwarded to flake8 in lint-python.sh
* Include some files currently missed by \'make distclean\'.
* doc: RPC documentation
* Fix macOS files description
* qa: Run more tests with wallet disabled
* tests: Allow closed http server in assert_start_raises_init_error
* appveyor: trivial build cache modifications
* [tests] Remove rpc_zmq.py
* Don\'t access out of bounds array entry array[sizeof(array)]
* [docs] path to descriptors.md fixed
* utils: Convert Windows args to utf-8 string
* Fix typos
* doc: miss install
* travis: set codespell version to avoid breakage
* doc: Split build linux dependencies
* doc: Split depends installation instructions per arch
* tests: Make appveyor run with --usecli
* test: Add missing call to skip_if_no_cli()
* doc: Remove \"temporary file\" notice from 0.17.0 release notes
* doc: Add historical release notes for 0.17.0
* [gitian] use versioned unsigned tarballs instead of generically named ones
* doxygen: Fix member comments
* depends: fix bitcoin-qt back-compat with older freetype versions at runtime
* doc: Add historical release notes for 0.14.3 and 0.15.2
* doc: Add GitHub pr template
* tests: exclude all tests with difference parameters
* amount: Move CAmount CENT to unit test header
* Consolidate redundant implementations of ParseHashStr
* Skip stale tip checking if outbound connections are off or if reindexing.
* Bugfix: Only run bitcoin-tx tests when bitcoin-tx is enabled
* configure: Make it possible to build only one of bitcoin-cli or bitcoin-tx
* Document fixed attribute behavior in critical test framework classes.
* Check for specific tx acceptance failures based on script signature
* Strictly enforce instance attrs in critical functional test classes.
* Fix for incorrect version attr set on functional test segwit block.
* test: Fix broken segwit test
* [docs] Add release notes for removing `-usehd`
* [wallet] Remove -usehd
* [wallet] remove redundand restart node
* [wallet] Ensure wallet is unlocked before signing
* Make fs::path::string() always return utf-8 string
* lcov: filter /usr/lib/ from coverage reports
* AppVeyor: Move AppVeyor YAML to dot-file-style YAML
* tests: write the notification to different files to avoid race condition
* Don\'t edit Chainparams after initialization
* MOVEONLY: Move versionbits info out of versionbits.o
* appveyor: Run functional tests on appveyor
* tests: Make it possible to run functional tests on Windows
* Consistently use ParseHashV to validate hash inputs in rpc
* [RPC] Remove warning for removed estimatefee RPC
* [REST] improve performance for JSON calls
* wallet: Avoid potential use of unitialized value bnb_used in CWallet::CreateTransaction(...)
* tests: Use MakeUnique to construct objects owned by unique_ptrs
* convert C-style (void) parameter lists to C++ style ()
* init: Remove deprecated args from hidden args
* Add autogen.sh in ARM Cross-compilation
* [rpc] Add getnodeaddresses RPC command
* doc: Add historical release notes for 0.16.3
* [qa] Test for duplicate inputs within a transaction
* Changed functional tests which do not require wallets to run without
* [depends, zmq, doc] upgrade zeromq to 4.2.5 and avoid deprecated zeromq api functions
* travis: Run feature_dbcrash functional tests in cron job
* tests: Reorder tests and move most of extended tests up to normal tests
* build: Remove libssl from LDADD unless gui
* doc: Document -checklevel levels
* No longer shutdown after encrypting the wallet
* After encrypting the wallet, reload the database environment
* Add function to close all Db\'s and reload the databae environment
* Move BerkeleyEnvironment deletion from internal method to callsite
* [qa] Use correct python index slices in example test
* qa: Remove unneded import_deterministic_coinbase_privkeys overwrite, add comments
* qa: Fix codespell error and have lint-spelling error instead of warn
* Fix reference to lint-locale-dependence.sh
* utils: Convert fs error messages from multibyte to utf-8
* [build] remove #ifdef ENABLE_WALLET from interfaces/node
* rpc: Return more specific reject reason for submitblock
* Report progress in ReplayBlocks while rolling forward
* Remove redundant BIP174 test from rpc_psbt.json
* qa: Run all tests even if wallet is not compiled
* qa: Premine to deterministic address with -disablewallet
* Call unicode API on Windows
* doc: `-help-debug` implies `-help`
* Pass export privkey DER compression flag correctly
* logging: Replace LogPrint macros with regular functions
* build: Move interfaces/
* to libbitcoin_server
* utils: run commands using utf-8 string on Windows
* [build] remove ENABLE_WALLET ifdef from httprpc.cpp
* [build] Move dummy wallet into its own .cpp file.
* gui: get special folder in unicode
* Drop boost::scoped_array
* Scripts and tools: increased timeout downloading
* Speed up knapsack_solver_test by not recreating wallet 100 times.
* Drop minor GetSerializeSize template
* Drop unused GetType() from CSizeComputer
* utils: Use _wfopen and _wreopen on Windows
* qt: Also log and print messages or questions like bitcoind
* noui: Move handlers to header file
* qa: Fix silent merge conflict in wallet_importmulti
* Let wallet importmulti RPC accept labels for standard scriptPubKeys
* tx pool: Use class methods to hide raw map iterator impl details
* Preserve a format of RPC command definitions
* build: avoid getifaddrs when unavailable
* wallet: Set encrypted_batch to nullptr after delete. Avoid double free in the case of NDEBUG.
* doc: release notes for -enablebip61 default change
* p2p: Disable BIP 61 by default
* depends: Remove unused Qt 4 dependencies
* Squashed \'src/univalue/\' changes from 51d3ab34ba..7890db99d6
* Only log \"Using PATH_TO_bitcoin.conf\" message on startup if conf file exists.
* don\'t translate command line options
* qa: Read reject reasons from debug log, not p2p messages
* Integration of property based testing into Bitcoin Core
* Explain when reindex-chainstate can be used instead of reindex
* Remove reference to deprecated RPC call in build instructions
* Docs: Add disable-wallet section to OSX build instructions
* [rpc] Remove deprecated sigrawtransaction rpc method.
* [RPC] Remove warning about wallet addresses in createmultisig()
* [rpc] Remove deprecated validateaddress usage.
* doxygen: Remove misleading checkpoints comment in CMainParams
* Replace duplcate reference with reference to reference doc
* Adjust TODO link
* Add descriptor reference documentation
* test: Add test for config file parsing errors
* util: Report parse errors in configuration file
* lint: Add spell check linter (codespell)
* Fix typos reported by codespell
* doc: Change documentation for =0 for non-boolean options
* macOS fix: Check for correct version of flake8 to avoid spurious warnings. The brew installed flake8 version is Python 2 based and does not work.
* macOS fix: Add excludes for checks added in the newer shellcheck version installed by brew
* macOS fix: Work around empty (sub)expression error when using BSD grep
* macOS fix: Avoid mapfile due to ancient version of bash shipped with macOS
* appveyor: Use clcache to speed up build
* Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations.
* gui: Favor macOS show / hide action in dock menu
* Add new regtest ports in doc following #10825 ports reattributions
* Increase signal to noise in appveyor build output by reducing the MSVC warning count from 12 to 4 (12 is assuming the changes in #14086 are also implemented).
* lint: Make sure we read the command line inputs using utf-8 decoding in python
* Trivial: update clang thread-safety docs url
* doc: correct GetDifficulty doc after #13288
* Switch nPrevNodeCount to vNodesSize.
* added note that control port must be enabled and how to do that in torrc config file
* Test rpc_help.py failed: Check whether ZMQ is enabled or not.
* scripted-diff: Small locking rename
* Use LOCK macros for non-recursive locks
* Make LOCK, LOCK2, TRY_LOCK work with CWaitableCriticalSection
* MOVEONLY Move AnnotatedMixin declaration
* Add unit test for DEBUG_LOCKORDER code
* Add EXCLUSIVE_LOCKS_REQUIRED to CWallet::ListCoins
* Add AssertLockHeld assertions in CWallet::ListCoins
* Add regression test: Don\'t assert(...) with side effects
* Don\'t assert(...) with side effects
* tests: Add missing locking annotations and locks
* blockfilter: Omit empty scripts from filter contents.
* Remove unused fsbridge::freopen
* Don\'t close old debug log file handle prematurely when trying to re-open (on SIGHUP)
* qa: Use named args in some tests
* scripted-diff: Use named arguments in feature_block
* scripted-diff: Pass node into p2p_segwit acceptance tests
* Add README.md to linux release tarballs
* [contrib] Support ARM and RISC-V symbol check
* [wallet] Kill accounts
* Fix potential deadlock
* Add lock annotations (cs_args)
* Add missing locks (cs_args)
* Fix incorrect Doxygen comments
* validation: Log FormatStateMessage on ConnectBlock error in ConnectTip
* scripted-diff: Remove unused first argument to addUnchecked
* tx pool: Use the entry\'s hash instead of the one passed to addUnchecked
* Mark CTxMemPoolEntry members that should not be modified const
* test: Add tests for RPC help
* Explicitly initialize prevector _union
* Removes the Boost case_conv.hpp dependency.
* Implements custom tolower and toupper functions.
* Implements ParseNetwork unit test.
* add unicode compatible file_lock for Windows
* tests: Fix accidental trunction from int to bool
* fix walletcreatefundedpsbt deriv paths, add test
* qa: Add some actual witness in rpc_rawtransaction
* Make SignPSBTInput operate on a private SignatureData object
* Pass HD path data through SignatureData
* Implement key origin lookup in CWallet
* [MOVEONLY] Move ParseHDKeypath to utilstrencodings
* Generalize PublicOnlySigningProvider into HidingSigningProvider
* Make SigningProvider expose key origin information
* Introduce KeyOriginInfo for fingerprint + path
* test padding non micro timestamps
* [Tests] Make combine_logs.py handle multi-line logs
* travis: add CXXFLAGS=-Wnopsabi at ARM job
* Remove unused variable
* Remove redundant assignments (dead stores)
* Mark single-argument constructors \"explicit\"
* [doc] Add release notes for \'account\' API removal
* [wallet] Re-sort wallet RPC commands
* [wallet] Remove wallet account RPCs
* [tests] Remove wallet accounts test
* fix missing differentiation between UNIT and FUNCTIONAL tests in travis build
* use export LC_ALL=C.UTF-8
* make script exit if a command fails
* move remaining travis build steps into individual files
* number .travis/ script according to build lifecycle and add README to explain
* move lint stage up to resemble travis build ui
* abort script in END_FOLD on non-zero exit code
* move script sections info individual files and comply with shellcheck
* contrib: Adjust output to current test format
* Report minfeefilter value in getpeerinfo rpc
* test: Add testing of value_ret for SelectCoinsBnB
* Remove default argument to prevector constructor to remove ambiguity
* Make IS_TRIVIALLY_CONSTRUCTIBLE consistent on GCC < 5
* travis: Run unit tests --with-sanitizers=undefined
* depends: allow CC/CXX to be overridden during configure
* Docs: Fix help message typo optiona -> optional
* qa: Stop txindex thread before calling destructor
* auto generate MSVC project files
* bench: Benchmark GCS filter creation and matching.
* blockfilter: Optimization on compilers with int128 support.
* blockfilter: Unit test against BIP 158 test vectors.
* blockfilter: Additional helper methods to compute hash and header.
* blockfilter: Serialization methods on BlockFilter.
* blockfilter: Construction of basic block filters.
* blockfilter: Simple test for GCSFilter construction and Match.
* blockfilter: Implement GCSFilter Match methods.
* blockfilter: Implement GCSFilter constructors.
* blockfilter: Declare GCSFilter class for BIP 158 impl.
* streams: Unit tests for BitStreamReader and BitStreamWriter.
* streams: Implement BitStreamReader/Writer classes.
* streams: Unit test for VectorReader class.
* streams: Create VectorReader stream interface for vectors.
* Use assert when running from multithreaded code as BOOST_CHECK_
* are not thread safe
* Move cs_main locking annotations from .cpp to .h
* Add compile time checking for all cs_main runtime locking assertions
* Add \"bip125-replaceable\" flag to mempool RPCs
* Tests: add usage note to check-rpc-mappings.py
* util: Replace boost::signals2 with std::function
* p2p: Clarify control flow in ProcessMessage()
* Return the script type from Solver
* Add CMerkleTx::IsImmatureCoinBase method
* qa: Add TestNode::assert_debug_log
* rpc: Avoid locking cs_main in some wallet RPC
* qa: Remove unused deserialization code in msg_version
* p2p: Remove dead code for nVersion=10300
* Bugfix: NSIS: Exclude Makefile
* from docs
* contrib: Support github pull request gitian-build
* test: Check RPC settxfee errors
* Add checks for settxfee reasonableness
* don\'t report minversion wallet entry as unknown
* Add PSBT documentation
* http: Add const modifier to HTTPRequest methods
* test: Add lint to prevent SIGNAL/SLOT connect style
* qt: Use new Qt5 connect syntax
* RPCTypeCheck bip32derivs arg in walletcreatefunded
* QA: add basic walletcreatefunded optional arg test
* walletcreatefundedpsbt: remove duplicate replaceable arg
* [qt] TransactionView: highlight replacement tx after fee bump
* [gui] Make proxy icon from statusbar clickable
* depends: fix qt determinism
* appveyor: fetch the latest port data
* Add risc-v 64-bit to gitian
* [depends] Add riscv qt depends support for cross compiling bitcoin-qt
* Fix typo in feature_blocksdir.py log message
* qa: Add tests for submitheader
* rpc: Expose ProcessNewBlockHeaders
* [RPC] Remove getinfo deprecation warning
* refactor: use fs:: over boost::filesystem::
* [trivial] Fix typo in CDiskBlockPos struct\'s ToString
* Use wildcard path in test_bitcoin.vcxproj
* ci: Add appveyor.yml to build on MSVC
* Make macro compatible with MSVC
* More tests of signer checks
* Test that a non-witness script as witness utxo is not signed
* Additional sanity checks in SignPSBTInput
* Only wipe wrong UTXO type data if overwritten by wallet
* Serialize non-witness utxo as a non-witness tx but always deserialize as witness
* Fix PSBT deserialization of 0-input transactions
* Import CInv from correct module
* Removes unsed `CBloomFilter` constructor.
* Remove unused dummy_tx variable from FillPSBT
* tests: Replace usage of tostring() with tobytes()
* ui: Compile boost:signals2 only once
* Don\'t assert(foo()) where foo has side effects
* Visual Studio build configuration for Bitcoin Core
* Remove redundant extern
* Enable -Wredundant-decls (gcc) if available
* Remove redundant redeclaration of rescanblockchain(...) in same scope
* fix deprecation in bitcoin-util-test.py
* gitian: bump descriptors for (0.)18
* Cleanup StartRest()
* build: bump version to 0.17.99
* contrib: fix GetDesirableServiceFlags typo in seeds/README.md
* net: Update hardcoded seeds
* contrib: in makeseeds, add 0.16.x to PATTERN_AGENT, remove 0.13.x
* doc: move-only release notes of individual prs
* tests: Use explicit imports
* docs: fixed bitcoin-cli -help output for help2man
* qa: blocktools enforce named args for amount
* Replace median fee rate with feerate percentiles
* Make format string linter understand basic template parameter syntax
* Use 72 byte dummy signatures when watching only inputs may be used
* Use 71 byte signature for DUMMY_SIGNATURE_CREATOR
* Always create 70 byte signatures with low R values
* wallet: shuffle coins before grouping, where warranted
* qt: Translations update before 0.17 branch
* Ported usage of deprecated optparse module to argparse module
* qa: Raise feature_help timeout to 5s
* qa: Use files for stdout/stderr to support Windows
* qa: Run gen_rpcauth with sys.executable
* qa: Close stdout and stderr file when node stops
* qa: Add p2p_invalid_locator test
* qa: Remove redundant checkmempool/checkblockindex extra_args
* [Docs] upgrade rescan time warning from minutes to >1 hour
* Use pushKV in some new PSBT RPCs.
* Simplify comparison in rpc_blockchain.py.
* Introduce a maximum size for locators.
* Squashed \'src/leveldb/\' changes from 64052c76c5..524b7e36a8
* [Tests] Cleanup feature_block.py, remove unnecessary PreviousSpendableOutput object
* [Tests] Cleanup extra instances of create_transaction
* [Tests] Rename create_tx and move to blocktools.py
* Trivial: Revert translated string change, clarify wallet log messages
* qa: wait_for_verack by default
* wallet: Catch filesystem_error and raise InitError
* shutdown: Stop threads before resetting ptrs
* Regenerate manpages
* Update copyright headers to 2018
* wallet: sum ancestors rather than taking max in output groups
* [trivial] add doxygen-compatible comments to CAffectedKeysVisitor
* Docs: fix GetWarnings docs to reflect behavior
* Docs: Improve \"of\" grammar
* policy: Remove promiscuousmempoolflags
* Add linting of WalletLogPrintf(...) format strings
* build: Add format string linter
* wallet: assert to ensure accuracy of CMerkleTx::GetBlocksToMaturity
* docs: Link to python style guidelines from developer notes
* wallet: Fix backupwallet for multiwallets
* [docs] Reformat -help output for help2man
* [wallet] Add wallet name to log messages
* doc: correct versions in dependencies.md
* qa: Create unicode tempdir in test_runner
* Add aarch64 qt depends support for cross compiling bitcoin-qt
* use only travis jobs: instead of mix of jobs+matrix
* trivial: correct typos
* trivial: Fixed typos and cleaned up language
* qa: Quote wallet name for rpc path
* fix locale for lint-shell
* qa: Extract rpc_timewait as test param
* gui: Pull initial 017x translations from transifex
* tx: Update transifex slug 016x→017x
* gui: Reject options dialog when key escape is pressed
* gui: Reject edit address dialog when key escape is pressed
* gui: Add GUIUtil::ItemDelegate with keyEscapePressed signal
* travis: Run bench_bitcoin once
* doc: Remove outdated net comment
* [trivial,doc] Fix memory consistency model in comment
* Support h instead of \' in hardened descriptor paths
* Add experimental warning to scantxoutset
* [QA] Extend tests to more combinations
* [QA] Add xpub range tests in scantxoutset tests
* Swap in descriptors support into scantxoutset
* Descriptor tests
* Output descriptors module
* Add simple FlatSigningProvider
* Add more methods to Span class
* [qa] Add test for too-large wallet output groups
* [wallet] correctly limit output group size
* Update ValidationInterface() documentation to explicitly specify threading and memory model
* Update documentation for SingleThreadedSchedulerClient() to specify the memory model
* Add Unit Test for SingleThreadedSchedulerClient
* bench: Make CoinSelection output groups pass eligibility filter
* net: Add missing verification of IPv6 address in CNetAddr::GetIn6Addr(...)
* Ignore unknown config file options for now
* Report when unknown config file options are ignored
* contrib: Remove debian and rpm subfolders
* chainparams: Update with data from assumed valid chain
* refactor: Avoid locking tx pool cs thrice
* use travis:fold in test script steps
* make .travis/yml a bit more readable
* Fix osslsigncode compile issue in gitian-build
* Acquire cs_main before ATMP call in block_assemble bench
* doc: add note to contributor docs about warranted PR\'s
* Remove unused argument to WitnessSigOps(...)
* Remove unused argument to DefaultOptions(...)
* Remove unused argument to ThreadHTTP(...)
* contrib: Fix test-security-check fail in Ubuntu 18.04
* doc: Add historical release notes for 0.16.2
* Fix Qt\'s rcc determinism for depends/gitian
* Return void instead of bool for functions that cannot fail
* Fix accidental use of the addition assignment operator (\"+=\"). Remove newlines from error message.
* travis: Retry to fetch docker image
* [bench] Add benchmark for unserialize prevector
* wallet: Fix accidental use of the comma operator
* [net_processing] Add thread safety annotations
* Annotate AssertLockHeld() with ASSERT_CAPABILITY() for thread safety analysis
* build: sync ax_boost_chrono/unit_test
* [contrib] Add automatic setup for Ubuntu Bionic
* [moveonly] Extract RescanWallet to handle a simple rescan
* Fix merging of global unknown data in PSBTs
* Check that PSBT keys are the correct length
* doc: Improve command to generate list of authors for release notes
* doc: Update broken links to now point to gitian-build.py
* scripted-diff: Remove trailing whitespaces
* depends: use MacOS friendly sed syntax in qt.mk
* scripted-diff: prefer MAC_OSX over __APPLE__
* gui: remove macOS ProgressBar workaround
* gui: remove SubstituteFonts
* doc: mention that macOS 10.10 is now required
* release: bump minimum required macOS to 10.10
* depends: set OSX_MIN_VERSION to 10.10
* Removes Boost predicate.hpp dependency
* [travis] Don\'t store debug info if --enable-debug is set
* doc: Add release notes for -avoidpartialspends
* clean-up: Remove no longer used ivars from CInputCoin
* wallet: Remove deprecated OutputEligibleForSpending
* test: Add basic testing for wallet groups
* wallet: Switch to using output groups instead of coins in coin selection
* wallet: Add output grouping
* Add -avoidpartialspends and m_avoid_partial_spends
* wallet: Add input bytes to CInputCoin
* moveonly: CoinElegibilityFilter into coinselection.h
* utils: Add insert() convenience templates
* qt: Update translation source messages
* Skip is_closing() check when not available.
* Avoid creating a temporary vector for size-prefixed elements
* doc: Adjust bitcoincore.org links
* trivial: remove unneeded include
* Net: Fixed a race condition when disabling the network.
* Drop dead code from Stacks
* tiny refactor for ArgsManager
* Avoid locking mutexes that are already held by the same thread
* [RPC] Remove field in getblocktemplate help that has never been used
* Remove redundant statement
* Remove redundant unused variables
* Remove redundant forward declaration
* trivial: Replace CPubKey::operator[] with CPubKey::vch where possible
* Use the Travis python language feature on the lint build
* Don\'t unnecessarily install shellcheck on the lint build
* Avoid unnecessarily setting env variables on the lint build
* wallet: Avoid potential null pointer dereference in CWalletTx::GetAvailableCredit(...)
* Removes the boost/algorithm/string/join dependency
* Fix bitcoin-cli --version
* Remove program options from build system
* Replace boost program_options
* lint: Add linter for circular dependencies
* Remove dead service bits code
* docs: Specify preferred Python string formatting technique
* QA: Fix bug in -usecli logic that converts booleans to non-lowercase strings
* [QA] add createwallet disableprivatekey test
* [Qt] Disable creating receive addresses when private keys are disabled
* Add disable privatekeys option to createwallet
* Add option to disable private keys during internal wallet creation
* Add facility to store wallet flags (64 bits)
* wallet: Add error handling. Check return value of ParseUInt32(...) in ParseHDKeypath(...).
* wallet: Add tests for ParseHDKeypath(...)
* [wallet] [rpc] Fix importaddress help text
* depends: disable Werror for zmqlib release, causes ndk build to break
* tests: fixes mininode\'s P2PConnection sending messages on closing transport
* Decouple wallet version from client version
* Tests for PSBT
* Create wallet RPCs for PSBT
* Create utility RPCs for PSBT
* SignPSBTInput wrapper function
* Refactor transaction creation and transaction funding logic
* Methods for interacting with PSBT structs
* Add pubkeys and whether input was witness to SignatureData
* Implement PSBT Structures and un/serialization methods per BIP 174
* doc: Add release notes for -printtoconsole and -debuglogfile changes
* qa: Temporarily disable test that reads the default datadir location
* travis: Check that ~/.bitcoin is never created
* Modified in_addr6 cast in CConman class to work with msvc.
* contrib: correct version check
* contrib: Clone core repo in gitian-build
* Extract MakeUnique into utilmemory.h
* Migrate gitian-build.sh to python
* tests: Use MAX_SCRIPT_ELEMENT_SIZE from script.py
* Tools: fix BIND_NOW check in security-check.py
* [QA] Add scantxoutset test
* scantxoutset: mention that scanning by address will miss P2PK txouts
* scantxoutset: support legacy P2PK script type
* scantxoutset: add support for scripts
* Blockchain/RPC: Add scantxoutset method to scan UTXO set
* Add FindScriptPubKey() to search the UTXO set
* bench: Remove unused variable
* bench_bitcoin: Avoid read/write to default datadir
* test_bitcoin: Avoid read/write to default datadir
* Add depends 32-bit arm support for bitcoin-qt
* Initialize m_next_send_inv_to_incoming
* Bucket for inbound when scheduling invs to hide tx time
* Fix that CWallet::AbandonTransaction would only traverse one level
* scripted-diff: Fix references to share/rpcuser (now share/rpcauth)
* Change gitian-descriptors to use bionic instead
* Add option to use docker for gitian-build.sh
* [tests] Remove accounts from wallet_importprunedfunds.py
* [tests] functional test for createmultisig RPC
* segwit support for createmultisig RPC
* Move AddAndGetDestinationForScript from wallet to outputype module
* Add outputtype module
* Privatize CWallet::AddToWalletIfInvolvingMe
* Extract CWallet::MarkInputsDirty
* During IBD, when doing pruning, prune 10% extra to avoid pruning again soon after
* Make g_enable_bip61 a member variable of PeerLogicValidation
* Restrict as much as possible in net_processing to translation unit
* [move-only] Move things only referenced in net_processing out of header file
* Rescope g_enable_bip61 to net_processing
* [RPC] [wallet] allow getbalance to use min_conf and watch_only without accounts.
* [wallet] GetBalance can take a min_depth argument.
* [wallet] factor out GetAvailableWatchOnlyBalance()
* [wallet] deduplicate GetAvailableCredit logic
* [wallet] Factor out GetWatchOnlyBalance()
* [wallet] GetBalance can take an isminefilter filter.
* build: add missing leveldb defines
* Drop unused pindexRet arg to CMerkleTx::GetDepthInMainChain
* qa: Fix some TODOs in p2p_segwit
* ScanforWalletTransactions should mark input txns as dirty
* [tests] skip rpc_zmq functional test when python3 zmq lib is not present
* Add stdin, stdout, stderr to ignored export list
* Use IN6ADDR_ANY_INIT instead of in6addr_any
* GCC-7 and glibc-2.27 compat code
* Refactors `keystore.h` type aliases.
* Use common SetDataDir method to create temp directory in tests.
* Add missing cs_KeyStore lock
* Add locking annotations for variables guarded by cs_KeyStore
* Remove useless mapRequest tracking that just effects Qt display.
* Add simple bech32 benchmarks
* [tests] Check signrawtransaction
* errors on missing prevtx info
* Error on missing amount in signrawtransaction
*
* Fix AreInputsStandard test to reference the proper scriptPubKey
* RPCAuth Detection in Logs
* depends: Mention RISC-V known compilation issue with gcc-7.3.x
* depends: update zmq config.guess/config.sub for riscv support
* depends: latest config.sub
* depends: latest config.guess
* depends: Add RISC-V support
* doc: Rewrite some validation doc as lock annotations
* Use immintrin.h everywhere for intrinsics
* Add SHA256 implementation using using Intel SHA intrinsics
* [Refactor] CPU feature detection logic for SHA256
* have verifytxoutproof check the number of txns in proof structure
* Corrected text to reflect new[er] process of specifying fingerprints instead of individual keys.
* bitcoin-tx: Stricter check for valid integers
* Upgrade Qt depends to 5.9.6
* Fix depends Qt5.9.4 mac build
* Ugrade Qt depends to Qt5.9.4
* RPC: Add new getzmqnotifications method.
* Make ZMQ notification interface instance global.
* Fix command line help for -printtoconsole and -debuglogfile
* Remove unused argument to ProcessGetBlockData(...)
* net: Remove unused interrupt from SendMessages
* Use __cpuid_count for gnu C to avoid gitian build fail.
* [wallet] loadwallet shouldn\'t create new wallets.
* fix bench/prevector.cpp
* [build] Tune wildcards for LIBSECP256K1 target
* Fix MAX_STANDARD_TX_WEIGHT check
* logging: avoid nStart may be used uninitialized in AppInitMain warning
* [tests] p2p_segwit: sync_blocks in subtest wrapper.
* [tests] p2p_segwit: remove unnecessary arguments from subtests.
* [tests] p2p_segwit: log and assert segwit status in subtest wrapper.
* [tests] p2p_segwit: Make sure each subtest leaves utxos for the next.
* [tests] p2p_segwit: wrap subtests with subtest wrapper.
* [tests] p2p_segwit: re-order function definitions.
* [tests] p2p_segwit: standardise comments/docstrings.
* [tests] p2p_segwit: Fix flake8 warnings.
* Remove CombineSignatures and replace tests
* Replace CombineSignatures with ProduceSignature
* Make SignatureData able to store signatures and scripts
* Inline Sign1 and SignN
* Detect if char equals int8_t
* Docs: Improve doc of options addnode, connect, seednode
* Break circular dependency: init ->
* -> init by extracting shutdown.h
* Drop unused init.h includes
* Docs: Modify policy to not translate command-line help
* scripted-diff: Replace NET_TOR with NET_ONION
* Add P2WSH destination helper and use it instead of manual hashing
* Add additional unit tests for invalid IsMine combinations
* Do not expose invalidity from IsMine
* Delete double semicolon in wallet.cpp and misc.cpp
* [tests] Fix p2p_sendheaders race
* validation: count blocks correctly for check level < 3
* Show symbol for inbound/outbound in peer table
* qa: Avoid start/stop of the network thread mid-test
* Remove boost dependency (boost/assign/std/vector.hpp)
* bench: Simplify CoinSelection
* tests: Fix incorrect documentation for test case cuckoocache_hit_rate_ok
* [qa] wallet_basic: Specify minimum required amount for listunspent
* tests: Fix lock-order-inversion (potential deadlock) in DoS_tests. Reported by TSAN.
* Document FreeBSD quirk. Fix FreeBSD build.
* Log warning message when deprecated network name \'tor\' is used (e.g. option onlynet=tor)
* travis: Build with --enable-debug (x86_64-unknown-linux-gnu)
* Add -ftrapv to DEBUG_CXXFLAGS when --enable-debug is used
* Docs: More precise explanation of parameter \"onlynet\"
* [wallet] Don\'t use accounts when checking balance in sendmany
* [wallet] deprecate sendfrom RPC method.
* doc: Clarify that mempool txiter is const_iterator
* [qt] coincontrol: Remove unused qt4 workaround
* qt: Move BitcoinGUI initializers to class, fix initializer order warning
* bench: Add missing pow.h header
* test: Output should be unlocked when spent
* wallet: Unlock spent outputs
* bench: Add block assemble benchmark
* Test: Harden lint-filenames.sh
* Move rpc/util.cpp from libbitcoin-util to libbitcoin-server
* Obsolete #!/bin/bash shebang
* build: add warning to detect hidden copies in range-for loops
* cleanup: avoid hidden copies in range-for loops
* doc: Remove mention of Qt4 from build docs
* test: Update travis to not test Qt4 anymore
* gui: Remove QT_VERSION fallbacks for Qt < 5
* build: Build system changes to support only Qt5
* For AVX2 code, also check for AVX, XSAVE, and OS support
* [qa] mininode: Expose connection state through is_connected
* bugfix: Delete walletView in WalletFrame::removeWallet
* bugfix: Remove dangling wallet env instance
* ui: Support wallets unloaded dynamically
* doc: Add release notes for unloadwallet RPC
* test: Wallet methods are disabled when no wallet is loaded
* test: Add functional tests for unloadwallet RPC
* rpc: Add unloadwallet RPC
* rpc: Extract GetWalletNameFromJSONRPCRequest from GetWalletForJSONRPCRequest
* Qt: load wallet in UI after possible init aborts
* Only set fNewBlock to true in AcceptBlock when we write to disk
* rpc: Avoid \"duplicate\" return value for invalid submitblock
* wallet: Erase wtxOrderd wtx pointer on removeprunedfunds
* Make ReceivedBlockTransactions return void
* Improve coverage of SHA256 SelfTest code
* Removed unused == operator from CMutableTransaction.
* Follow-up to #13454: Fix broken build by exporting LC_ALL=C
* Add linter: Make sure all shell scripts opt out of locale dependence using \"export LC_ALL=C\"
* Add \"export LC_ALL=C\" to all shell scripts
* Docs: Improve readability of \"Squashing commits\"
* Add linter: Make sure we explicitly open all text files using UTF-8 or ASCII encoding in Python
* Explicitly specify encoding when opening text files in Python code
* Fix CVE-2018-12356 by hardening the regex.
* Avoid concurrency issue
* scripted-diff: Avoid temporary copies when looping over std::map
* doc: Add historical release notes for 0.16.1
* Document validationinterace callback blocking deadlock potential.
* Add linter: Enforce the source code file naming convention described in the developer notes
* Fix incorrect shell quoting in FreeBSD build instructions.
* Drop ParseHashUV in favor of calling ParseHashStr
* doc: Remove note to install all boost dev packages
* expose CBlockIndex::nTx in getblock(header)
* Add unavailable options to hidden options category
* tests: Drop variadic macro
* travis: Change Mac goal to all deploy so that travis can build all executables for Mac.
* [tests] Add logging to provide anchor points when debugging failures.
* Reset default -g -O2 flags when enable debug
* When build fails due to lib missing, indicate which one
* validation: check the specified number of blocks (off-by-one)
* travis: Increase travis_wait time while verifying commits
* Enable double-SHA256-for-64-byte code on 32-bit x86
* Use python instead of slow shell script on verify-commits
* policy: Treat segwit as always active
* qa: Log as utf-8
* Do not use uppercase characters in source code filenames
* docs: Add a note about the source code filename naming convention
* Clarify include recommendation
* Enforce the use of bracket syntax includes (\"#include \")
* Use bracket syntax includes (\"#include \")
* test: Add MempoolAncestryTests
* mempool: Calculate descendant maximum thoroughly
* wallet: Switch to using ancestor/descendant limits
* wallet: Strictly greater than for ancestor caps
* Remove deprecated TransactionWithinChainLimit
* Switch to GetTransactionAncestry() in OutputEligibleForSpending
* Add GetTransactionAncestry to CTxMemPool for general purpose chain limit checking
* mempool: Fix max descendants check
* mempool: Add explicit max_descendants
* [wallet] [docs] Update release notes for removing `getlabeladdress`
* [wallet] [rpc] Remove getlabeladdress RPC
* Fix compiler warnings emitted when compiling under stock OpenBSD 6.3
* crypto: cleanup sha256 build
* qa: Remove portseed_offset from test runner
* [qt] OptionsDialog: add prune setting
* utils: checking for bitcoin addresses in translations
* refactor: add a function for determining if a block is pruned or not
* Drop uint 256 not operator
* index: Move index DBs into index/ directory.
* index: Remove TxIndexDB from public interface of TxIndex.
* MOVEONLY: Move BaseIndex to its own file.
* index: Generalize logged statements in BaseIndex.
* index: Extract logic from TxIndex into reusable base class.
* db: Make reusable base class for index databases.
* db: Remove obsolete methods from CBlockTreeDB.
* speed up of tx_validationcache_tests by reusing of CTransaction.
* [docs] update transifex doc link
* cli: Ignore libevent warnings
* docs: Mention lint-locale-dependence.sh in developer-notes.md
* build: Add linter for checking accidental locale dependence
* lint: Add linter to error on #include <
*.cpp>
* Drop the chain argument to GetDifficulty
* qa: Increase includeconf test coverage
* Drop UpdateTransaction in favor of UpdateInput
* wallet: Prevent segfault when sending to unspendable witness
* build: Guard against accidental introduction of new Boost dependencies
* Rename “OS X” to the newer “macOS” convention
* [MOVEONLY] Move unused Merkle branch code to tests
* 8-way AVX2 implementation for double SHA256 on 64-byte inputs
* 4-way SSE4.1 implementation for double SHA256 on 64-byte inputs
* Use SHA256D64 in Merkle root computation
* Specialized double sha256 for 64 byte inputs
* Refactor SHA256 code
* Benchmark Merkle root computation
* bench: Use non-throwing ParseDouble(...) instead of throwing boost::lexical_cast(...)
* doc: split FreeBSD build instructions out of build-unix.md
* qa: Avoid checking reject code for now
* qa: Fixup setting of PATH env var
* [wallets] [docs] Add release notes for createwallet RPC.
* [wallet] [tests] Add tests for `createwallet` RPC.
* [wallet] [rpc] Add `createwallet` RPC
* Fix \"gmake check\" under OpenBSD 6.3 (probably
*BSD): Avoid using GNU grep specific regexp handling
* travis: Skip cache for lint stage
* bench: Don\'t return a bool from main
* Generic TransactionSignatureCreator works with both CTransaction and CMutableTransaction
* Fix typos
* Test gArgs erroring on unknown args
* Give an error and exit if there are unknown parameters
* Use a struct for arguments and nested map for categories
* Wallet: Refactor ReserveKeyFromKeyPool for safety
* Remove template matching and pseudo opcodes
* Stop translating command line options
* doc: update bitcoin-dot-org links in release-process.md
* Travis: Build tests on Ubuntu 18.04 with docker
* doc: remove leftover check-doc documentation
* Ensure gitian-build.sh uses bash
* test: Move linters to test/lint, add readme
* net: Add option `-enablebip61` to configure sending of BIP61 notifications
* Qt/Bugfix: fix handling default wallet with no name
* Make handling of invalid in IsMine more uniform
* Add some checks for invalid recursion in IsMine
* Simplify IsMine logic
* Make IsMine stop distinguishing solvable/unsolvable
* Make coincontrol use IsSolvable to determine solvability
* Qt: use [default wallet] as name for wallet with no name
* docs: Update OpenBSD build instructions for OpenBSD 6.3
* build: split warnings out of CXXFLAGS
* Increased max width of amount field to prevent number overflow bug.
* Declare TorReply parsing functions in torcontrol_tests
* Fix FreeBSD build by including utilstrencodings.h
* wallet: Use shared pointer to retain wallet instance
* net: Serve blocks directly from disk when possible
* Cache witness hash in CTransaction
* Make CMutableTransaction constructor explicit
* Tests: Add data file
* Tests: Test new getblockstats RPC
* RPC: Introduce getblockstats
* Refactor: RPC: Separate GetBlockChecked() from getblock()
* trivial: Mark overrides as such.
* [wallet] Fix incorrect comment for DeriveNewSeed.
* Revert \"Merge #12870: make clean removes src/qt/moc_ files\"
* [docs] Add release notes for HD master key -> HD seed rename
* [rpc] [wallet] Add \'hdmasterkeyid\' alias return values.
* [refactor] manually change remaining instances of master key to seed.
* scripted-diff: Rename master key to seed
* Add circular dependencies script
* replace modulus with FastMod
* fixup! ui: Support wallets loaded dynamically
* ui: Support wallets loaded dynamically
* ui: Remove unnecessary variable fFirstWallet
* [qt] Added satoshi unit \"Satoshi (sat)\" will be displayed in dropdowns and status bars. \"sat\" will be used when appended to numbers.
* [qt] BitcoinUnits::format with zero decimals Formatting with zero decimals will now result in 123 instead of 123.0
* break circular dependency: random/sync -> util -> random/sync
* GUI: Allow generating Bech32 addresses with a legacy-address default
* [docs] Add release notes for `loadwallet` RPC.
* [wallet] [tests] Test loadwallet
* [wallet] [rpc] Add loadwallet RPC
* [wallet] Pass error message back from CWallet::Verify()
* [wallet] Add CWallet::Verify function
* [wallet] setup wallet background flushing in WalletInit directly
* [wallet] Fix potential memory leak in CreateWalletFromFile
* Do not unlock cs_main in ABC unless we\'ve actually made progress.
* [gui] Add proxy icon in statusbar
* scheduler: Add Clang thread safety annotations for variables guarded by m_cs_callbacks_pending
* Tighten up bech32::Decode(); add tests.
* Break circular dependency: chain -> pow -> chain
* [qt]: changes sendcoinsdialog\'s box layout for improved readability.
* Add assertion to guide static analyzers. Clang Static Analyzer needs this guidance.
* Fix dead stores. Values were stored but never read. Limit scope.
* test: Ensure that recursive -includeconf produces appropriate warnings
* util: warn about recursive -includeconf arguments in configuration files
* Add Clang thread safety analysis annotations
* Fix missing locking in CTxMemPool::setSanityCheck(double dFrequency)
* Fix missing locking in CTxMemPool::check(const CCoinsViewCache
*pcoins)
* wallet: Add Clang thread safety annotations for variables guarded by cs_db
* Make --enable-debug to pick better options
* Add compile time checking for all cs_wallet runtime locking assertions
* wallet: Improve logging when BerkeleyDB environment fails to close
* wallet: Reset BerkeleyDB handle after connection fails
* Add Clang thread safety annotations for variables guarded by cs_warnings
* Add Clang thread safety annotations for variables guarded by cs_nTimeOffset
* Add Clang thread safety annotations for variables guarded by cs_rpcWarmup
* [tests] Remove spurious error log in p2p_segwit.py
* Bump wallet version for pre split keypool
* Use a keypool of presplit keys after upgrading to hd chain split
* Allow -upgradewallet to upgradewallets to HD
* Test sethdseed
* Add \'sethdseed\' RPC to initialize or replace HD seed
* Separate HaveKey function that checks whether a key is in a keystore
* Enable Travis checking for two Python linting rules we are currently not violating
* travis: Rename the build stage \"check_doc\" to \"lint\"
* Bugfix: ensure consistency of m_failed_blocks after reconsiderblock
* qa: Pad scriptPubKeys to get minimum sized txs
* Add transaction tests for constant scriptCode
* Add constant scriptCode policy in non-segwit scripts
* Enable W191 and W291 flake8 checks. Remove trailing whitespace from Python files. Convert tabs to spaces.
* [tests] Remove \'account\' API from wallet functional tests
* [qa] Avoid printing to console during cache creation
* Make gArgs aware of the arguments
* Bugfix: the end of a reorged chain is invalid when connect fails
* [tests] Allow stderr to be tested against specified string
* [Tests] Use LIBC_FATAL_STDERR_=1 in tests
* [Tests] Write stdout/stderr to datadir instead of temp file.
* qa: Remove unused option --srcdir
* [test] fundrawtransaction: lock watch-only shared address
* [bitcoin-11004] creating another jobs for the CHECK_DOC=1, separated from the core jobs
* doc: Add release notes for -includeconf
* test: Test includeconf parameter.
* -includeconf= support in config handler, for including external configuration files
* tests: Add test for 64-bit PE, modify 32-bit test results
* Fix rescanblockchain rpc to property report progress
* Print a log message if we fail to shrink the debug log file
* Handle unsuccessful fseek(...):s
* Remove enum specifier (to avoid re-declare scoped enum as unscoped)
* [logging] Don\'t incorrectly log that REJECT messages are unknown.
* Add compile time checking for all ::mempool.cs runtime locking assertions
* Make it clear which functions that are intended to be translation unit local
* doc: Mention good first issue list in CONTRIBUTING.md
* refactor: Avoid extra lookups of mapAddressBook in listunspent RPC
* rpc: Reduce cs_main lock in listunspent
* logging: remove unused return value from LogPrintStr
* logging: Fix potential use-after-free in LogPrintStr(...)
* Trivial: s/SetBestChain/ChainStateFlushed in comments after #13106
* Get rid of ambiguous OutputType::NONE value
* wallet: Interrupt rescan on shutdown request
* Make sure initialization occurs in the constructor
* Remove redundant initializations from the constructor
* Initialize non-static class members where they are defined
* Initialize editStatus and autoCompleter. Previously not initialized where defined or in constructor.
* devtools: Make linter check LogPrint calls
* Add missing newlines to LogPrint debug logging
* Simplify semantics of ChainStateFlushed callback
* scripted-diff: Rename SetBestChain callback ChainStateFlushed
* rpcauth: Make it possible to provide a custom password
* [doc] qt: fixes broken link on readme
* [tests] Fix flake8 warnings in several wallet functional tests
* Revert #12769: Add systemd service to bitcoind in debian package
* Add systemd service for bitcoind
* Sync contrib/debian from Matt Corallo\'s PPA
* [Docs] Add version footnote to tor.md
* Remove python2 from configure.ac
* util: Store debug log file path in BCLog::Logger member.
* scripted-diff: Rename BCLog::Logger member variables.
* util: Refactor GetLogCategory.
* util: Encapsulate logCategories within BCLog::Logger.
* util: Move debug file management functions into Logger.
* util: Establish global logger object.
* [tests] Fix race in rpc_deprecated.py
* wallet: Make vpwallets usage thread safe
* Add --failfast option to functional test runner
* nit: descendent should be spelled descendant even in the release-notes
* nit: fix typo for entry description string
* Remove script to clean up datadirs
* Add compile time checking for all cs_KeyStore runtime locking assertions
* Remove \"rpc\" category from GetWarnings
* rpc: Move RPC_FORBIDDEN_BY_SAFE_MODE code to reserved section
* Remove Safe mode
* Use anonymous namespace instead of static functions
* Mention removal of bare multisig IsMine in release notes
* Do not treat bare multisig as IsMine
* Optimization: only test for witness scripts at top level
* Track difference between scriptPubKey and P2SH execution in IsMine
* Switch to a private version of SigVersion inside IsMine
* Do not expose SigVersion argument to IsMine
* Remove unused IsMine overload
* Make CScript -> CScriptID conversion explicit
* qa: Clarify documentation for send_txs_and_test
* qa: Add test for orphan handling
* Fix for utiltime to compile with msvc.
* list the types of scripts we should consider for a witness program
* p2wpkh, p2wsh and p2sh-nested scripts in decodescript
* Add new fee structure with all sub-fields denominated in BTC
* [doc] Include txindex changes in the release notes.
* [test] Simple unit test for TxIndex.
* [rpc] Public interfaces to GetTransaction block until synced.
* [index] Move disk IO logic from GetTransaction to TxIndex::FindTx.
* [validation] Replace tx index code in validation code with TxIndex.
* [init] Initialize and start TxIndex in init code.
* [index] TxIndex method to wait until caught up.
* [index] Allow TxIndex sync thread to be interrupted.
* [index] TxIndex initial sync thread.
* [index] Create new TxIndex class.
* [db] Migration for txindex data to new, separate database.
* [db] Create separate database for txindex.
* Don\'t test against min relay fee information in mining_prioritisetransaction.py
* [tests] [qt] Introduce qt/test/util with a generalized ConfirmMessage
* [qt] Display more helpful message when adding a send address has failed
* Add purpose arg to Wallet::getAddress
* test: add rpcauth-test to AC_CONFIG_LINKS to fix out-of-tree make check
* [tests] Make rpcauth.py testable and add unit tests
* qa: Normalize executable location
* bench: Amend mempool_eviction test for witness txs
* bench: Move constructors out of mempool_eviction hot loop
* wallet: Make fee settings non-static members
* [docs] Add release notes for deprecated \'account\' API
* [wallet] [tests] Add tests for accounts/labels APIs
* [wallet] [rpc] Deprecate wallet \'account\' API
* [wallet] [rpc] Deprecate account RPC methods
* [tests] Set -deprecatedrpc=accounts in tests
* [tests] Rename rpc_listtransactions.py to wallet_listtransactions.py
* [wallet] [rpc] Remove duplicate entries in rpcwallet.cpp\'s CRPCCommand table
* test: Add rpcauth pair that generated by rpcauth
* Asserts that the tx version number is a signed 32-bit integer.
* Output values for \"min relay fee not met\" error
* [qa] Attach node index to test_node AssertionError and print messages
* qt: Don\'t log to console by default
* [MOVEONLY] Turn CScript::GetOp2 into a function and move to cpp
* [MOVEONLY] Move CSCript::FindAndDelete to interpreter
* Delete unused non-const-iterator CSCript::GetOp overloads
* Make iterators in CScript::FindAndDelete const
* [wallet] [tests] Test disallowed multiwallet params
* rpc: Interrupt block generation on shutdown request
* [doc] Add comments for chainparams.h, validation.cpp
* trivial: Fix relevent typo
* test: Add rpc_bind test to default-run tests
* Consistently log CValidationState on failure
* Add logging and error handling for file syncing
* scripted-diff: Rename CChainState::g_failed_blocks to m_failed_blocks
* wallet: Add HasWallets
* wallet: Add AddWallet, RemoveWallet, GetWallet and GetWallets
* refactor: Drop CWalletRef typedef
* [tests] Fix feature_block flakiness
* [tests] tidy up blocktools.py
* [tests] Fix flake8 warnings in blocktools.py
* [doc][trivial] no retargeting in regtest mode
* MOVEONLY: Move logging code from util.{h,cpp} to new files.
* [qa] Test that v0 segwit outputs can\'t be spent pre-activation
* Always enforce SCRIPT_VERIFY_WITNESS with P2SH
* [qa] Remove some pre-activation segwit tests
* Separate NULLDUMMY enforcement from SEGWIT enforcement
* Use P2SH consensus rules for all blocks
* trivial: Improve include comment in src/interfaces/wallet.h
* net: Minor accumulated cleanups
* node: Removed unused wallet-related methods from the Node interface.
* benchmark: Removed bench/perf.cpp
* test: Fix dangling wallet pointer in vpwallets
* depends: Add \'make clean\' and \'make clean-all\' rules
* Note new weight field in release-notes.
* Test new weight field in p2p_segwit
* Expose a transaction\'s weight via RPC
* tests: Avoid copies of CTransaction
* Fix inconsistent namespace formatting guidelines
* Print to console by default when not run with -daemon
* wallet: Refactor g_wallet_init_interface to const reference
* wallet: Make WalletInitInterface members const
* macOS: Prevent Xcode 9.3 build warnings
* [contrib] convert test-security-check to python3
* add lint tool to check python3 shebang
* Add config changes to release notes
* [tests] Unit tests for -testnet/-regtest in [test]/[regtest] sections
* ArgsManager: special handling for -regtest and -testnet
* [tests] Unit tests for network-specific config entries
* ArgsManager: Warn when ignoring network-specific config setting
* ArgsManager: limit some options to only apply on mainnet when in default section
* [tests] Use regtest section in functional tests configs
* [tests] Unit tests for config file sections
* ArgsManager: support config file sections
* ArgsManager: drop m_negated_args
* ArgsManager: keep command line and config file arguments separate
* tests: Remove redundant bytes²
* Enable additional flake8 rules
* Minor Python cleanups to make flake8 pass with the new rules enabled
* tests: Remove compatibility code not needed now when we\'re on Python 3
* [doc] Fix comment in FindForkInGlobalIndex
* correcting the array name from pnSeeds6 to pnSeed6
* Avoid std::locale/imbue in DateTimeStrFormat
* Give an error when rescan is aborted by the user
* Add cancel button to rescan progress dialog
* Increase signal-to-noise ratio in debug.log by adjusting log level when logging failed non-manual connect():s
* bitcoin-tx: Remove unused for loop
* Drop dead code CScript::Find
* logging: bypass timestamp formatting when not logging
* Modernize best block mutex/cv/hash variable naming
* Make DummySignatureCreator a singleton
* Make BaseSignatureCreator a pure interface
* debug log number of unknown wallet records on load
* Extract consts for WITNESS_V0 hash sizes
* speed up wallet_hd.py and clarify/augment checks
* Refine travis check for duplicate includes
* Logprint the start of a rescan
* Add shell script linting: Check for shellcheck warnings in shell scripts
* rpc: Drop redundant testing of signrawtransaction prevtxs args
* Document how FlushStateMode::NONE is handled
* test: Fix sign for expected values
* Fix illegal default `addProxy` and `addrSeparateProxyTor` settings.
* Introduce BigEndian wrapper and use it for netaddress ports
* Ignore macOS daemon() depracation warning
* [docs] Add release notes for wallet \'label\' API.
* [wallet] [rpc] introduce \'label\' API for wallet
* Support serialization as another type without casting
* adapt bumpfee change discard test to be more strict and add note on p2sh discrep
* wallet: Remove redundant lambda function arg in handleTransactionChanged
* Add P2P, Network, and Qt categories to the desktop icon
* [doc] devtools: Setup ots git integration
* Increase entropy in test temp directory name
* Reorder travis builds
* tests: run tests in parallel
* tests: split up actual tests and helper files
* Docs: fixed link, replaced QT with Qt
* added logging line back that was accidentally removed with #10762
* qa: Windows fixups for functional tests
* Add m_ prefix to WalletBatch::m_batch
* Update walletdb comment after renaming.
* scripted-diff: Rename wallet database classes
* util: Remove designator initializer from ScheduleBatchPriority
* util: Pass pthread_self() to pthread_setschedparam instead of 0
* Use explicit casting in cuckoocache\'s compute_hashes(...) to clarify integer conversion
* [Doc] Clarify the meaning of fee delta not being a fee rate in prioritisetransaction RPC
* Add Travis check for duplicate includes
* Remove duplicate includes
* test: Assert on correct variable
* [test] Add tests for self usage in arith_uint256
* [arith_uint256] Do not destroy
*this content if passed-in operator may reference it
* Tests: Add Metaclass for BitcoinTestFramework
* Use std::bind instead of boost::bind to re-lock the wallet
* Support serializing Span and use that instead of FLATDATA
* Add Slice: a (pointer, size) array view that acts like a container
* [tests] Add additional unit tests for -nofoo edge cases
* [tests] Check GetChainName works with config entries
* [tests] Add unit tests for ReadConfigStream
* ReadConfigStream: assume the stream is good
* Separate out ReadConfigStream from ReadConfigFile
* [tests] Add unit tests for GetChainName
* Move ChainNameFromCommandLine into ArgsManager and rename to GetChainName
* build: Show enabled sanitizers in configure output
* Shut down if trying to connect a corrupted block
* [logging] add lint-logs.sh to check for newline termination.
* [logging] Comment all continuing logs.
* tests: Add check for test suite name uniqueness in lint-tests.sh
* tests: Add note about uniqueness requirement for test suite names
* tests: Avoid test suite name collision in wallet crypto_tests
* scripted-diff: Avoid `interface` keyword to fix windows gitian build
* Set SCHED_BATCH priority on the loadblk thread.
* Make verify-commits.sh test that merges are clean
* doc: Add testmempoolaccept to release-notes
* doc: add qrencode to brew install instructions
* docs: Fix conflicting statements about initialization in developer notes
* wallet: Initialize m_last_block_processed to nullptr. Initialize fields where defined.
* Adding logging for loop iteration level in p2p_sendheaders.py
* [tests] simplify binary and hex response parsing in interface_rest.py
* [tests] only use 2 nodes in interface_rest.py
* [tests] refactor interface_rest.py to avoid code repetition
* [tests] Make json request building more consistent in interface_rest.py
* [tests] improve logging and documentation in interface_rest.py
* [tests] fix flake8 warnings in interface_rest.py test
* wallet: Refactor to WalletInitInterface
* const g_wallet_init_interface
* wallet: Make WalletInitInterface and DummyWalletInit private
* Add developer notes about blocking GUI code
* Use WalletBalances struct in Qt
* Remove direct bitcoin calls from qt/sendcoinsdialog.cpp
* Remove direct bitcoin access from qt/guiutil.cpp
* Remove direct bitcoin calls from qt transaction table files
* Remove direct bitcoin calls from qt/paymentserver.cpp
* Remove direct bitcoin calls from qt/coincontroldialog.cpp
* Remove most direct bitcoin calls from qt/walletmodel.cpp
* Remove direct bitcoin calls from qt/optionsdialog.cpp
* Remove direct bitcoin calls from qt/rpcconsole.cpp
* Remove direct bitcoin calls from qt/bantablemodel.cpp
* Remove direct bitcoin calls from qt/peertablemodel.cpp
* Remove direct bitcoin calls from qt/intro.cpp
* Remove direct bitcoin calls from qt/clientmodel.cpp
* Remove direct bitcoin calls from qt/splashscreen.cpp
* Remove direct bitcoin calls from qt/utilitydialog.cpp
* Remove direct bitcoin calls from qt/bitcoingui.cpp
* Remove direct bitcoin calls from qt/optionsmodel.cpp
* Remove direct bitcoin calls from qt/bitcoin.cpp
* Add src/interface/README.md
* doc: Use bitcoind in Tor documentation
* [tests] Remove Comparison Test Framework
* [tests] Remove bip9-softforks.py
* Make segwit failure due to CLEANSTACK violation return a SCRIPT_ERR_CLEANSTACK error code.
* Assert CPubKey::ValidLength to the pubkey\'s header-relevent size
* qa: Match full plain text by default
* [wallet] [rpc] [doc] importprivkey: hint about importmulti
* make clean removes src/qt/moc_ files
* [moveonly] Extract HelpRequested to dry up the help options testing
* [tests] Stop feature_block.py from blowing up memory.
* rpc: Add testmempoolaccept
* Avoid travis lint-include-guards error
* Add lint-include-guards.sh which checks include guard consistency
* Fix missing or inconsistent include guards
* Document include guard convention
* tests: Add lint-tests.sh which checks the test suite naming convention
* tests: Rename test suits not following the test suite naming convention
* tests: Add note about test suite naming convention
* Enable flake8 warning F841 (\"local variable \'foo\' is assigned to but never used\")
* Remove assigned but never used local variables
* [tests] Test starting bitcoind with -h and -version
* [tests] Change feature_csv_activation.py to use BitcoinTestFramework
* [tests] Move utility functions in feature_csv_activation.py out of class.
* [tests] Remove nested loops from feature_csv_activation.py
* [tests] improve logging in feature_csv_activation.py
* [tests] fix flake8 nits in feature_csv_activation.py
* Track negated arguments in the argument paser.
* Add additional tests for GetBoolArg()
* Reduce variable scopes
* init: Remove help text for non-existent -fuzzmessagestest arg
* contrib: Fix check-doc script regexes
* [Tests] fix a typo in TestNode.assert_start_raises_init_error()
* test: Remove travis checkout depth
* Add native support for serializing char arrays without FLATDATA
* Move compressor utility functions out of class
* [verify-commits] Add some additional useful documentation.
* Add Marco-expired-key-signed-commits to allow-revsig-commits
* Revert \"test: Update trust git root\".
* Bugfix: RPC: savemempool: Don\'t save until LoadMempool() is finished
* Add --with-sanitizers option to configure
* [contrib] fixup symbol-check.py Python3 support
* [contrib] fixup security-check.py Python3 support
* [tests] Improve assert message when wait_until() fails
* [tests] Change feature_block.py to use BitcoinTestFramework
* [tests] Add logging to feature_block.py
* [tests] Tidy up feature_block.py
* [tests] Fix flake8 warnings in feature_block.py
* [wallet] Add dummy wallet init class
* [wallet] Use global g_wallet_init_interface to init/destroy the wallet.
* [wallet] Create wallet init interface.
* [wallet] Move wallet init functions into WalletInit class.
* Improve formatting of developer notes
* [Tests] Use blockmaxweight where tests previously had blockmaxsize
* Fix error in memory usage calculation (unintended integer division)
* rpc: Adjust ifdef to avoid unreachable code
* Increase LevelDB max_open_files unless on 32-bit Unix.
* contrib: Remove unused import string
* Make base58 python contrib code work with python3
* Change all python files to use Python3
* test: List any failed tests at the end of test_runner output
* test: Make summary row bold-red if any test failed
* doc: Refer to witness reserved value as spec. in the BIP
* qa: Fix function names in feature_blocksdir
* [REST] Handle UTXO retrieval when ignoring the mempool
* Make CTxMemPool::isSpent() const
* -blocksdir: keep blockindex leveldb database in datadir
* QA: Add -blocksdir test
* Allow to optional specify the directory for the blocks storage
* Add username and ip logging for RPC method requests
* Move CKeyStore::cs_KeyStore to CBasicKeyStore
* Inline CKeyStore::AddKey(const CKey &) in CBasicKeyStore
* Introduce interface for signing providers
* doc: Add note about our preference for scoped enumerations (\"enum class\")
* init: Fix help message for checkblockindex
* scripted-diff: Convert 11 enums into scoped enums (C++11)
* do not truncate .dat extension for wallets in gui
* Qt: Remove unused method setupAmountWidget(...)
* [net] add seed.bitcoin.sprovoost.nl to DNS seeds
* shuffle selected coins before transaction finalization
* [config] Remove blockmaxsize option
* Qt: hide RPCConsole wallet selector when no wallets are present
* Qt: show wallet name in request dlg in case of multiwallet
* Qt: show wallet name in send confirmation dlg in case of multiwallet
* GUI: RPCConsole: Log wallet changes
* Qt: Get wallet name from WalletModel rather than passing it around
* Qt: When multiple wallets are used, include in notifications the name
* Qt: QComboBox::setVisible doesn\'t work in toolbars, so defer adding it at all until needed
* Qt: Add wallet selector to debug console
* Bugfix: RPC: Add missing UnregisterHTTPHandler for /wallet/
* Qt: Ensure UI updates only come from the currently selected walletView
* Qt: Add a combobox to toolbar to select from multiple wallets
* Qt: Load all wallets into WalletModels
* Docs: Improve documentation on standard communication channels
* add release note for sendmany output shuffling
* shuffle sendmany recipients ordering to shuffle tx outputs
* Rename wallet_accounts.py test
* Rename account to label where appropriate
* Test that BnB is not used when there are preset inputs
* Actually disable BnB when there are preset inputs
* Make FastRandomContext support standard C++11 RNG interface
* Provide relevant error message if datadir is not writable.
* fix nits: variable naming, typos
* Use best-fit strategy in Arena, now O(log(n)) instead O(n)
* qa: Use node.datadir instead of tmpdir in test framework
* qa: Allow for partial_match when checking init error
* [Tests] Require exact match in assert_start_raises_init_eror()
* [Tests] Move assert_start_raises_init_error method to TestNode
* use base58 map instead of strchr()
* Replace boost::call_once with std::call_once
* Fix typos
* tests: Remove unused argument max_invalid from check_estimates(...)
* Qt: Warn users about invalid-BIP21 URI bitcoin://
* Fix typos
* Remove unnecessary NONNEGATIVE_SIGNED
* scripted-diff: rename TestNode to TestP2PConn in tests
* tests: Test connecting with non-existing RPC cookie file
* tests: Test connecting to a non-existing server
* bitcoin-cli: Provide a better error message when bitcoind is not running
* Qt: remove \"new\" button during receive-mode in addressbook
* Remove unreachable help conditions
* Add static_assert to prevent VARINT()
* Document RPC method aliasing
* test: Use os.path.join consistently in feature_pruning tests
* wallet: Change output type globals to members
* Remove redundant checks for MSG_
* from configure.ac
* Do not check for main() in libminiupnpc
* ax_boost_{chrono,unit_test_framework}.m4: take changes from upstream
* Avoiding \'file\' function name from python2 with more descriptive variable naming
* Append scripts to new test_list array to fix bad assignment
* [Trivial] Simplify if-else blocks and more descriptive variable naming
* Remove redundant includes. Conform to header include guidelines.
* Support deserializing into temporaries
* Merge READWRITEMANY into READWRITE
* qt: Avoid querying unnecessary model data when filtering transactions
* Remove unused variable in SortForBlock
* Only call NotifyBlockTip when the active chain changes
* [tests] Add a (failing) test for waitforblockheight
* Add a test to make sure that negative effective values are filtered
* Benchmark BnB in the worst case where it exhausts
* Have SelectCoinsMinConf and SelectCoins use BnB or Knapsack and use it
* Move original knapsack solver tests to coinselector_tests.cpp
* Move current coin selection algorithm to coinselection.{cpp,h}
* Add tests for the Branch and Bound algorithm
* Remove coinselection.h -> wallet.h circular dependency
* Use a struct for output eligibility
* Move output eligibility to a separate function
* Implement Branch and Bound coin selection in a new file
* Store effective value, fee, and long term fee in CInputCoin
* Calculate and store the number of bytes required to spend an input
* docs: Update osx brew install instruction
* Ubuntu xenial first dependencies
* [qt] Add support to search the address book
* configure: UniValue 1.0.4 is required for pushKV(, bool)
* Apply hardening measurements in bitcoind systemd service file
* depends: biplist 1.0.3
* travis: Clone depth 1 unless $CHECK_DOC
* Polish interfaces around PeerLogicValidation
* [wallet] Get rid of CWalletTx default constructor
* [wallet] Construct CWalletTx objects in CommitTransaction
* Fix ComputeTimeSmart test failure with -DDEBUG_LOCKORDER
* [tests] Change invalidblockrequest to use BitcoinTestFramework
* [tests] Fix flake8 warnings in invalidblockrequest
* [test] Fix nits leftover from 11771
* Add LookupBlockIndex function
* Add missing cs_lock in CreateWalletFromFile
* Fix cs_main lock in LoadExternalBlockFile
* Lock cs_main while loading block index in AppInitMain
* Assert cs_main is held when accessing mapBlockIndex
* Split up and sanitize CAccountingEntry serialization
* Split up and sanitize CWalletTx serialization
* rpc: Update createrawtransaction examples
* [rpc] createrawtransaction: Accept sorted outputs
* rpc: Allow typeAny in RPCTypeCheck
* [qa] util: Remove unused sync_chain
* travis: Full clone for git subtree check
* Log fatal LevelDB errors more verbosely
* Remove redundant code in MutateTxSign(CMutableTransaction&, const std::string&)
* [script] lint-whitespace: improve print linenumber
* Format timestamps using ISO 8601 formatting (e.g. \"2018-02-28T12:34:56Z\")
* depends: Remove ccache
* Improve readability by removing redundant casts to same type (on all platforms)
* CheckMinimalPush comments are prescriptive
* simplify CheckMinimalPush checks, add safety assert
* Create new wallet databases as directories rather than files
* Allow wallet files not in -walletdir directory
* Allow wallet files in multiple directories
* qt: Remove TransactionTableModel::TxIDRole
* qa: Fix some tests to work on native windows
* Simplify Base32 and Base64 conversions
* Generalize ConvertBits
* [gitian] Add kallewoof key for signing
* [gitian] Re-order keys by owner first name alphabetic order
* Add tests of listreceivedbyaddress address filtering
* Add address filtering to listreceivedbyaddress
* Fix overly eager BIP30 bypass
* [tests] bind functional test nodes to 127.0.0.1
* Give hint about gitian not able to download
* Split off key_io_tests from base58_tests
* Split key_io (address/key encodings) off from base58
* Stop using CBase58Data for ext keys
* Replace CBitcoinSecret with {Encode,Decode}Secret
* Add a test for large tx output scripts with segwit input.
* [scripts] lint-whitespace: check last N commits or unstaged changes
* [scripts] lint-whitespace: use perl instead of grep -P
* net: Correct addrman logging
* [Tests] Check output of parent/child tx list from getrawmempool, getmempooldescendants, getmempoolancestors, and REST interface
* [RPC] Add list of child transactions to verbose output of getrawmempool
* doc: Mention configure without wallet in FreeBSD instructions
* [arith_uint256] Avoid unnecessary this-copy using prefix operator
* Add documentation to PeerLogicValidation interface and related functions
* Add test-before-evict discipline to addrman
* Add build support for \'gprof\' profiling.
* depends: patch pthread_set_name_np out of zeromq
* depends: zeromq 4.2.3
* Use std::thread::hardware_concurrency, instead of Boost, to determine available cores
* Remove deprecated PyZMQ call from Python ZMQ example
* qt: Set modal overlay hide button as default
* doc: SIGNER can contains space inside now.
* Add DynamicMemoryUsage() to LevelDB
* Don\'t test against the mempool min fee information in mempool_limit.py
* Stop special-casing phashBlock handling in validation for TBV
* Drop extra script variable in ProduceSignature
* Avoid unintentional unsigned integer wraparounds in tests
* depends: Only use D_DARWIN_C_SOURCE when building miniupnpc on darwin
* gitian-build.sh: fix signProg being recognized as two parameters
* [Trivial] link mentioned scripted-diff-commit
* docs: clarified systemd installation instructions in init.md for Ubuntu users.
* [doc] dev-notes: Members should be initialized
* Show a transaction\'s virtual size in its details dialog.
* Fix typos
* Fix ListCoins test failure due to unset g_wallet_allow_fallback_fee
* Fix typos and cleanup
* Remove useless string initialization.
* [docs] Minor improvements to Compatibility Notes
* [QA] add wallet-rbf test
* Disable wallet fallbackfee by default on mainnet
* Add setter for g_initial_block_download_completed
* [QA] add NODE_NETWORK_LIMITED address relay and sync test
* [QA] fix mininode CAddress ser/deser
* [QA] Allow addrman loopback tests (add debug option -addrmantest)
* Connect to peers signaling NODE_NETWORK_LIMITED when out-of-IBD
* Accept addresses with NODE_NETWORK_LIMITED flag
* Add tests for HexStr std::reverse_iterator cases
* Add tests for HexStr corner cases
* [qt] navigate to transaction history page after send
* Use memset() to optimize prevector::resize()
* Reduce redundant code of prevector and speed it up
* Add new prevector benchmarks.
* qa: Improve getchaintxstats functional test
* rpc: Refactor blockhash parse in getchaintxstats
* doc: Add historical release notes for 0.16.0
* Fix missing cs_main lock for GuessVerificationProgress()
* qa: Move common args to bitcoin.conf
* test: Plug memory leaks and stack-use-after-scope
* createmultisig no longer takes addresses
* Declare CMutableTransaction a struct in rawtransaction.h
* Bugfix: respect user defined configuration file (-conf) when open conf. file from QT settings
* Add test for signrawtransaction
* scripted-diff: change signrawtransaction to signrawtransactionwithwallet in tests
* Split signrawtransaction into wallet and non-wallet
* contrib: Add support for out-of-tree builds in gen-manpages.sh
* scripted-diff: validateaddress to getaddressinfo in tests
* Create getaddressinfo RPC and deprecate parts of validateaddress
* [rpc] Move DescribeAddressVisitor to rpc/util
* [rpc] split wallet and non-wallet parts of DescribeAddressVisitor
* Build: Add a makefile target for Doxygen documentation
* test: Fix bip68 sequence test to reflect updated rpc error message
* Revert \"[tests] bind functional test nodes to 127.0.0.1\"
* fixme: depends: Add D_DARWIN_C_SOURCE to miniupnpc CFLAGS
* [depends] latest config.guess and config.sub
* [depends] miniupnpc 2.0.20180203
* [depends] ccache 3.4.1
* [depends] expat 2.2.5
* Add some script tests related to BOOL ops and odd values like negative 0.
* [tests] bind functional test nodes to 127.0.0.1
* Consistently use FormatStateMessage in RPC error output
* Add test for \'mempool min fee not met\' rpc error
* qt: Initialize members in WalletModel
* Update mac_alias to 2.0.7
* Delete mac_alias patch
* Fix typo in test_runner.py causing error
* Remove redundant locks
* Do not un-mark fInMempool on wallet txn if ATMP fails.
* rpc: Reject deprecated reserveChangeKey in fundrawtransaction
* Improve \"Turn Windows Features On or Off\" step
* clientversion: Use full commit hash for commit-based version descriptions
* [tests] Change invalidtxrequest to use BitcoinTestFramework
* [tests] Fix flake8 warnings in invalidtxrequest
* [tests] Add P2PDataStore class
* [tests] Reduce NodeConn connection logging from info to debug
* Fix Windows build errors introduced in #10498
* scripted-diff: Use UniValue.pushKV instead of push_back(Pair())
* Squashed \'src/univalue/\' changes from 07947ff2da..51d3ab34ba
* Use ptrdiff_t type to more precisely indicate usage and avoid compiler warnings.
* qa: Prepare functional tests for Windows
* Fix a-vs-an typos
* boost: drop boost threads for [alert|block|wallet]notify
* boost: drop boost threads from torcontrol
* boost: remove useless threadGroup parameter from Discover
* boost: drop boost threads for upnp
* [scripts] gitian-builder.sh: fix --setup doc, LXC is default
* Refactor: One CBaseChainParams should be enough
* [docs] initial QT documentation, move Qt Creator instructions
* Avoid leaking prioritization information when relaying transactions
* Correct mempool mapTx comment
* [wallet] Indent only change of CWallet::AvailableCoins
* [wallet] Make CWallet::ListCoins atomic
* wallet: Disallow abandon of conflicted txes
* Enable flake8 warnings for all currently non-violated rules
* tests: Fix accidental redefinition of previously defined variable via list comprehension
* Enable flake8 warning for \"list comprehension redefines \'foo\' from line N\" (F812)
* [RPC] Remove deprecated addmultisigaddress return format
* [RPC] Remove deprecated createmultisig object
* [tests] Remove test for deprecated createmultsig option
* [rpc] Remove deprecated getmininginfo RPC option
* [rpc] remove deprecated estimatefee RPC
* [tests] Remove estimatefee from rpc_deprecated.py test
* [tests] Remove tests for deprecated estimatefee RPC
* [tests] Fix style warnings in feature_fee_estimation.py
* add fivepiece key fingerprint
* Refactor HaveKeys to early return on false result
* Add gitian PGP key: akx20000
* Use static_cast instead of C-style casts for non-fundamental types
* Implements a virtual destructor on the BaseRequestHandler class.
* Add AbsPathForConfigVal to consolidate datadir prefixing for path args
* Clarify help messages for path args to mention datadir prefix
* contrib: Remove xpired 522739F6 key
* contrib: Replace developer keys with list of pgp fingerprints
* Remove suggestion to make cloned repository world-writable for Windows build.
* net: Move misbehaving logging to net logging category
* Extend #11583 to include the most common message generated by non-contributing peers (port scanners?) 37% of the log default log entries for a node that has been up for ~24hrs was \"version handshake timeout...\"
* [rpc] Reduce scope of cs_main and cs_wallet locks in listtransactions
* Properly alphabetize output of CLI --help option.
* Document method for reviewers to verify chainTxData
* QA: segwit.py: s/find_unspent/find_spendable_utxo/
* Fix typos
* doc: Explain how to update chainTxData in release process
* Organise Linux build instructions to be categorised by distro
* Add NetBSD build instruction links
* doc: Update manpages to 0.16.99
* build: Bump version to 0.16.99
* [tests] Require all tests to follow naming convention
* fix WalletUpdateSpent
* prevent text from overlapping peercoin logo
* return full peercoin version in getnetworkinfo