From f35e79fd24d896678abd1b682c2b2429a546500b Mon Sep 17 00:00:00 2001 From: Julien Danjou Date: Wed, 14 Oct 2020 17:38:30 +0200 Subject: [PATCH] fix(cachetools): fix decorators signature typing (#4657) Fixes #4652 --- third_party/2and3/cachetools/decorators.pyi | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/third_party/2and3/cachetools/decorators.pyi b/third_party/2and3/cachetools/decorators.pyi index 20ac979f0..4cd437483 100644 --- a/third_party/2and3/cachetools/decorators.pyi +++ b/third_party/2and3/cachetools/decorators.pyi @@ -1,11 +1,16 @@ -from typing import Any, Callable, ContextManager, Optional, TypeVar - -from .cache import Cache +from typing import Any, Callable, ContextManager, MutableMapping, Optional, TypeVar _KT = TypeVar("_KT") _VT = TypeVar("_VT") _T = TypeVar("_T", bound=Callable[..., Any]) _T_co = TypeVar("_T_co", covariant=True) +_T_self = TypeVar("_T_self") -def cached(cache: Cache[_KT, _VT], key: _KT = ..., lock: Optional[ContextManager[_T_co]] = ...) -> Callable[[_T], _T]: ... -def cachedmethod(cache: Cache[_KT, _VT], key: _KT = ..., lock: Optional[ContextManager[_T_co]] = ...) -> Callable[[_T], _T]: ... +def cached( + cache: Optional[MutableMapping[_KT, _VT]], key: Callable[..., _KT] = ..., lock: Optional[ContextManager[_T_co]] = ... +) -> Callable[[_T], _T]: ... +def cachedmethod( + cache: Callable[[_T_self], Optional[MutableMapping[_KT, _VT]]], + key: Callable[..., _KT] = ..., + lock: Optional[ContextManager[_T_co]] = ..., +) -> Callable[[_T], _T]: ...