Mercurial > cpython-lru_cache-weakref
view Tools/scripts/import_diagnostics.py @ 83447:678564fc0962 3.3
#17789: test_random now works with unittest test discovery. Patch by Zachary Ware.
| author | Ezio Melotti <ezio.melotti@gmail.com> |
|---|---|
| date | Fri, 19 Apr 2013 05:45:27 +0300 |
| parents | 00221c8b7c86 |
| children |
line wrap: on
line source
#!/usr/bin/env python3 """Miscellaneous diagnostics for the import system""" import sys import argparse from pprint import pprint def _dump_state(args): print(sys.version) for name in args.attributes: print("sys.{}:".format(name)) pprint(getattr(sys, name)) def _add_dump_args(cmd): cmd.add_argument("attributes", metavar="ATTR", nargs="+", help="sys module attribute to display") COMMANDS = ( ("dump", "Dump import state", _dump_state, _add_dump_args), ) def _make_parser(): parser = argparse.ArgumentParser() sub = parser.add_subparsers(title="Commands") for name, description, implementation, add_args in COMMANDS: cmd = sub.add_parser(name, help=description) cmd.set_defaults(command=implementation) add_args(cmd) return parser def main(args): parser = _make_parser() args = parser.parse_args(args) return args.command(args) if __name__ == "__main__": sys.exit(main(sys.argv[1:]))
