From 5c13f2cc44d05d2aa8fe3e0d455182094b30f089 Mon Sep 17 00:00:00 2001 From: Eason Chen Date: Sun, 19 Jul 2026 20:49:16 +0800 Subject: [PATCH 1/2] Fix return type annotation of _parse_trace_id_header in Jaeger propagator The function returns a 3-tuple (trace_id, span_id, flags) on every code path and callers unpack three values, but the annotation declared tuple[int] (a one-element tuple), which misleads type checkers. --- .../src/opentelemetry/propagators/jaeger/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/propagator/opentelemetry-propagator-jaeger/src/opentelemetry/propagators/jaeger/__init__.py b/propagator/opentelemetry-propagator-jaeger/src/opentelemetry/propagators/jaeger/__init__.py index 79bb1d89ea8..9c3ee032046 100644 --- a/propagator/opentelemetry-propagator-jaeger/src/opentelemetry/propagators/jaeger/__init__.py +++ b/propagator/opentelemetry-propagator-jaeger/src/opentelemetry/propagators/jaeger/__init__.py @@ -131,7 +131,7 @@ def _extract_first_element( def _parse_trace_id_header( items: collections.abc.Iterable[CarrierT], -) -> tuple[int]: +) -> tuple[int, int, int]: invalid_header_result = (trace.INVALID_TRACE_ID, trace.INVALID_SPAN_ID, 0) header = _extract_first_element(items) From 75f22c1e4690e2265f243a2cded3408a1dffb591 Mon Sep 17 00:00:00 2001 From: Eason Chen Date: Sun, 19 Jul 2026 20:49:41 +0800 Subject: [PATCH 2/2] Add changelog fragment for #5440 --- .changelog/5440.fixed | 1 + 1 file changed, 1 insertion(+) create mode 100644 .changelog/5440.fixed diff --git a/.changelog/5440.fixed b/.changelog/5440.fixed new file mode 100644 index 00000000000..057ac92171a --- /dev/null +++ b/.changelog/5440.fixed @@ -0,0 +1 @@ +`opentelemetry-propagator-jaeger`: fix return type annotation of `_parse_trace_id_header` from `tuple[int]` to `tuple[int, int, int]`