Update Mypy so I can use PEP 695 type param syntax

This commit is contained in:
Danielle McLean 2024-07-30 10:09:33 +10:00
parent 3ef3112014
commit 452867699e
Signed by: 00dani
GPG key ID: 6854781A0488421C
10 changed files with 53 additions and 52 deletions

View file

@ -1,7 +1,3 @@
from typing import Generic, TypeVar
T = TypeVar("T")
class BaseCache(Generic[T]):
class BaseCache[T]:
@staticmethod
def parse_uri_path(path: str) -> dict[str, str]: ...

View file

@ -1,11 +1,9 @@
from typing import ClassVar, Optional, TypeVar
from typing import ClassVar, Optional
from .base import BaseCache
from .serializers import BaseSerializer
T = TypeVar("T")
class Cache(BaseCache[T]):
class Cache[T](BaseCache[T]):
MEMORY: ClassVar[type[BaseCache]]
REDIS: ClassVar[type[BaseCache] | None]
MEMCACHED: ClassVar[type[BaseCache] | None]

View file

@ -1,5 +1,5 @@
from collections.abc import Callable, Mapping
from typing import TypeAlias, TypeVar
from typing import TypeVar
# Apparently you need Python 3.13 for type var defaults to work. But since this
# is just a stub file, it's okay if they aren't supported at runtime.
@ -8,7 +8,7 @@ KOut = TypeVar("KOut", default=KIn)
VIn = TypeVar("VIn")
VOut = TypeVar("VOut", default=VIn)
Path: TypeAlias = tuple[KIn, ...]
type Path[KIn] = tuple[KIn, ...]
# remap() is Complicated and really difficult to define a type for, so I'm not
# surprised the boltons package doesn't try to type it for you. This particular