1 import sys
2
3 from cpython.__main__ import main, configure_logger
4
5
6 def parse_args(argv=sys.argv[1:]):
7 import argparse
8 from c_common.scriptutil import (
9 add_verbosity_cli,
10 add_traceback_cli,
11 process_args_by_key,
12 )
13 from cpython.__main__ import _cli_check
14 parser = argparse.ArgumentParser()
15 processors = [
16 add_verbosity_cli(parser),
17 add_traceback_cli(parser),
18 #_cli_check(parser, checks='<globals>'),
19 _cli_check(parser),
20 ]
21
22 args = parser.parse_args()
23 ns = vars(args)
24
25 cmd = 'check'
26 verbosity, traceback_cm = process_args_by_key(
27 args,
28 argv,
29 processors,
30 ['verbosity', 'traceback_cm'],
31 )
32
33 return cmd, ns, verbosity, traceback_cm
34
35
36 (cmd, cmd_kwargs, verbosity, traceback_cm) = parse_args()
37 configure_logger(verbosity)
38 with traceback_cm:
39 main(cmd, cmd_kwargs)