Celery

Frameworks & Libraries

A distributed task queue for Python.

Latest v5.6.3 · by CeleryWritten in PythonWebsitecelery/celeryRSS

Release activity

Release activity — 8 releases across 8 days in the last year. Each cell is one day; darker means more releases that day. Older weeks are hidden at this screen width.
JunJulAugSep
SundayNo releases on May 24, 2026No releases on May 31, 2026No releases on Jun 7, 2026No releases on Jun 14, 2026No releases on Jun 21, 2026No releases on Jun 28, 2026No releases on Jul 5, 2026No releases on Jul 12, 2026No releases on Jul 19, 2026No releases on Jul 26, 2026No releases on Aug 2, 2026No releases on Aug 9, 2026No releases on Aug 16, 2026No releases on Aug 23, 2026No releases on Aug 30, 2026No releases on Sep 6, 2026
MondayNo releases on May 25, 2026No releases on Jun 1, 2026No releases on Jun 8, 2026No releases on Jun 15, 2026No releases on Jun 22, 2026No releases on Jun 29, 2026No releases on Jul 6, 2026No releases on Jul 13, 2026No releases on Jul 20, 2026No releases on Jul 27, 2026No releases on Aug 3, 2026No releases on Aug 10, 2026No releases on Aug 17, 2026No releases on Aug 24, 2026No releases on Aug 31, 2026No releases on Sep 7, 2026
TuesdayNo releases on May 26, 2026No releases on Jun 2, 2026No releases on Jun 9, 2026No releases on Jun 16, 2026No releases on Jun 23, 2026No releases on Jun 30, 2026No releases on Jul 7, 2026No releases on Jul 14, 2026No releases on Jul 21, 2026No releases on Jul 28, 2026No releases on Aug 4, 2026No releases on Aug 11, 2026No releases on Aug 18, 2026No releases on Aug 25, 2026No releases on Sep 1, 2026No releases on Sep 8, 2026
WednesdayNo releases on May 27, 2026No releases on Jun 3, 2026No releases on Jun 10, 2026No releases on Jun 17, 2026No releases on Jun 24, 2026No releases on Jul 1, 2026No releases on Jul 8, 2026No releases on Jul 15, 2026No releases on Jul 22, 2026No releases on Jul 29, 2026No releases on Aug 5, 2026No releases on Aug 12, 2026No releases on Aug 19, 2026No releases on Aug 26, 2026No releases on Sep 2, 2026No releases on Sep 9, 2026
ThursdayNo releases on May 28, 2026No releases on Jun 4, 2026No releases on Jun 11, 2026No releases on Jun 18, 2026No releases on Jun 25, 2026No releases on Jul 2, 2026No releases on Jul 9, 2026No releases on Jul 16, 2026No releases on Jul 23, 2026No releases on Jul 30, 2026No releases on Aug 6, 2026No releases on Aug 13, 2026No releases on Aug 20, 2026No releases on Aug 27, 2026No releases on Sep 3, 2026No releases on Sep 10, 2026
FridayNo releases on May 29, 2026No releases on Jun 5, 2026No releases on Jun 12, 2026No releases on Jun 19, 2026No releases on Jun 26, 2026No releases on Jul 3, 2026No releases on Jul 10, 2026No releases on Jul 17, 2026No releases on Jul 24, 2026No releases on Jul 31, 2026No releases on Aug 7, 2026No releases on Aug 14, 2026No releases on Aug 21, 2026No releases on Aug 28, 2026No releases on Sep 4, 2026
SaturdayNo releases on May 30, 2026No releases on Jun 6, 2026No releases on Jun 13, 2026No releases on Jun 20, 2026No releases on Jun 27, 2026No releases on Jul 4, 2026No releases on Jul 11, 2026No releases on Jul 18, 2026No releases on Jul 25, 2026No releases on Aug 1, 2026No releases on Aug 8, 2026No releases on Aug 15, 2026No releases on Aug 22, 2026No releases on Aug 29, 2026No releases on Sep 5, 2026

8 releases in the last year

Changelog

v5.6.3

Latest
Fixed 20
  • Fix Django worker recursion bug and add defensive checks for pool_cls.__module__
  • Fix invalid configuration key "bootstrap_servers" in Kafka demo
  • Make tests compatible with pymongo >= 4.16
  • Fix source install of cassandra-driver
  • Register task cross-reference role in Sphinx extension
  • Avoid cycle detection in native delayed delivery

From Celery

What's Changed
New Contributors

Full Changelog: https://github.com/celery/celery/compare/v5.6.2...v5.6.3

View originalPermalink
How v5.6.3 went

v5.6.2

Fixed 2
  • Fix recursive WorkController instantiation in DjangoWorkerFixup and AttributeError when pool_cls is a string
  • Revoked tasks now immediately update backend status to REVOKED

From Celery

What's Changed
New Contributors

Full Changelog: https://github.com/celery/celery/compare/v5.6.1...v5.6.2

View originalPermalink
How v5.6.2 went

v5.6.1

Changed 2
  • Improve prefork detection reliability
  • Only use exceptiongroup backport for Python < 3.11
Fixed 5
  • Fix Redis Sentinel ACL authentication support
  • Fix broker heartbeats not sent during graceful shutdown
  • Close DB pools only in prefork mode
  • Avoid unnecessary Django database connection creation during cleanup
  • Stop importing pytest_subtests

From Celery

What's Changed
New Contributors

Full Changelog: https://github.com/celery/celery/compare/v5.6.0...v5.6.1

View originalPermalink
How v5.6.1 went

v5.6.0

Added 4
  • Initial support for Python 3.14
  • Add worker_eta_task_limit configuration option to prevent out-of-memory crashes when workers fetch large numbers of ETA or countdown tasks
  • Add task_create_missing_queue_type configuration option to specify queue type for auto-created queues
  • Add task_create_missing_queue_exchange_type configuration option to specify exchange type for auto-created queues
Changed 1
  • Revert SQS transport from urllib3 back to pycurl due to critical issues
Fixed 2
  • Fix critical memory leak in task exception handling caused by reference cycles in tracebacks
  • Fix memory leak where AsyncResult subscriptions were not being cleaned up when results were forgotten
Removed 1
  • Drop support for Python 3.8 (EOL), requiring minimum Python version 3.9
Security 1
  • Sanitize broker credentials in log output to prevent plaintext password leaks from delayed delivery mechanism

From Celery

Celery v5.6.0 is now available.

Key Highlights

See What's new in Celery 5.6 for a complete overview or read the main highlights below.

Python 3.9 Minimum Version

Celery 5.6.0 drops support for Python 3.8 (EOL). The minimum required Python version is now 3.9. Users still on Python 3.8 must upgrade their Python version before upgrading to Celery 5.6.0.

Additionally, this release includes initial support for Python 3.14.

SQS: Reverted to pycurl from urllib3

The switch from pycurl to urllib3 for the SQS transport (introduced in Celery 5.5.0 via Kombu) has been reverted due to critical issues affecting SQS users.

Contributed by @auvipy in https://github.com/celery/celery/pull/9620.

Security Fix: Broker Credential Leak Prevention

Fixed a security issue where broker URLs containing passwords were being logged in plaintext by the delayed delivery mechanism. Broker credentials are now properly sanitized in all log output.

Contributed by @giancarloromeo in https://github.com/celery/celery/pull/9997.

Memory Leak Fixes

Two significant memory leaks have been fixed in this release:

Exception Handling Memory Leak: Fixed a critical memory leak in task exception handling that was particularly severe on Python 3.11+ due to enhanced traceback data. The fix properly breaks reference cycles in tracebacks to allow garbage collection.

Contributed by @jaiganeshs21 in https://github.com/celery/celery/pull/9799.

Pending Result Memory Leak: Fixed a memory leak where AsyncResult subscriptions were not being cleaned up when results were forgotten.

Contributed by @tsoos99dev in https://github.com/celery/celery/pull/9806.

ETA Task Memory Limit

New configuration option worker_eta_task_limit to prevent out-of-memory crashes when workers fetch large numbers of ETA or countdown tasks. Previously, workers could exhaust available memory when the broker contained many scheduled tasks.

Example usage:

app.conf.worker_eta_task_limit = 1000

Contributed by @sashu2310 in https://github.com/celery/celery/pull/9853.

Queue Type Selection for Auto-created Queues

New configuration options allow specifying the queue type and exchange type when Celery auto-creates missing queues. This is particularly useful for RabbitMQ users who want to use quorum queues with auto-created queues.

Configuration options:

  • task_create_missing_queue_type: Sets the queue type for auto-created queues (e.g., quorum, classic)
  • task_create_missing_queue_exchange_type: Sets the exchange type for auto-created queues

Example usage:

app.conf.task_create_missing_queue_type = 'quorum'

Contributed by @ghirailghiro in https://github.com/celery/celery/pull/9815.

What's Changed

