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.
Created on 2012年05月21日 19:21 by eric.araujo, last changed 2022年04月11日 14:57 by admin. This issue is now closed.
| Messages (1) | |||
|---|---|---|---|
| msg161289 - (view) | Author: Éric Araujo (eric.araujo) * (Python committer) | Date: 2012年05月21日 19:21 | |
At present distutils2/packaging uses many command line parsers: - one parser for commands and their options implemented in the dist.Distribution class, inherited from distutils and based on fanncy_getopt; - another parser for pysetup actions and options implemented in run.Dispatcher, also using fancy_getopt; - a _parse_args function based on getopt (le gasp!) and used by the functions implementing pysetup actions. This causes no end of bugs and maintenance issues. The actions system could also be much improved; one issue is that the option parsing is not automated (unlike for commands) and the loading of actions is not lazy. See https://groups.google.com/forum/#!topic/the-fellowship-of-the-packaging/pxOZ_j4_4yg for details. My current inclination is to just use argparse everywhere, with a thin wrapper to preserve the current way to declare commands options, and something similar for actions. Backporting argparse for 2.5, 2.6 and 3.1 won’t be hard and using it should buy us much. The key thing is that the various subparsers (e.g. for pysetup, for the run action, for one command) should work together lazily: the pysetup parser should parse its options and stop at the 'run' segment, then pass on to the run action parser, etc. The goal is to avoid creating all the parsers for actions and commands. |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022年04月11日 14:57:30 | admin | set | github: 59076 |
| 2014年03月13日 00:57:39 | eric.araujo | set | status: open -> closed resolution: out of date stage: needs patch -> resolved |
| 2012年05月25日 16:33:05 | tshepang | set | nosy:
+ tshepang |
| 2012年05月21日 19:23:11 | eric.araujo | link | issue12937 dependencies |
| 2012年05月21日 19:21:33 | eric.araujo | create | |