./devel/py-limits, Rate limiting utilities

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 3.10.1, Package name: py311-limits-3.10.1, Maintainer: pkgsrc-users

The python limits package provides utilities to implement rate limiting using
various strategies and storage backends such as redis & memcached.


Required to run:
[devel/py-setuptools] [lang/py-six] [lang/python37]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 68.088 KB

Version history: (Expand)


CVS history: (Expand)


   2024-03-21 11:05:19 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-limits: updated to 3.10.1

v3.10.1
-------
* Compatibility

  * Relax dependency constraint on packaging

v3.10.0
-------
* Bug Fix

  * Fix incorrect mapping of coredis exceptions
  * Fix calculation of reset_time
   2024-02-19 19:39:44 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-limits: updated to 3.9.0

v3.9.0

* Bug Fix

  * Remove excessively low defaults for mongodb storage and instead
    delegate to the underlying dependency (pymongo, motor)
   2024-02-16 20:04:01 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-limits: updated to 3.8.0

v3.8.0
------

* Features

  * Add option to wrap storage errors with a ``StorageError``
    exception
   2023-11-26 10:55:40 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-limits: updated to 3.7.0

v3.7.0

* Features

  * Ensure rate limit keys in redis use are prefixed
    with a `LIMITS` prefix. This allows for resetting
    all keys generated by the library without implicit
    knowledge of the key structure.
   2023-10-29 18:16:52 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-limits: updated to 3.6.0

v3.6.0

* Bug Fix

  * Remove default socket timeout from mongo storage
  * Ensure _version.py has stable content when generated
    using `git archive` from a tag regardless of when it is
    run.

* Compatibility

  * Remove references to python 3.7
  * Remove unnecessary setuptools dependency
   2023-08-29 09:38:04 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-limits: updated to 3.5.0

v3.5.0
------
* Bug Fix

  * Handle ``cost`` > 8000 when using redis
  * Remove arbitrary default timeout for redis+sentinel

v3.4.0
------
* Bug Fix

  * Remove use of weakreferences to storages in strategy
    classes as this was not documented or required and
    led to usability issues.

* Chores

  * Update documentation dependencies
  * Remove unused gcra lua script

v3.3.1
------
* Compatibility

  * Block incompatible versions of redis-py

* Chores

  * Force error on warnings in tests

v3.3.0
------
* Compatibility

  * Remove deprecated use of `pkg_resources` and switch
    to `importlib_resource`

* Chores

  * Update documentation dependencies
  * Update github actions versions

v3.2.0
------
* Bug Fix

  * Fix handling of authentication details in storage url of redis cluster

* Chores

  * Add test coverage for redis cluster with auth required

v3.1.6
------
* Bug Fix

  * Disallow acquiring amounts > limit in moving window

* Usability

  * Use a named tuple for the response from `RateLimiter.get_window_stats`

v3.1.5
------
* Performance

  * Reduce rpc calls to etcd for counter increment

* Compatibility

  * Relax version requirements for packaging dependency

* Chores

  * Improve benchmark outputs
  * Improve documentation for etcd

v3.1.4
------
* Chores

  * Fix benchmark result artifact capture

v3.1.3
------
* Chores

  * Fix benchmark result artifact capture

v3.1.2
------
* Chores

  * Collapse benchmark & ci workflows

v3.1.1
------
* Chores

  * Fix compatibility tests for etcd in CI
  * Improve visual identifiers of tests
  * Add benchmark tests in CI

v3.1.0
------
* Compatibility

  * Increase minimum version of pymongo to 4.1

* Chores

  * Refactor storage tests
  * Improve test coverage across python versions in CI

v3.0.0
------
* Features

  * Added etcd storage support for fixed window strategies

* Compatibility

  * Removed deprecated GAE Memcached storage
  * Updated minimum dependencies for mongodb
  * Updated dependency for async memcached on python 3.11
   2022-12-12 08:53:33 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-limits: updated to 2.7.2

v2.7.2
------
* Compatibility Updates
  * Update documentation dependencies
  * Relax version constraint for packaging dependency
  * Bump CI to use python 3.11 final
   2022-10-21 09:55:18 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-limits: updated to 2.7.1

v2.7.1
------
Release Date: 2022-10-20

* Compatibility Updates

  * Increase pymemcached dependency range to in include 4.x
  * Add python 3.11 rc2 to CI

v2.7.0
------
Release Date: 2022-07-16

