Inside Bitcoin
Opening the selected file…
Inside Bitcoin
Opening the selected file…
The code behind the network, with room to understand it.
Release published 2026-10-28 · Snapshot fetched 2026-11-01. Latest stable release at fetch time; development branches and Git history are excluded. Only the selected code window and visible folders load here.
502### Wallet503- #9359 `f7ec7cf` Add test for CWalletTx::GetImmatureCredit() returning stale values (ryanofsky)504- #9576 `56ab672` [wallet] Remove redundant initialization (practicalswift)505- #9333 `fa625b0` Document CWalletTx::mapValue entries and remove erase of nonexistent "version" entry (ryanofsky)506- #9906 `72fb515` Disallow copy constructor CReserveKeys (instagibbs)507- #9369 `3178b2c` Factor out CWallet::nTimeSmart computation into a method (ryanofsky)508- #9830 `afcd7c0` Add safe flag to listunspent result (NicolasDorier)509- #9993 `c49355c` Initialize nRelockTime (pstratem)510- #9818 `3d857f3` Save watch only key timestamps when reimporting keys (ryanofsky)511- #9294 `f34cdcb` Use internal HD chain for change outputs (hd split) (jonasschnelli)512- #10164 `e183ea2` Wallet: reduce excess logic InMempool() (kewde)513- #10186 `c9ff4f8` Remove SYNC_TRANSACTION_NOT_IN_BLOCK magic number (jnewbery)514- #10226 `64c45aa` wallet: Use boost to more portably ensure -wallet specifies only a filename (luke-jr)515- #9827 `c91ca0a` Improve ScanForWalletTransactions return value (ryanofsky)516- #9951 `fa1ac28` Wallet database handling abstractions/simplifications (laanwj)517- #10265 `c29a0d4` [wallet] [moveonly] Check non-null pindex before potentially referencing (kallewoof)518- #10283 `a550f6e` Cleanup: reduce to one GetMinimumFee call signature (morcos)519- #10294 `e2b99b1` [Wallet] unset change position when there is no change (instagibbs)520- #10115 `d3dce0e` Avoid reading the old hd master key during wallet encryption (TheBlueMatt)521- #10341 `18c9deb` rpc/wallet: Workaround older UniValue which returns a std::string temporary for get_str (luke-jr)522- #10308 `94e5227` [wallet] Securely erase potentially sensitive keys/values (tjps)523- #10257 `ea1fd43` [test] Add test for getmemoryinfo (jimmysong)524- #10295 `ce8176d` [qt] Move some WalletModel functions into CWallet (ryanofsky)525- #10506 `7cc2c67` Fix bumpfee test after #10449 (ryanofsky)526- #10500 `098b01d` Avoid CWalletTx copies in GetAddressBalances and GetAddressGroupings (ryanofsky)527- #10455 `0747d33` Simplify feebumper minimum fee code slightly (ryanofsky)528- #10522 `2805d60` [wallet] Remove unused variables (practicalswift)529- #8694 `177433a` Basic multiwallet support (luke-jr)530- #10598 `7a74f88` Supress struct/class mismatch warnings introduced in #10284 (paveljanik)531- #9343 `209eef6` Don't create change at dust limit (morcos)532- #10744 `ed88e31` Use method name via __func__ macro (darksh1ne)533- #10712 `e8b9523` Add change output if necessary to reduce excess fee (morcos)534- #10816 `1c011ff` Properly forbid -salvagewallet and -zapwallettxes for multi wallet (morcos)535- #10235 `5cfdda2` Track keypool entries as internal vs external in memory (TheBlueMatt)536- #10330 `bf0a08b` [wallet] fix zapwallettxes interaction with persistent mempool (jnewbery)537- #10831 `0b01935` Batch flushing operations to the walletdb during top up and increase keypool size (gmaxwell)538- #10795 `7b6e8bc` No longer ever reuse keypool indexes (TheBlueMatt)539- #10849 `bde4f93` Multiwallet: simplest endpoint support (jonasschnelli)540- #10817 `9022aa3` Redefine Dust and add a discard_rate (morcos)541- #10883 `bf3b742` Rename -usewallet to -rpcwallet (morcos)542- #10604 `420238d` [wallet] [tests] Add listwallets RPC, include wallet name in `getwalletinfo` and add multiwallet test (jnewbery)543- #10885 `70888a3` Reject invalid wallets (promag)544- #10949 `af56397` Clarify help message for -discardfee (morcos)545- #10942 `2e857bb` Eliminate fee overpaying edge case when subtracting fee from recipients (morcos)546- #10995 `fa64636` Fix resendwallettransactions assert failure if -walletbroadcast=0 (TheBlueMatt)547- #11022 `653a46d` Basic keypool topup (jnewbery)548- #11081 `9fe1f6b` Add length check for CExtKey deserialization (jonasschnelli, guidovranken)549- #11044 `4ef8374` [wallet] Keypool topup cleanups (jnewbery)550- #11145 `e51bb71` Fix rounding bug in calculation of minimum change (morcos)551- #9605 `779f2f9` Use CScheduler for wallet flushing, remove ThreadFlushWalletDB (TheBlueMatt)552- #10108 `4e3efd4` ApproximateBestSubset should take inputs by reference, not value (RHavar)554### Tests and QA555- #9744 `8efd1c8` Remove unused module from rpc-tests (34ro)556- #9657 `7ff4a53` Improve rpc-tests.py (jnewbery)557- #9766 `7146d96` Add --exclude option to rpc-tests.py (jnewbery)558- #9577 `d6064a8` Fix docstrings in qa tests (jnewbery)559- #9823 `a13a417` qa: Set correct path for binaries in rpc tests (MarcoFalke)560- #9847 `6206252` Extra test vector for BIP32 (sipa)561- #9350 `88c2ae3` [Trivial] Adding label for amount inside of tx_valid/tx_invalid.json (Christewart)562- #9888 `36afd4d` travis: Verify commits only for one target (MarcoFalke)563- #9904 `58861ad` test: Fail if InitBlockIndex fails (laanwj)564- #9828 `67c5cc1` Avoid -Wshadow warnings in wallet_tests (ryanofsky)565- #9832 `48c3429` [qa] assert_start_raises_init_error (NicolasDorier)566- #9739 `9d5fcbf` Fix BIP68 activation test (jnewbery)567- #9547 `d32581c` bench: Assert that division by zero is unreachable (practicalswift)568- #9843 `c78adbf` Fix segwit getblocktemplate test (jnewbery)569- #9929 `d5ce14e` tests: Delete unused function _rpchost_to_args (laanwj)570- #9555 `19be26a` [test] Avoid reading a potentially uninitialized variable in tx_invalid-test (transaction_tests.cpp) (practicalswift)571- #9945 `ac23a7c` Improve logging in bctest.py if there is a formatting mismatch (jnewbery)572- #9768 `8910b47` [qa] Add logging to test_framework.py (jnewbery)573- #9972 `21833f9` Fix extended rpc tests broken by #9768 (jnewbery)574- #9977 `857d1e1` QA: getblocktemplate_longpoll.py should always use >0 fee tx (sdaftuar)575- #9970 `3cc13ea` Improve readability of segwit.py, smartfees.py (sdaftuar)576- #9497 `2c781fb` CCheckQueue Unit Tests (JeremyRubin)577- #10024 `9225de2` [trivial] Use log.info() instead of print() in remaining functional test cases (jnewbery)578- #9956 `3192e52` Reorganise qa directory (jnewbery)579- #10017 `02d64bd` combine_logs.py - aggregates log files from multiple bitcoinds during functional tests (jnewbery)580- #10047 `dfef6b6` [tests] Remove unused variables and imports (practicalswift)581- #9701 `a230b05` Make bumpfee tests less fragile (ryanofsky)582- #10053 `ca20923` [test] Allow functional test cases to be skipped (jnewbery)583- #10052 `a0b1e57` [test] Run extended tests once daily in Travis (jnewbery)584- #10069 `1118493` [QA] Fix typo in fundrawtransaction test (NicolasDorier)585- #10083 `c044f03` [QA] Renaming rawTx into rawtx (NicolasDorier)586- #10073 `b1a4f27` Actually run assumevalid.py (jnewbery)587- #9780 `c412fd8` Suppress noisy output from qa tests in Travis (jnewbery)588- #10096 `79af9fb` Check that all test scripts in test/functional are being run (jnewbery)589- #10076 `5b029aa` [qa] combine_logs: Use ordered list for logfiles (MarcoFalke)590- #10107 `f2734c2` Remove unused variable. Remove accidental trailing semicolons in Python code (practicalswift)591- #10109 `8ac8041` Remove SingleNodeConnCB (jnewbery)592- #10114 `edc62c9` [tests] sync_with_ping should assert that ping hasn't timed out (jnewbery)593- #10128 `427d2fd` Speed Up CuckooCache tests (JeremyRubin)594- #10072 `12af74b` Remove sources of unreliablility in extended functional tests (jnewbery)595- #10077 `ebfd653` [qa] Add setnetworkactive smoke test (MarcoFalke)596- #10152 `080d7c7` [trivial] remove unused line in Travis config (jnewbery)597- #10159 `df1ca9e` [tests] color test results and sort alphabetically (jnewbery)598- #10124 `88799ea` [test] Suppress test logging spam (jnewbery)599- #10142 `ed09dd3` Run bitcoin_test-qt under minimal QPA platform (ryanofsky)600- #9949 `a27dbc5` [bench] Avoid function call arguments which are pointers to uninitialized values (practicalswift)601- #10187 `b44adf9` tests: Fix test_runner return value in case of skipped test (laanwj)602- #10197 `d86bb07` [tests] Functional test warnings (jnewbery)603- #10219 `9111df9` Tests: Order Python Tests Differently (jimmysong)604- #10229 `f3db4c6` Tests: Add test for getdifficulty (jimmysong)605- #10224 `2723bcd` [test] Add test for getaddednodeinfo (jimmysong)606- #10023 `c530c15` [tests] remove maxblocksinflight.py (functionality covered by other test) (jnewbery)607- #10097 `1b25b6d` Move zmq test skipping logic into individual test case (jnewbery)608- #10272 `54e2d87` [Tests] Prevent warning: variable 'x' is uninitialized (paveljanik)609- #10225 `e0a7e19` [test] Add aborttrescan tests (kallewoof)610- #10278 `8254a8a` [test] Add Unit Test for GetListenPort (jimmysong)611- #10280 `47535d7` [test] Unit test amount.h/amount.cpp (jimmysong)612- #10256 `80c3a73` [test] Add test for gettxout to wallet.py (jimmysong)613- #10264 `492d22f` [test] Add tests for getconnectioncount, getnettotals and ping (jimmysong)614- #10169 `8f3e384` [tests] Remove func test code duplication (jnewbery)615- #10198 `dc8fc0c` [tests] Remove is_network_split from functional test framework (jnewbery)616- #10255 `3c5e6c9` [test] Add test for listaddressgroupings (jimmysong)617- #10137 `75171f0` Remove unused import. Remove accidental trailing semicolons (practicalswift)618- #10307 `83073de` [tests] allow zmq test to be run in out-of-tree builds (jnewbery)619- #10344 `e927483` [tests] Fix abandonconflict.py intermittency (jnewbery)620- #10318 `170bc2c` [tests] fix wait_for_inv() (jnewbery)621- #10171 `fff72de` [tests] Add node methods to test framework (jnewbery)622- #10352 `23d78c4` test: Add elapsed time to RPC tracing (laanwj)623- #10342 `6a796b2` [tests] Improve mempool_persist test (jnewbery)624- #10287 `776ba23` [tests] Update Unit Test for addrman.h/addrman.cpp (jimmysong)625- #10365 `7ee5236` [tests] increase timeouts in sendheaders test (jnewbery)626- #10361 `f6241b3` qa: disablewallet: Check that wallet is really disabled (MarcoFalke)627- #10371 `4b766fc` [tests] Clean up addrman_tests.cpp (jimmysong)628- #10253 `87abe20` [test] Add test for getnetworkhashps (jimmysong)629- #10376 `8bd16ee` [tests] fix disconnect_ban intermittency (jnewbery)630- #10374 `5411997` qa: Warn when specified test is not found (MarcoFalke)631- #10405 `0542978` tests: Correct testcase in script_tests.json for large number OP_EQUAL (laanwj)632- #10429 `6b99daf` tests: fix spurious addrman test failure (theuni)633- #10433 `8e57256` [tests] improve tmpdir structure (jnewbery)634- #10415 `217b416` [tests] Speed up fuzzing by ~200x when using afl-fuzz (practicalswift)635- #10445 `b4b057a` Add test for empty chain and reorg consistency for gettxoutsetinfo (gmaxwell)636- #10423 `1aefc94` [tests] skipped tests should clean up after themselves (jnewbery)637- #10359 `329fc1d` [tests] functional tests should call BitcoinTestFramework start/stop node methods (jnewbery)638- #10514 `e103b3f` Bugfix: missing == 0 after randrange (sipa)639- #10515 `c871f32` [test] Add test for getchaintxstats (jimmysong)640- #10509 `bea5b00` Remove xvfb configuration from travis (ryanofsky)641- #10535 `30853e1` [qa] fundrawtx: Fix shutdown race (MarcoFalke)642- #9909 `300f8e7` tests: Add FindEarliestAtLeast test for edge cases (ryanofsky)643- #10331 `75e898c` Share config between util and functional tests (jnewbery)644- #10321 `e801084` Use FastRandomContext for all tests (sipa)645- #10524 `6c2d81f` [tests] Remove printf(...) (practicalswift)646- #10547 `71ab6e5` [tests] Use FastRandomContext instead of boost::random::{mt19937,uniform_int_distribution} (practicalswift)647- #10551 `6702617` [Tests] Wallet encryption functional tests (achow101)648- #10555 `643fa0b` [tests] various improvements to zmq_test.py (jnewbery)649- #10533 `d083bd9` [tests] Use cookie auth instead of rpcuser and rpcpassword (achow101)650- #10632 `c68a9a6` qa: Add stopatheight test (MarcoFalke)651- #10636 `4bc853b` [qa] util: Check return code after closing bitcoind proc (MarcoFalke)652- #10662 `e0a7801` Initialize randomness in benchmarks (achow101)653- #10612 `7c87a9c` The young person's guide to the test_framework (jnewbery)654- #10659 `acb1153` [qa] blockchain: Pass on closed connection during generate call (MarcoFalke)655- #10690 `416af3e` [qa] Bugfix: allow overriding extra_args in ComparisonTestFramework (sdaftuar)656- #10556 `65cc7aa` Move stop/start functions from utils.py into BitcoinTestFramework (jnewbery)657- #10704 `dd07f47` [tests] nits in dbcrash.py (jnewbery)658- #10743 `be82498` [test] don't run dbcrash.py on Travis (jnewbery)659- #10761 `d3b5870` [tests] fix replace_by_fee.py (jnewbery)660- #10759 `1d4805c` Fix multi_rpc test for hosts that dont default to utf8 (TheBlueMatt)661- #10190 `e4f226a` [tests] mining functional tests (including regression test for submitblock) (jnewbery)662- #10739 `1fc783f` test: Move variable `state` down where it is used (paveljanik)663- #9980 `fee0d80` Fix mem access violation merkleblock (Christewart)664- #10893 `0c173a1` [QA] Avoid running multiwallet.py twice (jonasschnelli)665- #10927 `9d5e8f9` test: Make sure wallet.backup is created in temp path (laanwj)666- #10899 `f29d5db` [test] Qt: Use _putenv_s instead of setenv on Windows builds (brianmcmichael)667- #10912 `5c8eb79` [tests] Fix incorrect memory_cleanse(…) call in crypto_tests.cpp (practicalswift)668- #11001 `fa8a063` [tests] Test disconnecting unsupported service bits logic (jnewbery)669- #10695 `929fd72` [qa] Rewrite BIP65/BIP66 functional tests (sdaftuar)670- #10963 `ecd2135` [bench] Restore format state of cout after printing with std::fixed/setprecision (practicalswift)671- #11025 `e5d26e4` qa: Fix inv race in example_test (MarcoFalke)672- #10765 `2c811e0` Tests: address placement should be deterministic by default (ReneNyffenegger)673- #11000 `ac016e1` test: Add resendwallettransactions functional tests (promag)674- #11032 `aeb3175` [qa] Fix block message processing error in sendheaders.py (sdaftuar)675- #10105 `0b9fb68` [tests] fixup - make all Travis test runs quiet, non just cron job runs (jnewbery)676- #10222 `6ce7337` [tests] test_runner - check unicode (jnewbery)677- #10327 `35da2ae` [tests] remove import-abort-rescan.py (jnewbery)678- #11023 `bf74d37` [tests] Add option to attach a python debugger if functional test fails (jnewbery)679- #10565 `8c2098a` [coverage] Remove subtrees and benchmarks from coverage report (achow101)681### Miscellaneous682- #9871 `be8ba2c` Add a tree sha512 hash to merge commits (sipa)683- #9821 `d19d45a` util: Specific GetOSRandom for Linux/FreeBSD/OpenBSD (laanwj)684- #9903 `ba80a68` Docs: add details to -rpcclienttimeout doc (ian-kelling)685- #9910 `53c300f` Docs: correct and elaborate -rpcbind doc (ian-kelling)686- #9905 `01b7cda` [contrib] gh-merge: Move second sha512 check to the end (MarcoFalke)687- #9880 `4df8213` Verify Tree-SHA512s in merge commits, enforce sigs are not SHA1 (TheBlueMatt)688- #9932 `00c13ea` Fix verify-commits on travis and always check top commit's tree (TheBlueMatt)689- #9952 `6996e06` Add historical release notes for 0.14.0 (laanwj)690- #9940 `fa99663` Fix verify-commits on OSX, update for new bad Tree-SHA512, point travis to different keyservers (TheBlueMatt)691- #9963 `8040ae6` util: Properly handle errors during log message formatting (laanwj)692- #9984 `cce056d` devtools: Make github-merge compute SHA512 from git, instead of worktree (laanwj)693- #9995 `8bcf934` [doc] clarify blockchain size and pruning (askmike)694- #9734 `0c17afc` Add updating of chainTxData to release process (sipa)695- #10063 `530fcbd` add missing spaces so that markdown recognizes headline (flack)696- #10085 `db1ae54` Docs: remove 'noconnect' option (jlopp)697- #10090 `8e4f7e7` Update bitcoin.conf with example for pruning (coinables)698- #9424 `1a5aaab` Change LogAcceptCategory to use uint32_t rather than sets of strings (gmaxwell)699- #10036 `fbf36ca` Fix init README format to render correctly on github (jlopp)700- #10058 `a2cd0b0` No need to use OpenSSL malloc/free (tjps)701- #10123 `471ed00` Allow debug logs to be excluded from specified component (jnewbery)702- #10104 `fadf078` linearize script: Option to use RPC cookie (achow101)703- #10162 `a3a2160` [trivial] Log calls to getblocktemplate (jnewbery)704- #10155 `928695b` build: Deduplicate version numbers (laanwj)705- #10211 `a86255b` [doc] Contributor fixes & new "finding reviewers" section (kallewoof)706- #10250 `1428f30` Fix some empty vector references (sipa)707- #10270 `95f5e44` Remove Clang workaround for Boost 1.46 (fanquake)708- #10263 `cb007e4` Trivial: fix fee estimate write error log message (CryptAxe)709- #9670 `bd9ec0e` contrib: github-merge improvements (laanwj)710- #10260 `1d75597` [doc] Minor corrections to osx dependencies (fanquake)711- #10189 `750c5a5` devtools/net: add a verifier for scriptable changes. Use it to make CNode::id private (theuni)712- #10322 `bc64b5a` Use hardware timestamps in RNG seeding (sipa)713- #10381 `7f2b9e0` Shadowing warnings are not enabled by default, update doc accordingly (paveljanik)714- #10380 `b6ee855` [doc] Removing comments about dirty entries on txmempool (madeo)715- #10383 `d0c37ee` [logging] log system time and mock time (jnewbery)716- #10404 `b45a52a` doc: Add logging to FinalizeNode() (sdaftuar)717- #10388 `526e839` Output line to debug.log when IsInitialBlockDownload latches to false (morcos)718- #10372 `15254e9` Add perf counter data to GetStrongRandBytes state in scheduler (TheBlueMatt)719- #10461 `55b72f3` Update style guide (sipa)720- #10486 `10e8c0a` devtools: Retry after signing fails in github-merge (laanwj)721- #10447 `f259263` Make bitcoind invalid argument error message specific (laanwj)722- #10495 `6a38b79` contrib: Update location of seeds.txt (laanwj)723- #10469 `b6b150b` Fixing typo in rpcdump.cpp help message (keystrike)724- #10451 `27b9931` contrib/init/bitcoind.openrcconf: Don't disable wallet by default (luke-jr)725- #10323 `00d3692` Update to latest libsecp256k1 master (sipa)726- #10422 `cec9e1e` Fix timestamp in fee estimate debug message (morcos)727- #10566 `5d034ee` [docs] Use the "domain name setup" image (previously unused) in the gitian docs (practicalswift)728- #10534 `a514ac3` Clarify prevector::erase and avoid swap-to-clear (sipa)729- #10575 `22ec768` Header include guideline (sipa)730- #10480 `fbf5d3b` Improve commit-check-script.sh (sipa)731- #10502 `1ad3d4e` scripted-diff: Remove BOOST_FOREACH, Q_FOREACH and PAIRTYPE (jtimon)732- #10377 `b63be2c` Use rdrand as entropy source on supported platforms (sipa)733- #9895 `228c319` Turn TryCreateDirectory() into TryCreateDirectories() (benma)734- #10602 `d76e84a` Make clang-format use C++11 features (e.g. A<A<int>> instead of A<A<int> >) (practicalswift)735- #10623 `c38f540` doc: Add 0.14.2 release notes (MarcoFalke)736- #10276 `b750b33` contrib/verifybinaries: allow filtering by platform (knocte)737- #10248 `01c4b14` Rewrite addrdb with less duplication using CHashVerifier (sipa)738- #10577 `232508f` Add an explanation of quickly hashing onto a non-power of two range (gmaxwell)739- #10608 `eee398f` Add a comment explaining the use of MAX_BLOCK_BASE_SIZE (gmaxwell)740- #10728 `7397af9` fix typo in help text for removeprunedfunds (AkioNak)741- #10193 `6dbcc74` scripted-diff: Remove #include <boost/foreach.hpp> (jtimon)742- #10676 `379aed0` document script-based return fields for validateaddress (instagibbs)743- #10651 `cef4b5c` Verify binaries from bitcoincore.org and bitcoin.org (TheBlueMatt)744- #10786 `ca4c545` Add PR description to merge commit in github-merge.py (sipa)745- #10812 `c5904e8` [utils] Allow bitcoin-cli's -rpcconnect option to be used with square brackets (jnewbery)746- #10842 `3895e25` Fix incorrect Doxygen tag (@ince → @since). Doxygen parameter name matching (practicalswift)747- #10681 `df0793f` add gdb attach process to test README (instagibbs)748- #10789 `1124328` Punctuation/grammer fixes in rpcwallet.cpp (stevendlander)749- #10655 `78f307b` Properly document target_confirmations in listsinceblock (RHavar)750- #10917 `5c003cb` developer-notes: add reference to snake_case and PascalCase (benma)
Independent explanations by MyBitcoinExplorer. Not affiliated with or endorsed by Bitcoin Core. Guides are educational and do not replace the source or its tests.
Bitcoin Core source © its contributors, distributed under the MIT license. Original notices and bundled third-party licenses are retained in the source tree.