Bitcoin Core 27.0 Released

(1/5) > >>

27.0 Release Notes

Bitcoin Core version 27.0 is now available from:

This release includes new features, various bug fixes and performance
improvements, as well as updated translations.

Please report bugs using the issue tracker at GitHub:

To receive security and update notifications, please subscribe to:

How to Upgrade

If you are running an older version, shut it down. Wait until it has completely
shut down (which might take a few minutes in some cases), then run the
installer (on Windows) or just copy over /Applications/Bitcoin-Qt (on macOS)
or bitcoind/bitcoin-qt (on Linux).

Upgrading directly from a version of Bitcoin Core that has reached its EOL is
possible, but it might take some time if the data directory needs to be migrated. Old
wallet versions of Bitcoin Core are generally supported.


Bitcoin Core is supported and extensively tested on operating systems
using the Linux Kernel 3.17+, macOS 11.0+, and Windows 7 and newer. Bitcoin
Core should also work on most other Unix-like systems but is not as
frequently tested on them. It is not recommended to use Bitcoin Core on
unsupported systems.

Notable changes

libbitcoinconsensus is deprecated and will be removed for v28. This library has
existed for nearly 10 years with very little known uptake or impact. It has
become a maintenance burden.

The underlying functionality does not change between versions, so any users of
the library can continue to use the final release indefinitely, with the
understanding that Taproot is its final consensus update.

In the future, libbitcoinkernel will provide a much more useful API that is
aware of the UTXO set, and therefore be able to fully validate transactions and
blocks. (#29189)

mempool.dat compatibility
The mempool.dat file created by -persistmempool or the savemempool RPC will
be written in a new format. This new format includes the XOR'ing of transaction
contents to mitigate issues where external programs (such as anti-virus) attempt
to interpret and potentially modify the file.

This new format can not be read by previous software releases. To allow for a
downgrade, a temporary setting -persistmempoolv1 has been added to fall back
to the legacy format. (#28207)

P2P and network changes
BIP324 v2 transport is now enabled by default. It remains possible to disable v2
by running with -v2transport=0. (#29347)
Manual connection options (-connect, -addnode and -seednode) will
now follow -v2transport to connect with v2 by default. They will retry with
v1 on failure. (#29058)
Network-adjusted time has been removed from consensus code. It is replaced
with (unadjusted) system time. The warning for a large median time offset
(70 minutes or more) is kept. This removes the implicit security assumption of
requiring an honest majority of outbound peers, and increases the importance
of the node operator ensuring their system time is (and stays) correct to not
fall out of consensus with the network. (#28956)

Mempool Policy Changes
Opt-in Topologically Restricted Until Confirmation (TRUC) Transactions policy
(aka v3 transaction policy) is available for use on test networks when
-acceptnonstdtxn=1 is set. By setting the transaction version number to 3, TRUC transactions
request the application of limits on spending of their unconfirmed outputs. These
restrictions simplify the assessment of incentive compatibility of accepting or
replacing TRUC transactions, thus ensuring any replacements are more profitable for
the node and making fee-bumping more reliable. TRUC transactions are currently
nonstandard and can only be used on test networks where the standardness rules are
relaxed or disabled (e.g. with -acceptnonstdtxn=1). (#28948)
External Signing
Support for external signing on Windows has been disabled. It will be re-enabled
once the underlying dependency (Boost Process), has been replaced with a different
library. (#28967)
Updated RPCs
The addnode RPC now follows the -v2transport option (now on by default, see above) for making connections.
It remains possible to specify the transport type manually with the v2transport argument of addnode. (#29239)
Build System
A C++20 capable compiler is now required to build Bitcoin Core. (#28349)MacOS releases are configured to use the hardened runtime libraries (#29127)
The CoinGrinder coin selection algorithm has been introduced to mitigate unnecessary
large input sets and lower transaction costs at high feerates. CoinGrinder
searches for the input set with minimal weight. Solutions found by
CoinGrinder will produce a change output. CoinGrinder is only active at
elevated feerates (default: 30+ sat/vB, based on -consolidatefeerate×3). (#27877)The Branch And Bound coin selection algorithm will be disabled when the subtract fee
from outputs feature is used. (#28994)If the birth time of a descriptor is detected to be later than the first transaction
involving that descriptor, the birth time will be reset to the earlier time. (#28920)
Low-level changes

When pruning during initial block download, more blocks will be pruned at each
flush in order to speed up the syncing of such nodes. (#20827)
Various fixes to prevent issues where subsequent instances of Bitcoin Core would
result in deletion of files in use by an existing instance. (#28784, #28946)Improved handling of empty settings.json files. (#29144)

Thanks to everyone who directly contributed to this release:
22388o⚡️Aaron ClausonAmiti UttarwarAndrew TothAnthony TownsAntoine PoinsotAva ChowBrandon OdiwuorbrunoergChris StewartCory Fieldsdergoeggedjschnei21Fabian JahrfanquakefurszyGloria ZhaoGreg SandersHennadii StepanovHernan Marinoiamcarlos94ismaelsadeeqJameson LoppJesse BartonJohn MoffettJon AtackjosibakejrakibiJustin DhillonKashif SmithkevkevinKristaps KaupeL0la L33tzLuke DashjrLőrincmarcoMarcoFalkeMark FriedenbachMarnixMartin Leitner-AnkerlMartin ZumsandeMax EdwardsMurchmuxatornaiyomaNikodemas Tuckusns-xvrnpablomartin4btcPeter ToddPieter WuilleRichard MyersRoman ZeydeRussell YanofskyRyan OfskySebastian FalbesonerSergi Delgado SeguraSjors Provooststickies-vstratospherSupachai KheawjuyTheCharlatanUdjinM6Vasil Dimovw0xltwillcl-ark
As well as to everyone that helped with translations on

Ty to everyone who contribute to this update!!!

Please, never forget to Verifying Bitcoin Core before you install/use it, is a good practice... also go to the source and check those SHA256SUMS by yourselft.


dcd49a8e3711d867c4ad5d7ffbc1ff20f66c82cc8bf660b5f6964eeaa289a739  bitcoin-27.0-aarch64-linux-gnu-debug.tar.gz
cb35e250ae9d0328aa90e7aad0b877ed692597420a1092e8ab1a5dd756209722  bitcoin-27.0-aarch64-linux-gnu.tar.gz
61e1225d9c00b50c2e1712e722b285b6e4de1f1dd9da969596511b8a8986c1f0  bitcoin-27.0-arm-linux-gnueabihf-debug.tar.gz
9d4c28e7620d03bf346ebea388f222e4d6d2b996d7eb32fab72707b8320d5249  bitcoin-27.0-arm-linux-gnueabihf.tar.gz
d1ddb2855a6c76ab4d2cc31315303cba77ef44fdd877b01ffd5918e548b07cae  bitcoin-27.0-arm64-apple-darwin-unsigned.tar.gz
1d9d9b837297a73fc7a3b1cfed376644e3fa25c4e1672fbc143d5946cb52431d  bitcoin-27.0-arm64-apple-darwin.tar.gz
d22f0f8b2d9eb8eac0819d5ebc4b3c4c5f5984cf6e0acefa81ebc6e914938293  bitcoin-27.0-codesignatures-27.0.tar.gz
9c1ee651d3b157baccc3388be28b8cf3bfcefcd2493b943725ad6040ca6b146b  bitcoin-27.0.tar.gz
837c72fea5ceca69b3d06870dd4926c011dec7924f3f8f3428b2153945bbbb4a  bitcoin-27.0-powerpc64-linux-gnu-debug.tar.gz
6ceaedb59ca33b751387b15f2c8da7f2f7cd2739c6464fc6cbef440852869b92  bitcoin-27.0-powerpc64-linux-gnu.tar.gz
81102572b0aee8627b162680699ce1d2828908cc4dd317e34697404ac04220fa  bitcoin-27.0-powerpc64le-linux-gnu-debug.tar.gz
3c00f81a7c67b4cf3e382fae7eaa2c7facea2dfdf39f4c281512237c06b71960  bitcoin-27.0-powerpc64le-linux-gnu.tar.gz
7274aedbfc363adc28d3b19340e4578b983cfbd617f328313fb5b95e24864799  bitcoin-27.0-riscv64-linux-gnu-debug.tar.gz
371e53b21c3ba29a90e69c30b7213d75c165d084bde50ae6d73ee0e1ef179e68  bitcoin-27.0-riscv64-linux-gnu.tar.gz
8cdabb19c0b2464ec21306615e0429362b6de9b73d5e796dc4dbc82437e76ddd  bitcoin-27.0-x86_64-apple-darwin-unsigned.tar.gz
e1efd8c4605b2aabc876da93b6eee2bedd868ce7d1f02b0220c1001f903b3e2c  bitcoin-27.0-x86_64-apple-darwin.tar.gz
3d9ed703ceaeba9d234d05bf7ae20dde48fb52287eae236e8c2b2021a8db0fbc  bitcoin-27.0-x86_64-linux-gnu-debug.tar.gz
2a6974c5486f528793c79d42694b5987401e4a43c97f62b1383abf35bcee44a8  bitcoin-27.0-x86_64-linux-gnu.tar.gz
a2aa3db390a768383e8556878250a44f3eb3b7a6e91e94e47fa35c06b6e8d09f  bitcoin-27.0-win64-setup.exe
e8114ed85a976ff439bd78cbf026e3f9bfafdf40d0fe75121e73bd4b7af347a4  bitcoin-27.0-win64-setup-unsigned.exe
1578aa2b88427086336e6990e4ce9b752d3d83b34b38ecc29f6325abb6ad3694  bitcoin-27.0-win64-unsigned.tar.gz

I have tested v.27.0 on a few machines running either Linux or Windows 10/11 and got the feeling that updated nodes halt  (when needed) all operations a bit faster than when they were armored with previous v. 26.0

Anyone can confirm this observation or it is solely my impression?

What about Apple iOS is it able to mine and others work smoothly with apply IOS system?
I want to try it with apple ios system.

Wow, version 27.0 of Bitcoin Core seems packed with updates! I'm particularly intrigued by the introduction of CoinGrinder for coin selection. I wonder how much this will impact transaction costs and overall efficiency. Also, the move towards a C++20 compiler requirement is interesting. I'm curious about the implications for developers and the ecosystem as a whole. Any insights or thoughts on these changes?


[0] Message Index

[#] Next page