This is an automated email from the ASF dual-hosted git repository.
potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/main by this push:
new 0ee0dafd956 Move Self to observability shared package (#59140)
0ee0dafd956 is described below
commit 0ee0dafd956397d0a6296971d50fc0cf132d6aeb
Author: Jarek Potiuk <[email protected]>
AuthorDate: Sat Dec 6 23:05:42 2025 +0100
Move Self to observability shared package (#59140)
Shared packages should not refer to airflow or airflow.sdk. This
is the last "airflow" import remaining in the observability package.
Fixed during implementation of #58825
---
.../observability/src/airflow_shared/observability/__init__.py | 10 ++++++++++
.../src/airflow_shared/observability/metrics/protocols.py | 2 +-
.../src/airflow_shared/observability/traces/base_tracer.py | 2 +-
3 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/shared/observability/src/airflow_shared/observability/__init__.py
b/shared/observability/src/airflow_shared/observability/__init__.py
index 13a83393a91..f0f5cff5b87 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 d170fe29ad9..4e4ff4f9852 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 @@ import time
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 87766df528e..02e7a85b89a 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 @@ from typing import TYPE_CHECKING, Any, Protocol
import structlog
if TYPE_CHECKING:
- from airflow.typing_compat import Self
+ from .. import Self
log = structlog.getLogger(__name__)