This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author TabAtkins
Recipients TabAtkins
Date 2014-11-20.21:28:58
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1416518938.92.0.605418746252.issue22909@psf.upfronthosting.co.za>
In-reply-to
Content
If using parse_known_args() to get argument pass-through, and one of the "unknown" arguments has a value with a space in it (even if quoted!), the entire unknown argument (key=value) will be interpreted as the value of the first positional argument instead.

Example:

```
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("pos", nargs="?", default=None)

parser.parse_known_args(["--foo='bar'"])
# (Namespace(pos=None), ['--foo=bar'])
# As expected.

parse.parse_known_args(["--foo='bar baz'"])
# (Namespace(pos="--foo='bar baz'"), [])
# What?!?
```

Since *known* arguments with spaces in them are parsed fine, this looks to be regression in a lesser-used feature.
History
Date User Action Args
2014-11-20 21:28:58TabAtkinssetrecipients: + TabAtkins
2014-11-20 21:28:58TabAtkinssetmessageid: <1416518938.92.0.605418746252.issue22909@psf.upfronthosting.co.za>
2014-11-20 21:28:58TabAtkinslinkissue22909 messages
2014-11-20 21:28:58TabAtkinscreate