mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-10-11 12:03:04 +02:00
Merge bitcoin/bitcoin#33339: doc: move release notes to wiki pre branch off
905c1a77f5
doc: move release notes to wiki pre branch off (fanquake) Pull request description: See https://github.com/bitcoin-core/bitcoin-devwiki/wiki/v30.0-Release-Notes-Draft. ACKs for top commit: janb84: ACK905c1a77f5
willcl-ark: ACK905c1a77f5
Tree-SHA512: c883ca135e61e28891ac088b53da299ff2031a11db5c5805ba3fadba2e6bd7b9c68d7ab27e6439e3885604d623bef5c87206ce05826af3a58265d06205464782
This commit is contained in:
@@ -1,5 +0,0 @@
|
|||||||
Updated RPCs
|
|
||||||
------------
|
|
||||||
|
|
||||||
- The waitfornewblock now takes an optional `current_tip` argument. It is also no longer hidden. (#30635)
|
|
||||||
- The waitforblock and waitforblockheight RPCs are no longer hidden. (#30635)
|
|
@@ -1,4 +0,0 @@
|
|||||||
- Logs now include which peer sent us a header. Additionally there are fewer
|
|
||||||
redundant header log messages. A side-effect of this change is that for
|
|
||||||
some untypical cases new headers aren't logged anymore, e.g. a direct
|
|
||||||
`BLOCK` message with a previously unknown header and `submitheader` RPC. (#27826)
|
|
@@ -1,3 +0,0 @@
|
|||||||
RPC and Startup Option
|
|
||||||
---
|
|
||||||
The `-paytxfee` startup option and the `settxfee` RPC are now deprecated and will be removed in Bitcoin Core 31.0. They allowed the user to set a static fee rate for wallet transactions, which could potentially lead to overpaying or underpaying. Users should instead rely on fee estimation or specify a fee rate per transaction using the `fee_rate` argument in RPCs such as `fundrawtransaction`, `sendtoaddress`, `send`, `sendall`, and `sendmany`. (#31278)
|
|
@@ -1,24 +0,0 @@
|
|||||||
New command line interface
|
|
||||||
--------------------------
|
|
||||||
|
|
||||||
A new `bitcoin` command line tool has been added to make features more
|
|
||||||
discoverable and convenient to use. The `bitcoin` tool just calls other
|
|
||||||
executables and does not implement any functionality on its own. Specifically
|
|
||||||
`bitcoin node` is a synonym for `bitcoind`, `bitcoin gui` is a synonym for
|
|
||||||
`bitcoin-qt`, and `bitcoin rpc` is a synonym for `bitcoin-cli -named`. Other
|
|
||||||
commands and options can be listed with `bitcoin help`. The new tool does not
|
|
||||||
replace other tools, so existing commands should continue working and there are
|
|
||||||
no plans to deprecate them.
|
|
||||||
|
|
||||||
Install changes
|
|
||||||
---------------
|
|
||||||
|
|
||||||
The `test_bitcoin` executable is now located in `libexec/` rather than `bin/`.
|
|
||||||
It can still be executed directly, or accessed through the new `bitcoin` command
|
|
||||||
line tool as `bitcoin test`.
|
|
||||||
|
|
||||||
Other executables which are only part of source releases and not built by
|
|
||||||
default: `test_bitcoin-qt`, `bench_bitcoin`, `bitcoin-chainstate`,
|
|
||||||
`bitcoin-node`, and `bitcoin-gui` are also now installed in `libexec/`
|
|
||||||
instead of `bin/` and can be accessed through the `bitcoin` command line tool.
|
|
||||||
See `bitcoin help` output for details.
|
|
@@ -1,14 +0,0 @@
|
|||||||
RPC
|
|
||||||
|
|
||||||
The `submitpackage` RPC, which allows submissions of child-with-parents
|
|
||||||
packages, no longer requires that all unconfirmed parents be present. The
|
|
||||||
package may contain other in-mempool ancestors as well. (#31385)
|
|
||||||
|
|
||||||
P2P
|
|
||||||
|
|
||||||
Opportunistic 1-parent-1-child package relay has been improved to handle
|
|
||||||
situations when the child already has unconfirmed parent(s) in the mempool.
|
|
||||||
This means that 1p1c packages can be accepted and propagate, even if they are
|
|
||||||
connected to broader topologies: multi-parent-1-child (where only 1 parent
|
|
||||||
requires fee-bumping), grandparent-parent-child (where only parent requires
|
|
||||||
fee-bumping) etc. (#31385)
|
|
@@ -1,6 +0,0 @@
|
|||||||
Updated RPCs
|
|
||||||
--------
|
|
||||||
|
|
||||||
- Any RPC in which one of the parameters are descriptors will throw an error
|
|
||||||
if the provided descriptor contains a whitespace at the beginning or the end
|
|
||||||
of the public key within a fragment - e.g. `pk( KEY)` or `pk(KEY )`.
|
|
@@ -1,3 +0,0 @@
|
|||||||
A new (experimental) Mining interface was introduced to support Stratum v2 or other mining client software, see #31098. When the node is started with `bitcoin node -m -ipcbind=unix` the node will listen on a unix socket for IPC client connections. The `-m` option launches a new binary `bitcoin-node` instead of `bitcoind`.
|
|
||||||
|
|
||||||
IPC connectivity introduces new dependencies (see [multiprocess.md](multiprocess.md)), which are only included in the `bitcoin-node` and `bitcoin-gui` binaries (not in `bitcoind` and `bitcoin-qt`). Those new binaries are now built by default (controlled by `ENABLE_IPC`). If you don't intend to use IPC, nothing changes and there is no need to use `bitcoin -m`, `bitcoin-node` or `bitcoin-gui`(#31802)
|
|
@@ -1,11 +0,0 @@
|
|||||||
P2P
|
|
||||||
|
|
||||||
- The transaction orphanage, which holds transactions with missing inputs temporarily while the node attempts to fetch
|
|
||||||
its parents, now has improved Denial of Service protections. Previously, it enforced a maximum number of unique
|
|
||||||
transactions (default 100, configurable using `-maxorphantx`). Now, its limits are as follows: the number of entries
|
|
||||||
(unique by wtxid and peer), plus each unique transaction's input count divided by 10, must not exceed 3,000. The total
|
|
||||||
weight of unique transactions must not exceed 404,000 Wu multiplied by the number of peers.
|
|
||||||
|
|
||||||
- The `-maxorphantx` option no longer has any effect, since the orphanage no longer limits the number of unique
|
|
||||||
transactions. Users should remove this configuration option if they were using it, as the setting will cause an
|
|
||||||
error in future versions when it is no longer recognized.
|
|
@@ -1,9 +0,0 @@
|
|||||||
# RPC
|
|
||||||
|
|
||||||
- The RPCs psbtbumpfee and bumpfee allow a replacement under fullrbf and no
|
|
||||||
longer require BIP-125 signalling. (#31953)
|
|
||||||
|
|
||||||
# GUI
|
|
||||||
|
|
||||||
- A transaction's fee bump is allowed under fullrbf and no longer requires
|
|
||||||
BIP-125 signalling. (#31953)
|
|
@@ -1,3 +0,0 @@
|
|||||||
- `-datacarriersize` is increased to 100,000 which effectively uncaps the limit (as the maximum transaction size limit will be hit first). It can be overridden with -datacarriersize=83 to revert to the limit enforced in previous versions. Both `-datacarrier` and `-datacarriersize` options have been marked as deprecated and are expected to be removed in a future release. (#32406)
|
|
||||||
|
|
||||||
- Multiple data carrier (OP_RETURN) outputs in a transaction are now permitted for relay and mining. The `-datacarriersize` limit applies to the aggregate size of the scriptPubKeys across all such outputs in a transaction, not including the scriptPubKey size itself. (#32406)
|
|
@@ -1,14 +0,0 @@
|
|||||||
Updated settings
|
|
||||||
----------------
|
|
||||||
|
|
||||||
- Previously, `-proxy` specified the proxy for all networks (except I2P which
|
|
||||||
uses `-i2psam`) and only the Tor proxy could have been specified separately
|
|
||||||
via `-onion`. Now, the syntax of `-proxy` has been extended and it is possible
|
|
||||||
to specify separately the proxy for IPv4, IPv6, Tor and CJDNS by appending `=`
|
|
||||||
followed by the network name, for example `-proxy=127.0.0.1:5555=ipv6`
|
|
||||||
configures a proxy only for IPv6. The `-proxy` option can be used multiple
|
|
||||||
times to define different proxies for different networks, such as
|
|
||||||
`-proxy=127.0.0.1:4444=ipv4 -proxy=10.0.0.1:6666=ipv6`. Later settings
|
|
||||||
override earlier ones for the same network; this can be used to remove an
|
|
||||||
earlier all-networks proxy and use direct connections only for a given
|
|
||||||
network, for example `-proxy=127.0.0.1:5555 -proxy=0=cjdns`. (#32425)
|
|
@@ -1,3 +0,0 @@
|
|||||||
GUI changes
|
|
||||||
|
|
||||||
- Custom column widths in the Transactions tab are reset as a side-effect of legacy wallet removal. (#32459)
|
|
@@ -1,3 +0,0 @@
|
|||||||
### Updated Settings
|
|
||||||
|
|
||||||
- The `-upnp` setting has now been fully removed. Use `-natpmp` instead. (#32500)
|
|
@@ -1,9 +0,0 @@
|
|||||||
### Policy
|
|
||||||
|
|
||||||
The maximum number of potentially executed legacy signature operations in a
|
|
||||||
single standard transaction is now limited to 2500. Signature operations in all
|
|
||||||
previous output scripts, in all input scripts, as well as all P2SH redeem
|
|
||||||
scripts (if there are any) are counted toward the limit. The new limit is
|
|
||||||
assumed to not affect any known typically formed standard transactions. The
|
|
||||||
change was done to prepare for a possible BIP54 deployment in the future.
|
|
||||||
(#32521)
|
|
@@ -1,4 +0,0 @@
|
|||||||
# Updated Settings
|
|
||||||
|
|
||||||
- The `-maxmempool` and `-dbcache` startup parameters are now capped on 32-bit systems to 500MB and
|
|
||||||
1GiB respectively.
|
|
@@ -1,5 +0,0 @@
|
|||||||
New RPCs
|
|
||||||
--------
|
|
||||||
|
|
||||||
- A new REST API endpoint (`/rest/spenttxouts/BLOCKHASH`) has been introduced for
|
|
||||||
efficiently fetching spent transaction outputs using the block's undo data (#32540).
|
|
@@ -1,10 +0,0 @@
|
|||||||
Logging
|
|
||||||
-------
|
|
||||||
Unconditional logging to disk is now rate limited by giving each source location
|
|
||||||
a quota of 1MiB per hour. Unconditional logging is any logging with a log level
|
|
||||||
higher than debug, that is `info`, `warning`, and `error`. All logs will be
|
|
||||||
prefixed with `[*]` if there is at least one source location that is currently
|
|
||||||
being suppressed. (#32604)
|
|
||||||
|
|
||||||
When `-logsourcelocations` is enabled, the log output now contains the entire
|
|
||||||
function signature instead of just the function name. (#32604)
|
|
@@ -1,7 +0,0 @@
|
|||||||
Wallet
|
|
||||||
------
|
|
||||||
|
|
||||||
* Since descriptor wallets do not allow mixing watchonly and non-watchonly descriptors,
|
|
||||||
the `include_watchonly` option (and its variants in naming) are removed from all RPCs
|
|
||||||
that had it.
|
|
||||||
* The `iswatchonly` field is removed from any RPCs that returned it.
|
|
@@ -1,9 +0,0 @@
|
|||||||
Updated RPCs
|
|
||||||
------------
|
|
||||||
|
|
||||||
- `unloadwallet` - Return RPC_INVALID_PARAMETER when both the RPC wallet endpoint
|
|
||||||
and wallet_name parameters are unspecified. Previously the RPC failed with a JSON
|
|
||||||
parsing error.
|
|
||||||
- `getdescriptoractivity` - Mark blockhashes and scanobjects arguments as required,
|
|
||||||
so the user receives a clear help message when either is missing. As in `unloadwallet`,
|
|
||||||
previously the RPC failed with a JSON parsing error.
|
|
@@ -1,19 +0,0 @@
|
|||||||
Updated RPCs
|
|
||||||
------------
|
|
||||||
The following RPCs now contain a `version` parameter that allows
|
|
||||||
the user to create transactions of any standard version number (1-3):
|
|
||||||
- `createrawtransaction`
|
|
||||||
- `createpsbt`
|
|
||||||
- `send`
|
|
||||||
- `sendall`
|
|
||||||
- `walletcreatefundedpsbt`
|
|
||||||
|
|
||||||
Wallet
|
|
||||||
------
|
|
||||||
Support has been added for spending TRUC transactions received by the
|
|
||||||
wallet, as well as creating TRUC transactions. The wallet ensures that
|
|
||||||
TRUC policy rules are being met. The wallet will throw an error if the
|
|
||||||
user is trying to spend TRUC utxos with utxos of other versions.
|
|
||||||
Additionally, the wallet will treat unconfirmed TRUC sibling
|
|
||||||
transactions as mempool conflicts. The wallet will also ensure that
|
|
||||||
transactions spending TRUC utxos meet the required size restrictions.
|
|
@@ -1,12 +0,0 @@
|
|||||||
# Legacy Wallet Removal
|
|
||||||
|
|
||||||
BDB legacy wallets can no longer be created or loaded. They can be migrated to
|
|
||||||
the new descriptor wallet format. Refer to the `migratewallet` RPC for more
|
|
||||||
details.
|
|
||||||
|
|
||||||
The legacy wallet removal drops redundant options in the bitcoin-wallet tool,
|
|
||||||
such as `-withinternalbdb`, `-legacy`, and `-descriptors`. Moreover, the
|
|
||||||
legacy-only RPCs `addmultisigaddress`, `dumpprivkey`, `dumpwallet`,
|
|
||||||
`importaddress`, `importmulti`, `importprivkey`, `importpubkey`,
|
|
||||||
`importwallet`, `newkeypool`, `sethdseed`, and `upgradewallet`, are removed.
|
|
||||||
(#32944, #28710, #32438, #31250)
|
|
@@ -1,6 +0,0 @@
|
|||||||
Updated settings
|
|
||||||
----------------
|
|
||||||
|
|
||||||
* The `-natpmp` option is now set to `1` by default. This means nodes with `-listen` enabled (the
|
|
||||||
default) but running behind a firewall, such as a local network router, will be reachable if the
|
|
||||||
firewall/router supports any of the `PCP` or `NAT-PMP` protocols.
|
|
@@ -1,16 +0,0 @@
|
|||||||
Mining and Transaction Relay Policy
|
|
||||||
=========================
|
|
||||||
|
|
||||||
The minimum block feerate (`-blockmintxfee`) has been changed to 1 satoshi per kvB. It can still be changed using the
|
|
||||||
configuration option.
|
|
||||||
|
|
||||||
The default minimum relay feerate (`-minrelaytxfee`) and incremental relay feerate (`-incrementalrelayfee`) have been
|
|
||||||
changed to 100 satoshis per kvB. They can still be changed using their respective configuration options, but it is
|
|
||||||
recommended to change both together if you decide to do so.
|
|
||||||
|
|
||||||
Other minimum feerates (e.g. the dust feerate, the minimum returned by the fee estimator, and all feerates used by the
|
|
||||||
wallet) remain unchanged. The mempool minimum feerate still changes in response to high volume.
|
|
||||||
|
|
||||||
Note that unless these lower defaults are widely adopted across the network, transactions created with lower fee rates
|
|
||||||
are not guaranteed to propagate or confirm. The wallet feerates remain unchanged; `-mintxfee` must be changed before
|
|
||||||
attempting to create transactions with lower feerates using the wallet.
|
|
@@ -1,7 +0,0 @@
|
|||||||
Updated RPCs
|
|
||||||
------------
|
|
||||||
|
|
||||||
Transaction Script validation errors used to return the reason for the error prefixed by either
|
|
||||||
"mandatory-script-verify-flag-failed" if it was a consensus error, or "non-mandatory-script-verify-flag"
|
|
||||||
(without "-failed") if it was a standardness error. This has been changed to "block-script-verify-flag-failed"
|
|
||||||
and "mempool-script-verify-flag-failed" for all block and mempool errors respectively.
|
|
Reference in New Issue
Block a user