From 0c93e4a19e0883d279e799c28625abbc262f3975 Mon Sep 17 00:00:00 2001 From: Cody Logan Date: Fri, 17 Nov 2023 11:28:28 -0800 Subject: Exit program more gracefully on keyboard interrupt --- src/wikiget/wikiget.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'src/wikiget/wikiget.py') diff --git a/src/wikiget/wikiget.py b/src/wikiget/wikiget.py index ca211af..cac8694 100644 --- a/src/wikiget/wikiget.py +++ b/src/wikiget/wikiget.py @@ -138,5 +138,10 @@ def cli() -> None: logger.info("Starting download session using wikiget %s", wikiget.__version__) logger.debug("User agent: %s", wikiget.USER_AGENT) - exit_code = process_download(args) - sys.exit(exit_code) + try: + exit_code = process_download(args) + except KeyboardInterrupt: + logger.critical("Interrupted by user") + exit_code = 130 + finally: + sys.exit(exit_code) -- cgit v1.2.3 From d78f25717567870d4bb991e9bca7451f925f29ac Mon Sep 17 00:00:00 2001 From: Cody Logan Date: Fri, 17 Nov 2023 14:49:02 -0800 Subject: Add missing docstrings for modules --- src/wikiget/wikiget.py | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/wikiget/wikiget.py') diff --git a/src/wikiget/wikiget.py b/src/wikiget/wikiget.py index cac8694..870f7a2 100644 --- a/src/wikiget/wikiget.py +++ b/src/wikiget/wikiget.py @@ -15,6 +15,8 @@ # You should have received a copy of the GNU General Public License # along with Wikiget. If not, see . +"""Set up the command-line interface and handle program start and exit.""" + from __future__ import annotations import argparse -- cgit v1.2.3