From 6b144150c757e81cda5db8e66f681859fce2f02c Mon Sep 17 00:00:00 2001 From: hroff-1902 Date: Thu, 30 May 2019 20:38:04 +0300 Subject: [PATCH 1/2] fix handling of SystemExit --- freqtrade/main.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/freqtrade/main.py b/freqtrade/main.py index 4b1decdc5..f693bba5c 100755 --- a/freqtrade/main.py +++ b/freqtrade/main.py @@ -52,13 +52,15 @@ def main(sysargv: List[str] = None) -> None: worker = Worker(args) worker.run() + except SystemExit as e: + return_code = e except KeyboardInterrupt: logger.info('SIGINT received, aborting ...') return_code = 0 except OperationalException as e: logger.error(str(e)) return_code = 2 - except BaseException: + except Exception: logger.exception('Fatal exception!') finally: if worker: From e4e22167bb575e608775caac2b93281d199891c8 Mon Sep 17 00:00:00 2001 From: hroff-1902 Date: Thu, 30 May 2019 21:00:16 +0300 Subject: [PATCH 2/2] make mypy happy --- freqtrade/main.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/freqtrade/main.py b/freqtrade/main.py index f693bba5c..6f073f5d4 100755 --- a/freqtrade/main.py +++ b/freqtrade/main.py @@ -12,7 +12,7 @@ if sys.version_info < (3, 6): # flake8: noqa E402 import logging from argparse import Namespace -from typing import List +from typing import Any, List from freqtrade import OperationalException from freqtrade.arguments import Arguments @@ -29,12 +29,11 @@ def main(sysargv: List[str] = None) -> None: :return: None """ + return_code: Any = 1 + worker = None try: set_loggers() - worker = None - return_code = 1 - arguments = Arguments( sysargv, 'Free, open source crypto trading bot'