Merge "Defer loading cmd2"
This commit is contained in:
commit
13f08e4828
|
@ -20,8 +20,6 @@ import logging.handlers
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
import cmd2
|
|
||||||
|
|
||||||
from cliff import _argparse
|
from cliff import _argparse
|
||||||
from . import complete
|
from . import complete
|
||||||
from . import help
|
from . import help
|
||||||
|
@ -403,7 +401,12 @@ class App(object):
|
||||||
try:
|
try:
|
||||||
parsed_args = cmd_parser.parse_args(sub_argv)
|
parsed_args = cmd_parser.parse_args(sub_argv)
|
||||||
except SystemExit as ex:
|
except SystemExit as ex:
|
||||||
raise cmd2.exceptions.Cmd2ArgparseError from ex
|
if self.interactive_mode:
|
||||||
|
# Defer importing cmd2 as it is a slow import
|
||||||
|
import cmd2
|
||||||
|
raise cmd2.exceptions.Cmd2ArgparseError from ex
|
||||||
|
else:
|
||||||
|
raise ex
|
||||||
result = cmd.run(parsed_args)
|
result = cmd.run(parsed_args)
|
||||||
except BrokenPipeError as err1:
|
except BrokenPipeError as err1:
|
||||||
result = _SIGPIPE_EXIT
|
result = _SIGPIPE_EXIT
|
||||||
|
|
Loading…
Reference in New Issue