This is the first part of #13825. It simply removes the RPC methods and tests.
#13825 touches lots of files and will require frequent rebasing.
Breaking it down for easier reviewing and fewer rebases.
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.
Is it still possible for a wallet to be in a state where it cannot spend funds unless they’re first ‘move’ed into the default account?
I’m not aware of that issue. If you can point to a github issue or some other reference describing what you’re alluding to, that would be helpful.
In any case, the sendmany
and sendtoaddress
RPCs will not consider accounts if an account argument is not passed, so I don’t see how the wallet could ever be in that state, either before or after this PR.
The accounts API will be removed in the next commit. Remove all
functional tests for the accounts API.
1470- else
1471- entry.pushKV("category", "generate");
1472- }
1473+ if (wtx.GetDepthInMainChain() < 1)
1474+ entry.pushKV("category", "orphan");
1475+ else if (wtx.GetBlocksToMaturity() > 0)
No reason, except a bad rebase. Thanks for catching this!
Fixed in https://github.com/bitcoin/bitcoin/pull/14023/commits/bb08423d5ca866d4a139a3b57ff110d818d08b32
Good catch Marco. Since this slipped past me, I did some research and found that the CLion IDE effectively highlights the change, while github and diff2html do not. Adding it to my review process.
Also remove the RPC deprecation tests for accounts, and make one small
change to another wallet test that relies on account behaviour.
This wasn't done in previous commit to make diff more reviewable.
0@@ -0,0 +1,8 @@
1+Accout API removed
FWIW, codespell
catched this typo. Fixed in the codespell
PR #13954.
Please review :-)