From aef7286fc0bf2bd3d56f03549df136c6503388a4 Mon Sep 17 00:00:00 2001 From: Federico Caselli Date: Thu, 9 Dec 2021 21:47:22 +0100 Subject: [PATCH] Include import error message when greenlet is not installed Fixes: #7419 Change-Id: I0c604875a80287acff3bab732f67601a5e2db98c (cherry picked from commit 533f5718904b620be8d63f2474229945d6f8ba5d) --- lib/sqlalchemy/util/concurrency.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/sqlalchemy/util/concurrency.py b/lib/sqlalchemy/util/concurrency.py index 37ecfdbc33..ebd845cebb 100644 --- a/lib/sqlalchemy/util/concurrency.py +++ b/lib/sqlalchemy/util/concurrency.py @@ -8,12 +8,13 @@ from . import compat have_greenlet = False +greenlet_error = None if compat.py3k: try: import greenlet # noqa F401 - except ImportError: - pass + except ImportError as e: + greenlet_error = str(e) else: have_greenlet = True from ._concurrency_py3k import await_only @@ -45,6 +46,9 @@ if not have_greenlet: else: raise ValueError( "the greenlet library is required to use this function." + " %s" % greenlet_error + if greenlet_error + else "" ) def is_exit_exception(e): # noqa F811 -- 2.47.3