[Python-ideas] Argparse argument deprecation

Ned Batchelder ned at nedbatchelder.com
Wed Aug 9 05:50:47 EDT 2017

On 8/9/17 3:56 AM, Tarek Ziadé wrote:
> Hey,
> I don't think there's any helper to deprecate an argument in argparse
> Let's say you have a --foo option in your CLI and want to deprecate it
> in the next release before you completely remove it later.
> My first though on how to do this by adding a new "deprecated" option to
> https://docs.python.org/3/library/argparse.html#argparse.ArgumentParser.add_argument
> "deprecated" would be a callable that is called after the argument has
> been parsed by argparse, 
> so the developer can decide if they want to issue a deprecation warning,
> use the parsed value or override it etc.

I don't see why this is something that argparse has to do.  The
semantics of options is handled by the rest of the program.  Why would
the parser be issuing these warnings?  Let argparse parse the options,
then let other code deal with what they *mean*.


More information about the Python-ideas mailing list