olist-loafer


Nameolist-loafer JSON
Version 4.0.0 PyPI version JSON
download
home_pagehttps://github.com/olist/olist-loafer/
SummaryAsynchronous message dispatcher for concurrent tasks processing
upload_time2023-07-10 20:18:42
maintainer
docs_urlNone
authorOlist
requires_python>=3.8,<3.12
licenseMIT
keywords asyncio message dispatcher tasks microservices
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![PyPI latest](https://img.shields.io/pypi/v/olist-loafer.svg?maxAge=2592000)](https://pypi.python.org/pypi/loafer)
[![Python versions](https://img.shields.io/pypi/pyversions/olist-loafer.svg?maxAge=2592000)](https://pypi.python.org/pypi/loafer)
[![License](https://img.shields.io/pypi/l/loafer.svg?maxAge=2592000)](https://pypi.python.org/pypi/olist-loafer)
[![CircleCI](https://circleci.com/gh/olist/olist-loafer/tree/main.svg?style=svg)](https://circleci.com/gh/olist/olist-loafer/tree/main)
[![Olist Sponsor](https://img.shields.io/badge/sponsor-olist-53b5f6.svg?style=flat-square)](http://opensource.olist.com/)


**olist-loafer** is an asynchronous message dispatcher for concurrent tasks processing, with the following features:

* Encourages decoupling from message providers and consumers
* Easy to extend and customize
* Easy error handling, including integration with sentry
* Easy to create one or multiple services
* Generic Handlers
* Amazon SQS integration

---
:information_source: Currently, only AWS SQS is supported

---

## How to use

A simple message forwader, from ``source-queue`` to ``destination-queue``:

```python
from loafer.ext.aws.handlers import SQSHandler
from loafer.ext.aws.routes import SQSRoute
from loafer.managers import LoaferManager

routes = [
    SQSRoute('source-queue', handler=SQSHandler('destination-queue')),
]

if __name__ == '__main__':
    manager = LoaferManager(routes)
    manager.run()
```

## How to contribute

Fork this repository, make changes and send us a pull request. We will review your changes and apply them. Before sending us your pull request please check if you wrote and ran tests:

```bash
make test
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/olist/olist-loafer/",
    "name": "olist-loafer",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8,<3.12",
    "maintainer_email": "",
    "keywords": "asyncio,message,dispatcher,tasks,microservices",
    "author": "Olist",
    "author_email": "developers@olist.com",
    "download_url": "https://files.pythonhosted.org/packages/b4/06/3202d64766e132608f7be9fcb8d8e25078a2a585169e79f3e9acb5e09096/olist_loafer-4.0.0.tar.gz",
    "platform": null,
    "description": "[![PyPI latest](https://img.shields.io/pypi/v/olist-loafer.svg?maxAge=2592000)](https://pypi.python.org/pypi/loafer)\n[![Python versions](https://img.shields.io/pypi/pyversions/olist-loafer.svg?maxAge=2592000)](https://pypi.python.org/pypi/loafer)\n[![License](https://img.shields.io/pypi/l/loafer.svg?maxAge=2592000)](https://pypi.python.org/pypi/olist-loafer)\n[![CircleCI](https://circleci.com/gh/olist/olist-loafer/tree/main.svg?style=svg)](https://circleci.com/gh/olist/olist-loafer/tree/main)\n[![Olist Sponsor](https://img.shields.io/badge/sponsor-olist-53b5f6.svg?style=flat-square)](http://opensource.olist.com/)\n\n\n**olist-loafer** is an asynchronous message dispatcher for concurrent tasks processing, with the following features:\n\n* Encourages decoupling from message providers and consumers\n* Easy to extend and customize\n* Easy error handling, including integration with sentry\n* Easy to create one or multiple services\n* Generic Handlers\n* Amazon SQS integration\n\n---\n:information_source: Currently, only AWS SQS is supported\n\n---\n\n## How to use\n\nA simple message forwader, from ``source-queue`` to ``destination-queue``:\n\n```python\nfrom loafer.ext.aws.handlers import SQSHandler\nfrom loafer.ext.aws.routes import SQSRoute\nfrom loafer.managers import LoaferManager\n\nroutes = [\n    SQSRoute('source-queue', handler=SQSHandler('destination-queue')),\n]\n\nif __name__ == '__main__':\n    manager = LoaferManager(routes)\n    manager.run()\n```\n\n## How to contribute\n\nFork this repository, make changes and send us a pull request. We will review your changes and apply them. Before sending us your pull request please check if you wrote and ran tests:\n\n```bash\nmake test\n```\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Asynchronous message dispatcher for concurrent tasks processing",
    "version": "4.0.0",
    "project_urls": {
        "Download": "https://github.com/olist/olist-loafer/releases",
        "Homepage": "https://github.com/olist/olist-loafer/",
        "Repository": "https://github.com/olist/olist-loafer/"
    },
    "split_keywords": [
        "asyncio",
        "message",
        "dispatcher",
        "tasks",
        "microservices"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "12dc3368acc2b2eb44b8c2dd16b7805afab326e1479010f7fbb2218fe347c6f8",
                "md5": "259a37a9e676893b321fcba490f1ff27",
                "sha256": "281289bdcce9158b6a055a216d35ad686bf2d57c8611f60dae3ede3e108b97e3"
            },
            "downloads": -1,
            "filename": "olist_loafer-4.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "259a37a9e676893b321fcba490f1ff27",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8,<3.12",
            "size": 13166,
            "upload_time": "2023-07-10T20:18:40",
            "upload_time_iso_8601": "2023-07-10T20:18:40.131266Z",
            "url": "https://files.pythonhosted.org/packages/12/dc/3368acc2b2eb44b8c2dd16b7805afab326e1479010f7fbb2218fe347c6f8/olist_loafer-4.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b4063202d64766e132608f7be9fcb8d8e25078a2a585169e79f3e9acb5e09096",
                "md5": "c9b5b37680a445b0f7895d85fcacf051",
                "sha256": "7c183d575427d50b8a0c74f8d2a1993bed846d3903d5aa0d9e8fadcc3bd9a07c"
            },
            "downloads": -1,
            "filename": "olist_loafer-4.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "c9b5b37680a445b0f7895d85fcacf051",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8,<3.12",
            "size": 9548,
            "upload_time": "2023-07-10T20:18:42",
            "upload_time_iso_8601": "2023-07-10T20:18:42.109374Z",
            "url": "https://files.pythonhosted.org/packages/b4/06/3202d64766e132608f7be9fcb8d8e25078a2a585169e79f3e9acb5e09096/olist_loafer-4.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-07-10 20:18:42",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "olist",
    "github_project": "olist-loafer",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "olist-loafer"
}
        
Elapsed time: 0.15170s