Metadata-Version: 2.4
Name: celery-asyncio
Version: 6.0.0a3
Summary: Distributed Task Queue with native asyncio support
Project-URL: Homepage, https://oliverhaas.github.io/celery-asyncio/
Project-URL: Documentation, https://oliverhaas.github.io/celery-asyncio/
Project-URL: Repository, https://github.com/oliverhaas/celery-asyncio
Project-URL: Source, https://github.com/oliverhaas/celery-asyncio
Author-email: Oliver Haas <ohaas@e1plus.de>
License: BSD-3-Clause
License-File: LICENSE
Keywords: actors,amqp,async,asyncio,distributed,job,python,queue,rabbitmq,redis,task,valkey
Classifier: Development Status :: 3 - Alpha
Classifier: Framework :: AsyncIO
Classifier: Framework :: Celery
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Software Development :: Object Brokering
Classifier: Topic :: System :: Distributed Computing
Classifier: Typing :: Typed
Requires-Python: >=3.14
Requires-Dist: asgiref>=3.5.0
Requires-Dist: click-didyoumean>=0.3.0
Requires-Dist: click-plugins>=1.1.1
Requires-Dist: click<9.0,>=8.1.2
Requires-Dist: kombu-asyncio==6.0.0a3
Requires-Dist: python-dateutil>=2.8.2
Requires-Dist: tzlocal
Provides-Extra: amqp
Requires-Dist: aio-pika>=9.0.0; extra == 'amqp'
Provides-Extra: brotli
Requires-Dist: brotli>=1.0.0; extra == 'brotli'
Provides-Extra: django
Requires-Dist: django>=6.0; extra == 'django'
Provides-Extra: flower
Requires-Dist: flower>=2.0; extra == 'flower'
Requires-Dist: humanize; extra == 'flower'
Requires-Dist: prometheus-client>=0.8; extra == 'flower'
Requires-Dist: pytz; extra == 'flower'
Requires-Dist: tornado<7,>=5; extra == 'flower'
Provides-Extra: hiredis
Requires-Dist: kombu-asyncio[hiredis]; extra == 'hiredis'
Provides-Extra: libvalkey
Requires-Dist: kombu-asyncio[libvalkey]; extra == 'libvalkey'
Provides-Extra: msgpack
Requires-Dist: msgpack; extra == 'msgpack'
Provides-Extra: pytest
Requires-Dist: pytest>=8.0.0; extra == 'pytest'
Provides-Extra: redis
Requires-Dist: kombu-asyncio[redis]; extra == 'redis'
Provides-Extra: tblib
Requires-Dist: tblib>=1.3.0; extra == 'tblib'
Provides-Extra: valkey
Requires-Dist: kombu-asyncio[valkey]; extra == 'valkey'
Provides-Extra: yaml
Requires-Dist: pyyaml>=3.10; extra == 'yaml'
Provides-Extra: zstd
Requires-Dist: zstandard>=0.22.0; extra == 'zstd'
Description-Content-Type: text/markdown

# celery-asyncio

Distributed task queue with native asyncio support. An asyncio-native rewrite of [Celery](https://github.com/celery/celery), one of the most widely used distributed task systems in the Python ecosystem.

This project is **exploratory**. It is not affiliated with or endorsed by the Celery project. If you're looking for the official production-ready task queue, use the original [Celery](https://github.com/celery/celery).

## Features

- **Native asyncio worker** with hybrid thread pool for mixed async/sync workloads
- **`async def` tasks** run directly on the event loop, no thread overhead
- **Sync tasks** run in a thread pool alongside async tasks in the same worker
- **Valkey/Redis and AMQP transports** via [kombu-asyncio](https://github.com/oliverhaas/kombu-asyncio)
- **Celery Flower** works out of the box for monitoring
- **Django 6.0 Tasks** support via [django-tasks-celery](https://github.com/oliverhaas/django-tasks-celery)
- **Targeting Python 3.14t** free-threading for true parallelism

## Quick Start

```python
from celery import Celery

app = Celery("tasks", broker="redis://localhost:6379/0")

@app.task
async def add(x, y):
    return x + y

@app.task
def multiply(x, y):
    return x * y
```

```console
celery -A tasks worker --loglevel=info -E
```

Both `add` (async) and `multiply` (sync) run in the same worker.

## Documentation

Full documentation at [oliverhaas.github.io/celery-asyncio](https://oliverhaas.github.io/celery-asyncio/)

## Requirements

- Python 3.14+
- kombu-asyncio 6.0+
- Valkey 8+ or Redis 7+ or RabbitMQ 4+

## Acknowledgments

This project builds on the ideas and design of [Celery](https://github.com/celery/celery) and [Kombu](https://github.com/celery/kombu) by Ask Solem and the Celery contributors.

## License

BSD-3-Clause
