{"categories":[{"label":"Internet","url":"https://skillfed.io/packages/category/internet/4"}],"enrichment":{"capability":"rush provides rate-limiting algorithms (periodic interval and leaky bucket GCRA) with pluggable storage backends (Redis or in-memory) for throttling access to resources like APIs.","skillfed_tags":["rate-limiting","throttling","api-control"],"use_cases":["Enforce rate limits on outbound API calls to third-party services.","Throttle user requests in a web application to prevent abuse or resource exhaustion.","Implement distributed rate limiting across multiple application instances using a Redis backend.","Prototype and test rate-limiting logic quickly using the in-memory storage backend.","Add request throttling to a CLI tool or batch job that interacts with rate-limited APIs."],"what_it_does":"rush is a small, focused library for implementing rate-limiting and throttling logic in Python applications. It provides two main algorithms\u2014a basic periodic interval limiter and a leaky bucket rate limiter based on GCRA\u2014along with pluggable storage backends so you can choose between Redis for distributed state or an in-memory dictionary for testing and prototyping. The library is fully typed, well-tested, and documented.\n\nThe package is designed to be algorithm-agnostic and storage-agnostic, meaning you can mix and match limiters and backends without worrying about compatibility. It's useful when you need to enforce rate limits on API calls, user interactions, or other resource access patterns. However, the project has been abandoned since early 2021 with no active maintenance, so it will not receive bug fixes, security patches, or updates for newer Python versions.","worth_installing":"Yes, if you need a simple, well-typed rate-limiting library and can accept that it will not receive updates. The code is stable and production-ready (Development Status 5), has no known vulnerabilities, and low install friction. However, do not use it if you require active maintenance, security patches, or support for Python versions beyond 3.7."},"id":"rush","links":{"html":"https://skillfed.io/packages/rush","md":"https://skillfed.io/packages/rush.md","pypi":"https://pypi.org/project/rush/"},"maintenance":{"status":"abandoned"},"meta":{"latest_release":"2021-04-01","license_spdx":null,"license_treatment":"permissive","name":"rush","python_support":"supports_current","summary":"A library for throttling algorithms"},"popularity":{"monthly_downloads":299368,"position":7860,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"2021.4.0"}
