From 5a16f853ac786c4a6e2df570daae1247083892ba Mon Sep 17 00:00:00 2001 From: q0w <43147888+q0w@users.noreply.github.com> Date: Sat, 24 Feb 2024 15:29:07 +0300 Subject: [PATCH] Add QuerySet.(a)update_or_create new create_defaults arg --- django-stubs/db/models/manager.pyi | 12 ++++++++++-- scripts/stubtest/allowlist_todo.txt | 2 -- scripts/stubtest/allowlist_todo_django50.txt | 6 ------ 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/django-stubs/db/models/manager.pyi b/django-stubs/db/models/manager.pyi index d6a58029b4..1cfd7b7762 100644 --- a/django-stubs/db/models/manager.pyi +++ b/django-stubs/db/models/manager.pyi @@ -69,9 +69,17 @@ class BaseManager(Generic[_T]): async def aget_or_create( self, defaults: MutableMapping[str, Any] | None = ..., **kwargs: Any ) -> tuple[_T, bool]: ... - def update_or_create(self, defaults: MutableMapping[str, Any] | None = ..., **kwargs: Any) -> tuple[_T, bool]: ... + def update_or_create( + self, + defaults: MutableMapping[str, Any] | None = ..., + create_defaults: MutableMapping[str, Any] | None = ..., + **kwargs: Any, + ) -> tuple[_T, bool]: ... async def aupdate_or_create( - self, defaults: MutableMapping[str, Any] | None = ..., **kwargs: Any + self, + defaults: MutableMapping[str, Any] | None = ..., + create_defaults: MutableMapping[str, Any] | None = ..., + **kwargs: Any, ) -> tuple[_T, bool]: ... def earliest(self, *fields: str | OrderBy) -> _T: ... async def aearliest(self, *fields: str | OrderBy) -> _T: ... diff --git a/scripts/stubtest/allowlist_todo.txt b/scripts/stubtest/allowlist_todo.txt index 18ee516c05..a26c0e6c32 100644 --- a/scripts/stubtest/allowlist_todo.txt +++ b/scripts/stubtest/allowlist_todo.txt @@ -1354,7 +1354,6 @@ django.db.models.manager.BaseManager.alatest django.db.models.manager.BaseManager.alias django.db.models.manager.BaseManager.annotate django.db.models.manager.BaseManager.aupdate -django.db.models.manager.BaseManager.aupdate_or_create django.db.models.manager.BaseManager.bulk_create django.db.models.manager.BaseManager.bulk_update django.db.models.manager.BaseManager.complex_filter @@ -1391,7 +1390,6 @@ django.db.models.manager.BaseManager.select_for_update django.db.models.manager.BaseManager.select_related django.db.models.manager.BaseManager.union django.db.models.manager.BaseManager.update -django.db.models.manager.BaseManager.update_or_create django.db.models.manager.BaseManager.using django.db.models.manager.BaseManager.values django.db.models.manager.BaseManager.values_list diff --git a/scripts/stubtest/allowlist_todo_django50.txt b/scripts/stubtest/allowlist_todo_django50.txt index 3d71345a8e..35e8a964d3 100644 --- a/scripts/stubtest/allowlist_todo_django50.txt +++ b/scripts/stubtest/allowlist_todo_django50.txt @@ -73,8 +73,6 @@ django.contrib.gis.db.models.Func.allowed_default django.contrib.gis.db.models.Lookup.allowed_default django.contrib.gis.db.models.Prefetch.get_current_querysets django.contrib.gis.db.models.Q.identity -django.contrib.gis.db.models.QuerySet.aupdate_or_create -django.contrib.gis.db.models.QuerySet.update_or_create django.contrib.gis.db.models.Value.allowed_default django.contrib.gis.db.models.When.allowed_default django.contrib.gis.db.models.functions.ClosestPoint @@ -183,8 +181,6 @@ django.db.models.Func.allowed_default django.db.models.Lookup.allowed_default django.db.models.Prefetch.get_current_querysets django.db.models.Q.identity -django.db.models.QuerySet.aupdate_or_create -django.db.models.QuerySet.update_or_create django.db.models.Value.allowed_default django.db.models.When.allowed_default django.db.models.constraints.BaseConstraint.__init__ @@ -225,8 +221,6 @@ django.db.models.lookups.IntegerLessThan.overflow_exception django.db.models.lookups.IntegerLessThanOrEqual django.db.models.lookups.Lookup.allowed_default django.db.models.query.Prefetch.get_current_querysets -django.db.models.query.QuerySet.aupdate_or_create -django.db.models.query.QuerySet.update_or_create django.db.models.query_utils.FilteredRelation.relabeled_clone django.db.models.query_utils.FilteredRelation.resolve_expression django.db.models.query_utils.Q.identity