fix(Deprecated): use literal for actions (#5939)

This commit is contained in:
Henry Schreiner
2021-08-19 09:06:23 -07:00
committed by GitHub
parent eec10a6c7a
commit 2002649395
3 changed files with 10 additions and 8 deletions

View File

@@ -1,3 +1,3 @@
version = "0.1"
version = "1.2"
python2 = true
requires = []

View File

@@ -1,14 +1,16 @@
from typing import Any, Callable, Type, TypeVar, overload
from typing_extensions import Literal
_F = TypeVar("_F", bound=Callable[..., Any])
_Actions = Literal["default", "error", "ignore", "always", "module", "once"]
class ClassicAdapter:
reason: str
version: str
action: str | None
action: _Actions | None
category: Type[Warning]
def __init__(
self, reason: str = ..., version: str = ..., action: str | None = ..., category: Type[Warning] = ...
self, reason: str = ..., version: str = ..., action: _Actions | None = ..., category: Type[Warning] = ...
) -> None: ...
def get_deprecated_msg(self, wrapped: Callable[..., Any], instance: object) -> str: ...
def __call__(self, wrapped: _F) -> Callable[[_F], _F]: ...
@@ -17,5 +19,5 @@ class ClassicAdapter:
def deprecated(__wrapped: _F) -> _F: ...
@overload
def deprecated(
reason: str = ..., *, version: str = ..., action: str | None = ..., category: Type[Warning] | None = ...
reason: str = ..., *, version: str = ..., action: _Actions | None = ..., category: Type[Warning] | None = ...
) -> Callable[[_F], _F]: ...

View File

@@ -1,7 +1,7 @@
from typing import Any, Callable, Type, TypeVar, overload
from typing_extensions import Literal
from .classic import ClassicAdapter
from .classic import ClassicAdapter, _Actions
_F = TypeVar("_F", bound=Callable[..., Any])
@@ -9,14 +9,14 @@ class SphinxAdapter(ClassicAdapter):
directive: Literal["versionadded", "versionchanged", "deprecated"]
reason: str
version: str
action: str | None
action: _Actions | None
category: Type[Warning]
def __init__(
self,
directive: Literal["versionadded", "versionchanged", "deprecated"],
reason: str = ...,
version: str = ...,
action: str | None = ...,
action: _Actions | None = ...,
category: Type[Warning] = ...,
) -> None: ...
def __call__(self, wrapped: _F) -> Callable[[_F], _F]: ...
@@ -27,5 +27,5 @@ def versionchanged(reason: str = ..., version: str = ...) -> Callable[[_F], _F]:
def deprecated(__wrapped: _F) -> _F: ...
@overload
def deprecated(
reason: str = ..., *, version: str = ..., action: str | None = ..., category: Type[Warning] | None = ...
reason: str = ..., *, version: str = ..., action: _Actions | None = ..., category: Type[Warning] | None = ...
) -> Callable[[_F], _F]: ...