Skip to content

Commit 022da93

Browse files
ref: get proper base manager typing
1 parent 2e54176 commit 022da93

File tree

3 files changed

+12
-4
lines changed

3 files changed

+12
-4
lines changed

src/sentry/backup/imports.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ def _clear_model_tables_before_import():
7272
for model in reversed:
7373
using = router.db_for_write(model)
7474
manager = model.with_deleted if issubclass(model, ParanoidModel) else model.objects
75-
manager.all().delete() # type: ignore[attr-defined]
75+
manager.all().delete()
7676

7777
# TODO(getsentry/team-ospo#190): Remove the "Node" kludge below in favor of a more permanent
7878
# solution.

src/sentry/db/models/manager/base.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
from collections.abc import Callable, Collection, Generator, Mapping, MutableMapping, Sequence
77
from contextlib import contextmanager
88
from enum import IntEnum, auto
9-
from typing import Any, Generic
9+
from typing import TYPE_CHECKING, Any
1010

1111
from django.conf import settings
1212
from django.db import models, router
@@ -69,7 +69,15 @@ def make_key(model: Any, prefix: str, kwargs: Mapping[str, Model | int | str]) -
6969
return f"{prefix}:{model.__name__}:{md5_text(kwargs_bits_str).hexdigest()}"
7070

7171

72-
class BaseManager(DjangoBaseManager.from_queryset(BaseQuerySet), Generic[M]): # type: ignore[misc]
72+
if TYPE_CHECKING:
73+
from django.db.models.manager import Manager
74+
75+
_base_manager_base = Manager[M]
76+
else:
77+
_base_manager_base = DjangoBaseManager.from_queryset(BaseQuerySet)
78+
79+
80+
class BaseManager(_base_manager_base[M]):
7381
lookup_handlers = {"iexact": lambda x: x.upper()}
7482
use_for_related_fields = True
7583

src/sentry/reprocessing2.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -547,7 +547,7 @@ def start_group_reprocessing(
547547

548548
# Create a duplicate row that has the same attributes by nulling out
549549
# the primary key and saving
550-
group.pk = group.id = None
550+
group.pk = group.id = None # type: ignore[assignment] # XXX: intentional resetting pk
551551
new_group = group # rename variable just to avoid confusion
552552
del group
553553
new_group.status = original_status

0 commit comments

Comments
 (0)