• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1import sys
2
3from cpython.__main__ import main, configure_logger
4
5
6def 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()
37configure_logger(verbosity)
38with traceback_cm:
39    main(cmd, cmd_kwargs)
40