This is an automated email from the ASF dual-hosted git repository.

amoghdesai 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 49fa569d019 Move all BaseHook usages to version_compat in Jenkins 
(#52820)
49fa569d019 is described below

commit 49fa569d0192894c809bda1a650605a3dec6482e
Author: Ankit Chaurasia <[email protected]>
AuthorDate: Fri Jul 4 15:27:31 2025 +0545

    Move all BaseHook usages to version_compat in Jenkins (#52820)
    
    Part of https://github.com/apache/airflow/issues/52676
---
 providers/jenkins/src/airflow/providers/jenkins/hooks/jenkins.py  | 5 +----
 providers/jenkins/src/airflow/providers/jenkins/version_compat.py | 8 ++++++++
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/providers/jenkins/src/airflow/providers/jenkins/hooks/jenkins.py 
b/providers/jenkins/src/airflow/providers/jenkins/hooks/jenkins.py
index 3d8958a43c1..0c605568a80 100644
--- a/providers/jenkins/src/airflow/providers/jenkins/hooks/jenkins.py
+++ b/providers/jenkins/src/airflow/providers/jenkins/hooks/jenkins.py
@@ -21,10 +21,7 @@ from typing import Any
 
 import jenkins
 
-try:
-    from airflow.sdk import BaseHook
-except ImportError:
-    from airflow.hooks.base import BaseHook  # type: 
ignore[attr-defined,no-redef]
+from airflow.providers.jenkins.version_compat import BaseHook
 
 
 class JenkinsHook(BaseHook):
diff --git a/providers/jenkins/src/airflow/providers/jenkins/version_compat.py 
b/providers/jenkins/src/airflow/providers/jenkins/version_compat.py
index da54ff9f756..17b4d7fb295 100644
--- a/providers/jenkins/src/airflow/providers/jenkins/version_compat.py
+++ b/providers/jenkins/src/airflow/providers/jenkins/version_compat.py
@@ -33,6 +33,12 @@ 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 BaseOperator, BaseSensorOperator
@@ -44,6 +50,8 @@ else:
 
 __all__ = [
     "AIRFLOW_V_3_0_PLUS",
+    "AIRFLOW_V_3_1_PLUS",
+    "BaseHook",
     "BaseOperator",
     "BaseSensorOperator",
     "Context",

Reply via email to