From 21a269a3c07e2e593331fc0faa7ad6a08a7044bb Mon Sep 17 00:00:00 2001 From: Sebastian Rittau Date: Thu, 6 Aug 2026 14:27:14 +0200 Subject: [PATCH] [django-filter] Update for django-stubs 6.0.8 --- stubs/django-filter/METADATA.toml | 2 +- stubs/django-filter/django_filters/fields.pyi | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/stubs/django-filter/METADATA.toml b/stubs/django-filter/METADATA.toml index 6cf7cf7fb6c8..1c9f66a865dd 100644 --- a/stubs/django-filter/METADATA.toml +++ b/stubs/django-filter/METADATA.toml @@ -1,6 +1,6 @@ version = "26.1.*" upstream-repository = "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/carltongibson/django-filter/" -dependencies = ["django-stubs"] +dependencies = ["django-stubs>=6.0.8"] [tool.stubtest] mypy-plugins = ["mypy_django_plugin.main"] diff --git a/stubs/django-filter/django_filters/fields.pyi b/stubs/django-filter/django_filters/fields.pyi index 0b72e5ebb10f..9a2b5293d4ee 100644 --- a/stubs/django-filter/django_filters/fields.pyi +++ b/stubs/django-filter/django_filters/fields.pyi @@ -1,9 +1,10 @@ from _typeshed import Unused from collections.abc import Callable, Iterable, Mapping, Sequence -from typing import Any, NamedTuple, TypeAlias +from typing import Any, NamedTuple, TypeAlias, TypeVar from django import forms from django.db.models import Choices +from django.db.models.base import Model from django.forms import Widget from django_stubs_ext import StrOrPromise @@ -27,6 +28,8 @@ _Choices: TypeAlias = Iterable[_Choice | _ChoiceNamedGroup] _ChoicesMapping: TypeAlias = Mapping[Any, Any] _ChoicesInput: TypeAlias = _Choices | _ChoicesMapping | type[Choices] | Callable[[], _Choices | _ChoicesMapping] +_M = TypeVar("_M", bound=Model) + class RangeField(forms.MultiValueField): widget: _ClassLevelWidget = ... def __init__( @@ -111,7 +114,7 @@ class ChoiceIterator: def __iter__(self) -> Any: ... # Iterator yields choice tuples with any value types def __len__(self) -> int: ... -class ModelChoiceIterator(forms.models.ModelChoiceIterator): +class ModelChoiceIterator(forms.models.ModelChoiceIterator[_M]): def __iter__(self) -> Any: ... # Iterator yields choice tuples with any value types def __len__(self) -> int: ...