The dbt-native data observability solution for data & analytics engineers. Monitor your data pipelines in minutes. Available as self-hosted or cloud service with premium features.
This means that if an unhandled exception (including a BaseException such as KeyboardInterrupt) is raised from the try body, or any exception is raised from an except: clause, it will not propagate on as expected.
If it was the intention to swallow all exceptions here, I would suggest to do this explicitly with except BaseExceptions: to make the intention clear.
In https://github.com/elementary-data/elementary/blob/1f4e91c48e4e5a2e2bfefea08af7e41057a9ad0c/elementary/cli/cli.py#L30 there is a
return
statement in afinally
block, which would swallow any in-flight exception.This means that if an unhandled exception (including a
BaseException
such asKeyboardInterrupt
) is raised from thetry
body, or any exception is raised from anexcept:
clause, it will not propagate on as expected.If it was the intention to swallow all exceptions here, I would suggest to do this explicitly with
except BaseExceptions:
to make the intention clear.See also https://docs.python.org/3/tutorial/errors.html#defining-clean-up-actions.