|
|
|
*After branching off for a major version release of Bitcoin Core, use this
|
|
|
|
template to create the initial release notes draft.*
|
|
|
|
|
|
|
|
*The release notes draft is a temporary file that can be added to by anyone. See
|
|
|
|
[/doc/developer-notes.md#release-notes](/doc/developer-notes.md#release-notes)
|
|
|
|
for the process.*
|
|
|
|
|
|
|
|
*Create the draft, named* "*version* Release Notes Draft"
|
|
|
|
*(e.g. "0.20.0 Release Notes Draft"), as a collaborative wiki in:*
|
|
|
|
|
|
|
|
https://github.com/bitcoin-core/bitcoin-devwiki/wiki/
|
|
|
|
|
|
|
|
*Before the final release, move the notes back to this git repository.*
|
|
|
|
|
|
|
|
*version* Release Notes Draft
|
|
|
|
===============================
|
|
|
|
|
|
|
|
Bitcoin Core version *version* is now available from:
|
|
|
|
|
|
|
|
<https://bitcoincore.org/bin/bitcoin-core-*version*/>
|
|
|
|
|
|
|
|
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:
|
|
|
|
|
|
|
|
<https://github.com/bitcoin/bitcoin/issues>
|
|
|
|
|
|
|
|
To receive security and update notifications, please subscribe to:
|
|
|
|
|
|
|
|
<https://bitcoincore.org/en/list/announcements/join/>
|
|
|
|
|
|
|
|
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 Mac)
|
|
|
|
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.
|
|
|
|
|
|
|
|
Compatibility
|
|
|
|
==============
|
|
|
|
|
|
|
|
Bitcoin Core is supported and extensively tested on operating systems
|
|
|
|
using the Linux kernel, macOS 10.12+, 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.
|
|
|
|
|
|
|
|
From Bitcoin Core 0.20.0 onwards, macOS versions earlier than 10.12 are no
|
|
|
|
longer supported. Additionally, Bitcoin Core does not yet change appearance
|
|
|
|
when macOS "dark mode" is activated.
|
|
|
|
|
|
|
|
Notable changes
|
|
|
|
===============
|
|
|
|
|
|
|
|
P2P and network changes
|
|
|
|
-----------------------
|
|
|
|
|
|
|
|
- The mempool now tracks whether transactions submitted via the wallet or RPCs
|
|
|
|
have been successfully broadcast. Every 10-15 minutes, the node will try to
|
|
|
|
announce unbroadcast transactions until a peer requests it via a `getdata`
|
|
|
|
message or the transaction is removed from the mempool for other reasons.
|
|
|
|
The node will not track the broadcast status of transactions submitted to the
|
|
|
|
node using P2P relay. This version reduces the initial broadcast guarantees
|
|
|
|
for wallet transactions submitted via P2P to a node running the wallet. (#18038)
|
|
|
|
|
|
|
|
Updated RPCs
|
|
|
|
------------
|
|
|
|
|
|
|
|
- `getmempoolinfo` now returns an additional `unbroadcastcount` field. The
|
|
|
|
mempool tracks locally submitted transactions until their initial broadcast
|
|
|
|
is acknowledged by a peer. This field returns the count of transactions
|
|
|
|
waiting for acknowledgement.
|
|
|
|
|
|
|
|
- Mempool RPCs such as `getmempoolentry` and `getrawmempool` with
|
|
|
|
`verbose=true` now return an additional `unbroadcast` field. This indicates
|
|
|
|
whether initial broadcast of the transaction has been acknowledged by a
|
|
|
|
peer. `getmempoolancestors` and `getmempooldescendants` are also updated.
|
|
|
|
|
|
|
|
|
|
|
|
Changes to Wallet or GUI related RPCs can be found in the GUI or Wallet section below.
|
|
|
|
|
|
|
|
New RPCs
|
|
|
|
--------
|
|
|
|
|
|
|
|
Build System
|
|
|
|
------------
|
|
|
|
|
|
|
|
Updated settings
|
|
|
|
----------------
|
|
|
|
|
|
|
|
Changes to Wallet or GUI related settings can be found in the GUI or Wallet section below.
|
|
|
|
|
|
|
|
New settings
|
|
|
|
------------
|
|
|
|
|
|
|
|
Wallet
|
|
|
|
------
|
|
|
|
|
|
|
|
- To improve wallet privacy, the frequency of wallet rebroadcast attempts is
|
|
|
|
reduced from approximately once every 15 minutes to once every 12-36 hours.
|
|
|
|
To maintain a similar level of guarantee for initial broadcast of wallet
|
|
|
|
transactions, the mempool tracks these transactions as a part of the newly
|
|
|
|
introduced unbroadcast set. See the "P2P and network changes" section for
|
|
|
|
more information on the unbroadcast set. (#18038)
|
|
|
|
|
|
|
|
- The wallet can create a transaction without change even when the keypool is
|
|
|
|
empty. Previously it failed. (#17219)
|
|
|
|
|
|
|
|
#### Wallet RPC changes
|
|
|
|
|
|
|
|
- The `upgradewallet` RPC replaces the `-upgradewallet` command line option.
|
|
|
|
(#15761)
|
|
|
|
- The `settxfee` RPC will fail if the fee was set higher than the `-maxtxfee`
|
|
|
|
command line setting. The wallet will already fail to create transactions
|
|
|
|
with fees higher than `-maxtxfee`. (#18467)
|
|
|
|
|
|
|
|
GUI changes
|
|
|
|
-----------
|
|
|
|
|
|
|
|
Low-level changes
|
|
|
|
=================
|
|
|
|
|
|
|
|
Tests
|
|
|
|
-----
|
|
|
|
|
|
|
|
Credits
|
|
|
|
=======
|
|
|
|
|
|
|
|
Thanks to everyone who directly contributed to this release:
|
|
|
|
|
|
|
|
|
|
|
|
As well as to everyone that helped with translations on
|
|
|
|
[Transifex](https://www.transifex.com/bitcoin/bitcoin/).
|