Message227007
Argparse version 1.1 consider ANY unknown argument string containig ' ' (space character) as positional argument. As a result it can use such unknown optional argument as a value of known positional argument.
Demonstration code:
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("--known-optional-arg", "-k", action="store_true")
parser.add_argument("known_positional", action="store", type=str)
parser.parse_known_args(["--known-optional-arg", "--unknown-optional-arg=with spaces", "known positional arg"])
parser.parse_known_args(["--known-optional-arg", "--unknown-optional-arg=without_spaces", "known positional arg"])
Bugfix is attached to issue and affects ArgumentParser._parse_optional() method body.
Sorry, if it is a better way to report (or, possibly, fix) a bug than this place. It is my first python bug report.
Thanks. |
|
Date |
User |
Action |
Args |
2014-09-17 15:57:56 | DenKoren | set | recipients:
+ DenKoren |
2014-09-17 15:57:56 | DenKoren | set | messageid: <1410969476.15.0.703805216421.issue22433@psf.upfronthosting.co.za> |
2014-09-17 15:57:56 | DenKoren | link | issue22433 messages |
2014-09-17 15:57:55 | DenKoren | create | |
|