mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-02-09 10:43:19 -05:00
Merge #21544: rpc: Missing doc updates for bumpfee psbt update
1111896eb7
doc: Merge release notes (MarcoFalke)faeba9819d
rpc: Missing doc updates for bumpfee psbt update (MarcoFalke) Pull request description: Stuff missed in #20891. Also merge release notes, so that it doesn't have to be done later. ACKs for top commit: fanquake: ACK1111896eb7
Tree-SHA512: c9be5a3c944e2981c83546c4761277f1ad5fb9ba97bec80d073db4229924cb48fd23cb5638217c844e05af51d80507718dd201099cbe50819986b3c47c5df7e5
This commit is contained in:
commit
2b2ab9ab78
6 changed files with 45 additions and 49 deletions
|
@ -1,10 +0,0 @@
|
||||||
P2P and network changes
|
|
||||||
-----------------------
|
|
||||||
|
|
||||||
- Added NAT-PMP port mapping support via [`libnatpmp`](https://miniupnp.tuxfamily.org/libnatpmp.html)
|
|
||||||
|
|
||||||
Command-line options
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
- The `-natpmp` option has been added to use NAT-PMP to map the listening port. If both UPnP
|
|
||||||
and NAT-PMP are enabled, a successful allocation from UPnP prevails over one from NAT-PMP.
|
|
|
@ -1,10 +0,0 @@
|
||||||
Low-level RPC changes
|
|
||||||
---------------------
|
|
||||||
|
|
||||||
- Error codes have been updated to be more accurate for the following error cases (#18466):
|
|
||||||
- `signmessage` now returns RPC_INVALID_ADDRESS_OR_KEY (-5) if the
|
|
||||||
passed address is invalid. Previously returned RPC_TYPE_ERROR (-3).
|
|
||||||
- `verifymessage` now returns RPC_INVALID_ADDRESS_OR_KEY (-5) if the
|
|
||||||
passed address is invalid. Previously returned RPC_TYPE_ERROR (-3).
|
|
||||||
- `verifymessage` now returns RPC_TYPE_ERROR (-3) if the passed signature
|
|
||||||
is malformed. Previously returned RPC_INVALID_ADDRESS_OR_KEY (-5).
|
|
|
@ -1,9 +0,0 @@
|
||||||
Updated RPCs
|
|
||||||
------------
|
|
||||||
|
|
||||||
- The `getpeerinfo` RPC returns two new boolean fields, `bip152_hb_to` and
|
|
||||||
`bip152_hb_from`, that respectively indicate whether we selected a peer to be
|
|
||||||
in compact blocks high-bandwidth mode or whether a peer selected us as a
|
|
||||||
compact blocks high-bandwidth peer. High-bandwidth peers send new block
|
|
||||||
announcements via a `cmpctblock` message rather than the usual inv/headers
|
|
||||||
announcements. See BIP 152 for more details. (#19776)
|
|
|
@ -1,13 +0,0 @@
|
||||||
Updated RPCs
|
|
||||||
------------
|
|
||||||
|
|
||||||
- Due to [BIP 350](https://github.com/bitcoin/bips/blob/master/bip-0350.mediawiki)
|
|
||||||
being implemented, behavior for all RPCs that accept addresses is changed when
|
|
||||||
a native witness version 1 (or higher) is passed. These now require a Bech32m
|
|
||||||
encoding instead of a Bech32 one, and Bech32m encoding will be used for such
|
|
||||||
addresses in RPC output as well. No version 1 addresses should be created
|
|
||||||
for mainnet until consensus rules are adopted that give them meaning
|
|
||||||
(e.g. through [BIP 341](https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki)).
|
|
||||||
Once that happens, Bech32m is expected to be used for them, so this shouldn't
|
|
||||||
affect any production systems, but may be observed on other networks where such
|
|
||||||
addresses already have meaning (like signet).
|
|
|
@ -59,8 +59,30 @@ Notable changes
|
||||||
P2P and network changes
|
P2P and network changes
|
||||||
-----------------------
|
-----------------------
|
||||||
|
|
||||||
|
- Added NAT-PMP port mapping support via
|
||||||
|
[`libnatpmp`](https://miniupnp.tuxfamily.org/libnatpmp.html). (#18077)
|
||||||
|
|
||||||
Updated RPCs
|
Updated RPCs
|
||||||
------------
|
------------
|
||||||
|
|
||||||
|
- Due to [BIP 350](https://github.com/bitcoin/bips/blob/master/bip-0350.mediawiki)
|
||||||
|
being implemented, behavior for all RPCs that accept addresses is changed when
|
||||||
|
a native witness version 1 (or higher) is passed. These now require a Bech32m
|
||||||
|
encoding instead of a Bech32 one, and Bech32m encoding will be used for such
|
||||||
|
addresses in RPC output as well. No version 1 addresses should be created
|
||||||
|
for mainnet until consensus rules are adopted that give them meaning
|
||||||
|
(e.g. through [BIP 341](https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki)).
|
||||||
|
Once that happens, Bech32m is expected to be used for them, so this shouldn't
|
||||||
|
affect any production systems, but may be observed on other networks where such
|
||||||
|
addresses already have meaning (like signet). (#20861)
|
||||||
|
|
||||||
|
- The `getpeerinfo` RPC returns two new boolean fields, `bip152_hb_to` and
|
||||||
|
`bip152_hb_from`, that respectively indicate whether we selected a peer to be
|
||||||
|
in compact blocks high-bandwidth mode or whether a peer selected us as a
|
||||||
|
compact blocks high-bandwidth peer. High-bandwidth peers send new block
|
||||||
|
announcements via a `cmpctblock` message rather than the usual inv/headers
|
||||||
|
announcements. See BIP 152 for more details. (#19776)
|
||||||
|
|
||||||
- `getpeerinfo` no longer returns the following fields: `addnode`, `banscore`,
|
- `getpeerinfo` no longer returns the following fields: `addnode`, `banscore`,
|
||||||
and `whitelisted`, which were previously deprecated in 0.21. Instead of
|
and `whitelisted`, which were previously deprecated in 0.21. Instead of
|
||||||
`addnode`, the `connection_type` field returns manual. Instead of
|
`addnode`, the `connection_type` field returns manual. Instead of
|
||||||
|
@ -72,8 +94,8 @@ Updated RPCs
|
||||||
`/rest/getutxos`, `/rest/block` deprecated the following fields (which are no
|
`/rest/getutxos`, `/rest/block` deprecated the following fields (which are no
|
||||||
longer returned in the responses by default): `addresses`, `reqSigs`.
|
longer returned in the responses by default): `addresses`, `reqSigs`.
|
||||||
The `-deprecatedrpc=addresses` flag must be passed for these fields to be
|
The `-deprecatedrpc=addresses` flag must be passed for these fields to be
|
||||||
included in the RPC response. This flag/option will be available until v23, at which
|
included in the RPC response. This flag/option will be available only for this major release, after which
|
||||||
point the deprecation will be removed entirely. Note that these fields are attributes of
|
the deprecation will be removed entirely. Note that these fields are attributes of
|
||||||
the `scriptPubKey` object returned in the RPC response. However, in the response
|
the `scriptPubKey` object returned in the RPC response. However, in the response
|
||||||
of `decodescript` these fields are top-level attributes, and included again as attributes
|
of `decodescript` these fields are top-level attributes, and included again as attributes
|
||||||
of the `scriptPubKey` object. (#20286)
|
of the `scriptPubKey` object. (#20286)
|
||||||
|
@ -93,6 +115,10 @@ Build System
|
||||||
New settings
|
New settings
|
||||||
------------
|
------------
|
||||||
|
|
||||||
|
- The `-natpmp` option has been added to use NAT-PMP to map the listening port.
|
||||||
|
If both UPnP and NAT-PMP are enabled, a successful allocation from UPnP
|
||||||
|
prevails over one from NAT-PMP. (#18077)
|
||||||
|
|
||||||
Updated settings
|
Updated settings
|
||||||
----------------
|
----------------
|
||||||
|
|
||||||
|
@ -110,6 +136,9 @@ Wallet
|
||||||
The RPC returns public versions of all imported descriptors, including their timestamp and flags.
|
The RPC returns public versions of all imported descriptors, including their timestamp and flags.
|
||||||
For ranged descriptors, it also returns the range boundaries and the next index to generate addresses from. (#20226)
|
For ranged descriptors, it also returns the range boundaries and the next index to generate addresses from. (#20226)
|
||||||
|
|
||||||
|
- The `bumpfee` RPC is not available with wallets that have private keys
|
||||||
|
disabled. `psbtbumpfee` can be used instead. (#20891)
|
||||||
|
|
||||||
GUI changes
|
GUI changes
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
|
@ -118,11 +147,20 @@ Low-level changes
|
||||||
|
|
||||||
RPC
|
RPC
|
||||||
---
|
---
|
||||||
|
|
||||||
- The RPC server can process a limited number of simultaneous RPC requests.
|
- The RPC server can process a limited number of simultaneous RPC requests.
|
||||||
Previously, if this limit was exceeded, `bitcoind` would respond with
|
Previously, if this limit was exceeded, the RPC server would respond with
|
||||||
[status code 500 (`HTTP_INTERNAL_SERVER_ERROR`)](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#5xx_server_errors).
|
[status code 500 (`HTTP_INTERNAL_SERVER_ERROR`)](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#5xx_server_errors).
|
||||||
Now it returns status code 503 (`HTTP_SERVICE_UNAVAILABLE`). (#18335)
|
Now it returns status code 503 (`HTTP_SERVICE_UNAVAILABLE`). (#18335)
|
||||||
|
|
||||||
|
- Error codes have been updated to be more accurate for the following error cases (#18466):
|
||||||
|
- `signmessage` now returns RPC_INVALID_ADDRESS_OR_KEY (-5) if the
|
||||||
|
passed address is invalid. Previously returned RPC_TYPE_ERROR (-3).
|
||||||
|
- `verifymessage` now returns RPC_INVALID_ADDRESS_OR_KEY (-5) if the
|
||||||
|
passed address is invalid. Previously returned RPC_TYPE_ERROR (-3).
|
||||||
|
- `verifymessage` now returns RPC_TYPE_ERROR (-3) if the passed signature
|
||||||
|
is malformed. Previously returned RPC_INVALID_ADDRESS_OR_KEY (-5).
|
||||||
|
|
||||||
Tests
|
Tests
|
||||||
-----
|
-----
|
||||||
|
|
||||||
|
|
|
@ -3379,7 +3379,7 @@ RPCHelpMan signrawtransactionwithwallet()
|
||||||
|
|
||||||
static RPCHelpMan bumpfee_helper(std::string method_name)
|
static RPCHelpMan bumpfee_helper(std::string method_name)
|
||||||
{
|
{
|
||||||
bool want_psbt = method_name == "psbtbumpfee";
|
const bool want_psbt = method_name == "psbtbumpfee";
|
||||||
const std::string incremental_fee{CFeeRate(DEFAULT_INCREMENTAL_RELAY_FEE).ToString(FeeEstimateMode::SAT_VB)};
|
const std::string incremental_fee{CFeeRate(DEFAULT_INCREMENTAL_RELAY_FEE).ToString(FeeEstimateMode::SAT_VB)};
|
||||||
|
|
||||||
return RPCHelpMan{method_name,
|
return RPCHelpMan{method_name,
|
||||||
|
@ -3413,14 +3413,14 @@ static RPCHelpMan bumpfee_helper(std::string method_name)
|
||||||
"still be replaceable in practice, for example if it has unconfirmed ancestors which\n"
|
"still be replaceable in practice, for example if it has unconfirmed ancestors which\n"
|
||||||
"are replaceable).\n"},
|
"are replaceable).\n"},
|
||||||
{"estimate_mode", RPCArg::Type::STR, /* default */ "unset", std::string() + "The fee estimate mode, must be one of (case insensitive):\n"
|
{"estimate_mode", RPCArg::Type::STR, /* default */ "unset", std::string() + "The fee estimate mode, must be one of (case insensitive):\n"
|
||||||
" \"" + FeeModes("\"\n\"") + "\""},
|
"\"" + FeeModes("\"\n\"") + "\""},
|
||||||
},
|
},
|
||||||
"options"},
|
"options"},
|
||||||
},
|
},
|
||||||
RPCResult{
|
RPCResult{
|
||||||
RPCResult::Type::OBJ, "", "", Cat(Cat<std::vector<RPCResult>>(
|
RPCResult::Type::OBJ, "", "", Cat(Cat<std::vector<RPCResult>>(
|
||||||
{
|
{
|
||||||
{RPCResult::Type::STR, "psbt", "The base64-encoded unsigned PSBT of the new transaction." + std::string(want_psbt ? "" : " Only returned when wallet private keys are disabled. (DEPRECATED)")},
|
{RPCResult::Type::STR, "psbt", "The base64-encoded unsigned PSBT of the new transaction."},
|
||||||
},
|
},
|
||||||
want_psbt ? std::vector<RPCResult>{} : std::vector<RPCResult>{{RPCResult::Type::STR_HEX, "txid", "The id of the new transaction. Only returned when wallet private keys are enabled."}}
|
want_psbt ? std::vector<RPCResult>{} : std::vector<RPCResult>{{RPCResult::Type::STR_HEX, "txid", "The id of the new transaction. Only returned when wallet private keys are enabled."}}
|
||||||
),
|
),
|
||||||
|
@ -3437,7 +3437,7 @@ static RPCHelpMan bumpfee_helper(std::string method_name)
|
||||||
"\nBump the fee, get the new transaction\'s" + std::string(want_psbt ? "psbt" : "txid") + "\n" +
|
"\nBump the fee, get the new transaction\'s" + std::string(want_psbt ? "psbt" : "txid") + "\n" +
|
||||||
HelpExampleCli(method_name, "<txid>")
|
HelpExampleCli(method_name, "<txid>")
|
||||||
},
|
},
|
||||||
[want_psbt](const RPCHelpMan& self, const JSONRPCRequest& request) mutable -> UniValue
|
[want_psbt](const RPCHelpMan& self, const JSONRPCRequest& request) -> UniValue
|
||||||
{
|
{
|
||||||
std::shared_ptr<CWallet> const pwallet = GetWalletForJSONRPCRequest(request);
|
std::shared_ptr<CWallet> const pwallet = GetWalletForJSONRPCRequest(request);
|
||||||
if (!pwallet) return NullUniValue;
|
if (!pwallet) return NullUniValue;
|
||||||
|
|
Loading…
Add table
Reference in a new issue