Page MenuHomePhabricator

Assert that RPCArg names are equal to CRPCCommand ones (net, rpcwallet)

Authored by PiRK on Thu, Oct 14, 09:52.



This is the last part split out from #18531 to just touch some RPC methods. Description from the main pr:

RPCArg names in the rpc help are currently only used for documentation. However, in the future they could be used to teach the server the named arguments. Named arguments are currently registered by the CRPCCommands and duplicate the RPCArg names from the documentation. This redundancy is fragile, and has lead to errors in the past (despite having linters to catch those kind of errors). See section "bugs found" for a list of bugs that have been found as a result of the changes here.

The changes here add an assert in the CRPCCommand constructor that the RPCArg names are identical to the ones in the CRPCCommand.

This is a backport of core#19994

Depends on D10340

Test Plan

ninja all check-all

Diff Detail

rABC Bitcoin ABC
Lint Not Applicable
Tests Not Applicable

Event Timeline

PiRK published this revision for review.Thu, Oct 14, 13:09
Fabien added a subscriber: Fabien.
Fabien added inline comments.
266 ↗(On Diff #30537)

That's a good reminder

This revision is now accepted and ready to land.Thu, Oct 14, 15:16
266 ↗(On Diff #30537)

Yes, I checked that there is an upcoming PR dealing with it, when I saw it: