aboutsummaryrefslogtreecommitdiff
path: root/doc/release-notes.md
diff options
context:
space:
mode:
Diffstat (limited to 'doc/release-notes.md')
-rw-r--r--doc/release-notes.md308
1 files changed, 38 insertions, 270 deletions
diff --git a/doc/release-notes.md b/doc/release-notes.md
index ee37c6a7c6..b27bfd0272 100644
--- a/doc/release-notes.md
+++ b/doc/release-notes.md
@@ -1,9 +1,9 @@
-25.0 Release Notes
+25.1rc1 Release Notes
==================
-Bitcoin Core version 25.0 is now available from:
+Bitcoin Core version 25.1rc1 is now available from:
- <https://bitcoincore.org/bin/bitcoin-core-25.0/>
+ <https://bitcoincore.org/bin/bitcoin-core-25.1/test.rc1>
This release includes new features, various bug fixes and performance
improvements, as well as updated translations.
@@ -40,301 +40,69 @@ unsupported systems.
Notable changes
===============
-P2P and network changes
------------------------
+### P2P
-- Transactions of non-witness size 65 and above are now allowed by mempool
- and relay policy. This is to better reflect the actual afforded protections
- against CVE-2017-12842 and open up additional use-cases of smaller transaction sizes. (#26265)
+- #27626 Parallel compact block downloads, take 3
+- #27743 p2p: Unconditionally return when compact block status == READ_STATUS_FAILED
-New RPCs
---------
+### Fees
-- The scanblocks RPC returns the relevant blockhashes from a set of descriptors by
- scanning all blockfilters in the given range. It can be used in combination with
- the getblockheader and rescanblockchain RPCs to achieve fast wallet rescans. Note
- that this functionality can only be used if a compact block filter index
- (-blockfilterindex=1) has been constructed by the node. (#23549)
+- #27622 Fee estimation: avoid serving stale fee estimate
-Updated RPCs
-------------
+### RPC
-- All JSON-RPC methods accept a new [named
- parameter](JSON-RPC-interface.md#parameter-passing) called `args` that can
- contain positional parameter values. This is a convenience to allow some
- parameter values to be passed by name without having to name every value. The
- python test framework and `bitcoin-cli` tool both take advantage of this, so
- for example:
+- #27727 rpc: Fix invalid bech32 address handling
-```sh
-bitcoin-cli -named createwallet wallet_name=mywallet load_on_startup=1
-```
+### Rest
-Can now be shortened to:
+- #27853 rest: fix crash error when calling /deploymentinfo
+- #28551 http: bugfix: allow server shutdown in case of remote client disconnection
-```sh
-bitcoin-cli -named createwallet mywallet load_on_startup=1
-```
+### Wallet
-- The `verifychain` RPC will now return `false` if the checks didn't fail,
- but couldn't be completed at the desired depth and level. This could be due
- to missing data while pruning, due to an insufficient dbcache or due to
- the node being shutdown before the call could finish. (#25574)
+- #28038 wallet: address book migration bug fixes
+- #28067 descriptors: do not return top-level only funcs as sub descriptors
+- #28125 wallet: bugfix, disallow migration of invalid scripts
+- #28542 wallet: Check for uninitialized last processed and conflicting heights in MarkConflicted
-- `sendrawtransaction` has a new, optional argument, `maxburnamount` with a default value of `0`.
- Any transaction containing an unspendable output with a value greater than `maxburnamount` will
- not be submitted. At present, the outputs deemed unspendable are those with scripts that begin
- with an `OP_RETURN` code (known as 'datacarriers'), scripts that exceed the maximum script size,
- and scripts that contain invalid opcodes.
+### Build
-- The `testmempoolaccept` RPC now returns 2 additional results within the "fees" result:
- "effective-feerate" is the feerate including fees and sizes of transactions validated together if
- package validation was used, and also includes any modified fees from prioritisetransaction. The
- "effective-includes" result lists the wtxids of transactions whose modified fees and sizes were used
- in the effective-feerate (#26646).
+- #27724 build: disable boost multi index safe mode in debug mode
+- #28097 depends: xcb-proto 1.15.2
+- #28543 build, macos: Fix qt package build with new Xcode 15 linker
+- #28571 depends: fix unusable memory_resource in macos qt build
-- `decodescript` may now infer a Miniscript descriptor under P2WSH context if it is not lacking
- information. (#27037)
+### Gui
-- `finalizepsbt` is now able to finalize a transaction with inputs spending Miniscript-compatible
- P2WSH scripts. (#24149)
+- gui#751 macOS, do not process actions during shutdown
-Changes to wallet related RPCs can be found in the Wallet section below.
+### Miscellaneous
-Build System
-------------
+- #28452 Do not use std::vector = {} to release memory
-- The `--enable-upnp-default` and `--enable-natpmp-default` options
- have been removed. If you want to use port mapping, you can
- configure it using a .conf file, or by passing the relevant
- options at runtime. (#26896)
+### CI
-Updated settings
-----------------
-
-- If the `-checkblocks` or `-checklevel` options are explicitly provided by the
-user, but the verification checks cannot be completed due to an insufficient
-dbcache, Bitcoin Core will now return an error at startup. (#25574)
-
-- Ports specified in `-port` and `-rpcport` options are now validated at startup.
- Values that previously worked and were considered valid can now result in errors. (#22087)
-
-- Setting `-blocksonly` will now reduce the maximum mempool memory
- to 5MB (users may still use `-maxmempool` to override). Previously,
- the default 300MB would be used, leading to unexpected memory usage
- for users running with `-blocksonly` expecting it to eliminate
- mempool memory usage.
-
- As unused mempool memory is shared with dbcache, this also reduces
- the dbcache size for users running with `-blocksonly`, potentially
- impacting performance.
-- Setting `-maxconnections=0` will now disable `-dnsseed`
- and `-listen` (users may still set them to override).
-
-Changes to GUI or wallet related settings can be found in the GUI or Wallet section below.
-
-New settings
-------------
-
-- The `shutdownnotify` option is used to specify a command to execute synchronously
-before Bitcoin Core has begun its shutdown sequence. (#23395)
-
-
-Wallet
-------
-
-- The `minconf` option, which allows a user to specify the minimum number
-of confirmations a UTXO being spent has, and the `maxconf` option,
-which allows specifying the maximum number of confirmations, have been
-added to the following RPCs in #25375:
- - `fundrawtransaction`
- - `send`
- - `walletcreatefundedpsbt`
- - `sendall`
-
-- Added a new `next_index` field in the response in `listdescriptors` to
- have the same format as `importdescriptors` (#26194)
-
-- RPC `listunspent` now has a new argument `include_immature_coinbase`
- to include coinbase UTXOs that don't meet the minimum spendability
- depth requirement (which before were silently skipped). (#25730)
-
-- Rescans for descriptor wallets are now significantly faster if compact
- block filters (BIP158) are available. Since those are not constructed
- by default, the configuration option "-blockfilterindex=1" has to be
- provided to take advantage of the optimization. This improves the
- performance of the RPC calls `rescanblockchain`, `importdescriptors`
- and `restorewallet`. (#25957)
-
-- RPC `unloadwallet` now fails if a rescan is in progress. (#26618)
-
-- Wallet passphrases may now contain null characters.
- Prior to this change, only characters up to the first
- null character were recognized and accepted. (#27068)
-
-- Address Purposes strings are now restricted to the currently known values of "send",
- "receive", and "refund". Wallets that have unrecognized purpose strings will have
- loading warnings, and the `listlabels` RPC will raise an error if an unrecognized purpose
- is requested. (#27217)
-
-- In the `createwallet`, `loadwallet`, `unloadwallet`, and `restorewallet` RPCs, the
- "warning" string field is deprecated in favor of a "warnings" field that
- returns a JSON array of strings to better handle multiple warning messages and
- for consistency with other wallet RPCs. The "warning" field will be fully
- removed from these RPCs in v26. It can be temporarily re-enabled during the
- deprecation period by launching bitcoind with the configuration option
- `-deprecatedrpc=walletwarningfield`. (#27279)
-
-- Descriptor wallets can now spend coins sent to P2WSH Miniscript descriptors. (#24149)
-
-GUI changes
------------
-
-- The "Mask values" is a persistent option now. (gui#701)
-- The "Mask values" option affects the "Transaction" view now, in addition to the
- "Overview" one. (gui#708)
-
-REST
-----
-
-- A new `/rest/deploymentinfo` endpoint has been added for fetching various
- state info regarding deployments of consensus changes. (#25412)
-
-Binary verification
-----
-
-- The binary verification script has been updated. In previous releases it
- would verify that the binaries had been signed with a single "release key".
- In this release and moving forward it will verify that the binaries are
- signed by a _threshold of trusted keys_. For more details and
- examples, see:
- https://github.com/bitcoin/bitcoin/blob/master/contrib/verify-binaries/README.md
- (#27358)
-
-Low-level changes
-=================
-
-RPC
----
-
-- The JSON-RPC server now rejects requests where a parameter is specified multiple
- times with the same name, instead of silently overwriting earlier parameter values
- with later ones. (#26628)
-- RPC `listsinceblock` now accepts an optional `label` argument
- to fetch incoming transactions having the specified label. (#25934)
-- Previously `setban`, `addpeeraddress`, `walletcreatefundedpsbt`, methods
- allowed non-boolean and non-null values to be passed as boolean parameters.
- Any string, number, array, or object value that was passed would be treated
- as false. After this change, passing any value except `true`, `false`, or
- `null` now triggers a JSON value is not of expected type error. (#26213)
+- #27777 ci: Prune dangling images on RESTART_CI_DOCKER_BEFORE_RUN
+- #27834 ci: Nuke Android APK task, Use credits for tsan
+- #27844 ci: Use podman stop over podman kill
+- #27886 ci: Switch to amd64 container in "ARM" task
Credits
=======
Thanks to everyone who directly contributed to this release:
-- 0xb10c
-- 721217.xyz
-- @RandyMcMillan
-- amadeuszpawlik
-- Amiti Uttarwar
+- Abubakar Sadiq Ismail
- Andrew Chow
-- Andrew Toth
-- Anthony Towns
-- Antoine Poinsot
-- Aurèle Oulès
-- Ben Woosley
-- Bitcoin Hodler
-- brunoerg
-- Bushstar
-- Carl Dong
-- Chris Geihsler
-- Cory Fields
-- David Gumberg
-- dergoegge
-- Dhruv Mehta
-- Dimitris Tsapakidis
-- dougEfish
-- Douglas Chimento
-- ekzyis
-- Elichai Turkel
-- Ethan Heilman
-- Fabian Jahr
-- FractalEncrypt
-- furszy
-- Gleb Naumenko
-- glozow
-- Greg Sanders
+- Bruno Garcia
+- Gregory Sanders
- Hennadii Stepanov
-- hernanmarino
-- ishaanam
-- ismaelsadeeq
-- James O'Beirne
-- jdjkelly@gmail.com
-- Jeff Ruane
-- Jeffrey Czyz
-- Jeremy Rubin
-- Jesse Barton
-- João Barbosa
-- JoaoAJMatos
-- John Moffett
-- Jon Atack
-- Jonas Schnelli
-- jonatack
-- Joshua Kelly
-- josibake
-- Juan Pablo Civile
-- kdmukai
-- klementtan
-- Kolby ML
-- kouloumos
-- Kristaps Kaupe
-- laanwj
-- Larry Ruane
-- Leonardo Araujo
-- Leonardo Lazzaro
-- Luke Dashjr
- MacroFake
-- MarcoFalke
-- Martin Leitner-Ankerl
-- Martin Zumsande
-- Matt Whitlock
-- Matthew Zipkin
+- Matias Furszyfer
- Michael Ford
-- Miles Liu
-- mruddy
-- Murray Nesbitt
-- muxator
-- omahs
-- pablomartin4btc
-- Pasta
- Pieter Wuille
-- Pttn
-- Randall Naar
-- Riahiamirreza
-- roconnor-blockstream
-- Russell O'Connor
-- Ryan Ofsky
-- S3RK
-- Sebastian Falbesoner
-- Seibart Nedor
-- sinetek
-- Sjors Provoost
-- Skuli Dulfari
-- SomberNight
-- Stacie Waleyko
- stickies-v
-- stratospher
-- Suhas Daftuar
-- Suriyaa Sundararuban
-- TheCharlatan
-- Vasil Dimov
-- Vasil Stoyanov
-- virtu
-- w0xlt
-- willcl-ark
-- yancy
-- Yusuf Sahin HAMZA
+- Will Clark
As well as to everyone that helped with translations on
-[Transifex](https://www.transifex.com/bitcoin/bitcoin/). \ No newline at end of file
+[Transifex](https://www.transifex.com/bitcoin/bitcoin/).