============
Rate Control
============
*Versatile rate controlling in Python*
======= =========================================================
CI/CD |release| |ci| |docs|
Package |python-version| |package-version| |license|
Quality |coverage| |quality-gate| |maintainability| |reliability|
Meta |type-check| |code-style|
======= =========================================================
Documentation
=============
Full documention can be found at https://rate-control.readthedocs.io/
Key Features
============
* `Rate limiting <https://rate-control.readthedocs.io/en/latest/quickstart.html#basic-usage>`_
* `Scheduling requests <https://rate-control.readthedocs.io/en/latest/scheduling.html>`_
* `Request synchronization <https://rate-control.readthedocs.io/en/latest/synchronization.html>`_
* `Request prioritization <https://rate-control.readthedocs.io/en/latest/scheduling.html#request-prioritization>`_
* `Chaining buckets <https://rate-control.readthedocs.io/en/latest/bucket-groups.html>`_
* Supports task cancellation
* Supports both asyncio_ and Trio_, through AnyIO_
.. _AnyIO: https://github.com/agronholm/anyio
.. _asyncio: https://docs.python.org/3/library/asyncio.html
.. _Trio: https://github.com/python-trio/trio
Contributing
============
Contributions are very welcome. Please read `CONTRIBUTING </CONTRIBUTING.rst>`_ for details.
.. CI/CD:
.. |release| image:: https://github.com/corentin-regent/rate-control/actions/workflows/release.yml/badge.svg
:alt: Release
:target: https://github.com/corentin-regent/rate-control/actions/workflows/release.yml
.. |ci| image:: https://github.com/corentin-regent/rate-control/actions/workflows/ci.yml/badge.svg
:alt: Continuous Integration
:target: https://github.com/corentin-regent/rate-control/actions/workflows/ci.yml
.. |docs| image:: https://readthedocs.org/projects/rate-control/badge/?version=latest
:alt: Documentation Status
:target: https://rate-control.readthedocs.io/
.. Package:
.. |python-version| image:: https://img.shields.io/pypi/pyversions/rate-control?logo=python
:alt: Python Versions
.. |package-version| image:: https://img.shields.io/pypi/v/rate-control?logo=python
:alt: Package Version
:target: https://pypi.org/project/rate-control/
.. |license| image:: https://img.shields.io/pypi/l/rate-control?logo=unlicense
:alt: MIT License
:target: https://rate-control.readthedocs.io/en/latest/license.html
.. Quality:
.. |coverage| image:: https://img.shields.io/sonar/coverage/corentin-regent_rate-control?server=https%3A%2F%2Fsonarcloud.io&logo=sonarcloud
:alt: Code Coverage
:target: https://sonarcloud.io/summary/new_code?id=corentin-regent_rate-control
.. |quality-gate| image:: https://sonarcloud.io/api/project_badges/measure?project=corentin-regent_rate-control&metric=alert_status
:alt: Quality Gate
:target: https://sonarcloud.io/summary/new_code?id=corentin-regent_rate-control
.. |maintainability| image:: https://sonarcloud.io/api/project_badges/measure?project=corentin-regent_rate-control&metric=sqale_rating
:alt: Maintainability Rating
:target: https://sonarcloud.io/summary/new_code?id=corentin-regent_rate-control
.. |reliability| image:: https://sonarcloud.io/api/project_badges/measure?project=corentin-regent_rate-control&metric=reliability_rating
:alt: Reliability Rating
:target: https://sonarcloud.io/summary/new_code?id=corentin-regent_rate-control
.. Meta:
.. |type-check| image:: https://www.mypy-lang.org/static/mypy_badge.svg
:alt: Type Checked
:target: https://mypy-lang.org/
.. |code-style| image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json
:alt: Code Style
:target: https://github.com/astral-sh/ruff
Raw data
{
"_id": null,
"home_page": "https://github.com/corentin-regent/rate-control",
"name": "rate-control",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.8",
"maintainer_email": null,
"keywords": "async, rate limit, schedule, throttle, token bucket",
"author": "Corentin R\u00e9gent",
"author_email": "corentin.regent.pro@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/7e/1d/f2bd8800b472140f75559e675a4135d431aec9b9230f893f0dd1f981c9a0/rate_control-4.1.1.tar.gz",
"platform": null,
"description": "============\nRate Control\n============\n\n*Versatile rate controlling in Python*\n\n======= =========================================================\nCI/CD |release| |ci| |docs|\nPackage |python-version| |package-version| |license|\nQuality |coverage| |quality-gate| |maintainability| |reliability|\nMeta |type-check| |code-style|\n======= =========================================================\n\nDocumentation\n=============\n\nFull documention can be found at https://rate-control.readthedocs.io/\n\nKey Features\n============\n\n* `Rate limiting <https://rate-control.readthedocs.io/en/latest/quickstart.html#basic-usage>`_\n* `Scheduling requests <https://rate-control.readthedocs.io/en/latest/scheduling.html>`_\n* `Request synchronization <https://rate-control.readthedocs.io/en/latest/synchronization.html>`_\n* `Request prioritization <https://rate-control.readthedocs.io/en/latest/scheduling.html#request-prioritization>`_\n* `Chaining buckets <https://rate-control.readthedocs.io/en/latest/bucket-groups.html>`_\n* Supports task cancellation\n* Supports both asyncio_ and Trio_, through AnyIO_\n\n.. _AnyIO: https://github.com/agronholm/anyio\n.. _asyncio: https://docs.python.org/3/library/asyncio.html\n.. _Trio: https://github.com/python-trio/trio\n\nContributing\n============\n\nContributions are very welcome. Please read `CONTRIBUTING </CONTRIBUTING.rst>`_ for details.\n\n\n.. CI/CD:\n\n.. |release| image:: https://github.com/corentin-regent/rate-control/actions/workflows/release.yml/badge.svg\n :alt: Release\n :target: https://github.com/corentin-regent/rate-control/actions/workflows/release.yml\n\n.. |ci| image:: https://github.com/corentin-regent/rate-control/actions/workflows/ci.yml/badge.svg\n :alt: Continuous Integration\n :target: https://github.com/corentin-regent/rate-control/actions/workflows/ci.yml\n\n.. |docs| image:: https://readthedocs.org/projects/rate-control/badge/?version=latest\n :alt: Documentation Status\n :target: https://rate-control.readthedocs.io/\n\n.. Package:\n\n.. |python-version| image:: https://img.shields.io/pypi/pyversions/rate-control?logo=python\n :alt: Python Versions\n\n.. |package-version| image:: https://img.shields.io/pypi/v/rate-control?logo=python\n :alt: Package Version\n :target: https://pypi.org/project/rate-control/\n\n.. |license| image:: https://img.shields.io/pypi/l/rate-control?logo=unlicense\n :alt: MIT License\n :target: https://rate-control.readthedocs.io/en/latest/license.html\n\n.. Quality:\n\n.. |coverage| image:: https://img.shields.io/sonar/coverage/corentin-regent_rate-control?server=https%3A%2F%2Fsonarcloud.io&logo=sonarcloud\n :alt: Code Coverage\n :target: https://sonarcloud.io/summary/new_code?id=corentin-regent_rate-control\n\n.. |quality-gate| image:: https://sonarcloud.io/api/project_badges/measure?project=corentin-regent_rate-control&metric=alert_status\n :alt: Quality Gate\n :target: https://sonarcloud.io/summary/new_code?id=corentin-regent_rate-control\n\n.. |maintainability| image:: https://sonarcloud.io/api/project_badges/measure?project=corentin-regent_rate-control&metric=sqale_rating\n :alt: Maintainability Rating\n :target: https://sonarcloud.io/summary/new_code?id=corentin-regent_rate-control\n\n.. |reliability| image:: https://sonarcloud.io/api/project_badges/measure?project=corentin-regent_rate-control&metric=reliability_rating\n :alt: Reliability Rating\n :target: https://sonarcloud.io/summary/new_code?id=corentin-regent_rate-control\n\n.. Meta:\n\n.. |type-check| image:: https://www.mypy-lang.org/static/mypy_badge.svg\n :alt: Type Checked\n :target: https://mypy-lang.org/\n\n.. |code-style| image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json\n :alt: Code Style\n :target: https://github.com/astral-sh/ruff\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Versatile rate controlling in Python",
"version": "4.1.1",
"project_urls": {
"Changelog": "https://rate-control.readthedocs.io/en/latest/changelog.html",
"Documentation": "https://rate-control.readthedocs.io/",
"Homepage": "https://github.com/corentin-regent/rate-control",
"Repository": "https://github.com/corentin-regent/rate-control"
},
"split_keywords": [
"async",
" rate limit",
" schedule",
" throttle",
" token bucket"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "f1e157c66285b5fc3becfbd7c7f29dd16f9195fa0447c860655d4f6a99ab8f13",
"md5": "b33cdec29f3252d84ecfb3a92cedb63d",
"sha256": "fb3dff27a809b0e4dcbb0e8ee6b70fca7e8c3fe0ae2f0c1490381f78330abfbc"
},
"downloads": -1,
"filename": "rate_control-4.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b33cdec29f3252d84ecfb3a92cedb63d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.8",
"size": 26041,
"upload_time": "2024-05-10T08:45:51",
"upload_time_iso_8601": "2024-05-10T08:45:51.955008Z",
"url": "https://files.pythonhosted.org/packages/f1/e1/57c66285b5fc3becfbd7c7f29dd16f9195fa0447c860655d4f6a99ab8f13/rate_control-4.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7e1df2bd8800b472140f75559e675a4135d431aec9b9230f893f0dd1f981c9a0",
"md5": "004c0fdb091cbb086adef7713aa3a802",
"sha256": "af1cad40580940e9b1612823cd6f409e884200954b27b9f9f2b608039438be38"
},
"downloads": -1,
"filename": "rate_control-4.1.1.tar.gz",
"has_sig": false,
"md5_digest": "004c0fdb091cbb086adef7713aa3a802",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.8",
"size": 14148,
"upload_time": "2024-05-10T08:45:53",
"upload_time_iso_8601": "2024-05-10T08:45:53.630734Z",
"url": "https://files.pythonhosted.org/packages/7e/1d/f2bd8800b472140f75559e675a4135d431aec9b9230f893f0dd1f981c9a0/rate_control-4.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-05-10 08:45:53",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "corentin-regent",
"github_project": "rate-control",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "rate-control"
}