diff --git a/config/celery.py b/config/celery.py index 68e4383..129ab98 100644 --- a/config/celery.py +++ b/config/celery.py @@ -1,6 +1,34 @@ import os from celery import Celery +from celery import Signature +from celery.app.task import Task +from celery.contrib.abortable import AbortableAsyncResult +from celery.contrib.abortable import AbortableTask +from celery.contrib.django.task import DjangoTask +from celery.local import class_property +from celery.result import AsyncResult +from celery.utils.objects import FallbackContext + +classes = [ + Celery, + Task, + DjangoTask, + AbortableTask, + AsyncResult, + AbortableAsyncResult, + Signature, + FallbackContext, + class_property, +] + +for cls in classes: + setattr( # noqa: B010 + cls, + "__class_getitem__", + classmethod(lambda cls, *args, **kwargs: cls), # noqa: ARG005 + ) + # Set the default Django settings module for the 'celery' program. os.environ.setdefault("DJANGO_SETTINGS_MODULE", "config.settings") diff --git a/pyproject.toml b/pyproject.toml index 0b8e299..d681dc7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -36,6 +36,7 @@ dependencies = [ [dependency-groups] dev = [ + "celery-types", "django-stubs", "djlint", "hypothesis[django]",