ArgumentParser improperly resolves arguments in an improper order when using nested subparsers if there are required arguments at more than one layer.
A minimum viable reproduction is to create a set of subparsers on a primary parser, and a set of subparsers on at least one of those parsers. On the main parser and the first-level subparser, add a required argument (in any position as they are appended to the end.)
If you attempt to, for example, print the help for a second-level subparser, an error will be thrown and the parser will exit due to the required argument(s) not being provided, despite the expected behavior and the nature of the -h flag not requiring those arguments to be provided.
For lack of an appropriate means to show a complete minimum viable reproduction here, please see this StackOverflow thread I initially created believing this to be user error (having now determined this is a bug in behavior):
https://stackoverflow.com/questions/64908447/printing-help-for-nested-subparsers-with-required-positional-arguments
|