Merge #20286: rpc: deprecate addresses and reqSigs from rpc outputs
90ae3d8ca6doc: Add release notes for -deprecatedrpc=addresses and bitcoin-tx (Michael Dietz)085b3a7299rpc: deprecate `addresses` and `reqSigs` from rpc outputs (Michael Dietz) Pull request description: Considering the limited applicability of `reqSigs` and the confusing output of `1` in all cases except bare multisig, the `addresses` and `reqSigs` outputs are removed for all rpc commands. 1) add a new sane "address" field (for outputs that have an identifiable address, which doesn't include bare multisig) 2) with -deprecatedrpc: leave "reqSigs" and "addresses" intact (with all weird/wrong behavior they have now) 3) without -deprecatedrpc: drop "reqSigs" and "addresses" entirely always. Note: Some light refactoring done to allow us to very easily delete a few chunks of code (marked with TODOs) when we remove this deprecated behavior. Using `IsDeprecatedRPCEnabled` in core_write.cpp caused some circular dependencies involving core_io Circular dependencies were caused by rpc/util unnecessarily importing node/coinstats and node/transaction. Really what rpc/util needs are some fundamental type/helper-function definitions. So this was cleaned up to make more sense. This fixes #20102. ACKs for top commit: MarcoFalke: re-ACK90ae3d8ca6📢 Tree-SHA512: 8ffb617053b5f4a8b055da17c06711fd19632e0037d71c4c8135e50c8cd7a19163989484e4e0f17a6cc48bd597f04ecbfd609aef54b7d1d1e76a784214fcf72a
This commit is contained in:
50 files changed
+213
-183
No files matched your search
@@ -95,11 +95,8 @@ $ curl localhost:18332/rest/getutxos/checkmempool/b2cdfd7b89def827ff8af7cd9bff76
|
||||
"scriptPubKey" : {
|
||||
"asm" : "OP_DUP OP_HASH160 1c7cebb529b86a04c683dfa87be49de35bcf589e OP_EQUALVERIFY OP_CHECKSIG",
|
||||
"hex" : "76a9141c7cebb529b86a04c683dfa87be49de35bcf589e88ac",
|
||||
"reqSigs" : 1,
|
||||
"type" : "pubkeyhash",
|
||||
"addresses" : [
|
||||
"mi7as51dvLJsizWnTMurtRmrP8hG2m1XvD"
|
||||
]
|
||||
"address" : "mi7as51dvLJsizWnTMurtRmrP8hG2m1XvD"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
@@ -67,6 +67,21 @@ Updated RPCs
|
||||
`whitelisted`, the `permissions` field indicates if the peer has special
|
||||
privileges. The `banscore` field has simply been removed. (#20755)
|
||||
|
||||
- The following RPCs: `gettxout`, `getrawtransaction`, `decoderawtransaction`,
|
||||
`decodescript`, `gettransaction`, and REST endpoints: `/rest/tx`,
|
||||
`/rest/getutxos`, `/rest/block` deprecated the following fields (which are no
|
||||
longer returned in the responses by default): `addresses`, `reqSigs`.
|
||||
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
|
||||
point 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
|
||||
of `decodescript` these fields are top-level attributes, and included again as attributes
|
||||
of the `scriptPubKey` object. (#20286)
|
||||
|
||||
- When creating a hex-encoded bitcoin transaction using the `bitcoin-tx` utility
|
||||
with the `-json` option set, the following fields: `addresses`, `reqSigs` are no longer
|
||||
returned in the tx output of the response. (#20286)
|
||||
|
||||
Changes to Wallet or GUI related RPCs can be found in the GUI or Wallet section below.
|
||||
|
||||
New RPCs
|
||||
|
||||
Reference in new issue
Block a user