From aae27bb805375ca7aefd756eb96256044ddab386 Mon Sep 17 00:00:00 2001 From: Pierre Augier Date: Wed, 23 Aug 2023 11:35:50 +0200 Subject: [PATCH] Show traceback before raising ExecutionError (#531) --- myst_nb/core/execute/cache.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/myst_nb/core/execute/cache.py b/myst_nb/core/execute/cache.py index 0b68b7df..f7a26101 100644 --- a/myst_nb/core/execute/cache.py +++ b/myst_nb/core/execute/cache.py @@ -80,12 +80,12 @@ def start_client(self): # handle success / failure cases # TODO do in try/except to be careful (in case of database write errors? if result.err is not None: - if self.nb_config.execution_raise_on_error: - raise ExecutionError(str(self.path)) from result.err msg = f"Executing notebook failed: {result.err.__class__.__name__}" if self.nb_config.execution_show_tb: msg += f"\n{result.exc_string}" self.logger.warning(msg, subtype="exec") + if self.nb_config.execution_raise_on_error: + raise ExecutionError(str(self.path)) from result.err NbProjectRecord.set_traceback(stage_record.uri, result.exc_string, cache.db) else: self.logger.info(f"Executed notebook in {result.time:.2f} seconds")