Rq Versions Save

Simple job queues for Python

v1.11

1 year ago
  • 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 supports at_front() argument. Thanks @buroa!
  • Added ssl support for sentinel connections. Thanks @nevious!
  • SimpleWorker now works better on Windows. Thanks @caffeinatedMike!
  • Added on_failure and on_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

2 years ago
  • 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

2 years ago
  • 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

2 years ago
  • 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

3 years ago
  • Jobs that fail due to hard shutdowns are now retried. Thanks @selwin!
  • Scheduler now works with custom serializers. Thanks @alella!
  • Added support for click 8.0. Thanks @rpkak!
  • Enqueueing static methods are now supported. Thanks @pwws!
  • Job exceptions no longer get printed twice. Thanks @petrem!

v1.8.0

3 years ago
  • You can now declare multiple job dependencies. Thanks @skieffer and @thomasmatecki for laying the groundwork for multi dependency support in RQ.
  • Added RoundRobinWorker and RandomWorker classes to control how jobs are dequeued from multiple queues. Thanks @bielcardona!
  • Added --serializer option to rq 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

3 years ago
  • 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 default pickle based serializer. Thanks @JackBoreczky!
  • Fixes RQScheduler running on Redis with ssl=True. Thanks @BobReid!

v1.6.1

3 years ago
  • Worker now properly releases scheduler lock when run in burst mode. Thanks @selwin!

v1.6.0

3 years ago
  • Workers now listen to external commands via pubsub. The first two features taking advantage of this infrastructure are send_shutdown_command() and send_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!

v1.5.2

3 years ago
  • Scheduler now uses the class of connection that's used. Thanks @pacahon!
  • Fixes a bug that puts retried jobs in FailedJobRegistry. Thanks @selwin!
  • Fixed a deprecated import. Thanks @elmaghallawy!