summaryrefslogtreecommitdiff
path: root/Tools
diff options
context:
space:
mode:
authorNick Coghlan <ncoghlan@gmail.com>2012-04-29 17:58:24 +1000
committerNick Coghlan <ncoghlan@gmail.com>2012-04-29 17:58:24 +1000
commitc22734e8102a45943208dfa1fff00e481d63cc45 (patch)
treecbbb5ac79d58711abf0b62db4975c9ad977c3fbb /Tools
parenta82e0d5655ebe8c7b24415ce7a3d43715cfd5ca4 (diff)
downloadcpython-c22734e8102a45943208dfa1fff00e481d63cc45.tar.gz
Better control when dumping import state
Diffstat (limited to 'Tools')
-rwxr-xr-xTools/scripts/import_diagnostics.py22
1 files changed, 10 insertions, 12 deletions
diff --git a/Tools/scripts/import_diagnostics.py b/Tools/scripts/import_diagnostics.py
index 1aa12b3e06..c907221d04 100755
--- a/Tools/scripts/import_diagnostics.py
+++ b/Tools/scripts/import_diagnostics.py
@@ -7,27 +7,25 @@ from pprint import pprint
def _dump_state(args):
print(sys.version)
- print("sys.path:")
- pprint(sys.path)
- print("sys.meta_path")
- pprint(sys.meta_path)
- print("sys.path_hooks")
- pprint(sys.path_hooks)
- print("sys.path_importer_cache")
- pprint(sys.path_importer_cache)
- print("sys.modules:")
- pprint(sys.modules)
+ 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),
+ ("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 in 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):