Inside Bitcoin
Opening the selected file…
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.
1Bitcoin Core version 27.0 is now available from:3<https://bitcoincore.org/bin/bitcoin-core-27.0/>5This release includes new features, various bug fixes and performance6improvements, as well as updated translations.8Please report bugs using the issue tracker at GitHub:10<https://github.com/bitcoin/bitcoin/issues>12To receive security and update notifications, please subscribe to:14<https://bitcoincore.org/en/list/announcements/join/>16How to Upgrade17==============19If you are running an older version, shut it down. Wait until it has completely20shut down (which might take a few minutes in some cases), then run the21installer (on Windows) or just copy over `/Applications/Bitcoin-Qt` (on macOS)22or `bitcoind`/`bitcoin-qt` (on Linux).24Upgrading directly from a version of Bitcoin Core that has reached its EOL is25possible, but it might take some time if the data directory needs to be migrated. Old26wallet versions of Bitcoin Core are generally supported.28Compatibility29==============31Bitcoin Core is supported and extensively tested on operating systems32using the Linux Kernel 3.17+, macOS 11.0+, and Windows 7 and newer. Bitcoin33Core should also work on most other Unix-like systems but is not as34frequently tested on them. It is not recommended to use Bitcoin Core on35unsupported systems.37Notable changes38===============40libbitcoinconsensus41-------------------43- libbitcoinconsensus is deprecated and will be removed for v28. This library has44existed for nearly 10 years with very little known uptake or impact. It has45become a maintenance burden.47The underlying functionality does not change between versions, so any users of48the library can continue to use the final release indefinitely, with the49understanding that Taproot is its final consensus update.51In the future, libbitcoinkernel will provide a much more useful API that is52aware of the UTXO set, and therefore be able to fully validate transactions and53blocks. (#29189)55mempool.dat compatibility56-------------------------58- The `mempool.dat` file created by -persistmempool or the savemempool RPC will59be written in a new format. This new format includes the XOR'ing of transaction60contents to mitigate issues where external programs (such as anti-virus) attempt61to interpret and potentially modify the file.63This new format can not be read by previous software releases. To allow for a64downgrade, a temporary setting `-persistmempoolv1` has been added to fall back65to the legacy format. (#28207)67P2P and network changes68-----------------------70- BIP324 v2 transport is now enabled by default. It remains possible to disable v271by running with `-v2transport=0`. (#29347)72- Manual connection options (`-connect`, `-addnode` and `-seednode`) will73now follow `-v2transport` to connect with v2 by default. They will retry with74v1 on failure. (#29058)76- Network-adjusted time has been removed from consensus code. It is replaced77with (unadjusted) system time. The warning for a large median time offset78(70 minutes or more) is kept. This removes the implicit security assumption of79requiring an honest majority of outbound peers, and increases the importance80of the node operator ensuring their system time is (and stays) correct to not81fall out of consensus with the network. (#28956)83Mempool Policy Changes84----------------------86- Opt-in Topologically Restricted Until Confirmation (TRUC) Transactions policy87(aka v3 transaction policy) is available for use on test networks when88`-acceptnonstdtxn=1` is set. By setting the transaction version number to 3, TRUC transactions89request the application of limits on spending of their unconfirmed outputs. These90restrictions simplify the assessment of incentive compatibility of accepting or91replacing TRUC transactions, thus ensuring any replacements are more profitable for92the node and making fee-bumping more reliable. TRUC transactions are currently93nonstandard and can only be used on test networks where the standardness rules are94relaxed or disabled (e.g. with `-acceptnonstdtxn=1`). (#28948)96External Signing97----------------99- Support for external signing on Windows has been disabled. It will be re-enabled100once the underlying dependency (Boost Process), has been replaced with a different101library. (#28967)103Updated RPCs104------------106- The addnode RPC now follows the `-v2transport` option (now on by default, see above) for making connections.107It remains possible to specify the transport type manually with the v2transport argument of addnode. (#29239)109Build System110------------112- A C++20 capable compiler is now required to build Bitcoin Core. (#28349)113- MacOS releases are configured to use the hardened runtime libraries (#29127)115Wallet116------118- The CoinGrinder coin selection algorithm has been introduced to mitigate unnecessary119large input sets and lower transaction costs at high feerates. CoinGrinder120searches for the input set with minimal weight. Solutions found by121CoinGrinder will produce a change output. CoinGrinder is only active at122elevated feerates (default: 30+ sat/vB, based on `-consolidatefeerate`×3). (#27877)123- The Branch And Bound coin selection algorithm will be disabled when the subtract fee124from outputs feature is used. (#28994)125- If the birth time of a descriptor is detected to be later than the first transaction126involving that descriptor, the birth time will be reset to the earlier time. (#28920)128Low-level changes129=================131Pruning132-------134- When pruning during initial block download, more blocks will be pruned at each135flush in order to speed up the syncing of such nodes. (#20827)137Init138----140- Various fixes to prevent issues where subsequent instances of Bitcoin Core would141result in deletion of files in use by an existing instance. (#28784, #28946)142- Improved handling of empty `settings.json` files. (#29144)144Credits145=======147Thanks to everyone who directly contributed to this release:149- 22388o⚡️150- Aaron Clauson151- Amiti Uttarwar152- Andrew Toth153- Anthony Towns154- Antoine Poinsot155- Ava Chow156- Brandon Odiwuor157- brunoerg158- Chris Stewart159- Cory Fields160- dergoegge161- djschnei21162- Fabian Jahr163- fanquake164- furszy165- Gloria Zhao166- Greg Sanders167- Hennadii Stepanov168- Hernan Marino169- iamcarlos94170- ismaelsadeeq171- Jameson Lopp172- Jesse Barton173- John Moffett174- Jon Atack175- josibake176- jrakibi177- Justin Dhillon178- Kashif Smith179- kevkevin180- Kristaps Kaupe181- L0la L33tz182- Luke Dashjr183- Lőrinc184- marco185- MarcoFalke186- Mark Friedenbach187- Marnix188- Martin Leitner-Ankerl189- Martin Zumsande190- Max Edwards191- Murch192- muxator193- naiyoma194- Nikodemas Tuckus195- ns-xvrn196- pablomartin4btc197- Peter Todd198- Pieter Wuille199- Richard Myers200- Roman Zeyde201- Russell Yanofsky202- Ryan Ofsky203- Sebastian Falbesoner204- Sergi Delgado Segura205- Sjors Provoost206- stickies-v207- stratospher208- Supachai Kheawjuy209- TheCharlatan210- UdjinM6211- Vasil Dimov212- w0xlt213- willcl-ark216As well as to everyone that helped with translations on217[Transifex](https://www.transifex.com/bitcoin/bitcoin/).
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.