diff --git a/shared/observability/src/airflow_shared/observability/__init__.py b/shared/observability/src/airflow_shared/observability/__init__.py index 13a83393a9124..f0f5cff5b872a 100644 --- a/shared/observability/src/airflow_shared/observability/__init__.py +++ b/shared/observability/src/airflow_shared/observability/__init__.py @@ -14,3 +14,13 @@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. +from __future__ import annotations + +import sys + +if sys.version_info >= (3, 11): + from typing import Self +else: + from typing_extensions import Self + +__all__ = ["Self"] diff --git a/shared/observability/src/airflow_shared/observability/metrics/protocols.py b/shared/observability/src/airflow_shared/observability/metrics/protocols.py index d170fe29ad9ba..4e4ff4f98526e 100644 --- a/shared/observability/src/airflow_shared/observability/metrics/protocols.py +++ b/shared/observability/src/airflow_shared/observability/metrics/protocols.py @@ -22,7 +22,7 @@ from typing import TYPE_CHECKING, Protocol if TYPE_CHECKING: - from airflow.typing_compat import Self + from .. import Self DeltaType = int | float | datetime.timedelta diff --git a/shared/observability/src/airflow_shared/observability/traces/base_tracer.py b/shared/observability/src/airflow_shared/observability/traces/base_tracer.py index 87766df528e60..02e7a85b89ad4 100644 --- a/shared/observability/src/airflow_shared/observability/traces/base_tracer.py +++ b/shared/observability/src/airflow_shared/observability/traces/base_tracer.py @@ -22,7 +22,7 @@ import structlog if TYPE_CHECKING: - from airflow.typing_compat import Self + from .. import Self log = structlog.getLogger(__name__)