huey v2.0.0 Release Notes

Release Date: 2019-04-02 // about 5 years ago
  • View commits

    ๐Ÿš€ This section describes the changes in the 2.0.0 release. A detailed list of
    ๐Ÿ”„ changes can be found here: https://huey.readthedocs.io/en/latest/changes.html

    Overview of changes:

    • always_eager mode has been renamed to immediate mode. Unlike previous
      ๐Ÿ”– versions, immediate mode involves the same code paths used by the consumer
      โœ… process. This makes it easier to test features like task revocation and task
      โฑ scheduling without needing to run a dedicated consumer process. Immediate
      ๐Ÿ”ง mode uses an in-memory storage layer by default, but can be configured to use
      "live" storage like Redis or Sqlite.
    • ๐Ÿšš The events stream API has been removed in favor of simpler callback-driven
      ๐Ÿšฆ signals APIs. These
      ๐Ÿ”€ callbacks are executed synchronously within the huey consumer process.
    • A new serialization format is used in 2.0.0, however consumers running 2.0
      will continue to be able to read and deserialize messages enqueued by Huey
      ๐Ÿ”– version 1.11.0 for backwards compatibility.
    • ๐Ÿ‘Œ Support for task priorities.
    • ๐Ÿ†• New Serializer abstraction allows users to customize the serialization
      format used when reading and writing tasks.
    • โฑ Huey consumer and scheduler can be more easily run within the application
      ๐Ÿ–จ process, if you prefer not to run a separate consumer process.
    • Tasks can now specify an on_error handler, in addition to the
      ๐Ÿ‘ previously-supported on_complete handler.
    • Task pipelines return a special ResultGroup object which simplifies reading
      the results of a sequence of task executions.
    • SqliteHuey has been promoted out of contrib, onto an equal footing with
      ๐Ÿš€ RedisHuey. To simplify deployment, the dependency on
      ๐Ÿšš peewee was removed and the Sqlite
      storage engine uses the Python sqlite3 driver directly.