diff --git a/qa/rpc-tests/mining_shielded_coinbase.py b/qa/rpc-tests/mining_shielded_coinbase.py index 9d9fc517f..31b1a43ba 100755 --- a/qa/rpc-tests/mining_shielded_coinbase.py +++ b/qa/rpc-tests/mining_shielded_coinbase.py @@ -30,8 +30,6 @@ class ShieldCoinbaseTest (BitcoinTestFramework): def start_node_with(self, index, extra_args=[]): args = [ - '-experimentalfeatures', - '-orchardwallet', nuparams(BLOSSOM_BRANCH_ID, 1), nuparams(HEARTWOOD_BRANCH_ID, 10), nuparams(CANOPY_BRANCH_ID, 20), diff --git a/qa/rpc-tests/orchard_reorg.py b/qa/rpc-tests/orchard_reorg.py index 58d0bf8d9..d9a150ec1 100755 --- a/qa/rpc-tests/orchard_reorg.py +++ b/qa/rpc-tests/orchard_reorg.py @@ -37,9 +37,6 @@ class OrchardReorgTest(BitcoinTestFramework): nuparams(CANOPY_BRANCH_ID, 5), nuparams(NU5_BRANCH_ID, 10), '-nurejectoldversions=false', - '-experimentalfeatures', - '-orchardwallet', - # '-debug', ]] * self.num_nodes) def run_test(self): diff --git a/qa/rpc-tests/wallet_accounts.py b/qa/rpc-tests/wallet_accounts.py index fc9f5905a..14f93b6d1 100755 --- a/qa/rpc-tests/wallet_accounts.py +++ b/qa/rpc-tests/wallet_accounts.py @@ -23,8 +23,6 @@ from decimal import Decimal class WalletAccountsTest(BitcoinTestFramework): def setup_nodes(self): return start_nodes(self.num_nodes, self.options.tmpdir, [[ - '-experimentalfeatures', - '-orchardwallet', nuparams(NU5_BRANCH_ID, 210), ]] * self.num_nodes) diff --git a/qa/rpc-tests/wallet_addresses.py b/qa/rpc-tests/wallet_addresses.py index 23041d2b6..ac80e32d1 100755 --- a/qa/rpc-tests/wallet_addresses.py +++ b/qa/rpc-tests/wallet_addresses.py @@ -18,7 +18,7 @@ class WalletAddressesTest(BitcoinTestFramework): def setup_network(self): self.nodes = start_nodes( self.num_nodes, self.options.tmpdir, - extra_args=[['-experimentalfeatures', '-orchardwallet', nuparams(NU5_BRANCH_ID, 2),]] * self.num_nodes) + extra_args=[[nuparams(NU5_BRANCH_ID, 2),]] * self.num_nodes) connect_nodes_bi(self.nodes, 0, 1) self.is_network_split = False self.sync_all() diff --git a/qa/rpc-tests/wallet_listreceived.py b/qa/rpc-tests/wallet_listreceived.py index 0f47b5256..568ec5600 100755 --- a/qa/rpc-tests/wallet_listreceived.py +++ b/qa/rpc-tests/wallet_listreceived.py @@ -36,8 +36,6 @@ class ListReceivedTest (BitcoinTestFramework): self.nodes = start_nodes( self.num_nodes, self.options.tmpdir, extra_args=[[ - '-experimentalfeatures', - '-orchardwallet', nuparams(NU5_BRANCH_ID, 225), ]] * self.num_nodes ) diff --git a/qa/rpc-tests/wallet_orchard.py b/qa/rpc-tests/wallet_orchard.py index 2a1ee85a6..3e9961047 100755 --- a/qa/rpc-tests/wallet_orchard.py +++ b/qa/rpc-tests/wallet_orchard.py @@ -23,8 +23,6 @@ class WalletOrchardTest(BitcoinTestFramework): def setup_nodes(self): return start_nodes(self.num_nodes, self.options.tmpdir, [[ - '-experimentalfeatures', - '-orchardwallet', nuparams(NU5_BRANCH_ID, 210), ]] * self.num_nodes) diff --git a/qa/rpc-tests/wallet_shieldcoinbase.py b/qa/rpc-tests/wallet_shieldcoinbase.py index a7731751a..feb4b0aae 100755 --- a/qa/rpc-tests/wallet_shieldcoinbase.py +++ b/qa/rpc-tests/wallet_shieldcoinbase.py @@ -21,8 +21,6 @@ class WalletShieldCoinbaseTest (BitcoinTestFramework): args = [ '-regtestprotectcoinbase', '-debug=zrpcunsafe', - '-experimentalfeatures', - '-orchardwallet', nuparams(NU5_BRANCH_ID, self.nu5_activation), ] self.nodes = [] diff --git a/qa/rpc-tests/wallet_z_sendmany.py b/qa/rpc-tests/wallet_z_sendmany.py index dd1559305..33d0b4541 100755 --- a/qa/rpc-tests/wallet_z_sendmany.py +++ b/qa/rpc-tests/wallet_z_sendmany.py @@ -21,8 +21,6 @@ from decimal import Decimal class WalletZSendmanyTest(BitcoinTestFramework): def setup_network(self, split=False): self.nodes = start_nodes(3, self.options.tmpdir, [[ - '-experimentalfeatures', - '-orchardwallet', ]] * self.num_nodes) connect_nodes_bi(self.nodes,0,1) connect_nodes_bi(self.nodes,1,2) diff --git a/src/experimental_features.cpp b/src/experimental_features.cpp index bd1f3c3a5..67afbf7fc 100644 --- a/src/experimental_features.cpp +++ b/src/experimental_features.cpp @@ -11,7 +11,6 @@ bool fExperimentalDeveloperSetPoolSizeZero = false; bool fExperimentalPaymentDisclosure = false; bool fExperimentalInsightExplorer = false; bool fExperimentalLightWalletd = false; -bool fExperimentalOrchardWallet = false; std::optional InitExperimentalMode() { @@ -21,7 +20,6 @@ std::optional InitExperimentalMode() fExperimentalPaymentDisclosure = GetBoolArg("-paymentdisclosure", false); fExperimentalInsightExplorer = GetBoolArg("-insightexplorer", false); fExperimentalLightWalletd = GetBoolArg("-lightwalletd", false); - fExperimentalOrchardWallet = GetBoolArg("-orchardwallet", false); // Fail if user has set experimental options without the global flag if (!fExperimentalMode) { @@ -35,8 +33,6 @@ std::optional InitExperimentalMode() return _("Insight explorer requires -experimentalfeatures."); } else if (fExperimentalLightWalletd) { return _("Light Walletd requires -experimentalfeatures."); - } else if (fExperimentalOrchardWallet) { - return _("Orchard-enabled wallet requires -experimentalfeatures."); } } return std::nullopt; @@ -55,8 +51,6 @@ std::vector GetExperimentalFeatures() experimentalfeatures.push_back("insightexplorer"); if (fExperimentalLightWalletd) experimentalfeatures.push_back("lightwalletd"); - if (fExperimentalOrchardWallet) - experimentalfeatures.push_back("orchardwallet"); return experimentalfeatures; } diff --git a/src/experimental_features.h b/src/experimental_features.h index d2197be48..d607f1d53 100644 --- a/src/experimental_features.h +++ b/src/experimental_features.h @@ -14,7 +14,6 @@ extern bool fExperimentalDeveloperSetPoolSizeZero; extern bool fExperimentalPaymentDisclosure; extern bool fExperimentalInsightExplorer; extern bool fExperimentalLightWalletd; -extern bool fExperimentalOrchardWallet; std::optional InitExperimentalMode(); std::vector GetExperimentalFeatures(); diff --git a/src/init.cpp b/src/init.cpp index fe72073cb..3f5d1d48f 100644 --- a/src/init.cpp +++ b/src/init.cpp @@ -947,12 +947,6 @@ bool AppInit2(boost::thread_group& threadGroup, CScheduler& scheduler) return InitError(err.value()); } - // Just temporarily (until fully functional), don't allow the Orchard wallet - // extensions if we're on mainnet - if (fExperimentalOrchardWallet && chainparams.NetworkIDString() == "main") { - return InitError(_("The -orchardwallet setting is not yet available on mainnet.")); - } - // if using block pruning, then disable txindex if (GetArg("-prune", 0)) { if (GetBoolArg("-txindex", DEFAULT_TXINDEX)) diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index 614b3b475..584bf4173 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -3235,10 +3235,6 @@ UniValue z_getnewaccount(const UniValue& params, bool fHelp) + HelpExampleRpc("z_getnewaccount", "") ); - if (!fExperimentalOrchardWallet) { - throw JSONRPCError(RPC_WALLET_ENCRYPTION_FAILED, "Error: the Orchard wallet experimental extensions are disabled."); - } - LOCK(pwalletMain->cs_wallet); EnsureWalletIsUnlocked(); @@ -3285,10 +3281,6 @@ UniValue z_getaddressforaccount(const UniValue& params, bool fHelp) + HelpExampleRpc("z_getaddressforaccount", "4") ); - if (!fExperimentalOrchardWallet) { - throw JSONRPCError(RPC_WALLET_ENCRYPTION_FAILED, "Error: the Orchard wallet experimental extensions are disabled."); - } - // cs_main is required for obtaining the current height, for // CWallet::DefaultReceiverTypes LOCK2(cs_main, pwalletMain->cs_wallet); @@ -3508,10 +3500,6 @@ UniValue z_listunifiedreceivers(const UniValue& params, bool fHelp) + HelpExampleRpc("z_listunifiedreceivers", "") ); - if (!fExperimentalOrchardWallet) { - throw JSONRPCError(RPC_WALLET_ENCRYPTION_FAILED, "Error: the Orchard wallet experimental extensions are disabled."); - } - KeyIO keyIO(Params()); auto decoded = keyIO.DecodePaymentAddress(params[0].get_str()); if (!decoded.has_value()) { @@ -3963,10 +3951,6 @@ UniValue z_getbalanceforviewingkey(const UniValue& params, bool fHelp) + HelpExampleRpc("z_getbalanceforviewingkey", "\"myfvk\", 5") ); - if (!fExperimentalOrchardWallet) { - throw JSONRPCError(RPC_WALLET_ENCRYPTION_FAILED, "Error: the Orchard wallet experimental extensions are disabled."); - } - KeyIO keyIO(Params()); auto decoded = keyIO.DecodeViewingKey(params[0].get_str()); if (!decoded.has_value()) { @@ -4074,10 +4058,6 @@ UniValue z_getbalanceforaccount(const UniValue& params, bool fHelp) + HelpExampleRpc("z_getbalanceforaccount", "4 5") ); - if (!fExperimentalOrchardWallet) { - throw JSONRPCError(RPC_WALLET_ENCRYPTION_FAILED, "Error: the Orchard wallet experimental extensions are disabled."); - } - int64_t accountInt = params[0].get_int64(); if (accountInt < 0 || accountInt >= ZCASH_LEGACY_ACCOUNT) { throw JSONRPCError(RPC_INVALID_PARAMETER, "Invalid account number, must be 0 <= account <= (2^31)-2.");