Followup based on #16378 nits. It also fixes an argument parsing error (uncaught because the test wasn’t sufficiently thorough).
I marked the RPC as experimental so we can tweak it a bit over the next release cycle.
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
Reviewers, this pull request conflicts with the following ones:
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.
3873@@ -3874,9 +3874,10 @@ static UniValue listlabels(const JSONRPCRequest& request)
3874 static RPCHelpMan send()
3875 {
3876 return RPCHelpMan{"send",
3877+ "\nEXPERIMENTAL warning: this call may be changed in future releases.\n"
3878 "\nSend a transaction.\n",
3879 {
3880- {"outputs", RPCArg::Type::ARR, RPCArg::Optional::NO, "a json array with outputs (key-value pairs), where none of the keys are duplicated.\n"
3881+ {"outputs", RPCArg::Type::ARR, RPCArg::Optional::NO, "A JSON array with outputs (key-value pairs), where none of the keys are duplicated.\n"
0 {"outputs", RPCArg::Type::ARR, RPCArg::Optional::NO, "Outputs (key-value pairs), where none of the keys are duplicated.\n"
The whole point of RPCHelpMan is to deal with types and formatting, so that the documentation strings can be minimal.
If you repeat the types, it will be rendered twice:
01. outputs (json array, required) a json array with outputs (key-value pairs), where none of the keys are duplicated.
ACK f7b331ea85d45c7337e527b6e77a45da7a689b7d
I find it weird that even though I used “1 sat/b” it complains about failing to do fee estimation. It shouldn’t need fee estimation at all. Anyway, that’s outside the scope of this nit-fix PR.
0@@ -1,5 +1,6 @@
1 RPC
2 ---
3 - A new `send` RPC with similar syntax to `walletcreatefundedpsbt`, including
4- support for coin selection and a custom fee rate. Using the new `send` method
5- is encouraged: `sendmany` and `sendtoaddress` may be deprecated in a future release.
6+ support for coin selection and a custom fee rate. The `send` RPC is experimental
Using it is encouraged once it's no longer experimental
: This sentence seems unnecessary, and somewhat confusing. There’s no reason not to use it (i.e it being unsafe) as long as you know the interface might change in the future, and that is made clear here and in the help output. Will no-doubt be changed in the wiki pre-release.
foo: bar
.