Metadata-Version: 2.1
Name: fast-mq-task
Version: 4.0.1
Summary: Fast RabbitMQ task management library for asynchronous message handling
Home-page: https://github.com/zsodata/fast-mq-task
Author: zsodata
Author-email: team@zso.io
License: BSD License
Keywords: rabbitmq mq messaging task queue async aio-pika
Platform: all
Classifier: Development Status :: 5 - Production/Stable
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.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.7
Description-Content-Type: text/x-rst

fast-mq-task
============

Fast RabbitMQ task management library for asynchronous message handling.

Features
--------

* Asynchronous RabbitMQ message handling
* Task queue management with Pydantic validation
* Robust retry mechanisms with Tenacity
* Easy-to-use decorators for consumers and producers
* Support for both sync and async handlers

Installation
------------

.. code-block:: bash

    pip install fast-mq-task

Quick Start
-----------

Producer Example:

.. code-block:: python

    from fast_mq_task import Producer
    from fast_mq_task.models import TaskMessage

    producer = Producer()
    await producer.publish_task(task_message)

Consumer Example:

.. code-block:: python

    from fast_mq_task import Consumer
    from fast_mq_task.register import consumer

    @consumer(queue_name="task_queue")
    async def handle_task(message: TaskMessage):
        # Process your task here
        pass

Requirements
------------

* Python >= 3.7
* aio-pika
* pydantic
* tenacity

License
-------

BSD License

Author
------

zsodata <team@zso.io>
