Use `clap::ArgAction` in `true` and `false`
Closes #3769
Seems like using .action(ArgAction::Help) on clap command builder cancels command conflict validation set with .exclusive(true). Probably should be fixed upstream.
Oh that's unfortunate. Could you make an issue in the clap repo with a minimal reproduction?
On second thought, I wonder if exclusive is the right thing to do here. Maybe we should just check whether the the number of arguments (i.e. argc) is 2 and check for --help and --versiononly if that's the case.
Given the outcome of the issue on clap, I think my previous comment is the right way forward.
I've reimplemented the behaviour using argument count instead of exclusive flag as suggested