Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit ec5cf09

Browse files
committed
Better control when dumping import state
1 parent 5fbd37e commit ec5cf09

1 file changed

Lines changed: 10 additions & 12 deletions

File tree

Tools/scripts/import_diagnostics.py

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -7,27 +7,25 @@
77

88
def _dump_state(args):
99
print(sys.version)
10-
print("sys.path:")
11-
pprint(sys.path)
12-
print("sys.meta_path")
13-
pprint(sys.meta_path)
14-
print("sys.path_hooks")
15-
pprint(sys.path_hooks)
16-
print("sys.path_importer_cache")
17-
pprint(sys.path_importer_cache)
18-
print("sys.modules:")
19-
pprint(sys.modules)
10+
for name in args.attributes:
11+
print("sys.{}:".format(name))
12+
pprint(getattr(sys, name))
13+
14+
def _add_dump_args(cmd):
15+
cmd.add_argument("attributes", metavar="ATTR", nargs="+",
16+
help="sys module attribute to display")
2017

2118
COMMANDS = (
22-
("dump", "Dump import state", _dump_state),
19+
("dump", "Dump import state", _dump_state, _add_dump_args),
2320
)
2421

2522
def _make_parser():
2623
parser = argparse.ArgumentParser()
2724
sub = parser.add_subparsers(title="Commands")
28-
for name, description, implementation in COMMANDS:
25+
for name, description, implementation, add_args in COMMANDS:
2926
cmd = sub.add_parser(name, help=description)
3027
cmd.set_defaults(command=implementation)
28+
add_args(cmd)
3129
return parser
3230

3331
def main(args):

0 commit comments

Comments
 (0)