From 9e775241729453072e9b0e1f8d2dd054312f166e Mon Sep 17 00:00:00 2001 From: SaJH Date: Wed, 1 May 2024 19:38:04 +0900 Subject: [PATCH 1/3] 5.0: Update django.contrib.admin.widgets --- django-stubs/contrib/admin/widgets.pyi | 21 ++++++++++++++++++--- scripts/stubtest/allowlist_todo.txt | 2 -- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/django-stubs/contrib/admin/widgets.pyi b/django-stubs/contrib/admin/widgets.pyi index c8af27b61..531ef72d9 100644 --- a/django-stubs/contrib/admin/widgets.pyi +++ b/django-stubs/contrib/admin/widgets.pyi @@ -21,12 +21,24 @@ class FilteredSelectMultiple(forms.SelectMultiple): choices: _Choices = ..., ) -> None: ... -class AdminDateWidget(forms.DateInput): +class BaseAdminDateWidget(forms.DateInput): + class Media: + js: Sequence[str] + def __init__(self, attrs: _OptAttrs | None = ..., format: str | None = ...) -> None: ... -class AdminTimeWidget(forms.TimeInput): +class AdminDateWidget(BaseAdminDateWidget): + template_name: str + +class BaseAdminTimeWidget(forms.TimeInput): + class Media: + js: Sequence[str] + def __init__(self, attrs: _OptAttrs | None = ..., format: str | None = ...) -> None: ... +class AdminTimeWidget(BaseAdminTimeWidget): + template_name: str + class AdminSplitDateTime(forms.SplitDateTimeWidget): template_name: str def __init__(self, attrs: _OptAttrs | None = ...) -> None: ... @@ -70,7 +82,6 @@ class ManyToManyRawIdWidget(ForeignKeyRawIdWidget): class RelatedFieldWidgetWrapper(forms.Widget): template_name: str - choices: ModelChoiceIterator widget: forms.ChoiceWidget rel: ManyToOneRel can_add_related: bool @@ -90,6 +101,10 @@ class RelatedFieldWidgetWrapper(forms.Widget): ) -> None: ... @property def is_hidden(self) -> bool: ... + @property + def choices(self) -> ModelChoiceIterator: ... + @choices.setter + def choices(self, value: ModelChoiceIterator) -> None: ... def get_related_url(self, info: tuple[str, str], action: str, *args: Any) -> str: ... def get_context(self, name: str, value: Any, attrs: _OptAttrs | None) -> dict[str, Any]: ... def value_from_datadict(self, data: Mapping[str, Any], files: Mapping[str, Iterable[File]], name: str) -> Any: ... diff --git a/scripts/stubtest/allowlist_todo.txt b/scripts/stubtest/allowlist_todo.txt index 1ca5fb4be..6f1dc2d04 100644 --- a/scripts/stubtest/allowlist_todo.txt +++ b/scripts/stubtest/allowlist_todo.txt @@ -66,8 +66,6 @@ django.contrib.admin.views.autocomplete.AutocompleteJsonView.process_request django.contrib.admin.views.autocomplete.AutocompleteJsonView.serialize_result django.contrib.admin.views.main.ChangeList.search_form_class django.contrib.admin.widgets.AutocompleteMixin.media -django.contrib.admin.widgets.BaseAdminDateWidget -django.contrib.admin.widgets.BaseAdminTimeWidget django.contrib.admin.widgets.FilteredSelectMultiple.Media django.contrib.admin.widgets.get_select2_language django.contrib.admindocs.utils.non_capturing_group_matcher From e60f8705b6ed90ea55585a73fef3db19a62b4c42 Mon Sep 17 00:00:00 2001 From: Jae Hyuck Sa Date: Wed, 8 May 2024 22:37:01 +0900 Subject: [PATCH 2/3] Remove `Meta` Case --- django-stubs/contrib/admin/widgets.pyi | 6 ------ 1 file changed, 6 deletions(-) diff --git a/django-stubs/contrib/admin/widgets.pyi b/django-stubs/contrib/admin/widgets.pyi index 531ef72d9..49d940aa8 100644 --- a/django-stubs/contrib/admin/widgets.pyi +++ b/django-stubs/contrib/admin/widgets.pyi @@ -22,18 +22,12 @@ class FilteredSelectMultiple(forms.SelectMultiple): ) -> None: ... class BaseAdminDateWidget(forms.DateInput): - class Media: - js: Sequence[str] - def __init__(self, attrs: _OptAttrs | None = ..., format: str | None = ...) -> None: ... class AdminDateWidget(BaseAdminDateWidget): template_name: str class BaseAdminTimeWidget(forms.TimeInput): - class Media: - js: Sequence[str] - def __init__(self, attrs: _OptAttrs | None = ..., format: str | None = ...) -> None: ... class AdminTimeWidget(BaseAdminTimeWidget): From 58c38b0df832e8e5972f20908a71d8ee6255178d Mon Sep 17 00:00:00 2001 From: SaJH Date: Wed, 8 May 2024 23:42:50 +0900 Subject: [PATCH 3/3] Add allowlist_todo --- scripts/stubtest/allowlist_todo.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/stubtest/allowlist_todo.txt b/scripts/stubtest/allowlist_todo.txt index 6f1dc2d04..62ac64750 100644 --- a/scripts/stubtest/allowlist_todo.txt +++ b/scripts/stubtest/allowlist_todo.txt @@ -68,6 +68,8 @@ django.contrib.admin.views.main.ChangeList.search_form_class django.contrib.admin.widgets.AutocompleteMixin.media django.contrib.admin.widgets.FilteredSelectMultiple.Media django.contrib.admin.widgets.get_select2_language +django.contrib.admin.widgets.BaseAdminTimeWidget.Media +django.contrib.admin.widgets.BaseAdminDateWidget.Media django.contrib.admindocs.utils.non_capturing_group_matcher django.contrib.admindocs.utils.remove_non_capturing_groups django.contrib.admindocs.utils.replace_metacharacters