This is a fork of the the Python standard library's argparse
module.
The purposes of the fork include--
- improving the extensibility of argparse,
- simplifying the code and improving its maintainability, and
- adding features.
We aim to preserve backwards compatibility for the most part. We anticipate breaking backwards compatibility only in the case of warts and "documented bugs."
The main work being done so far is simplifying the code base. Up to this point, all of the test cases in the original CPython implementation continue to pass.
The project is installable from PyPI. The PyPI project page is here.
The code in the original argparse module is complicated. Moreover, being part of CPython, the pace of change to the module is slow. This makes major refactorings impractical or not possible. As Guido van Rossum is fond of saying, modules in the standard library have "one foot in the grave."
This project was started to break free of those constraints and breathe
new life into argparse. The module was forked from the tip of the
CPython tree (Python 3.5.0 alpha 1) on November 27, 2014. See the
CHANGELOG
file for more details.
- Python 3.4 or higher.
$ pip install argparse2
To develop locally:
$ pip install -e .[dev,test]
To run tests:
$ ./tests.sh
The author of the fork is Chris Jerdonek (chris.jerdonek@gmail.com). The original author of argparse is Steven J. Bethard.
This project is licensed under a BSD 3-Clause License. For complete
license information, see the LICENSE
file.
Copyright (c) 2014 Chris Jerdonek. All rights reserved.
Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 Python Software Foundation. All rights reserved.
Copyright (c) 2000 BeOpen.com. All rights reserved.
Copyright (c) 1995-2001 Corporation for National Research Initiatives. All rights reserved.
Copyright (c) 1991-1995 Stichting Mathematisch Centrum. All rights reserved.