diff --git a/mocket/__init__.py b/mocket/__init__.py index c785bba..fc941ca 100644 --- a/mocket/__init__.py +++ b/mocket/__init__.py @@ -31,4 +31,4 @@ "FakeSSLContext", ) -__version__ = "3.13.3" +__version__ = "3.13.4" diff --git a/mocket/decorators/async_mocket.py b/mocket/decorators/async_mocket.py index 40b763a..3839d5f 100644 --- a/mocket/decorators/async_mocket.py +++ b/mocket/decorators/async_mocket.py @@ -16,7 +16,7 @@ async def wrapper( return await test(*args, **kwargs) -async_mocketize = get_mocketize(wrapper_=wrapper) +async_mocketize = get_mocketize(wrapper) __all__ = ("async_mocketize",) diff --git a/mocket/decorators/mocketizer.py b/mocket/decorators/mocketizer.py index 2bf2b9c..4020d52 100644 --- a/mocket/decorators/mocketizer.py +++ b/mocket/decorators/mocketizer.py @@ -92,4 +92,4 @@ def wrapper( return test(*args, **kwargs) -mocketize = get_mocketize(wrapper_=wrapper) +mocketize = get_mocketize(wrapper) diff --git a/mocket/utils.py b/mocket/utils.py index ab29377..60ddd9f 100644 --- a/mocket/utils.py +++ b/mocket/utils.py @@ -1,8 +1,11 @@ from __future__ import annotations import binascii +import contextlib from typing import Callable +import decorator + from mocket.compat import decode_from_bytes, encode_to_bytes @@ -28,14 +31,10 @@ def hexload(string: str) -> bytes: def get_mocketize(wrapper_: Callable) -> Callable: - import decorator - - if decorator.__version__ < "5": # type: ignore[attr-defined] # pragma: no cover - return decorator.decorator(wrapper_) - return decorator.decorator( # type: ignore[call-arg] # kwsyntax - wrapper_, - kwsyntax=True, - ) + # trying to support different versions of `decorator` + with contextlib.suppress(TypeError): + return decorator.decorator(wrapper_, kwsyntax=True) # type: ignore[call-arg,unused-ignore] + return decorator.decorator(wrapper_) __all__ = ( diff --git a/pyproject.toml b/pyproject.toml index 5418304..fbe4746 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -31,6 +31,7 @@ dependencies = [ "decorator>=4.0.0", "urllib3>=1.25.3", "h11", + "typing-extensions", ] dynamic = ["version"] @@ -124,6 +125,7 @@ files = [ ] strict = true warn_unused_configs = true +suppress_unused_ignore = true ignore_missing_imports = true warn_redundant_casts = true warn_unused_ignores = true