From 61e2d7f7310b4aab0b6f6b8078cbead4467ac41c Mon Sep 17 00:00:00 2001 From: Kharec Date: Sat, 20 Dec 2025 22:30:21 +0100 Subject: [PATCH] refactor: add handle_error() helper for centralized error handling --- skywipe/logger.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/skywipe/logger.py b/skywipe/logger.py index 5b18d3d..21c940b 100644 --- a/skywipe/logger.py +++ b/skywipe/logger.py @@ -89,3 +89,15 @@ def setup_logger(verbose: bool = False, log_file: Optional[Path] = None) -> logg def get_logger() -> logging.Logger: return logging.getLogger("skywipe") + + +def handle_error(error: Exception, logger: logging.Logger, exit_on_error: bool = False) -> None: + if isinstance(error, ValueError): + logger.error(f"{error}") + else: + logger.error(f"Unexpected error: {error}", exc_info=True) + + if exit_on_error: + sys.exit(1) + else: + raise error