History¶
0.9.1 - unreleased¶
TBD
0.9.0 - 2026-01-11¶
Support Python 3.14, drop support for Python 3.9 (end-of-life)
Support PyPy 3.11 (PPA rolling from 3.10)
0.8.0 - 2025-07-05¶
Exceptions form a hierarchy:
TorrelqueTimeoutErrorandTorrelqueLookupErrorinheritTorrelqueErrorSupport Python 3.13 and PyPy 3.10 (PPA rolling from 3.9)
Drop support for Python 3.8 (end-of-life)
Use Heptapod Pages to host documentation (readthedocs.org is obsolete)
Support Valkey as a protocol-compatible alternative to Redis server (no code change i.e. previous versions also worked)
0.7.1 - 2024-04-05¶
Minor documentation clean-up and improvement
0.7.0 - 2024-04-05¶
Support Python 3.11, 3.12 and PyPy 3.9 (moving from 3.8)
Drop support for Python 3.7
Support KeyDB as a protocol-compatible alternative to Redis server (no code change i.e. previous versions also worked)
Switch to the official
redisclient (whichaiorediswas merged into) becauseyaaredishas been deprecated
0.6.0 - 2022-05-28¶
Support Python 3.10 and PyPy 3.8 (moving from 3.7)
0.5.0 - 2021-11-27¶
Switch to
yaaredisbecausearedisis deadSupport Python 3.9
Drop support for Python 3.6 implementations
Bulk dequeue, requeue and release support
Rework dequeue routine
BRPOPLPUSHfrom the pending list to the dequeueing list to enable optimistic bulk dequeue. Extend the sweep script to handle unlikely but possible stale dequeueing task ids.
get_queue_statsandget_task_statereturntyping.NamedTupleinstead ofdict
0.4.0 - 2021-03-27¶
Switch to own exception types:
TorrelqueError,TorrelqueLookupErrorandTorrelqueTimeoutErrorSupport PyPy 3.7
Add Heptapod/Gitlab CI/CD
0.3.1 - 2020-06-14¶
torrelque.Torrelque.watch()raisesTimeoutErrorinstead ofasyncio.TimeoutErrorfor consistency
0.3.0 - 2020-05-21¶
Add Sphinx documentation and examples
Renames:
argument
prefixtoqueueinitialiser oftorrelque.Torrelqueget_statstoget_queue_statsget_task_statstoget_task_statestale_timeouttotask_timeout
Make task identifier atomic, move timeout into task state hash
New arguments:
delayargument toenqueuepipelineargument toenqueueto support bulk enqueue via external piplinetask_timeoutargument torequeueintervalargument toschedule_sweep
Raise
TimeoutErrorand hidetask_id is NonefromdequeueRaise
LookupErrorfromget_task_statewhen task state key is not foundIntroduce
TorrelqueTaskStatusenumeration, returned fromget_task_stateLog a warning when a pipeline returned unexpected counts for
requeueandrelease, most likely caused by calling them on a non-existent taskAdd
pytypeintolintTox environmentSupport PyPy3
Make default task timeout 5 minutes
Support task result on task
torrelque.Torrelque.release()Implement
torrelque.Torrelque.watch()
0.2.0 - 2020-04-27¶
Switch to
asyncioandaredisMove to Heptapod
0.1.2 - 2016-01-18¶
Initial release