SIGN IN SIGN UP

fix(celery): coerce non-string values in CeleryGetter.get() (#4360)

* fix(celery): coerce non-string values in CeleryGetter.get()

Celery's Context copies all message properties as instance attributes
via __dict__.update(), including non-string values like timelimit
(tuple of ints) and priority (int). The TextMapPropagator contract
requires string values from Getter.get(), but CeleryGetter returned
these non-string values as-is, causing TraceState.from_header() to
crash with TypeError when calling re.split() on an int.

Coerce all non-string values to strings before returning them.

See #4359

* Add CHANGELOG entry for CeleryGetter fix

* Apply ruff formatting
S
Simon Meers committed
51b57531534b2d67e68bea8d3f3e1193976d16f8
Parent: 9b5fdd0
Committed by GitHub <noreply@github.com> on 4/20/2026, 2:09:28 PM