All Versions
43
Latest Version
Avg Release Cycle
57 days
Latest Release
-

Changelog History
Page 1

  • v2.4.1 Changes

    • Attempt to reconnect to database if connection becomes unusable (e.g. due to a server restart). See: huey.contrib.sql_huey.SqlHuey.
    • ๐Ÿ”’ Do not use a soft file-lock for FileStorage - use fcntl.flock() instead.

    View commits

  • v2.4.0 Changes

    • โœ… Task expiration: https://huey.readthedocs.io/en/latest/guide.html#task-expiration
    • โž• Add option to make crontab() parsing strict, raising an error if an invalid interval specification is given. You probably want to enable this.
    • ๐Ÿ›  Fix bug in the FileStorage dequeue() method, which attempted to unlink an open file.

    View commits

  • v2.3.2 Changes

    • Add hook (Huey.build_error_result) for customizing the error result metadata.
    • Avoid crashing if another module already modified/set the multiprocessing start method.

    View commits

  • v2.3.1 Changes

    • โž• Add SIGNAL_INTERRUPTED to signal when a task is interrupted when a consumer exits abruptly.
    • ๐Ÿ‘‰ Use the Huey.create_consumer() API within the Django management command, to allow Django users to customize the creation of the Consumer instance.

    View commits

  • v2.3.0 Changes

    August 10, 2020
    • ๐Ÿ‘‰ Use monotonic clock for timing operations within the consumer.
    • ๐Ÿš€ Ensure internal state is cleaned up on file-lock when released.
    • ๐Ÿ‘Œ Support passing around TaskException as a pickled value.
    • ๐ŸŽ Set the multiprocessing mode to "fork" on MacOS and Python 3.8 or newer.
    • โž• Added option to enforce FIFO behavior when using Sqlite as storage.
    • โž• Added the on_shutdown handler to djhuey namespace.
    • ๐Ÿ‘ป Ensure exception is set on AsyncResult in mini-huey.

    View commits

  • v2.2.0 Changes

    February 23, 2020
    • ๐Ÿ›  Fix task repr (refs #460).
    • โž• Adds task-id into metadata for task exceptions (refs #461).
    • Ensure database connection is not closed when using the call_local method of Django helper extension db_periodic_task().
    • ๐Ÿ‘ Allow pickle protocol to be explicitly configured in serializer parameters.
    • โž• Adds FileHuey and full FileStorage implementation.
    • โž• Add shutdown() hook, which will be run in the context of the worker threads/processes during shutdown. This hook can be used to clean-up shared or global resources, for example.
    • ๐Ÿ‘ Allow pipelines to be chained together. Additionally, support chaining task instances.

    View commits

  • v2.1.3 Changes

    October 16, 2019
    • ๐Ÿ›  Fix semantics of SIGNAL_COMPLETE so that it is not sent until the result is ready.
    • ๐Ÿ‘‰ Use classes for the specific Huey implementations (e.g. RedisHuey) so that it is easier to subclass / extend. Previously we just used a partial application of the constructor, which could be confusing.
    • ๐Ÿ›  Fix shutdown logic in consumer when using multiprocess worker model. Previously the consumer would perform a "graceful" shutdown, even when an immediate shutdown was requested (SIGTERM). Also cleans up the signal-handling code and ensures that interrupted tasks log a warning properly to indicate they were interrupted.

    View commits

  • v2.1.2 Changes

    September 04, 2019
    • Allow AsyncResult object used in MiniHuey to support the __call__() method to block and resolve the task result.
    • When running the django run_huey management command, the huey loggers will not be configured if another logging handler is already registered to the huey namespace.
    • โž• Added experimental contrib storage engine using kyoto tycoon <http://fallabs.com/kyototycoon>_ which supports task priority and the option to do automatic result expiration. Requires the ukt <https://github.com/coleifer/ukt>_ python package and a custom kyototycoon lua script.
    • ๐Ÿ‘ Allow the Sqlite storage engine busy timeout to be configured when instantiating SqliteHuey.

    View commits

  • v2.1.1 Changes

    August 07, 2019
    • ๐Ÿ“„ Ensure that task()-decorated functions retain their docstrings.
    • ๐Ÿ›  Fix logger setup so that the consumer log configuration is only applied to the huey namespace, rather than the root logger.
    • ๐Ÿ”ฆ Expose result, signal and disconnect_signal in the Django huey extension.
    • โž• Add SignedSerializer, which signs and validates task messages.
    • โ™ป๏ธ Refactor the SqliteStorage so that it can be more easily extended to support other databases.

    View commits

  • v2.1.0 Changes

    June 06, 2019
    • Added new contrib module sql_huey, which uses peewee <https://github.com/coleifer/peewee>_ to provide storage layer using any of the supported databases (sqlite, mysql or postgresql).
    • โž• Added RedisExpireHuey, which modifies the usual Redis result storage logic to use an expire time for task result values. A consequence of this is that this storage implementation must keep all result keys at the top-level Redis keyspace. There are some small changes to the storage APIs as well, but will only possibly affect maintainers of alternative storage layers.
    • Also added a PriorityRedisExpireHuey which combines the priority-queue support from PriorityRedisHuey with the result-store expiration mechanism of RedisExpireHuey.
    • ๐Ÿ›  Fix gzip compatibility issue when using Python 2.x.
    • โž• Add option to Huey to use zlib as the compression method instead of gzip.
    • โž• Added FileStorageMethods storage mixin, which uses the filesystem for task result-store APIs (put, peek, pop).
    • The storage-specific Huey implementations (e.g. RedisHuey) are no longer subclasses, but instead are partial applications of the Huey constructor.

    View commits