From 4884b67714456f35568c53d2f77da02b639011af Mon Sep 17 00:00:00 2001 From: shamoon <4887959+shamoon@users.noreply.github.com> Date: Mon, 16 Feb 2026 09:37:33 -0800 Subject: [PATCH] Fix more typing failures --- src/documents/permissions.py | 20 +++++++++++--------- src/documents/serialisers.py | 2 +- src/documents/views.py | 2 +- 3 files changed, 13 insertions(+), 11 deletions(-) diff --git a/src/documents/permissions.py b/src/documents/permissions.py index de6fff1fb..140293887 100644 --- a/src/documents/permissions.py +++ b/src/documents/permissions.py @@ -1,3 +1,5 @@ +from typing import Any + from django.contrib.auth.models import Group from django.contrib.auth.models import Permission from django.contrib.auth.models import User @@ -199,12 +201,12 @@ def get_document_count_filter_for_user(user): def annotate_document_count_for_related_queryset( - queryset, - through_model, + queryset: QuerySet[Any], + through_model: Any, related_object_field: str, target_field: str = "document_id", - user=None, -): + user: User | None = None, +) -> QuerySet[Any]: """ Annotate a queryset with permissions-aware document counts using a subquery against a relation table. @@ -234,11 +236,11 @@ def annotate_document_count_for_related_queryset( def get_objects_for_user_owner_aware( - user, - perms, - Model, + user: User | None, + perms: str | list[str], + Model: Any, *, - include_deleted=False, + include_deleted: bool = False, ) -> QuerySet: """ Returns objects the user owns, are unowned, or has explicit perms. @@ -314,7 +316,7 @@ class AcknowledgeTasksPermissions(BasePermission): "POST": ["documents.change_paperlesstask"], } - def has_permission(self, request, view): + def has_permission(self, request: Any, view: Any) -> bool: if not request.user or not request.user.is_authenticated: # pragma: no cover return False diff --git a/src/documents/serialisers.py b/src/documents/serialisers.py index 5a2cd6c8a..e9fdf1202 100644 --- a/src/documents/serialisers.py +++ b/src/documents/serialisers.py @@ -2952,7 +2952,7 @@ class TrashSerializer(SerializerWithPerms): write_only=True, ) - def validate_documents(self, documents): + def validate_documents(self, documents: list[int]) -> list[int]: count = Document.deleted_objects.filter(id__in=documents).count() if not count == len(documents): raise serializers.ValidationError( diff --git a/src/documents/views.py b/src/documents/views.py index bb7cd0f51..637e2ccaf 100644 --- a/src/documents/views.py +++ b/src/documents/views.py @@ -395,7 +395,7 @@ class PermissionsAwareDocumentCountMixin(BulkPermissionMixin, PassUserMixin): """ # Default is simple relation path, override for through-table/count specialization. - document_count_through = None + document_count_through: type[Model] | None = None document_count_source_field: str | None = None def _get_document_count_source_field(self) -> str: