3997@@ -3989,7 +3998,7 @@ static const CRPCCommand commands[] =
3998 { "wallet", "encryptwallet", &encryptwallet, {"passphrase"} },
3999 { "wallet", "getaddressesbylabel", &getaddressesbylabel, {"label"} },
4000 { "wallet", "getaddressinfo", &getaddressinfo, {"address"} },
4001- { "wallet", "getbalance", &getbalance, {"dummy","minconf","include_watchonly"} },
4002+ { "wallet", "getbalance", &getbalance, {"trusted_only|account","minconf","include_watchonly"} },
Should keep this as trusted_only|dummy
to not break existing clients that use named args?
Hmm. Probably not, since afaik “dummy” has only ever been used in versions where it’s actually broken anyway?
I agree that dummy
as a named arg doesn’t need to be kept around, but if account
was already removed as an alias, why add it back? This should just be trusted_only
I think?
This is also the cause of the linter error, because trusted_only
has an entry in vRPCConvertParams but account
doesn’t
Removing account
appears to have been a bug, since we still accept "*"
as a value?
@luke-jr only as a dummy, hence the name, accounts are completely removed
Existing code calling getbalance(account="*")
shouldn’t be broken…
@luke-jr yes it should in 0.18 and in 0.17 without explicitly enabling deprecated accounts?
Then why would specifying it using account=
make sense?
Because that’s what the parameter was called when named args were introduced.
Well, that name was already removed, so NACK on adding it back again, it makes no sense
Removing it introduced a bug by breaking existing code that uses the "*"
mode.