Jump to solution
Verify

The Fix

pip install celery==5.3.4

Based on closed celery/celery issue #7683 · PR/commit linked

Production note: Most teams hit this during upgrades or environment changes. Roll out with a canary and smoke critical endpoints (health, OpenAPI/docs) before 100%.

Jump to Verify Open PR/Commit
@@ -173,7 +173,7 @@ def celery(ctx, app, broker, result_backend, loader, config, workdir, @celery.command(cls=CeleryCommand) @click.pass_context -def report(ctx): +def report(ctx, **kwargs): """Shows information useful to include in bug-reports."""
repro.py
$ cd /tmp/ $ python3 -m venv celery_venv $ . celery_venv/bin/activate $ git clone https://github.com/celery/celery.git Cloning into 'celery'... [...] $ cd celery $ pip install -e . [...] $ celery report software -> celery:5.3.0b1 (dawn-chorus) kombu:5.3.0b1 py:3.9.2 billiard:4.0.2 py-amqp:5.1.1 platform -> system:Linux arch:64bit, ELF kernel version:5.10.0-16-amd64 imp:CPython loader -> celery.loaders.default.Loader settings -> transport:amqp results:disabled deprecated_settings: None
verify
Re-run: celery -A proj multi start worker1 --template foo Re-run: celery -A proj report --template foo
fix.md
Option A — Upgrade to fixed release\npip install celery==5.3.4\nWhen NOT to use: Do not use this fix if the CLI command does not require kwargs.\n\n

Why This Fix Works in Production

  • Trigger: $ celery -A proj multi start worker1 --template foo
  • Mechanism: Missing kwargs arguments in CLI commands caused preload options to fail with celery multi start
  • Why the fix works: Added missing kwargs arguments in some CLI commands to resolve issues with preload options in celery multi start. (first fixed release: 5.3.4).
Production impact:
  • If left unfixed, the same config can fail only in production (env differences), causing startup failures or partial feature outages.

Why This Breaks in Prod

  • Shows up under Python 3.9 in real deployments (not just unit tests).
  • Missing kwargs arguments in CLI commands caused preload options to fail with celery multi start
  • Surfaces as: $ celery -A proj multi start worker1 --template foo

Proof / Evidence

  • GitHub issue: #7683
  • Fix PR: https://github.com/celery/celery/pull/8049
  • First fixed release: 5.3.4
  • Reproduced locally: No (not executed)
  • Last verified: 2026-02-09
  • Confidence: 0.95
  • Did this fix it?: Yes (upstream fix exists)
  • Own content ratio: 0.24

Discussion

High-signal excerpts from the issue thread (symptoms, repros, edge-cases).

“Hello all :wave:, I have also encountered this issue but with the shell command”
@KoleS46 · 2023-01-05 · source
“Hey @maconfr :wave:, Thank you for opening an issue”
@open-collective-bot · 2022-08-04 · source
“thanks, I am going to fix this here https://github.com/celery/celery/pull/8049”
@auvipy · 2023-01-05 · source
“Moving to Milestone 5.3.x for now to reduce the length for 5.3.**0** release.”
@Nusnus · 2023-05-26 · source

Failure Signature (Search String)

  • $ celery -A proj multi start worker1 --template foo

Error Message

Stack trace
error.txt
Error Message ------------- $ celery -A proj multi start worker1 --template foo Traceback (most recent call last): File "/tmp/celery_venv/bin/celery", line 33, in <module> sys.exit(load_entry_point('celery', 'console_scripts', 'celery')()) File "/tmp/celery/celery/__main__.py", line 15, in main sys.exit(_main()) File "/tmp/celery/celery/bin/celery.py", line 217, in main return celery(auto_envvar_prefix="CELERY") File "/tmp/celery_venv/lib/python3.9/site-packages/click/core.py", line 1130, in __call__ return self.main(*args, **kwargs) File "/tmp/celery_venv/lib/python3.9/site-packages/click/core.py", line 1055, in main rv = self.invoke(ctx) File "/tmp/celery_venv/lib/python3.9/site-packages/click/core.py", line 1657, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/tmp/celery_venv/lib/python3.9/site-packages/click/core.py", line 1404, in invoke return ctx.invoke(self.callback, **ctx.params) File "/tmp/celery_venv/lib/python3.9/site-packages/click/core.py", line 760, in invoke return __callback(*args, **kwargs) File "/tmp/celery_venv/lib/python3.9/site-packages/click/decorators.py", line 26, in new_func return f(get_current_context(), *args, **kwargs) File "/tmp/celery/celery/bin/base.py", line 134, in caller return f(ctx, *args, **kwargs) TypeError: multi() got an unexpected keyword argument 'template'
Stack trace
error.txt
Error Message ------------- $ celery -A proj report --template foo Traceback (most recent call last): File "/tmp/celery_venv/bin/celery", line 33, in <module> sys.exit(load_entry_point('celery', 'console_scripts', 'celery')()) File "/tmp/celery/celery/__main__.py", line 15, in main sys.exit(_main()) File "/tmp/celery/celery/bin/celery.py", line 217, in main return celery(auto_envvar_prefix="CELERY") File "/tmp/celery_venv/lib/python3.9/site-packages/click/core.py", line 1130, in __call__ return self.main(*args, **kwargs) File "/tmp/celery_venv/lib/python3.9/site-packages/click/core.py", line 1055, in main rv = self.invoke(ctx) File "/tmp/celery_venv/lib/python3.9/site-packages/click/core.py", line 1657, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/tmp/celery_venv/lib/python3.9/site-packages/click/core.py", line 1404, in invoke return ctx.invoke(self.callback, **ctx.params) File "/tmp/celery_venv/lib/python3.9/site-packages/click/core.py", line 760, in invoke return __callback(*args, **kwargs) File "/tmp/celery_venv/lib/python3.9/site-packages/click/decorators.py", line 26, in new_func return f(get_current_context(), *args, **kwargs) TypeError: report() got an unexpected keyword argument 'template'

Minimal Reproduction

repro.py
$ cd /tmp/ $ python3 -m venv celery_venv $ . celery_venv/bin/activate $ git clone https://github.com/celery/celery.git Cloning into 'celery'... [...] $ cd celery $ pip install -e . [...] $ celery report software -> celery:5.3.0b1 (dawn-chorus) kombu:5.3.0b1 py:3.9.2 billiard:4.0.2 py-amqp:5.1.1 platform -> system:Linux arch:64bit, ELF kernel version:5.10.0-16-amd64 imp:CPython loader -> celery.loaders.default.Loader settings -> transport:amqp results:disabled deprecated_settings: None

Environment

  • Python: 3.9

What Broke

Using preload options with celery multi start results in a traceback error.

Why It Broke

Missing kwargs arguments in CLI commands caused preload options to fail with celery multi start

Fix Options (Details)

Option A — Upgrade to fixed release Safe default (recommended)

pip install celery==5.3.4

When NOT to use: Do not use this fix if the CLI command does not require kwargs.

Use when you can deploy the upstream fix. It is usually lower-risk than long-lived workarounds.

Fix reference: https://github.com/celery/celery/pull/8049

First fixed release: 5.3.4

Last verified: 2026-02-09. Validate in your environment.

Get updates

We publish verified fixes weekly. No spam.

Subscribe

When NOT to Use This Fix

  • Do not use this fix if the CLI command does not require kwargs.

Verify Fix

verify
Re-run: celery -A proj multi start worker1 --template foo Re-run: celery -A proj report --template foo

Did This Fix Work in Your Case?

Quick signal helps us prioritize which fixes to verify and improve.

Prevention

  • Capture the exact failing error string in logs and tests so you can reproduce via a minimal script.
  • Pin production dependencies and upgrade only with a reproducible test that hits the failing path.

Version Compatibility Table

VersionStatus
5.3.4 Fixed

Related Issues

No related fixes found.

Sources

We don’t republish the full GitHub discussion text. Use the links above for context.