Change8

Migrating to Celery v5.6.0

Version v5.6.0 introduces 2 breaking changes. This guide details how to update your code.

Released: 11/30/2025

2
Breaking Changes
3
Migration Steps
5
Affected Symbols

⚠️ Check Your Code

If you use any of these symbols, you need to read this guide:

worker_eta_task_limittask_create_missing_queue_typetask_create_missing_queue_exchange_typeAsyncResultSQS transport (pycurl/urllib3 switch)

Breaking Changes

Issue #1

Dropped support for Python 3.8; minimum required Python version is now 3.9. Upgrade Python before upgrading Celery.

Issue #2

SQS transport reverted from urllib3 back to pycurl, which may break setups that relied on the urllib3 implementation. Adjust any custom SQS transport configuration accordingly.

Migration Steps

  1. 1
    If you upgraded to Celery 5.5.0 and switched SQS transport to `urllib3`, revert any custom settings to use `pycurl` or remove the `urllib3` specific options.
  2. 2
    Review logging configuration to ensure no broker credentials are exposed; no code changes required as the library now sanitizes them.
  3. 3
    Optionally configure `worker_eta_task_limit` and queue‑type settings to take advantage of new features.

Release Summary

Celery 5.6.0 drops Python 3.8 support, reverts SQS to pycurl, adds ETA task limits and queue‑type configuration, and includes several security and memory‑leak fixes.

Need More Details?

View the full release notes and all changes for Celery v5.6.0.

View Full Changelog