Changelogs » Aioredlock

PyUp Safety actively tracks 261,870 Python packages for vulnerabilities and notifies you when to upgrade.

Aioredlock

0.5.1

Added
  - Allow using Sentinels to handle redis connections
  - Added a function on a lock manager to return check and return a list of all active locks
  
  Changed
  - Reverted back to using EVALSHA so that the scripts do not need to be uploaded for every command.
  - Instead, if a script is not on the server for EVALSHA, then the exception is caught, the scripts are reuploaded, and the set is tried again.

0.4.0

Added
  - Add watchdogs to extend lock's lifetime automatically
  
  Changed
  - Aioredlock totally becomes a lock manager, it track locks' state.When Aioredlock is destroyed, it releases all locks it have
  - Remove ``lock_timeout`` and ``drift`` from Aioredlock's initialization parameter list and move them to ``Aioredlock.lock``
  - Add ``internal_lock_timeout`` as default lock_timeout for Aioredlock initialization
  - ``Aioredlock.lock(resource)`` is replaced by ``Aioredlock.lock(resource_name, lock_timeout)``
  - ``Aioredlock.extend(lock)`` is replaced by ``Aioredlock.extend(lock, lock_timeout)``
  - Remove lock_timeout from Redis' initialization parameter list

0.3.0

Added
  - Support support for initializing aioredlock with an existing aioredis pool

0.2.1

Changed
  - Move all closing logic from Redis.clear_connections() to Instance.close()
  - Fixes for new version of asynctest

0.2.0

Changed
  - Support for aioredis version to 1.0.0.
  - Complite lock refactoring using lua scripts .
  - ``Aioredlock.extend(lock)`` is implemented to extend the lock lifetime.
  - The lock manager now raises the ``LockError`` exceptions if it can not lock, extend or unlock the resource.
  - The lock now can be released with async context manager.
  - Support the same address formats as aioredis does.
  - ``Aioredlock.is_locked()`` is implemented to check is the resource acquired by another redlock instance.
  - The ``lock_timeout`` and ``drift`` parameters now mesured in seconds, just like ``retry_delay_min`` and ``retry_delay_max``.

0.1.1

Changed
  - Updated aioredis requirement version to 0.3.1.
  - Incremented the maxsize connections pool from default to 100.
  
  Fixed
  - Fixed a bug regarding the asyncio lock usage when creating the connection pool with redis.

0.1.0

Added
  - Drift time check. See https://redis.io/topics/distlockis-the-algorithm-asynchronous
  
  Changed
  - Randomized the retry delay for trying to acquire the lock again (range between 0.1 and 0.3 seconds).

0.0.1

Added
  - aioredlock first version with all the basic distributed lock manager functionalities.