Unreleased
- Remove previously deprecated code. Use 0.3 as an intermediate upgrade to see
deprecation warnings.
- The global API (
get_queue
,get_worker
,@job
) is removed. - The "flat" config is not used.
- The
@job
decoratordelay
function is renamed toenqueue
. __version__
is removed.
- The global API (
Released 2025-03-04
- Fix error when
RQ_CONNECTION
is a URL string instead of a dict.
Released 2025-03-04
- Drop support for Python < 3.9.
- Require Flask >= 3.0.
- Require RQ >= 2.0.
- Modernize project tools and config.
- Full static type annotations.
- Move to a class-based extension API. The previously documented global API
(
get_queue
,get_worker
,@job
) is deprecated. Use the corresponding methods on the extension instance instead. - Add a
flask rq worker
command. - Queue configuration is expanded. The
RQ_CONNECTION
config defines the default connection, and theRQ_QUEUES
config defines the named queues.RQ_QUEUE_CONNECTIONS
config can define non-default connections for queues.RQ_CONNECTION_CLASS
config can change theredis.Redis
class used. The previous "flat" config is deprecated. - Added the
RQ_ASYNC
config key. By default, jobs are executed by workers. If this is enabled, orapp.testing
is enabled, jobs are executed directly. - Redis connections and RQ queues are only created once rather than on each access. Connections can be shared between queues.
- Support Quart.
- Job functions are executed with the Flask/Quart application context active.
This works for both Flask and Quart, for both sync
def
andasync def
functions. - The
@job
decoratordelay
function is renamed toenqueue
to match RQ, and the old name is deprecated. - The extension instance is recorded in
app.extensions["rq"]
. __version__
is deprecated. Useimportlib.metadata.version("flask-rq")
instead.
Released 2012-11-12
- Improve and simplify extension.
- Renamed
task
tojob
.
Released 2012-07-19