Releases: rq/rq
Releases · rq/rq
v1.11.1
queue.enqueue_many()
now supportson_success
and onon_failure
arguments. Thanks @y4n9squared!- You can now pass
enqueue_at_front
toDependency()
objects to put dependent jobs at the front when they are enqueued. Thanks @jtfidje! - Fixed a bug where workers may wrongly acquire scheduler locks. Thanks @milesjwinter!
- Jobs should not be enqueued if any one of it's dependencies is canceled. Thanks @selwin!
- Fixed a bug when handling jobs that have been stopped. Thanks @ronlut!
- Fixed a bug in handling Redis connections that don't allow
SETNAME
command. Thanks @yilmaz-burak!
v1.11
- This will be the last RQ version that supports Python 3.5.
- Allow jobs to be enqueued even when their dependencies fail via
Dependency(allow_failure=True)
. Thanks @mattchan-tencent, @caffeinatedMike and @selwin! - When stopped jobs are deleted, they should also be removed from FailedJobRegistry. Thanks @selwin!
job.requeue()
now supportsat_front()
argument. Thanks @buroa!- Added ssl support for sentinel connections. Thanks @nevious!
SimpleWorker
now works better on Windows. Thanks @caffeinatedMike!- Added
on_failure
andon_success
arguments to @job decorator. Thanks @nepta1998! - Fixed a bug in dependency handling. Thanks @th3hamm0r!
- Minor fixes and optimizations by @xavfernandez, @olaure, @kusaku.
v1.10.1
- Failure callbacks are now properly called when job is run synchronously. Thanks @ericman93!
- Fixes a bug that could cause job keys to be left over when
result_ttl=0
. Thanks @selwin! - Allow
ssl_cert_reqs
argument to be passed to Redis. Thanks @mgcdanny! - Better compatibility with Python 3.10. Thanks @rpkak!
job.cancel()
should also remove itself from registries. Thanks @joshcoden!- Pubsub threads are now launched in
daemon
mode. Thanks @mik3y!
v1.10.0
- You can now enqueue jobs from CLI. Docs here. Thanks @rpkak!
- Added a new
CanceledJobRegistry
to keep track of canceled jobs. Thanks @selwin! - Added custom serializer support to various places in RQ. Thanks @joshcoden!
cancel_job(job_id, enqueue_dependents=True)
allows you to cancel a job while enqueueing its dependents. Thanks @joshcoden!- Added
job.get_meta()
to fetch fresh meta value directly from Redis. Thanks @aparcar! - Fixes a race condition that could cause jobs to be incorrectly added to FailedJobRegistry. Thanks @selwin!
- Requeueing a job now clears
job.exc_info
. Thanks @selwin! - Repo infrastructure improvements by @rpkak.
- Other minor fixes by @cesarferradas and @bbayles.
v1.9.0
- Added success and failure callbacks. You can now do
queue.enqueue(foo, on_success=do_this, on_failure=do_that)
. Thanks @selwin! - Added
queue.enqueue_many()
to enqueue many jobs in one go. Thanks @joshcoden! - Various improvements to CLI commands. Thanks @rpkak!
- Minor logging improvements. Thanks @clavigne and @natbusa!
v1.8.1
v1.8.0
- You can now declare multiple job dependencies. Thanks @skieffer and @thomasmatecki for laying the groundwork for multi dependency support in RQ.
- Added
RoundRobinWorker
andRandomWorker
classes to control how jobs are dequeued from multiple queues. Thanks @bielcardona! - Added
--serializer
option torq worker
CLI. Thanks @f0cker! - Added support for running asyncio tasks. Thanks @MyrikLD!
- Added a new
STOPPED
job status so that you can differentiate between failed and manually stopped jobs. Thanks @dralley! - Fixed a serialization bug when used with job dependency feature. Thanks @jtfidje!
clean_worker_registry()
now works in batches of 1,000 jobs to prevent modifying too many keys at once. Thanks @AxeOfMen and @TheSneak!- Workers will now wait and try to reconnect in case of Redis connection errors. Thanks @Asrst!
v1.7.0
- Added
job.worker_name
attribute that tells you which worker is executing a job. Thanks @selwin! - Added
send_stop_job_command()
that tells a worker to stop executing a job. Thanks @selwin! - Added
JSONSerializer
as an alternative to the defaultpickle
based serializer. Thanks @JackBoreczky! - Fixes
RQScheduler
running on Redis withssl=True
. Thanks @BobReid!
v1.6.1
v1.6.0
- Workers now listen to external commands via pubsub. The first two features taking advantage of this infrastructure are
send_shutdown_command()
andsend_kill_horse_command()
. Thanks @selwin! - Added
job.last_heartbeat
property that's periodically updated when job is running. Thanks @theambient! - Now horses are killed by their parent group. This helps in cleanly killing all related processes if job uses multiprocessing. Thanks @theambient!
- Fixed scheduler usage with Redis connections that uses custom parser classes. Thanks @selwin!
- Scheduler now enqueue jobs in batches to prevent lock timeouts. Thanks @nikkonrom!
- Scheduler now follows RQ worker's logging configuration. Thanks @christopher-dG!