Full Changelog: https://github.com/celery/celery/compare/v5.6.0rc2...v5.6.0

View originalPermalink
How v5.6.0 went

v5.6.0rc2

Pre-release
Fixed 2
  • Don't fail task on timeout during cold shutdown
  • asynpool: Don't return from inside a finally block
Security 1
  • Sanitize broker URL in delayed delivery logs to avoid leaking credentials

From Celery

Celery v5.6.0 Release Candidate 2 is now available for testing. Please help us test this version and report any issues.

What's Changed
New Contributors

Full Changelog: https://github.com/celery/celery/compare/v5.6.0rc1...v5.6.0rc2

View originalPermalink
How v5.6.0rc2 went

v5.6.0rc1

Pre-release
Added 2
  • Add support for Django Connection pool
  • Add support for pymongo 4.12
Changed 3
  • Pin tblib to version 3.1.0
  • Update tblib from 3.1.0 to 3.2.0
  • Bump Kombu to v5.6.0 and remove <5.7 limit on kombu
Fixed 6
  • Continue to attempt to bind other queues after a native delayed delivery binding failure has occurred
  • Handle UnpicklingError in persistent scheduler initialization
  • Fix nested chords failing when using django-celery-results with a Redis backend
  • Make tests compatible with pymongo >= 4.14
  • Fix remaining function typing and docstring
  • Fix regex pattern in version parsing and remove duplicate entry in __all__

From Celery

Celery v5.6.0 Release Candidate 1 is now available for testing. Please help us test this version and report any issues.

What's Changed
New Contributors

Full Changelog: https://github.com/celery/celery/compare/v5.6.0b2...v5.6.0rc1

View originalPermalink
How v5.6.0rc1 went

v5.6.0b2

Pre-release
Added 2
  • Add support for credential_provider to Redis Backend
  • Support redis client name
Changed 3
  • Celery.timezone: try tzlocal.get_localzone() before using LocalTimezone
  • Update Python version requirement to 3.9
  • Bump Kombu to v5.6.0rc1
Fixed 4
  • Fix arithmetic overflow for MSSQL result backend
  • Fix broker connection retry attempt counter in the error log
  • Restrict disable-prefetch feature to Redis brokers only
  • Preserve group order in replaced signature

From Celery

Celery v5.6.0 Beta 2 is now available for testing. Please help us test this version and report any issues.

What's Changed
New Contributors

Full Changelog: https://github.com/celery/celery/compare/v5.6.0b1...v5.6.0b2

View originalPermalink
How v5.6.0b2 went

v5.6.0b1

Pre-release
Added 2
  • Add root_id and parent_id to .apply()
  • Add worker_eta_task_limit configuration to manage ETA task memory usage
Fixed 11
  • Make _on_retry return a float as required to be used as errback on retry_over_time
  • Task ID must not be empty with chain as body of a chord
  • Time out when chord header fails with group body
  • Replace DelayedDelivery connection creation to use context manager
  • Pydantic integration fails with __future__.annotations
  • Fix memory leak in exception handling
Removed 1
  • Remove importlib_metadata leftovers

From Celery

Celery v5.6.0 Beta 1 is now available for testing. Please help us test this version and report any issues.

What's Changed
New Contributors

Full Changelog: https://github.com/celery/celery/compare/v5.5.3...v5.6.0b1

View originalPermalink
How v5.6.0b1 went

v5.5.3

Added 1
  • Support apply_async without queue argument on quorum queues
Changed 4
  • Limit redis to <=v5.2.1 to match Kombu
  • Use EX_OK instead of literal zero
  • Make wheel metadata reproducible
  • Celery now installs from kombu dependencies for better alignment
Fixed 4
  • Resolve issue #9569 by supporting distinct broker transport options for workers
  • Fix stamping documentation to clarify stamped_headers key is optional in visitor methods
  • Fix issue with retry callback arguments in DelayedDelivery
  • Update documentation of result_expires to clarify filesystem backend is supported

From Celery

What's Changed
New Contributors

Full Changelog: https://github.com/celery/celery/compare/v5.5.2...v5.5.3

View originalPermalink
How v5.5.3 went

v5.5.2

Fixed 1
  • Fix calculating remaining time across DST changes
Removed 1
  • Remove setup_logger from COMPAT_MODULES

From Celery

What's Changed
New Contributors

Full Changelog: https://github.com/celery/celery/compare/v5.5.1...v5.5.2

View originalPermalink
How v5.5.2 went
View all

Discussion

If you publish Celery, you can claim this product by proving you administer its repository.