diff options
Diffstat (limited to 'lib/sqlalchemy/util/_has_cy.py')
-rw-r--r-- | lib/sqlalchemy/util/_has_cy.py | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/lib/sqlalchemy/util/_has_cy.py b/lib/sqlalchemy/util/_has_cy.py index cf68c1933..072c78d2c 100644 --- a/lib/sqlalchemy/util/_has_cy.py +++ b/lib/sqlalchemy/util/_has_cy.py @@ -1,14 +1,32 @@ -# mypy: allow-untyped-defs, allow-untyped-calls +# Copyright (C) 2005-2022 the SQLAlchemy authors and contributors +# <see AUTHORS file> +# +# This module is part of SQLAlchemy and is released under +# the MIT License: https://www.opensource.org/licenses/mit-license.php +# mypy: ignore-errors import os import typing + +def _import_cy_extensions(): + # all cython extension extension modules are treated as optional by the + # setup, so to ensure that all are compiled, all should be imported here + from ..cyextension import collections + from ..cyextension import immutabledict + from ..cyextension import processors + from ..cyextension import resultproxy + from ..cyextension import util + + return (collections, immutabledict, processors, resultproxy, util) + + if not typing.TYPE_CHECKING: if os.environ.get("DISABLE_SQLALCHEMY_CEXT_RUNTIME"): HAS_CYEXTENSION = False else: try: - from ..cyextension import util # noqa + _import_cy_extensions() except ImportError: HAS_CYEXTENSION = False else: |