From c64d1a8af8b0711d875f1f3fbf17c1e892811f9c Mon Sep 17 00:00:00 2001 From: Kaxil Naik Date: Wed, 25 Jun 2025 00:31:38 +0530 Subject: [PATCH] Ignore mypy errors for deprecated executors I removed SimpleTaskInstance in https://github.com/apache/airflow/pull/52176 since it isn't used in Airflow 3. This caused failure in hybrid executors like `LocalKubernetesExecutor` and `CeleryKubernetesExecutor` -- which aren't suported in Airflow 3. Hence we can ignore mypy errors. --- .../celery/executors/celery_kubernetes_executor.py | 7 +++++-- .../kubernetes/executors/local_kubernetes_executor.py | 8 ++++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/providers/celery/src/airflow/providers/celery/executors/celery_kubernetes_executor.py b/providers/celery/src/airflow/providers/celery/executors/celery_kubernetes_executor.py index c7c3071ed0c08..7548401e295f0 100644 --- a/providers/celery/src/airflow/providers/celery/executors/celery_kubernetes_executor.py +++ b/providers/celery/src/airflow/providers/celery/executors/celery_kubernetes_executor.py @@ -39,7 +39,10 @@ from airflow.callbacks.base_callback_sink import BaseCallbackSink from airflow.callbacks.callback_requests import CallbackRequest from airflow.executors.base_executor import EventBufferValueType - from airflow.models.taskinstance import SimpleTaskInstance, TaskInstance + from airflow.models.taskinstance import ( + SimpleTaskInstance, # type: ignore[attr-defined] + TaskInstance, + ) from airflow.models.taskinstancekey import TaskInstanceKey CommandType = Sequence[str] @@ -180,7 +183,7 @@ def queue_task_instance( **kwargs, ) -> None: """Queues task instance via celery or kubernetes executor.""" - from airflow.models.taskinstance import SimpleTaskInstance + from airflow.models.taskinstance import SimpleTaskInstance # type: ignore[attr-defined] executor = self._router(SimpleTaskInstance.from_ti(task_instance)) self.log.debug( diff --git a/providers/cncf/kubernetes/src/airflow/providers/cncf/kubernetes/executors/local_kubernetes_executor.py b/providers/cncf/kubernetes/src/airflow/providers/cncf/kubernetes/executors/local_kubernetes_executor.py index a05b8b63601aa..de183ad2a4ae7 100644 --- a/providers/cncf/kubernetes/src/airflow/providers/cncf/kubernetes/executors/local_kubernetes_executor.py +++ b/providers/cncf/kubernetes/src/airflow/providers/cncf/kubernetes/executors/local_kubernetes_executor.py @@ -33,7 +33,11 @@ from airflow.callbacks.callback_requests import CallbackRequest from airflow.executors.base_executor import EventBufferValueType from airflow.executors.local_executor import LocalExecutor - from airflow.models.taskinstance import SimpleTaskInstance, TaskInstance, TaskInstanceKey + from airflow.models.taskinstance import ( + SimpleTaskInstance, # type: ignore[attr-defined] + TaskInstance, + TaskInstanceKey, + ) CommandType = Sequence[str] @@ -171,7 +175,7 @@ def queue_task_instance( **kwargs, ) -> None: """Queues task instance via local or kubernetes executor.""" - from airflow.models.taskinstance import SimpleTaskInstance + from airflow.models.taskinstance import SimpleTaskInstance # type: ignore[attr-defined] executor = self._router(SimpleTaskInstance.from_ti(task_instance)) self.log.debug(