diff --git a/providers/datadog/pyproject.toml b/providers/datadog/pyproject.toml index a8302c3ba689b..67a45a7610a38 100644 --- a/providers/datadog/pyproject.toml +++ b/providers/datadog/pyproject.toml @@ -58,6 +58,7 @@ requires-python = ">=3.10" # After you modify the dependencies, and rebuild your Breeze CI image with ``breeze ci-image build`` dependencies = [ "apache-airflow>=2.10.0", + "apache-airflow-providers-common-compat>=1.8.0", "datadog>=0.50.0", ] @@ -66,6 +67,7 @@ dev = [ "apache-airflow", "apache-airflow-task-sdk", "apache-airflow-devel-common", + "apache-airflow-providers-common-compat", # Additional devel dependencies (do not remove this line and add extra development dependencies) ] diff --git a/providers/datadog/src/airflow/providers/datadog/hooks/datadog.py b/providers/datadog/src/airflow/providers/datadog/hooks/datadog.py index 7e4b907adaa43..b194df6cf850a 100644 --- a/providers/datadog/src/airflow/providers/datadog/hooks/datadog.py +++ b/providers/datadog/src/airflow/providers/datadog/hooks/datadog.py @@ -23,7 +23,7 @@ from datadog import api, initialize from airflow.exceptions import AirflowException -from airflow.providers.datadog.version_compat import BaseHook +from airflow.providers.common.compat.sdk import BaseHook from airflow.utils.log.logging_mixin import LoggingMixin diff --git a/providers/datadog/src/airflow/providers/datadog/sensors/datadog.py b/providers/datadog/src/airflow/providers/datadog/sensors/datadog.py index d39f20352e665..c858b5bfd931a 100644 --- a/providers/datadog/src/airflow/providers/datadog/sensors/datadog.py +++ b/providers/datadog/src/airflow/providers/datadog/sensors/datadog.py @@ -23,11 +23,11 @@ from datadog import api from airflow.exceptions import AirflowException +from airflow.providers.common.compat.sdk import BaseSensorOperator from airflow.providers.datadog.hooks.datadog import DatadogHook -from airflow.providers.datadog.version_compat import BaseSensorOperator if TYPE_CHECKING: - from airflow.providers.datadog.version_compat import Context + from airflow.providers.common.compat.sdk import Context class DatadogSensor(BaseSensorOperator): diff --git a/providers/datadog/src/airflow/providers/datadog/version_compat.py b/providers/datadog/src/airflow/providers/datadog/version_compat.py index bbbee2d00ebec..a4fae50317e81 100644 --- a/providers/datadog/src/airflow/providers/datadog/version_compat.py +++ b/providers/datadog/src/airflow/providers/datadog/version_compat.py @@ -35,22 +35,7 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]: AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0) AIRFLOW_V_3_1_PLUS: bool = get_base_airflow_version_tuple() >= (3, 1, 0) -if AIRFLOW_V_3_1_PLUS: - from airflow.sdk import BaseHook -else: - from airflow.hooks.base import BaseHook # type: ignore[attr-defined,no-redef] - -if AIRFLOW_V_3_0_PLUS: - from airflow.sdk import BaseSensorOperator - from airflow.sdk.definitions.context import Context -else: - from airflow.sensors.base import BaseSensorOperator # type: ignore[no-redef] - from airflow.utils.context import Context - __all__ = [ "AIRFLOW_V_3_0_PLUS", "AIRFLOW_V_3_1_PLUS", - "BaseHook", - "BaseSensorOperator", - "Context", ]