mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-03-16 16:32:47 +00:00
docs Remove 31.0 release notes fragments
This commit is contained in:
parent
b7cf2f87d0
commit
1b3d58f128
@ -1,14 +0,0 @@
|
||||
New settings
|
||||
------------
|
||||
- `-txospenderindex` enables the creation of a transaction output spender
|
||||
index that, if present, will be scanned by `gettxspendingprevout` if a
|
||||
spending transaction was not found in the mempool.
|
||||
(#24539)
|
||||
|
||||
Updated RPCs
|
||||
------------
|
||||
- `gettxspendingprevout` has 2 new optional arguments: `mempool_only` and `return_spending_tx`.
|
||||
If `mempool_only` is true it will limit scans to the mempool even if `txospenderindex` is available.
|
||||
If `return_spending_tx` is true, the full spending tx will be returned.
|
||||
In addition if `txospenderindex` is available and a confirmed spending transaction is found,
|
||||
its block hash will be returned. (#24539)
|
||||
@ -1,19 +0,0 @@
|
||||
P2P and network changes
|
||||
-----------------------
|
||||
|
||||
- Normally local transactions are broadcast to all connected peers with
|
||||
which we do transaction relay. Now, for the `sendrawtransaction` RPC
|
||||
this behavior can be changed to only do the broadcast via the Tor or
|
||||
I2P networks. A new boolean option `-privatebroadcast` has been added
|
||||
to enable this behavior. This improves the privacy of the transaction
|
||||
originator in two aspects:
|
||||
1. Their IP address (and thus geolocation) is never known to the
|
||||
recipients.
|
||||
2. If the originator sends two otherwise unrelated transactions, they
|
||||
will not be linkable. This is because a separate connection is used
|
||||
for broadcasting each transaction. (#29415)
|
||||
|
||||
- New RPCs have been added to introspect and control private broadcast:
|
||||
`getprivatebroadcastinfo` reports transactions currently being privately
|
||||
broadcast, and `abortprivatebroadcast` removes matching
|
||||
transactions from the private broadcast queue.
|
||||
@ -1,3 +0,0 @@
|
||||
RPC and Startup Option
|
||||
---
|
||||
The `-paytxfee` startup option and the `settxfee` RPC are now deleted after being deprecated in Bitcoin Core 30.0. They used to allow 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`. (#32138)
|
||||
@ -1,9 +0,0 @@
|
||||
Fee Estimation
|
||||
========================
|
||||
|
||||
- The Bitcoin Core fee estimator minimum fee rate bucket was updated from **1 sat/vB** to **0.1 sat/vB**,
|
||||
which matches the node’s default `minrelayfee`.
|
||||
This means that for a given confirmation target, if a sub-1 sat/vB fee rate bucket is the minimum tracked
|
||||
with sufficient data, its average value will be returned as the fee rate estimate.
|
||||
|
||||
- Note: Restarting a node with this change invalidates previously saved estimates in `fee_estimates.dat`, the fee estimator will start tracking fresh stats.
|
||||
@ -1,5 +0,0 @@
|
||||
Build System
|
||||
------------
|
||||
|
||||
- The minimum supported Clang compiler version has been raised to 17.0
|
||||
(#33555).
|
||||
@ -1,51 +0,0 @@
|
||||
Mempool
|
||||
=======
|
||||
|
||||
The mempool has been reimplemented with a new design ("cluster mempool"), to
|
||||
facilitate better decision-making when constructing block templates, evicting
|
||||
transactions, relaying transactions, and validating replacement transactions
|
||||
(RBF). Most changes should be transparent to users, but some behavior changes
|
||||
are noted:
|
||||
|
||||
- The mempool no longer enforces ancestor or descendant size/count limits.
|
||||
Instead, two new default policy limits are introduced governing connected
|
||||
components, or clusters, in the mempool, limiting clusters to 64 transactions
|
||||
and up to 101 kB in virtual size. Transactions are considered to be in the
|
||||
same cluster if they are connected to each other via any combination of
|
||||
parent/child relationships in the mempool. These limits can be overridden
|
||||
using command line arguments; see the extended help (`-help-debug`)
|
||||
for more information.
|
||||
|
||||
- Within the mempool, transactions are ordered based on the feerate at which
|
||||
they are expected to be mined, which takes into account the full set, or
|
||||
"chunk", of transactions that would be included together (e.g., a parent and
|
||||
its child, or more complicated subsets of transactions). This ordering is
|
||||
utilized by the algorithms that implement transaction selection for
|
||||
constructing block templates; eviction from the mempool when it is full; and
|
||||
transaction relay announcements to peers.
|
||||
|
||||
- The replace-by-fee validation logic has been updated so that transaction
|
||||
replacements are only accepted if the resulting mempool's feerate diagram is
|
||||
strictly better than before the replacement. This eliminates all known cases
|
||||
of replacements occurring that make the mempool worse off, which was possible
|
||||
under previous RBF rules. For singleton transactions (that are in clusters by
|
||||
themselves) it's sufficient for a replacement to have a higher fee and
|
||||
feerate than the original. See
|
||||
[delvingbitcoin.org post](https://delvingbitcoin.org/t/an-overview-of-the-cluster-mempool-proposal/393#rbf-can-now-be-made-incentive-compatible-for-miners-11)
|
||||
for more information.
|
||||
|
||||
- Two new RPCs have been added: `getmempoolcluster` will provide the set of
|
||||
transactions in the same cluster as the given transaction, along with the
|
||||
ordering of those transactions and grouping into chunks; and
|
||||
`getmempoolfeeratediagram` will return the feerate diagram of the entire
|
||||
mempool.
|
||||
|
||||
- Chunk size and chunk fees are now also included in the output of `getmempoolentry`.
|
||||
|
||||
- The "CPFP Carveout" has been removed from the mempool logic. The CPFP carveout
|
||||
allowed one additional child transaction to be added to a package that's already
|
||||
at its descendant limit, but only if that child has exactly one ancestor
|
||||
(the package's root) and is small (no larger than 10kvB). Nothing is allowed to
|
||||
bypass the cluster count limit. It is expected that smart contracting use-cases
|
||||
requiring similar functionality employ TRUC transactions and sibling eviction
|
||||
instead going forward.
|
||||
@ -1,5 +0,0 @@
|
||||
New REST API
|
||||
------------
|
||||
|
||||
- A new REST API endpoint (`/rest/blockpart/<BLOCK-HASH>.<bin|hex>?offset=<OFFSET>&size=<SIZE>`) has been introduced
|
||||
for efficiently fetching a range of bytes from block `<BLOCK-HASH>`.
|
||||
@ -1,4 +0,0 @@
|
||||
`-asmap` requires explicit filename
|
||||
-----------------------------------
|
||||
|
||||
In previous releases, if `-asmap` was specified without a filename, this would try to load an `ip_asn.map` data file. Now loading an asmap file requires an explicit filename like `-asmap=ip_asn.map`. This change was made to make the option easier to understand, because it was confusing for there to be a default filename not actually loaded by default (https://github.com/bitcoin/bitcoin/issues/33386). Also this change makes the option more future-proof, because in upcoming releases, specifying `-asmap` will load embedded asmap data instead of an external file (https://github.com/bitcoin/bitcoin/pull/28792).
|
||||
@ -1,4 +0,0 @@
|
||||
Build System
|
||||
------------
|
||||
|
||||
- The minimum supported GCC compiler version has been raised to 12.1 (#33842).
|
||||
@ -1,5 +0,0 @@
|
||||
P2P and network changes
|
||||
-----------------------
|
||||
|
||||
- The `-maxorphantx` startup option has been removed. It was
|
||||
previously deprecated and has no effect anymore since v30.0. (#33872)
|
||||
@ -1,8 +0,0 @@
|
||||
P2P and network changes
|
||||
-----------------------
|
||||
|
||||
- Transactions participating in one-parent-one-child package relay can now have the parent
|
||||
with a feerate lower than the `-minrelaytxfee` feerate, even 0 fee. This expands the change
|
||||
from 28.0 to also cover packages of non-TRUC transactions. Note that in general the
|
||||
package child can have additional unconfirmed parents, but they must already be
|
||||
in-mempool for the new package to be relayed. (#33892)
|
||||
@ -1,4 +0,0 @@
|
||||
Net
|
||||
---
|
||||
- `tor` has been removed as a network specification. It
|
||||
was deprecated in favour of `onion` in v0.17.0. (#34031)
|
||||
@ -1,2 +0,0 @@
|
||||
- When `-logsourcelocations` is enabled, the log output now contains just the
|
||||
function name instead of the entire function signature. (#34088)
|
||||
@ -1,8 +0,0 @@
|
||||
Mining IPC
|
||||
----------
|
||||
|
||||
- `Mining.createNewBlock` now has a `cooldown` behavior (enabled by default)
|
||||
that waits for IBD to finish and for the tip to catch up. This usually
|
||||
prevents a flood of templates during startup, but is not guaranteed. (#34184)
|
||||
- `Mining.interrupt()` can be used to interrupt `Mining.waitTipChanged` and
|
||||
`Mining.createNewBlock`. (#34184)
|
||||
@ -1,7 +0,0 @@
|
||||
Updated RPCs
|
||||
------------
|
||||
|
||||
- The `getpeerinfo` RPC no longer returns the `startingheight` field unless
|
||||
the configuration option `-deprecatedrpc=startingheight` is used. The
|
||||
`startingheight` field will be fully removed in the next major release.
|
||||
(#34197)
|
||||
@ -1,8 +0,0 @@
|
||||
Updated RPCs
|
||||
------------
|
||||
|
||||
- The `getblock` RPC now returns a `coinbase_tx` object at verbosity levels 1, 2,
|
||||
and 3. It contains `version`, `locktime`, `sequence`, `coinbase` and
|
||||
`witness`. This allows for efficiently querying coinbase
|
||||
transaction properties without fetching the full transaction data at
|
||||
verbosity 2+. (#34512)
|
||||
@ -1,11 +0,0 @@
|
||||
Mining IPC
|
||||
----------
|
||||
|
||||
The IPC mining interface now requires mining clients to use the latest `mining.capnp` schema. Clients built against older schemas will fail when calling `Init.makeMining` and receive an RPC error indicating the old mining interface is no longer supported. Mining clients must update to the latest schema and regenerate bindings to continue working. (#34568)
|
||||
|
||||
Notable IPC mining interface changes since the last release:
|
||||
- `Mining.createNewBlock` and `Mining.checkBlock` now require a `context` parameter.
|
||||
- `Mining.waitTipChanged` now has a default `timeout` (effectively infinite / `maxDouble`) if the client omits it.
|
||||
- `BlockTemplate.getCoinbaseTx()` now returns a structured `CoinbaseTx` instead of raw bytes.
|
||||
- Removed `BlockTemplate.getCoinbaseCommitment()` and `BlockTemplate.getWitnessCommitmentIndex()`.
|
||||
- Cap’n Proto default values were updated to match the corresponding C++ defaults for mining-related option structs (e.g. `BlockCreateOptions`, `BlockWaitOptions`, `BlockCheckOptions`).
|
||||
@ -1,6 +0,0 @@
|
||||
## Updated settings
|
||||
|
||||
- The default `-dbcache` value has been increased to `1024` MiB from `450` MiB
|
||||
on systems where at least `4096` MiB of RAM is detected.
|
||||
This is a performance increase, but will use more memory.
|
||||
To maintain the previous behaviour, set `-dbcache=450`.
|
||||
Loading…
x
Reference in New Issue
Block a user