From e34c04ebc8c8a12e087426c3766ade468a985cd5 Mon Sep 17 00:00:00 2001 From: Dima Gerasimov Date: Fri, 18 Sep 2020 20:53:27 +0100 Subject: [PATCH] core.cachew: make disabled_cachew defensive --- my/core/cachew.py | 7 ++++++- my/core/common.py | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/my/core/cachew.py b/my/core/cachew.py index d1f05e0..b8eecf4 100644 --- a/my/core/cachew.py +++ b/my/core/cachew.py @@ -20,7 +20,12 @@ def disable_cachew(): @contextmanager def disabled_cachew(): - import cachew + try: + import cachew + except ModuleNotFoundError: + # no need to disable anything + yield + return old = disable_cachew() try: yield diff --git a/my/core/common.py b/my/core/common.py index 0550d9f..b599880 100644 --- a/my/core/common.py +++ b/my/core/common.py @@ -202,6 +202,7 @@ if TYPE_CHECKING: mcachew: McachewType +# TODO ugh. I think it needs doublewrap, otherwise @mcachew without args doesn't work def mcachew(*args, **kwargs): # type: ignore[no-redef] """ Stands for 'Maybe cachew'.