* Compatibility Updates

  * Update :pypi:`coredis` requirements to include 4.x versions
  * Remove CI / support for redis < 6.0
  * Remove python 3.7 from CI
  * Add redis 7.0 in CI

v2.6.3
------
Release Date: 2022-06-05

* Chores

  * Update development dependencies
  * Add CI for python 3.11
  * Increase test coverage for redis sentinel

v2.6.2
------
Release Date: 2022-05-12

* Compatibility Updates

  * Update :pypi:`motor` requirements to include 3.x version
  * Update async redis sentinel implementation to remove use of deprecated methods.
  * Fix compatibility issue with asyncio redis ``reset`` method in cluster mode
    when used with :pypi:`coredis` versions >= 3.5.0

v2.6.1
------
Release Date: 2022-04-25

* Bug Fix

  * Fix typing regression with strategy constructors `Issue 88 \ 
<https://github.com/alisaifee/limits/issues/88>`_

v2.6.0
------
Release Date: 2022-04-25

* Deprecation

  * Removed tests for rediscluster using the :pypi:`redis-py-cluster` library

* Bug Fix

  * Fix incorrect ``__slots__`` declaration in :class:`limits.RateLimitItem`
    and it's subclasses

v2.5.4
------
Release Date: 2022-04-25

* Bug Fix

  * Fix typing regression with strategy constructors `Issue 88 \ 
<https://github.com/alisaifee/limits/issues/88>`_

v2.5.3
------
Release Date: 2022-04-22

* Chore

  * Automate Github releases

v2.5.2
------
Release Date: 2022-04-17

* Chore

  * Increase strictness of type checking and annotations
  * Ensure installations from source distributions are PEP-561
    compliant

v2.5.1
------
Release Date: 2022-04-15

* Chore

  * Ensure storage reset methods have consistent signature

v2.5.0
------
Release Date: 2022-04-13

* Feature

  * Add support for using redis cluster via the official redis client
  * Update coredis dependency to use 3.x

* Deprecations

  * Deprecate using redis-py-cluster

* Chores

  * Remove beta tags for async support
  * Update code base to remove legacy syntax
  * Tighten up CI test dependencies

v2.4.0
------
Release Date: 2022-03-10

* Feature

  * Allow passing an explicit connection pool to redis storage.
    Addresses `Issue 77 <https://github.com/alisaifee/limits/issues/77>`_

v2.3.3
------
Release Date: 2022-02-03

* Feature

  * Add support for dns seed list when using mongodb

v2.3.2
------
Release Date: 2022-01-30

* Chores

  * Improve authentication tests for redis
  * Update documentation theme
  * Pin pip version for CI

v2.3.1
------
Release Date: 2022-01-21

* Bug fix

  * Fix backward incompatible change that separated sentinel
    and connection args for redis sentinel (introduced in 2.1.0).
    Addresses `Issue 97 <https://github.com/alisaifee/limits/issues/97>`_

v2.3.0
------
Release Date: 2022-01-15

* Feature

  * Add support for custom cost per hit

* Bug fix

  * Fix installation issues with missing setuptools

v2.2.0
------
Release Date: 2022-01-05

* Feature

  * Enable async redis for python 3.10 via coredis

* Chore

  * Fix typing issue with strategy constructors

v2.1.1
------
Release Date: 2022-01-02

* Feature

  * Enable async memcache for python 3.10

* Bug fix

  * Ensure window expiry is reported in local time for mongodb
  * Fix inconsistent expiry for fixed window with memcached

* Chore

  * Improve strategy tests

v2.1.0
------
Release Date: 2021-12-22

* Feature

  * Add beta asyncio support
  * Add beta mongodb support
  * Add option to install with extras for different storages

* Bug fix

  * Fix custom option for cluster client in memcached
  * Fix separation of sentinel & connection args in \ 
:class:`limits.storage.RedisSentinelStorage`

* Deprecation

  * Deprecate GAEMemcached support
  * Remove use of unused `no_add` argument in \ 
:meth:`limits.storage.MovingWindowSupport.acquire_entry`

* Chore

  * Documentation theme upgrades
  * Code linting
  * Add compatibility CI workflow

v2.0.3
------
Release Date: 2021-11-28

* Chore

  * Ensure package is marked PEP-561 compliant

v2.0.1
------
Release Date: 2021-11-28

* Chore

  * Added type annotations

v2.0.0
------
Release Date: 2021-11-27

* Chore

  * Drop support for python < 3.7