Version History#

v3.3.1 - 2026-05-17#

简体中文 (v3.3.1) | English

✨ Improvements

  • refactor: simplify inheritance chain @ZhuoZhuoCrayon (#164)

  • perf: standardize store unavailable error handling @ZhuoZhuoCrayon (#163)

📦 Dependencies

  • build(deps): bump urllib3 from 2.6.3 to 2.7.0 @dependabot[bot] (#165)

  • build(deps-dev): bump pytest from 8.4.2 to 9.0.3 @dependabot[bot] (#161)

🍃 Maintenance

  • docs: refine agent and contribution guidance @ZhuoZhuoCrayon (#162)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v3.3.0…v3.3.1

v3.3.0 - 2026-05-01#

简体中文 (v3.3.0) | English

🚀 New Features

  • feat: add quota DSL parser and string quota support @ZhuoZhuoCrayon (#141)

  • feat(hook): add hook type validation and exception logging (#134) @s3ich4n (#135)

✨ Improvements

  • refactor: improve type hints for mypy strict compliance @ZhuoZhuoCrayon (#159)

📦 Dependencies

  • build(deps): bump cryptography from 46.0.6 to 46.0.7 @dependabot[bot] (#148)

🍃 Maintenance

  • docs: remove squash-before-push requirement from CONTRIBUTING.md (#146) @s3ich4n (#147)

  • docs: align README python badge and extras with pyproject @ZhuoZhuoCrayon (#144)

  • ci: add strict mypy hook and type-check lint rules @ZhuoZhuoCrayon (#142)

  • docs: add AGENTS guidance and branch naming rules @ZhuoZhuoCrayon (#143)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v3.2.0…v3.3.0

v3.2.0 - 2026-04-03#

简体中文 (v3.2.0) | English

🚀 New Features

  • feat(hook): add async hook system with OpenTelemetry support (#37) @s3ich4n (#133)

  • feat: add hook system with OpenTelemetry support (#37) @s3ich4n (#125)

📦 Dependencies

  • build(deps): bump cryptography from 46.0.5 to 46.0.6 @dependabot[bot] (#139)

  • build(deps): bump pygments from 2.19.2 to 2.20.0 @dependabot[bot] (#138)

  • build(deps): bump requests from 2.32.5 to 2.33.0 @dependabot[bot] (#137)

  • build(deps): bump urllib3 from 2.5.0 to 2.6.3 @dependabot[bot] (#129)

  • build(deps): bump cryptography from 46.0.3 to 46.0.5 @dependabot[bot] (#132)

🍃 Maintenance

  • ci: support scoped conventional commits in release-drafter autolabeler @ZhuoZhuoCrayon (#131)

  • docs: add contributing guide and PR template (#127) @s3ich4n (#130)

  • ci: skip coverage comment in forked PRs @ZhuoZhuoCrayon (#128)

  • ci: update GitHub token reference and improve code quality @ZhuoZhuoCrayon (#126)

  • ci: add pre-release automation skill @ZhuoZhuoCrayon (#124)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v3.1.1…v3.2.0

v3.1.1 - 2026-01-16#

简体中文 (v3.1.1) | English

🐛 Bug Fixes

  • fix: add @wraps decorator to inner functions for better metadata preservation @MaksimZayats (#120)

🍃 Maintenance

  • ci: add AI-driven automated pre-release preparation @ZhuoZhuoCrayon (#122)

  • ci: remove token configuration from commitlint action @ZhuoZhuoCrayon (#121)

  • ci: use prek as an alternative to pre-commit @ZhuoZhuoCrayon (#119)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v3.1.0…v3.1.1

v3.1.0 - 2025-12-30#

简体中文 (v3.1.0) | English

🚀 New Features

  • feat: add support for Redis cluster mode (resolved #92) @ZhuoZhuoCrayon (#117)

✨ Improvements

  • perf: simplify RedisStore configuration using the standard Redis URL @ZhuoZhuoCrayon (#115)

🍃 Maintenance

  • docs: optimize document code box style @ZhuoZhuoCrayon (#116)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v3.0.1…v3.1.0

v3.0.1 - 2025-11-27#

简体中文 (v3.0.1) | English

📦 Dependencies

  • build: add py.typed file for type hinting support @ZhuoZhuoCrayon (#113) (resolved #112)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v3.0.0…v3.0.1

v3.0.0 - 2025-11-18#

简体中文 (v3.0.0) | English

🔥 Breaking Changes

  • build: migrate from Poetry to Hatch and uv @ZhuoZhuoCrayon (#97)
    • Drop support for Python 3.8 and 3.9, the minimum required Python version is now 3.10.

🚀 New Features

  • feat: add support for Python 3.13 and 3.14 @ZhuoZhuoCrayon (#98)

✨ Improvements

  • perf: replace manual timestamp with Redis server time in bucket algorithms @ZhuoZhuoCrayon (#108)

  • perf: optimize bucket counting accuracy in high-concurrency scenarios @ZhuoZhuoCrayon (#101)

📦 Dependencies

  • build: relax the dependency version restrictions for redis-py @ZhuoZhuoCrayon (#97) (resolved #96)

🍃 Maintenance

  • ci: adjust release draft categories and labels @ZhuoZhuoCrayon (#106)

  • ci: speed up pytest execution by adding parallel test execution support @ZhuoZhuoCrayon (#103)

  • docs: update Python badge to use Shields.io format @ZhuoZhuoCrayon (#107)

  • docs: strengthen Copilot review acknowledgment rules @ZhuoZhuoCrayon (#105)

  • docs: add PR guideline confirmation requirement @ZhuoZhuoCrayon (#102)

  • docs: add GitHub Copilot code review guidelines @ZhuoZhuoCrayon (#100)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v2.2.3…v3.0.0

v2.2.3 - 2025-08-30#

简体中文 (v2.2.3) | English

🐛 Bug Fixes

  • fix: removed redundant prompt logs during registration (fixed #93) @ZhuoZhuoCrayon (#94)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v2.2.2…v2.2.3

v2.2.2 - 2025-07-25#

简体中文 (v2.2.2) | English

🐛 Bug Fixes

  • fix: fixed the inaccurate retry_after issue for “Sliding Window” @ZhuoZhuoCrayon (#89)

📝 Documentation

  • docs: add API reference documentation @ZhuoZhuoCrayon (#90)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v2.2.1…v2.2.2

v2.2.1 - 2025-06-28#

简体中文 (v2.2.1) | English

✨ Improvements

  • perf: added support for cost=0 in Throttled @ZhuoZhuoCrayon (#85)

🐛 Bug Fixes

  • fix: fixed the inaccurate retry_after issue for “Token Bucket” & “Leaking Bucket” @ZhuoZhuoCrayon (#87)

📝 Documentation

🍃 Maintenance

  • ci: update changelog link format in release drafter config @ZhuoZhuoCrayon (#86)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v2.2.0…v2.2.1

v2.2.0 - 2025-05-31#

简体中文 (v2.2.0) | English

🚀 New Features

  • feat: enhance Throttled decorator with cost parameter @River-Shi (#77)

📝 Documentation

  • docs: add HelloGitHub recommendation badge to README @ZhuoZhuoCrayon (#76)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v2.1.0…v2.2.0

v2.1.0 - 2025-05-26#

简体中文 (v2.1.0) | English

🚀 New Features

  • feat: add async support for Throttled (issue #36) @ZhuoZhuoCrayon (#73)

  • feat: implement “GCRA” Rate Limiter with async support (issue #36) @ZhuoZhuoCrayon (#72)

  • feat: implement “Token Bucket” Rate Limiter with async support (issue #36) @ZhuoZhuoCrayon (#71)

  • feat: implement “Sliding Window” Rate Limiter with async support (issue #36) @ZhuoZhuoCrayon (#70)

  • feat: implement “Leaking Bucket” Rate Limiter with async support (issue #36) @ZhuoZhuoCrayon (#69)

  • feat: implement “Fixed Window” Rate Limiter with async support (issue #36) @ZhuoZhuoCrayon (#67)

  • feat: add asyncio-based implementation for RedisStore (issue #36) @ZhuoZhuoCrayon (#66)

  • feat: add asyncio-based implementation for MemoryStore (issue #36) @ZhuoZhuoCrayon (#65)

📝 Documentation

  • docs: add asyncio example @ZhuoZhuoCrayon (#74)

  • docs: update README_ZH.md with English link @ZhuoZhuoCrayon (#64)

✨ Improvements

  • refactor: simplify rate limiter and store backend implementations @ZhuoZhuoCrayon (#68)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v2.0.2…v2.1.0

v2.0.2 - 2025-05-03#

简体中文 (v2.0.2) | English

📝 Documentation

  • docs: optimize README navigation @ZhuoZhuoCrayon (#61)

  • docs: optimize quick start examples for low-configuration servers @ZhuoZhuoCrayon (#60)

📦 Dependencies

  • build: update package metadata & readme navigation links @ZhuoZhuoCrayon (#62)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v2.0.1…v2.0.2

v2.0.1 - 2025-05-02#

简体中文 (v2.0.1) | English

✨ Improvements

  • perf: optimize rate limiting algorithm performance @ZhuoZhuoCrayon (#55)

📝 Documentation

  • docs: update readme with pypi package link @ZhuoZhuoCrayon (#57)

  • docs: fix typos in README @ZhuoZhuoCrayon (#53)

📦 Dependencies

  • build: update package metadata @ZhuoZhuoCrayon (#56)

🧪 Tests

  • test: rewrite timer implementation and add callback support @ZhuoZhuoCrayon (#54)

🍃 Maintenance

  • ci: update regex pattern for ci/skip-changelog @ZhuoZhuoCrayon (#58)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v2.0.0…v2.0.1

v2.0.0 - 2025-04-22#

简体中文 (v2.0.0) | English

🔥 Breaking Changes

  • build: make store dependencies optional via extras (#45) @ZhuoZhuoCrayon (#50)
  • fix: remove deprecated “rate_limter” misspelled alias (#38) @ZhuoZhuoCrayon (#51)

🐛 Bug Fixes

  • fix: remove deprecated “rate_limter” misspelled alias (#38) @ZhuoZhuoCrayon (#51)

📦 Dependencies

  • build: make store dependencies optional via extras (#45) @ZhuoZhuoCrayon (#50)

🍃 Maintenance

  • ci: implement automated release drafting workflow @ZhuoZhuoCrayon (#47)

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v1.1.1…v2.0.0

v1.1.1 - 2025-04-19#

简体中文 (v1.1.1) | English

What’s Changed

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v1.1.0…v1.1.1

v1.1.0 - 2025-04-17#

简体中文 (v1.1.0) | English

What’s Changed

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v1.0.3…v1.1.0

v1.0.3 - 2025-04-10#

简体中文 (v1.0.3) | English

What’s Changed

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v1.0.2…v1.0.3

v1.0.2 - 2025-03-29#

简体中文 (v1.0.2) | English

What’s Changed

New Contributors

Full Changelog: https://github.com/ZhuoZhuoCrayon/throttled-py/compare/v1.0.1…v1.0.2

v1.0.1 - 2025-03-15#

简体中文 (v1.0.1) | English

What’s Changed

New Contributors

Full Changelog: ZhuoZhuoCrayon/throttled-py