Some direct usages of LegacyScriptPubKeyMan refactored to use CWallet's functionality.
There are still 4 functional tests that doesn't work for descriptor wallets:
feature_dip3_deterministicmns.py (no rpc protx updateregistar)
feature_governance.py: no rpc for governance votemany and governance votealias
interface_zmq_dash.py (see governance)
That's part I of changes, other changes are not PR-ready yet, WIP.
How Has This Been Tested?
Firstly, the flag --legacy-wallets are removed for many functional tests.
Secondly, the flag --descriptors is inverted in default value:
diff --git a/test/functional/test_framework/test_framework.py b/test/functional/test_framework/test_framework.py
index 585a6a74d6..9ad5fd1daa 100755
--- a/test/functional/test_framework/test_framework.py
+++ b/test/functional/test_framework/test_framework.py
@@ -242,10 +242,10 @@ class BitcoinTestFramework(metaclass=BitcoinTestMetaClass):
if self.options.descriptors is None:
# Prefer BDB unless it isn't available
- if self.is_bdb_compiled():
- self.options.descriptors = False
- elif self.is_sqlite_compiled():
+ if self.is_sqlite_compiled():
self.options.descriptors = True
+ elif self.is_bdb_compiled():
+ self.options.descriptors = False
else:
# If neither are compiled, tests requiring a wallet will be skipped and the value of self.options.descriptors won't matter
# It still needs to exist and be None in order for tests to work however.
Breaking Changes
N/A, descriptor wallets have not been publicly released yet
Checklist:
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have added or updated relevant unit/integration/functional/e2e tests
[x] I have made corresponding changes to the documentation
[x] I have assigned this pull request to a milestone
Issue being fixed or feature implemented
Many rpc such as
protx register
uses forcely LegacyScriptPubKeyMan instead using CWallet's interface. It causes a failures such asfor all functional tests that uses Masternodes/evo nodes.
See https://github.com/dashpay/dash-issues/issues/59 to track progress
What was done?
Some direct usages of LegacyScriptPubKeyMan refactored to use CWallet's functionality. There are still 4 functional tests that doesn't work for descriptor wallets:
protx updateregistar
)governance votemany
andgovernance votealias
That's part I of changes, other changes are not PR-ready yet, WIP.
How Has This Been Tested?
Firstly, the flag
--legacy-wallets
are removed for many functional tests. Secondly, the flag--descriptors
is inverted in default value:Breaking Changes
N/A, descriptor wallets have not been publicly released yet
Checklist: