mirror of
https://github.com/bitcoin/bitcoin.git
synced 2024-11-20 10:38:42 +01:00
Merge bitcoin/bitcoin#26194: rpc, wallet: use the same next_index
key in listdescriptors
and importdescriptors
b082f28101
rpc, wallet: use the same `next_index` in listdescriptors and importdescriptors (w0xlt) Pull request description: Currently `listdescriptors` RPC uses `next` key to represent `WalletDescriptor::next_index` while `importdescriptors` uses `next_index`. This creates two different descriptor formats. This PR changes `listdescriptors` to use the same key as `importdescriptors`. ACKs for top commit: achow101: ACKb082f28101
aureleoules: reACKb082f28101
Tree-SHA512: c29ec59051878e614d749ed6dc85e5c14ad00db0e8fcbce3f5066d1aae85ef07ca70f02920299e48d191b7387024fe224b0054c4191a5951cb805106f7b8e37b
This commit is contained in:
commit
1ff135ca7f
4
doc/release-note-26194.md
Normal file
4
doc/release-note-26194.md
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
Add `next_index` in `listdescriptors` RPC
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
- Added a new `next_index` field in the response in `listdescriptors` to have the same format as `importdescriptors`
|
@ -1760,7 +1760,8 @@ RPCHelpMan listdescriptors()
|
|||||||
{RPCResult::Type::NUM, "", "Range start inclusive"},
|
{RPCResult::Type::NUM, "", "Range start inclusive"},
|
||||||
{RPCResult::Type::NUM, "", "Range end inclusive"},
|
{RPCResult::Type::NUM, "", "Range end inclusive"},
|
||||||
}},
|
}},
|
||||||
{RPCResult::Type::NUM, "next", /*optional=*/true, "The next index to generate addresses from; defined only for ranged descriptors"},
|
{RPCResult::Type::NUM, "next", /*optional=*/true, "Same as next_index field. Kept for compatibility reason."},
|
||||||
|
{RPCResult::Type::NUM, "next_index", /*optional=*/true, "The next index to generate addresses from; defined only for ranged descriptors"},
|
||||||
}},
|
}},
|
||||||
}}
|
}}
|
||||||
}},
|
}},
|
||||||
@ -1837,6 +1838,7 @@ RPCHelpMan listdescriptors()
|
|||||||
range.push_back(info.range->second - 1);
|
range.push_back(info.range->second - 1);
|
||||||
spk.pushKV("range", range);
|
spk.pushKV("range", range);
|
||||||
spk.pushKV("next", info.next_index);
|
spk.pushKV("next", info.next_index);
|
||||||
|
spk.pushKV("next_index", info.next_index);
|
||||||
}
|
}
|
||||||
descriptors.push_back(spk);
|
descriptors.push_back(spk);
|
||||||
}
|
}
|
||||||
|
@ -54,7 +54,7 @@ class ListDescriptorsTest(BitcoinTestFramework):
|
|||||||
assert_equal(4, len([d for d in result['descriptors'] if d['internal']]))
|
assert_equal(4, len([d for d in result['descriptors'] if d['internal']]))
|
||||||
for item in result['descriptors']:
|
for item in result['descriptors']:
|
||||||
assert item['desc'] != ''
|
assert item['desc'] != ''
|
||||||
assert item['next'] == 0
|
assert item['next_index'] == 0
|
||||||
assert item['range'] == [0, 0]
|
assert item['range'] == [0, 0]
|
||||||
assert item['timestamp'] is not None
|
assert item['timestamp'] is not None
|
||||||
|
|
||||||
@ -78,7 +78,8 @@ class ListDescriptorsTest(BitcoinTestFramework):
|
|||||||
'timestamp': TIME_GENESIS_BLOCK,
|
'timestamp': TIME_GENESIS_BLOCK,
|
||||||
'active': False,
|
'active': False,
|
||||||
'range': [0, 0],
|
'range': [0, 0],
|
||||||
'next': 0},
|
'next': 0,
|
||||||
|
'next_index': 0},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
assert_equal(expected, wallet.listdescriptors())
|
assert_equal(expected, wallet.listdescriptors())
|
||||||
@ -92,7 +93,8 @@ class ListDescriptorsTest(BitcoinTestFramework):
|
|||||||
'timestamp': TIME_GENESIS_BLOCK,
|
'timestamp': TIME_GENESIS_BLOCK,
|
||||||
'active': False,
|
'active': False,
|
||||||
'range': [0, 0],
|
'range': [0, 0],
|
||||||
'next': 0},
|
'next': 0,
|
||||||
|
'next_index': 0},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
assert_equal(expected_private, wallet.listdescriptors(True))
|
assert_equal(expected_private, wallet.listdescriptors(True))
|
||||||
|
Loading…
Reference in New Issue
Block a user