Skip to content

Commit ade3897

Browse files
revert sentry BaseCache method modifications (#39)
* Revert "ref: remove incr_version / decr_version (#15)" This reverts commit 1020f9a. * Revert "cache's version can be Any (#14)" This reverts commit fc8ff33.
1 parent 61cfeb5 commit ade3897

File tree

2 files changed

+31
-37
lines changed

2 files changed

+31
-37
lines changed

django-stubs/core/cache/backends/base.pyi

Lines changed: 31 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -20,46 +20,50 @@ class BaseCache:
2020
_max_entries: int
2121
_cull_frequency: int
2222
key_prefix: str
23-
version: Any
23+
version: int
2424
key_func: Callable
2525
def __init__(self, params: dict[str, Any]) -> None: ...
2626
def get_backend_timeout(self, timeout: float | None = ...) -> float | None: ...
27-
def make_key(self, key: Any, version: Any | None = None) -> str: ...
27+
def make_key(self, key: Any, version: int | None = None) -> str: ...
2828
def validate_key(self, key: Any) -> None: ...
29-
def make_and_validate_key(self, key: Any, version: Any | None = None) -> str: ...
30-
def add(self, key: Any, value: Any, timeout: float | None = ..., version: Any | None = None) -> bool: ...
31-
async def aadd(self, key: Any, value: Any, timeout: float | None = ..., version: Any | None = None) -> bool: ...
32-
def get(self, key: Any, default: Any | None = None, version: Any | None = None) -> Any: ...
33-
async def aget(self, key: Any, default: Any | None = None, version: Any | None = None) -> Any: ...
34-
def set(self, key: Any, value: Any, timeout: float | None = ..., version: Any | None = None) -> None: ...
35-
async def aset(self, key: Any, value: Any, timeout: float | None = ..., version: Any | None = None) -> None: ...
36-
def touch(self, key: Any, timeout: float | None = ..., version: Any | None = None) -> bool: ...
37-
async def atouch(self, key: Any, timeout: float | None = ..., version: Any | None = None) -> bool: ...
38-
def delete(self, key: Any, version: Any | None = None) -> bool: ...
39-
async def adelete(self, key: Any, version: Any | None = None) -> bool: ...
40-
def get_many(self, keys: Iterable[Any], version: Any | None = None) -> dict[Any, Any]: ...
41-
async def aget_many(self, keys: Iterable[Any], version: Any | None = None) -> dict[Any, Any]: ...
29+
def make_and_validate_key(self, key: Any, version: int | None = None) -> str: ...
30+
def add(self, key: Any, value: Any, timeout: float | None = ..., version: int | None = None) -> bool: ...
31+
async def aadd(self, key: Any, value: Any, timeout: float | None = ..., version: int | None = None) -> bool: ...
32+
def get(self, key: Any, default: Any | None = None, version: int | None = None) -> Any: ...
33+
async def aget(self, key: Any, default: Any | None = None, version: int | None = None) -> Any: ...
34+
def set(self, key: Any, value: Any, timeout: float | None = ..., version: int | None = None) -> None: ...
35+
async def aset(self, key: Any, value: Any, timeout: float | None = ..., version: int | None = None) -> None: ...
36+
def touch(self, key: Any, timeout: float | None = ..., version: int | None = None) -> bool: ...
37+
async def atouch(self, key: Any, timeout: float | None = ..., version: int | None = None) -> bool: ...
38+
def delete(self, key: Any, version: int | None = None) -> bool: ...
39+
async def adelete(self, key: Any, version: int | None = None) -> bool: ...
40+
def get_many(self, keys: Iterable[Any], version: int | None = None) -> dict[Any, Any]: ...
41+
async def aget_many(self, keys: Iterable[Any], version: int | None = None) -> dict[Any, Any]: ...
4242
def get_or_set(
43-
self, key: Any, default: Any | None, timeout: float | None = ..., version: Any | None = None
43+
self, key: Any, default: Any | None, timeout: float | None = ..., version: int | None = None
4444
) -> Any | None: ...
4545
async def aget_or_set(
46-
self, key: Any, default: Any | None, timeout: float | None = ..., version: Any | None = None
46+
self, key: Any, default: Any | None, timeout: float | None = ..., version: int | None = None
4747
) -> Any | None: ...
48-
def has_key(self, key: Any, version: Any | None = None) -> bool: ...
49-
async def ahas_key(self, key: Any, version: Any | None = None) -> bool: ...
50-
def incr(self, key: Any, delta: int = 1, version: Any | None = None) -> int: ...
51-
async def aincr(self, key: Any, delta: int = 1, version: Any | None = None) -> int: ...
52-
def decr(self, key: Any, delta: int = 1, version: Any | None = None) -> int: ...
53-
async def adecr(self, key: Any, delta: int = 1, version: Any | None = None) -> int: ...
48+
def has_key(self, key: Any, version: int | None = None) -> bool: ...
49+
async def ahas_key(self, key: Any, version: int | None = None) -> bool: ...
50+
def incr(self, key: Any, delta: int = 1, version: int | None = None) -> int: ...
51+
async def aincr(self, key: Any, delta: int = 1, version: int | None = None) -> int: ...
52+
def decr(self, key: Any, delta: int = 1, version: int | None = None) -> int: ...
53+
async def adecr(self, key: Any, delta: int = 1, version: int | None = None) -> int: ...
5454
def __contains__(self, key: Any) -> bool: ...
55-
def set_many(self, data: dict[Any, Any], timeout: float | None = ..., version: Any | None = None) -> list[Any]: ...
55+
def set_many(self, data: dict[Any, Any], timeout: float | None = ..., version: int | None = None) -> list[Any]: ...
5656
async def aset_many(
57-
self, data: dict[Any, Any], timeout: float | None = ..., version: Any | None = None
57+
self, data: dict[Any, Any], timeout: float | None = ..., version: int | None = None
5858
) -> list[Any]: ...
59-
def delete_many(self, keys: Iterable[Any], version: Any | None = None) -> None: ...
60-
async def adelete_many(self, keys: Iterable[Any], version: Any | None = None) -> None: ...
59+
def delete_many(self, keys: Iterable[Any], version: int | None = None) -> None: ...
60+
async def adelete_many(self, keys: Iterable[Any], version: int | None = None) -> None: ...
6161
def clear(self) -> None: ...
6262
async def aclear(self) -> None: ...
63+
def incr_version(self, key: Any, delta: int = 1, version: int | None = None) -> int: ...
64+
async def aincr_version(self, key: Any, delta: int = 1, version: int | None = None) -> int: ...
65+
def decr_version(self, key: Any, delta: int = 1, version: int | None = None) -> int: ...
66+
async def adecr_version(self, key: Any, delta: int = 1, version: int | None = None) -> int: ...
6367
def close(self, **kwargs: Any) -> None: ...
6468
async def aclose(self, **kwargs: Any) -> None: ...
6569

scripts/stubtest/allowlist.txt

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -228,16 +228,6 @@ django.contrib.auth.views.UserModel
228228
django.contrib.sessions.backends.base.SessionBase.get
229229
django.contrib.sessions.backends.base.SessionBase.setdefault
230230

231-
# sentry: we remove these methods because they are unsafe for our usage
232-
django.core.cache.BaseCache.adecr_version
233-
django.core.cache.BaseCache.aincr_version
234-
django.core.cache.BaseCache.decr_version
235-
django.core.cache.BaseCache.incr_version
236-
django.core.cache.backends.base.BaseCache.adecr_version
237-
django.core.cache.backends.base.BaseCache.aincr_version
238-
django.core.cache.backends.base.BaseCache.decr_version
239-
django.core.cache.backends.base.BaseCache.incr_version
240-
241231
# Limited stubtest support for enums (https://github.com/python/mypy/issues/16806)
242232
django.db.migrations.operations.base.OperationCategory.__new__
243233

0 commit comments

Comments
 (0)