From e5361f1e043f16363263319ed2de6b81bbb67ccd Mon Sep 17 00:00:00 2001 From: Kevin Marsh Date: Tue, 30 Nov 2021 07:37:54 -0800 Subject: [PATCH] Fix `QuerySet.create` and `Manager.create` annotation since it doesn't accept `*args` (only `**kwargs`) (#762) --- django-stubs/db/models/manager.pyi | 2 +- django-stubs/db/models/query.pyi | 2 +- tests/typecheck/managers/test_managers.yml | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/django-stubs/db/models/manager.pyi b/django-stubs/db/models/manager.pyi index 4975502..7a320d2 100644 --- a/django-stubs/db/models/manager.pyi +++ b/django-stubs/db/models/manager.pyi @@ -47,7 +47,7 @@ class BaseManager(Generic[_T]): def iterator(self, chunk_size: int = ...) -> Iterator[_T]: ... def aggregate(self, *args: Any, **kwargs: Any) -> Dict[str, Any]: ... def get(self, *args: Any, **kwargs: Any) -> _T: ... - def create(self, *args: Any, **kwargs: Any) -> _T: ... + def create(self, **kwargs: Any) -> _T: ... def bulk_create( self, objs: Iterable[_T], batch_size: Optional[int] = ..., ignore_conflicts: bool = ... ) -> List[_T]: ... diff --git a/django-stubs/db/models/query.pyi b/django-stubs/db/models/query.pyi index bd725c4..3803eb8 100644 --- a/django-stubs/db/models/query.pyi +++ b/django-stubs/db/models/query.pyi @@ -55,7 +55,7 @@ class _QuerySet(Generic[_T, _Row], Collection[_Row], Reversible[_Row], Sized): def iterator(self, chunk_size: int = ...) -> Iterator[_Row]: ... def aggregate(self, *args: Any, **kwargs: Any) -> Dict[str, Any]: ... def get(self, *args: Any, **kwargs: Any) -> _Row: ... - def create(self, *args: Any, **kwargs: Any) -> _T: ... + def create(self, **kwargs: Any) -> _T: ... def bulk_create( self, objs: Iterable[_T], batch_size: Optional[int] = ..., ignore_conflicts: bool = ... ) -> List[_T]: ... diff --git a/tests/typecheck/managers/test_managers.yml b/tests/typecheck/managers/test_managers.yml index f1129a0..709dbeb 100644 --- a/tests/typecheck/managers/test_managers.yml +++ b/tests/typecheck/managers/test_managers.yml @@ -371,8 +371,8 @@ from django.db import models class MyModelManager(models.Manager): - def create(self, *args, **kwargs) -> 'MyModel': - return super().create(*args, **kwargs) + def create(self, **kwargs) -> 'MyModel': + return super().create(**kwargs) class MyModel(models.Model): @@ -392,8 +392,8 @@ from django.db import models class MyModelManager(models.Manager['MyModel']): - def create(self, *args, **kwargs) -> 'MyModel': - return super().create(*args, **kwargs) + def create(self, **kwargs) -> 'MyModel': + return super().create(**kwargs) class MyModel(models.Model):