docs Remove 31.0 release notes fragments

This commit is contained in:
Ava Chow 2026-03-06 09:49:49 -08:00
parent b7cf2f87d0
commit 1b3d58f128
18 changed files with 0 additions and 173 deletions

View File

@ -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)

View File

@ -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.

View File

@ -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)

View File

@ -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 nodes 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.

View File

@ -1,5 +0,0 @@
Build System
------------
- The minimum supported Clang compiler version has been raised to 17.0
(#33555).

View File

@ -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.

View File

@ -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>`.

View File

@ -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).

View File

@ -1,4 +0,0 @@
Build System
------------
- The minimum supported GCC compiler version has been raised to 12.1 (#33842).

View File

@ -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)

View File

@ -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)

View File

@ -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)

View File

@ -1,2 +0,0 @@
- When `-logsourcelocations` is enabled, the log output now contains just the
function name instead of the entire function signature. (#34088)

View File

@ -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)

View File

@ -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)

View File

@ -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)

View File

@ -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()`.
- Capn Proto default values were updated to match the corresponding C++ defaults for mining-related option structs (e.g. `BlockCreateOptions`, `BlockWaitOptions`, `BlockCheckOptions`).

View File

@ -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`.