mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-03-06 14:19:59 -05:00
Merge #18259: doc: Merge release notes for 0.20.0 release
fa8b6020ec
doc: Merge release notes for 0.20.0 release (MarcoFalke) Pull request description: mostly move-only. Can be reviewed with the `--color-moved=dimmed-zebra` option. ACKs for top commit: laanwj: ACKfa8b6020ec
fanquake: ACKfa8b6020ec
- any changes are basically headers and newlines. Tree-SHA512: 7273c7625d60c3b28bafc4371e17545bd9fcaa672fde8492a0b4ab88081d616dd41c77389d18a9a3b39b595c5409a354bf511745ddcb9834c9a25d91b94edb28
This commit is contained in:
commit
2492dc0068
8 changed files with 75 additions and 92 deletions
|
@ -1,53 +0,0 @@
|
|||
P2P and network changes
|
||||
-----------------------
|
||||
|
||||
#### Removal of reject network messages from Bitcoin Core (BIP61)
|
||||
|
||||
The command line option to enable BIP61 (`-enablebip61`) has been removed.
|
||||
|
||||
This feature has been disabled by default since Bitcoin Core version 0.18.0.
|
||||
Nodes on the network can not generally be trusted to send valid ("reject")
|
||||
messages, so this should only ever be used when connected to a trusted node.
|
||||
Please use the recommended alternatives if you rely on this deprecated feature:
|
||||
|
||||
* Testing or debugging of implementations of the Bitcoin P2P network protocol
|
||||
should be done by inspecting the log messages that are produced by a recent
|
||||
version of Bitcoin Core. Bitcoin Core logs debug messages
|
||||
(`-debug=<category>`) to a stream (`-printtoconsole`) or to a file
|
||||
(`-debuglogfile=<debug.log>`).
|
||||
|
||||
* Testing the validity of a block can be achieved by specific RPCs:
|
||||
- `submitblock`
|
||||
- `getblocktemplate` with `'mode'` set to `'proposal'` for blocks with
|
||||
potentially invalid POW
|
||||
|
||||
* Testing the validity of a transaction can be achieved by specific RPCs:
|
||||
- `sendrawtransaction`
|
||||
- `testmempoolaccept`
|
||||
|
||||
* Wallets should not use the absence of "reject" messages to indicate a
|
||||
transaction has propagated the network, nor should wallets use "reject"
|
||||
messages to set transaction fees. Wallets should rather use fee estimation
|
||||
to determine transaction fees and set replace-by-fee if desired. Thus, they
|
||||
could wait until the transaction has confirmed (taking into account the fee
|
||||
target they set (compare the RPC `estimatesmartfee`)) or listen for the
|
||||
transaction announcement by other network peers to check for propagation.
|
||||
|
||||
The removal of BIP61 REJECT message support also has the following minor RPC
|
||||
and logging implications:
|
||||
|
||||
* `testmempoolaccept` and `sendrawtransaction` no longer return the P2P REJECT
|
||||
code when a transaction is not accepted to the mempool. They still return the
|
||||
verbal reject reason.
|
||||
|
||||
* Log messages that previously reported the REJECT code when a transaction was
|
||||
not accepted to the mempool now no longer report the REJECT code. The reason
|
||||
for rejection is still reported.
|
||||
|
||||
Updated RPCs
|
||||
------------
|
||||
|
||||
- `testmempoolaccept` and `sendrawtransaction` no longer return the P2P REJECT
|
||||
code when a transaction is not accepted to the mempool. See the Section
|
||||
_Removal of reject network messages from Bitcoin Core (BIP61)_ for details on
|
||||
the removal of BIP61 REJECT message support.
|
|
@ -1,4 +0,0 @@
|
|||
Configuration option changes
|
||||
-----------------------------
|
||||
|
||||
Importing blocks upon startup via the `bootstrap.dat` file no longer occurs by default. The file must now be specified with `-loadblock=<file>`.
|
|
@ -1,4 +0,0 @@
|
|||
Low-level RPC Changes
|
||||
===
|
||||
|
||||
- A new descriptor type `sortedmulti(...)` has been added to support multisig scripts where the public keys are sorted lexicographically in the resulting script.
|
|
@ -1,4 +0,0 @@
|
|||
Updated RPCs
|
||||
------------
|
||||
|
||||
- `walletprocesspsbt` and `walletcreatefundedpsbt` now include BIP 32 derivation paths by default for public keys if we know them. This can be disabled by setting `bip32derivs` to `false`.
|
|
@ -1,5 +0,0 @@
|
|||
Command-line options
|
||||
--------------------
|
||||
|
||||
- The `-debug=db` logging category has been renamed to `-debug=walletdb`, to distinguish it from `coindb`.
|
||||
`-debug=db` has been deprecated and will be removed in the next major release.
|
|
@ -1,5 +0,0 @@
|
|||
Low-level RPC Changes
|
||||
===
|
||||
|
||||
- The RPC gettransaction, listtransactions and listsinceblock responses now also
|
||||
includes the height of the block that contains the wallet transaction, if any.
|
|
@ -1,13 +0,0 @@
|
|||
Deprecated or removed RPCs
|
||||
--------------------------
|
||||
|
||||
- RPC `getaddressinfo` changes:
|
||||
|
||||
- the `label` field has been deprecated in favor of the `labels` field and
|
||||
will be removed in 0.21. It can be re-enabled in the interim by launching
|
||||
with `-deprecatedrpc=label`.
|
||||
|
||||
- the `labels` behavior of returning an array of JSON objects containing name
|
||||
and purpose key/value pairs has been deprecated in favor of an array of
|
||||
label names and will be removed in 0.21. The previous behavior can be
|
||||
re-enabled in the interim by launching with `-deprecatedrpc=labelspurpose`.
|
|
@ -62,6 +62,64 @@ distribution provides binaries for the RISC-V platform.
|
|||
Notable changes
|
||||
===============
|
||||
|
||||
P2P and network changes
|
||||
-----------------------
|
||||
|
||||
#### Removal of reject network messages from Bitcoin Core (BIP61)
|
||||
|
||||
The command line option to enable BIP61 (`-enablebip61`) has been removed.
|
||||
|
||||
This feature has been disabled by default since Bitcoin Core version 0.18.0.
|
||||
Nodes on the network can not generally be trusted to send valid ("reject")
|
||||
messages, so this should only ever be used when connected to a trusted node.
|
||||
Please use the recommended alternatives if you rely on this deprecated feature:
|
||||
|
||||
* Testing or debugging of implementations of the Bitcoin P2P network protocol
|
||||
should be done by inspecting the log messages that are produced by a recent
|
||||
version of Bitcoin Core. Bitcoin Core logs debug messages
|
||||
(`-debug=<category>`) to a stream (`-printtoconsole`) or to a file
|
||||
(`-debuglogfile=<debug.log>`).
|
||||
|
||||
* Testing the validity of a block can be achieved by specific RPCs:
|
||||
- `submitblock`
|
||||
- `getblocktemplate` with `'mode'` set to `'proposal'` for blocks with
|
||||
potentially invalid POW
|
||||
|
||||
* Testing the validity of a transaction can be achieved by specific RPCs:
|
||||
- `sendrawtransaction`
|
||||
- `testmempoolaccept`
|
||||
|
||||
* Wallets should not use the absence of "reject" messages to indicate a
|
||||
transaction has propagated the network, nor should wallets use "reject"
|
||||
messages to set transaction fees. Wallets should rather use fee estimation
|
||||
to determine transaction fees and set replace-by-fee if desired. Thus, they
|
||||
could wait until the transaction has confirmed (taking into account the fee
|
||||
target they set (compare the RPC `estimatesmartfee`)) or listen for the
|
||||
transaction announcement by other network peers to check for propagation.
|
||||
|
||||
The removal of BIP61 REJECT message support also has the following minor RPC
|
||||
and logging implications:
|
||||
|
||||
* `testmempoolaccept` and `sendrawtransaction` no longer return the P2P REJECT
|
||||
code when a transaction is not accepted to the mempool. They still return the
|
||||
verbal reject reason.
|
||||
|
||||
* Log messages that previously reported the REJECT code when a transaction was
|
||||
not accepted to the mempool now no longer report the REJECT code. The reason
|
||||
for rejection is still reported.
|
||||
|
||||
Updated RPCs
|
||||
------------
|
||||
|
||||
- `testmempoolaccept` and `sendrawtransaction` no longer return the P2P REJECT
|
||||
code when a transaction is not accepted to the mempool. See the Section
|
||||
_Removal of reject network messages from Bitcoin Core (BIP61)_ for details on
|
||||
the removal of BIP61 REJECT message support.
|
||||
|
||||
- A new descriptor type `sortedmulti(...)` has been added to support multisig scripts where the public keys are sorted lexicographically in the resulting script.
|
||||
|
||||
- `walletprocesspsbt` and `walletcreatefundedpsbt` now include BIP 32 derivation paths by default for public keys if we know them. This can be disabled by setting `bip32derivs` to `false`.
|
||||
|
||||
Build System
|
||||
------------
|
||||
|
||||
|
@ -84,11 +142,10 @@ It can be set with two command line arguments (`rpcwhitelist` and `rpcwhitelistd
|
|||
Updated settings
|
||||
----------------
|
||||
|
||||
Updated RPCs
|
||||
------------
|
||||
Importing blocks upon startup via the `bootstrap.dat` file no longer occurs by default. The file must now be specified with `-loadblock=<file>`.
|
||||
|
||||
Note: some low-level RPC changes mainly useful for testing are described in the
|
||||
Low-level Changes section below.
|
||||
- The `-debug=db` logging category has been renamed to `-debug=walletdb`, to distinguish it from `coindb`.
|
||||
`-debug=db` has been deprecated and will be removed in the next major release.
|
||||
|
||||
GUI changes
|
||||
-----------
|
||||
|
@ -101,6 +158,20 @@ Wallet
|
|||
- The wallet now by default uses bech32 addresses when using RPC, and creates native segwit change outputs.
|
||||
- The way that output trust was computed has been fixed in #16766, which impacts confirmed/unconfirmed balance status and coin selection.
|
||||
|
||||
- The RPC gettransaction, listtransactions and listsinceblock responses now also
|
||||
includes the height of the block that contains the wallet transaction, if any.
|
||||
|
||||
- RPC `getaddressinfo` changes:
|
||||
|
||||
- the `label` field has been deprecated in favor of the `labels` field and
|
||||
will be removed in 0.21. It can be re-enabled in the interim by launching
|
||||
with `-deprecatedrpc=label`.
|
||||
|
||||
- the `labels` behavior of returning an array of JSON objects containing name
|
||||
and purpose key/value pairs has been deprecated in favor of an array of
|
||||
label names and will be removed in 0.21. The previous behavior can be
|
||||
re-enabled in the interim by launching with `-deprecatedrpc=labelspurpose`.
|
||||
|
||||
Low-level changes
|
||||
=================
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue